Skip to content

Commit

Permalink
Merge pull request #20945 from rmnattas/oh-arrstore
Browse files Browse the repository at this point in the history
Use correct arrayBaseNode in BoolArrayStoreTransformer for OffHeap
  • Loading branch information
zl-wang authored Jan 18, 2025
2 parents 22d7dcc + 7fbc11c commit c1949d7
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions runtime/compiler/optimizer/BoolArrayStoreTransformer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -728,6 +728,10 @@ void TR_BoolArrayStoreTransformer::transformUnknownTypeArrayStore()
TR::Node *bstoreiNode = *it;
dumpOptDetails(comp(), "%s transform value child of bstorei node of unknown type n%dn\n", OPT_DETAILS, bstoreiNode->getGlobalIndex());
TR::Node *arrayBaseNode = bstoreiNode->getFirstChild()->getFirstChild();
#if defined(J9VM_GC_SPARSE_HEAP_ALLOCATION)
if (arrayBaseNode->isDataAddrPointer())
arrayBaseNode = arrayBaseNode->getFirstChild();
#endif /* J9VM_GC_SPARSE_HEAP_ALLOCATION */
TR::Node *vft = TR::Node::createWithSymRef(TR::aloadi, 1, 1, arrayBaseNode, comp()->getSymRefTab()->findOrCreateVftSymbolRef());
TR::Node *aconstNode = TR::Node::aconst(bstoreiNode, j9class);
aconstNode->setIsClassPointerConstant(true);
Expand Down

0 comments on commit c1949d7

Please sign in to comment.