8299683: [S390X] Problems with -XX:+VerifyStack#12161
8299683: [S390X] Problems with -XX:+VerifyStack#12161sid8606 wants to merge 3 commits intoopenjdk:masterfrom
Conversation
|
Hi @sid8606, welcome to this OpenJDK project and thanks for contributing! We do not recognize you as Contributor and need to ensure you have signed the Oracle Contributor Agreement (OCA). If you have not signed the OCA, please follow the instructions. Please fill in your GitHub username in the "Username" field of the application. Once you have signed the OCA, please let us know by writing If you already are an OpenJDK Author, Committer or Reviewer, please click here to open a new issue so that we can record that fact. Please use "Add GitHub user sid8606" as summary for the issue. If you are contributing this work on behalf of your employer and your employer has signed the OCA, please let us know by writing |
|
/covered |
|
Thank you! Please allow for a few business days to verify that your employer has signed the OCA. Also, please note that pull requests that are pending an OCA check will not usually be evaluated, so your patience is appreciated! |
Webrevs
|
|
|
||
| // let the unpacker layout information in the skeletal frames just allocated. | ||
| __ get_PC(Z_RET); | ||
| offs = __ offset(); |
There was a problem hiding this comment.
Shouldn't we use the offset from above instead of the current one? (PPC64 does that.) I think this line should get removed.
There was a problem hiding this comment.
I have tried that using same offset from above instead current one but it's not pointing to correct PC for oop Maps.
There was a problem hiding this comment.
Setting last_Java_pc = pc() + current offset looks weird. Could it be that this breaks something which prevents the failure from happening? E.g. pointing to somewhere outside the deopt blob?
There was a problem hiding this comment.
I think you can't use this get_PC version for the intended purpose. It doesn't set Z_RET = start pc + offs which is what you probably wanted.
There was a problem hiding this comment.
if Z_RET = start pc + offs can not be used then let me explore on how to get that offset on s390x.
There was a problem hiding this comment.
I think something like __ get_PC(Z_RET, oop_map_offs - __ offset()); should work with oop_map_offs taken from above where the add_gc_map is used.
There was a problem hiding this comment.
@TheRealMDoerr I have tried your suggestion and it' s works. I am not seeing any regressions. Added a commit for this change.
| // `Deoptimization::uncommon_trap' expects it and considers its | ||
| // sender frame as the deoptee frame. | ||
| __ get_PC(Z_R1_scratch); | ||
| int offs = __ offset(); |
There was a problem hiding this comment.
generate_uncommon_trap_blob() has no oop_maps on s390. Most other platforms have them. I think this part of the change doesn't make sense without oop_maps.
There was a problem hiding this comment.
Thanks for your comments, I have Addressed this comment in another commit.
Remove offset changes from generate_uncommon_trap_blob stub as it has no oop_maps on s390x.
|
@sid8606 This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 236 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@TheRealMDoerr, @RealLucy) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
RealLucy
left a comment
There was a problem hiding this comment.
Change looks good to me.
Thank you for getting this straight!
|
/integrate |
|
/sponsor I decided to sponsor since @TheRealMDoerr is currently on and off. |
|
Going to push as commit 9c80b8a.
Your commit was automatically rebased without conflicts. |
Deoptimization and uncommon trap stubs require last Java PC to point to a PC which has an appropriate OopMap. Adjusting a offset for PC in last java frame.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk pull/12161/head:pull/12161$ git checkout pull/12161Update a local copy of the PR:
$ git checkout pull/12161$ git pull https://git.openjdk.org/jdk pull/12161/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 12161View PR using the GUI difftool:
$ git pr show -t 12161Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/12161.diff