[aarch64-port-dev ] RFR: JDK-8185786: AArch64: disable some address reshapings.
Andrew Haley
aph at redhat.com
Tue Aug 15 13:50:00 UTC 2017
On 14/08/17 22:55, Zhongwei Yao wrote:
> Yeah, it will do the same work. As line 4 has already ensured 'u' is
> MemNode, which is required at line 9. But such implication is easy to
> be ignored, so I make the "u->is_Mem()" checking to be explicit. What
> do you think?
So do this:
// Any use that can't embed the address computation?
for (DUIterator_Fast imax, i = addp->fast_outs(imax); i < imax; i++) {
Node* u = addp->fast_out(i);
if (! u->is_Mem())
return;
if (u->is_LoadVector() || u->is_StoreVector() || u->Opcode() == Op_StoreCM) {
return;
}
if (addp2->in(AddPNode::Offset)->Opcode() != Op_ConvI2L) {
int scale = 1 << addp2->in(AddPNode::Offset)->in(2)->get_int();
if (VM_Version::expensive_load(u->as_Mem()->memory_size(), scale)) {
return;
}
}
}
--
Andrew Haley
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671
More information about the aarch64-port-dev
mailing list