[aarch64-port-dev ] Where to find aarch64 builds

Chris Plummer chris.plummer at oracle.com
Thu Feb 9 07:00:46 UTC 2017


Hi Ninfsheng,

The diff follows. Hopefully it builds ok for you. Thanks for helping.

Chris

diff --git a/src/cpu/aarch64/vm/interp_masm_aarch64.hpp 
b/src/cpu/aarch64/vm/interp_masm_aarch64.hpp
--- a/src/cpu/aarch64/vm/interp_masm_aarch64.hpp
+++ b/src/cpu/aarch64/vm/interp_masm_aarch64.hpp
@@ -54,9 +54,6 @@
                              int number_of_arguments,
                              bool check_exceptions);

-  virtual void check_and_handle_popframe(Register java_thread);
-  virtual void check_and_handle_earlyret(Register java_thread);
-
    // base routine for all dispatches
    void dispatch_base(TosState state, address* table, bool verifyoop = 
true);

@@ -67,6 +64,9 @@

    void jump_to_entry(address entry);

+  virtual void check_and_handle_popframe(Register java_thread);
+  virtual void check_and_handle_earlyret(Register java_thread);
+
    // Interpreter-specific registers
    void save_bcp() {
      str(rbcp, Address(rfp, frame::interpreter_frame_bcp_offset * 
wordSize));
diff --git a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp 
b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp
--- a/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp
+++ b/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp
@@ -77,12 +77,6 @@
      bool     check_exceptions          // whether to check for pending 
exceptions after return
    );

-  // These routines should emit JVMTI PopFrame and ForceEarlyReturn 
handling code.
-  // The implementation is only non-empty for the 
InterpreterMacroAssembler,
-  // as only the interpreter handles PopFrame and ForceEarlyReturn 
requests.
-  virtual void check_and_handle_popframe(Register java_thread);
-  virtual void check_and_handle_earlyret(Register java_thread);
-
    void call_VM_helper(Register oop_result, address entry_point, int 
number_of_arguments, bool check_exceptions = true);

    // Maximum size of class area in Metaspace when compressed
@@ -97,6 +91,12 @@
               > (1u << log2_intptr(CompressedClassSpaceSize))));
    }

+ // These routines should emit JVMTI PopFrame and ForceEarlyReturn 
handling code.
+ // The implementation is only non-empty for the InterpreterMacroAssembler,
+ // as only the interpreter handles PopFrame and ForceEarlyReturn requests.
+ virtual void check_and_handle_popframe(Register java_thread);
+ virtual void check_and_handle_earlyret(Register java_thread);
+
    // Biased locking support
    // lock_reg and obj_reg must be loaded up with the appropriate values.
    // swap_reg is killed.
diff --git a/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp 
b/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp
--- a/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp
+++ b/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp
@@ -444,6 +444,10 @@
      __ notify(Assembler::method_reentry);
    }
  #endif
+
+ __ check_and_handle_popframe(rthread);
+ __ check_and_handle_earlyret(rthread);
+
    __ get_dispatch();
    __ dispatch_next(state, step);


On 2/8/17 10:49 PM, Ningsheng Jian wrote:
> Hi Chris,
>
> I can build it for you. Please send me the patch.
>
> Thanks,
> Ningsheng
>
> On 9 February 2017 at 14:42, Chris Plummer <chris.plummer at oracle.com> wrote:
>> Hi Ningsheng,
>>
>> Yes, that worked. Thank you!
>>
>> Now I have another favor to ask. I'm working on a bug fix that needs to be
>> applied to every CPU port. I've been able to reproduce the bug with the
>> aarch64 binary you pointed me to, and now I'd like to verify the fix. The
>> problem is the test is closed so I can't share it with you, and I have no
>> means of building the aarch64 port myself. So I'm looking for a volunteer to
>> apply a patch I have, build it, and point me to the binary so I can test it.
>> If you or someone else on this alias can help me with that, I'd greatly
>> appreciate it.
>>
>> thanks,
>>
>> Chris
>>
>>
>> On 2/8/17 6:24 PM, Ningsheng Jian wrote:
>>> Hi Chris,
>>>
>>> I have a fastdebug build based on latest hs tree. Does it work for you?
>>>
>>> http://people.linaro.org/~ningsheng.jian/packages/jdk-aarch64-img.tar.gz
>>>
>>> Thanks,
>>> Ningsheng
>>>
>>> On 9 February 2017 at 07:28, Chris Plummer <chris.plummer at oracle.com>
>>> wrote:
>>>> Hello,
>>>>
>>>> Can someone point me to an aarch64 debug build. Any JDK9 build that is
>>>> reasonably stable is fine, but it has to be a debug build (not product or
>>>> slowdebug).
>>>>
>>>> thanks,
>>>>
>>>> Chris
>>>>
>>>
>
>



More information about the aarch64-port-dev mailing list