public inbox for java@gcc.gnu.org
 help / color / mirror / Atom feed
From: Yale Zhang <yzhang1985@gmail.com>
To: Brian Jones <cbjones1@gmail.com>
Cc: java@gcc.gnu.org
Subject: Re: add support for x86_64-w64-mingw32 and cut the fat from libgcj
Date: Mon, 01 Jan 2018 21:03:00 -0000	[thread overview]
Message-ID: <CALQF7ZxNf=FON4AH4v5nw+V+yEP7JpOTToejt3ABVUhRx7usNA@mail.gmail.com> (raw)
In-Reply-To: <3BC75108-7D53-4CCB-AFEF-51C8EC98F9B3@gmail.com>

Alright, I've submitted my request & patch to bugzilla:
 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83647

"Having said that, I'm quite happy to accept mingw patches if there is a
live branch to apply them to."
Under the target version, I saw a tentative 6.4.1, so there still could be
hope this can make it into GCC 6.


I also did the experiment of compiling libgcj with -ffunction-sections
-fdata-sections and then use --gc-sections when linking to see if that
helps remove dead code. Somehow, that instead increased the size of a
simple test program (with multithreading & sockets) from 4.54 to 4.72 MiB.

"I was hoping to keep GCJ up to date to use it for OpenJDK bootstrapping"
That paranoid? Why not use the minimal Eclipse Java compiler which
Classpath uses for bootstrapping? It sounds like ECJ can't be trusted if it
was compiled with an untrusted/unknown compiler.




On Mon, Jan 1, 2018 at 5:38 AM, Brian Jones <cbjones1@gmail.com> wrote:

> I believe the idea of including only code which you specify is required
> came up before on the list many years ago.  Hopefully a search through
> archives can be instructive.
>
> Brian
>
> > On Dec 24, 2017, at 2:44 PM, Yale Zhang <yzhang1985@gmail.com> wrote:
> >
> > Greetings. I have a patch that allows GNU java to target MingW64
> > (host=GNU/Linux only). Are you guys still taking patches now that Java
> > has been removed from GCC 7? Or would it be more appropriate to host
> > it on my own website or instructables.com?
> >
> > I also have another patch that cuts all the GUI, cryptography, and non
> > UTF8/16 charset support from libgcj. This reduces the size of
> > statically linked EXEs a lot (~27MiB to 4.5 MiB for a hello world
> > program). This is important for a legacy utility that other developers
> > use on Windows and who don't want to install a Java runtime.
> >
> > Commenting out and deleting code is a crude way to do, I know. Should
> > use conditional compilation and even explore what's causing GUI code
> > to be dragged into a hello world program. Maybe dead code removal
> > isn't working (need to compile with -ffunction-sections and
> > --gc-sections?)
> >
> > appreciate your feedback,
> > -Yale
>

  reply	other threads:[~2018-01-01 21:03 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-24 19:44 Yale Zhang
2017-12-25  0:33 ` R0b0t1
2017-12-25  4:58   ` Yale Zhang
2017-12-27  3:00     ` R0b0t1
2018-01-01  3:42       ` Andrew Hughes
2018-01-01  9:00   ` Andrew Haley
2018-01-01 10:38 ` Brian Jones
2018-01-01 21:03   ` Yale Zhang [this message]
2018-01-02  9:58     ` Andrew Haley
2018-01-02 10:00     ` Andrew Haley
2018-01-02 10:04     ` Ricardo Wurmus
2017-12-24 19:46 Yale Zhang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CALQF7ZxNf=FON4AH4v5nw+V+yEP7JpOTToejt3ABVUhRx7usNA@mail.gmail.com' \
    --to=yzhang1985@gmail.com \
    --cc=cbjones1@gmail.com \
    --cc=java@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).