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

Improve VectorAPI Expansion IL transformation phase #21013

Merged
merged 1 commit into from
Jan 27, 2025

Conversation

gita-omr
Copy link
Contributor

  • only use elementType, vectorBitLength, and objectType info calculated during analysis phase (e.g. don't analyze nodes again)
  • use objectType info when selecting opcode to distinguish between Vector and Mask operations. For example, some binary operations can be for vectors and for masks and require different opcodes
  • since we don't determine object type during the transformation phase, do it during the analysis phase for load and store intrinsics

- only use elementType, vectorBitLength, and objectType info
  calculated during analysis phase (e.g. don't analyze nodes again)
- use objectType info when selecting opcode to distinguish between
  Vector and Mask operations. For example, some binary operations
  can be for vectors and for masks and require different opcodes
- since we don't determine object type during the transformation
  phase, do it during the analysis phase for load and store intrinsics
@gita-omr
Copy link
Contributor Author

This is the same as #20972 but with a fix for #20995

@gita-omr gita-omr requested a review from knn-k January 24, 2025 20:40
if (_aliasTable[methodRefNum]._objectType == Unknown &&
isVectorAPICall)
{
if (methodSymbol->getRecognizedMethod() == TR::jdk_internal_vm_vector_VectorSupport_load ||
methodSymbol->getRecognizedMethod() == TR::jdk_internal_vm_vector_VectorSupport_store ||
Copy link
Contributor

Choose a reason for hiding this comment

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

This line seems to be the only difference from PR #20972.

@knn-k
Copy link
Contributor

knn-k commented Jan 27, 2025

Jenkins test sanity xlinux jdk21

@knn-k knn-k self-assigned this Jan 27, 2025
@knn-k knn-k added the comp:jit label Jan 27, 2025
@knn-k knn-k merged commit a203f38 into eclipse-openj9:master Jan 27, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants