Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use JVM_VirtualThread* functions correctly with Virtual Threads #15755

Merged
merged 1 commit into from
Sep 9, 2022

Conversation

babsingh
Copy link
Contributor

@babsingh babsingh commented Aug 19, 2022

Addresses the issue from #15704 (comment).

Converted javanextvmi.c to a CPP file for including VMHelpers.hpp.

Depends on ibmruntimes/openj9-openjdk-jdk19#23.

Signed-off-by: Babneet Singh sbabneet@ca.ibm.com

runtime/oti/vmconstantpool.xml Outdated Show resolved Hide resolved
runtime/j9vm/javanextvmi.c Outdated Show resolved Hide resolved
runtime/j9vm/javanextvmi.c Outdated Show resolved Hide resolved
@babsingh babsingh changed the title Use JVM_VirtualThread* correctly with Virtual Threads Use JVM_VirtualThread* functions correctly with Virtual Threads Aug 19, 2022
@babsingh
Copy link
Contributor Author

babsingh commented Aug 19, 2022

  • Only the Use JVM_VirtualThread* functions correctly with Virtual Threads commit is part of this PR.
  • I have locally tested these changes ... they work.
  • This PR is built on top of Block Virtual Threads for JVMTI Inspection #15690 in order to avoid merge conflicts.
  • Once Block Virtual Threads for JVMTI Inspection #15690 is merged, this PR will need to be rebased.
  • I got errors after including VMHelpers.hpp in javanextvmi.c. So, I ended up duplicating the code for pushObjectInSpecialFrame and popObjectInSpecialFrame in javanextvmi.c. @keithc-ca Let us know if you have a better fix for it.
  • I will be on leave till 31 Aug 22. @EricYangIBM If you have spare cycles before your last day (next Friday), please help with incorporating any new feedback, rebasing and merging this PR. Otherwise, delegate to @hangshao0 or @tajila.

@keithc-ca
Copy link
Contributor

I think we want to avoid

duplicating the code for pushObjectInSpecialFrame and popObjectInSpecialFrame in javanextvmi.c

I'll have a look at that.

@keithc-ca
Copy link
Contributor

I expect the problem is that VMHelpers.hpp is only expected to be included in C++ code; we'll need to rename javanextvmi.c to javanextvmi.cpp and adjust the contents for C++.

@keithc-ca
Copy link
Contributor

We will also want a repeat of ibmruntimes/openj9-openjdk-jdk19#23 for jdknext.

@babsingh
Copy link
Contributor Author

babsingh commented Sep 8, 2022

@babsingh babsingh force-pushed the loom_jvmti_3 branch 2 times, most recently from 1665394 to f792fb2 Compare September 8, 2022 04:20
@babsingh
Copy link
Contributor Author

babsingh commented Sep 8, 2022

jenkins test sanity win,xlinux jdk11,jdk19

@babsingh
Copy link
Contributor Author

babsingh commented Sep 8, 2022

@hangshao0 Only code has been moved from thread.cpp to javanextvmi.cpp. All other changes are needed to support the code move. Core functionality should not be impacted by these changes.

runtime/j9vm/javanextvmi.cpp Outdated Show resolved Hide resolved
runtime/j9vm/javanextvmi.cpp Outdated Show resolved Hide resolved
runtime/j9vm/javanextvmi.cpp Show resolved Hide resolved
See comments at the end of eclipse-openj9#15704 for more details.

Converted javanextvmi.c to a CPP file for including VMHelpers.hpp.

Depends on ibmruntimes/openj9-openjdk-jdk19#23.

Signed-off-by: Babneet Singh <sbabneet@ca.ibm.com>
@babsingh
Copy link
Contributor Author

babsingh commented Sep 8, 2022

@tajila please review/merge.

@tajila
Copy link
Contributor

tajila commented Sep 8, 2022

jenkins test sanity win,amac jdk19

@tajila tajila merged commit aaf6554 into eclipse-openj9:master Sep 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants