8068054: AARCH64: Assembler interpreter, shared runtime

Roland Westrelin roland.westrelin at oracle.com
Wed Jan 7 14:54:18 UTC 2015


> http://cr.openjdk.java.net/~aph/aarch64-8068054-1/

That looks good to me. A few minor things I spotted:

assembler_aarch64.cpp

Typo:

45 // and decode functiosn

I guess you want that removed:

  50 // #include "gc_interface/collectedHeap.inline.hpp"
  51 // #include "interpreter/interpreter.hpp"
  52 // #include "memory/cardTableModRefBS.hpp"
  53 // #include "prims/methodHandles.hpp"
  54 // #include "runtime/biasedLocking.hpp"
  55 // #include "runtime/interfaceSupport.hpp"
  56 // #include "runtime/objectMonitor.hpp"
  57 // #include "runtime/os.hpp"
  58 // #include "runtime/sharedRuntime.hpp"
  59 // #include "runtime/stubRoutines.hpp"
  60 // #if INCLUDE_ALL_GCS
  61 // #include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
  62 // #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp"
  63 // #include "gc_implementation/g1/heapRegion.hpp"
  64 // #endif

Should not be indented:

1408   // An "all-purpose" add/subtract immediate, per ARM documentation:
1409   // A "programmer-friendly" assembler may accept a negative immediate
1410   // between -(2^24 -1) and -1 inclusive, causing it to convert a
1411   // requested ADD operation to a SUB, or vice versa, and then encode
1412   // the absolute value of the immediate as for uimm24.

bytecodeInterpreter_aarch64.cpp

This can’t be needed, right?

  45 #ifdef TARGET_ARCH_MODEL_x86_32
  46 # include "interp_masm_x86_32.hpp"
  47 #endif
  48 #ifdef TARGET_ARCH_MODEL_x86_64
  49 # include "interp_masm_x86_64.hpp"
  50 #endif

stubRoutines_aarch64.cpp

How come you need crc_table?

templateTable_aarch64.cpp

50   // No amd64 specific initialization

Roland.



More information about the hotspot-dev mailing list