-
Notifications
You must be signed in to change notification settings - Fork 396
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
Add zNext support #7525
base: master
Are you sure you want to change the base?
Add zNext support #7525
Conversation
Changes in this commit adds support for zNext instructions as well as adds processor recognition and facility checks. Signed-off-by: Spencer Comin <[email protected]>
Emulating the instructions when support is not availble on hardware allows testing of exploitation that uses zNext instructions on older IBM Z hardware. Changes in this commits adds necessary changes for emulating zNext instructions. Signed-off-by: Spencer Comin <[email protected]>
Adds support for generating load indexed address instructions for the add tree in axaddEvaluator when the tree has the correct shape. Signed-off-by: Spencer Comin <[email protected]>
Changes in this commit adds exploitation of Count leading and trailing zeros on zNext for opcodes i/lnolz and i/lnotz respectively. Apart from using the zNext instructions for these opcodes, this commit also adds supporting changes to enable zNext emulation for these zNext instructions. Signed-off-by: Dhruv Chopra <[email protected]>
Accelerate Integer.expand, Integer.compress, Long.expand, and Long.compress using the BDEPG and BEXTG instructions in zNext. Signed-off-by: Spencer Comin <[email protected]>
Moving canEmulate enables us to check if emulation is enabled and if the instruction op code supports emulation through a single call. Signed-off-by: Shubham Verma <[email protected]>
Accelerate DAA ExternalDecimal.checkExternalDecimal api for verifying Zoned/External decimals using zNext instruction, Vector Test Zoned. This commit also includes changes required for generating Vector Test Zoned instruction. Signed-off-by: Shubham Verma <[email protected]>
@joransiu @0xdaryl Can we please get review on these changes ? This PR should be merge with OpenJ9 PR : eclipse-openj9/openj9#20507 |
I can review for general structural correctness, but for the actual architectural changes I will defer to Joran's expertise. |
*/ | ||
bool yankIndexScalingOp() | ||
{ | ||
return false; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should probably return arch < zNext or check for LXA
support instead of always returning false
Changes in this PR adds following supporting changes for zNext processor and its
exploitation.
-Adds support for generating load indexed address instructions for the
add tree in axaddEvaluator when the tree has the correct shape.
OpenJ9.