RFR: Add function entry/exit instruments for aarch64

Jie He github.com+10233373+jhe33 at openjdk.java.net
Thu Apr 30 02:12:43 UTC 2020


On Wed, 29 Apr 2020 15:59:37 GMT, Arthur Eubanks <aeubanks at openjdk.org> wrote:

>> Add function entry/exit instruments for aarch64, including 3 places:
>> gernate_normal_entry, generate_native_entry and generate_native_wrapper.
>> 
>> PS, I'm not sure if it's neccessary to instrument tsan into
>> generate_native_wrapper, which is for compiled code. Now just follow x86.
>> In addition, all tsan test cases could pass even though I remove the
>> instruments in generate_native_wrapper.
>
> The commit LGTM, but I have some questions about your comment.
> 
> 1) You mentioned generate_native_entry, but I don't see that in the commit anywhere.
> 2) I think generate_native_wrapper is necessary to make tests like RacyNativeLoopTest.java pass, I'd be surprised if it
> wasn't necessary.

@aeubanks thanks for review.
1, I list generate_native_entry in commit msg because I think the generate_native_entry is the real   entry in JVM we
want to instrument, which will call jvmti interface notify_method_entry/exit.

2, I wast just wondering which case will go generate_native_wrapper, thus, I removed the instruments in
generate_native_wrapper, but all cases still passed. as for RacyNativeLoopTest.java, I add a  breakpoint (int 3) before
tsan instruments in generate_native_wrapper, it couldn't stop the execution. but the breakpoint in
generate_native_entry could.

-------------

PR: https://git.openjdk.java.net/tsan/pull/7


More information about the tsan-dev mailing list