Skip to content

AArch64: Preserve vector registers across helper calls - #14506

Merged
gacholio merged 1 commit into
eclipse-openj9:masterfrom
Akira1Saitoh:aarch64VectorRegHelper
Feb 14, 2022
Merged

AArch64: Preserve vector registers across helper calls#14506
gacholio merged 1 commit into
eclipse-openj9:masterfrom
Akira1Saitoh:aarch64VectorRegHelper

Conversation

@Akira1Saitoh

Copy link
Copy Markdown
Contributor

Preserve vector registers across helper calls.
Split helper functions into two categories as other platform do.
For method invocation helpers, we save parameter FPRs only.
For other helpers, we save all 128-bit vector registers.

This implementation is based on x.

Resolves #12179.

Signed-off-by: Akira Saitoh saiaki@jp.ibm.com

@Akira1Saitoh

Copy link
Copy Markdown
Contributor Author

@gacholio @knn-k Can you please review this PR? Thanks.

Comment thread runtime/codert_vm/arm64nathelp.m4 Outdated
Comment thread runtime/oti/arm64helpers.m4 Outdated
Preserve vector registers across helper calls.
Split helper functions into two categories as other platform do.
For method invocation helpers, we save parameter FPRs only.
For other helpers, we save all 128-bit vector registers.

Signed-off-by: Akira Saitoh <saiaki@jp.ibm.com>
@Akira1Saitoh
Akira1Saitoh force-pushed the aarch64VectorRegHelper branch from a6f7b6f to be054d4 Compare February 14, 2022 06:44
@knn-k

knn-k commented Feb 14, 2022

Copy link
Copy Markdown
Contributor

jenkins test sanity alinux64 jdk17

@knn-k

knn-k commented Feb 14, 2022

Copy link
Copy Markdown
Contributor

@gacholio Do you have any comments? Thanks.

@gacholio gacholio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other platforms perform a capability check in order to enable vector support. I assume all supported ARM hardware has this support so there's no need for the runtime check?

@gacholio
gacholio merged commit f1a8358 into eclipse-openj9:master Feb 14, 2022
@Akira1Saitoh

Copy link
Copy Markdown
Contributor Author

Yes, all supported ARM hardware has 128-bit length vector registers, so we do not need the runtime check.

@Akira1Saitoh
Akira1Saitoh deleted the aarch64VectorRegHelper branch February 15, 2022 00:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AArch64: Preserve vector registers across JIT helpers

3 participants