RFR: 8227397: Add --with-extra-asflags configure option

Martin Buchholz martinrb at google.com
Mon Jul 8 17:42:10 UTC 2019


(not really a review ...)

I'm confused because the assembler is invoked when compiling any sort of
source file - C, C++, or .s/.S.
Wouldn't we want assembler flags passed uniformly, no matter when the
assembler is invoked?
It looks like this patch only affects compilation of .s/.S files in hotspot?

On Mon, Jul 8, 2019 at 8:57 AM Severin Gehwolf <sgehwolf at redhat.com> wrote:

> Hi,
>
> Could I please get a review for this patch which adds a new configure
> option --with-extra-asflags? The issue at hand is that we, Red Hat,
> need to pass certain extra flags to the assembler when OpenJDK is being
> compiled. -Wa,--generate-missing-build-notes=yes in our case. That's
> currently not possible and extra C/C++ flags would need to be used,
> which seems not nice.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8227397
> webrev:
> http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8227397/01/webrev/
>
> After this patch extra assembler flags get added to *.s/.S files for
> libjvm.so:
>
> $ grep -n generate-missing-build-notes=yes
> build/linux-x86_64-server-release/build.log
> 1049: [18] ASFLAGS := -m64 -Wa,--generate-missing-build-notes=yes
> 15005:( /usr/bin/rm -f
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
> && /usr/bin/gcc -c -m64 -Wa,--generate-missing-build-notes=yes -g -o
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o
> /disk/openjdk/upstream-sources/openjdk-head/src/hotspot/os_cpu/linux_x86/linux_x86_64.s
> > >(/usr/bin/tee -a
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log)
> 2> >(/usr/bin/tee -a
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
> >&2) || ( exitcode=$? && /usr/bin/cp
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/make-support/failure-logs/hotspot_variant-server_libjvm_objs_linux_x86_64.o.log
> && /usr/bin/cp
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.cmdline
> /disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/make-support/failure-logs/hotspot_variant-server_libjvm_objs_linux_x86_64.o.cmdline
> && exit $exitcode ) )
>
> I'll run this through jdk/submit before I push.
>
> Thoughts?
>
> Thanks,
> Severin
>
>


More information about the build-dev mailing list