[aarch64-port-dev ] AArch64 build is broken

Stuart Monteith stuart.monteith at linaro.org
Thu May 9 16:52:25 UTC 2019


Ah, building with debug, I get the following:

home/stuart.monteith/repos/jdk-mm/src/hotspot/cpu/aarch64/compiledIC_aot_aarch64.cpp:
In member function ‘virtual void
CompiledPltStaticCall::set_to_interpreted(const methodHandle&,
address)’:
/home/stuart.monteith/repos/jdk-mm/src/hotspot/cpu/aarch64/compiledIC_aot_aarch64.cpp:58:34:
error: ‘Universe’ has not been declared
   assert(destination == (address)Universe::non_oop_word()
                                  ^
/home/stuart.monteith/repos/jdk-mm/src/hotspot/share/utilities/debug.hpp:55:9:
note: in definition of macro ‘vmassert’
   if (!(p)) {
         \
         ^
/home/stuart.monteith/repos/jdk-mm/src/hotspot/cpu/aarch64/compiledIC_aot_aarch64.cpp:58:3:
note: in expansion of macro ‘assert’
   assert(destination == (address)Universe::non_oop_word()
   ^~~~~~


On Thu, 9 May 2019 at 17:21, Stefan Karlsson <stefan.karlsson at oracle.com> wrote:
>
> Looks good.
>
> StefanK
>
> On 2019-05-09 16:59, Andrew Haley wrote:
> > I'm testing this patch:
> >
> > diff -r 77e95181b5d6 src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp
> > --- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp      Thu May 09 07:33:28 2019 -0700
> > +++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp      Thu May 09 10:58:02 2019 -0400
> > @@ -27,6 +27,7 @@
> >   #define CPU_AARCH64_MACROASSEMBLER_AARCH64_HPP
> >
> >   #include "asm/assembler.hpp"
> > +#include "oops/compressedOops.hpp"
> >
> >   // MacroAssembler extends Assembler by frequently used macros.
> >   //
> > @@ -85,10 +86,10 @@
> >    public:
> >     MacroAssembler(CodeBuffer* code) : Assembler(code) {
> >       use_XOR_for_compressed_class_base
> > -      = (operand_valid_for_logical_immediate(false /*is32*/,
> > -                                             (uint64_t)Universe::narrow_klass_base())
> > -         && ((uint64_t)Universe::narrow_klass_base()
> > -             > (1UL << log2_intptr(Universe::narrow_klass_range()))));
> > +      = operand_valid_for_logical_immediate
> > +           (/*is32*/false, (uint64_t)CompressedKlassPointers::base())
> > +         && ((uint64_t)CompressedKlassPointers::base()
> > +             > (1UL << log2_intptr(CompressedKlassPointers::range())));
> >     }
> >
> >    // These routines should emit JVMTI PopFrame and ForceEarlyReturn handling code.
> >
>


More information about the aarch64-port-dev mailing list