Mercurial > hg > truffle
diff src/share/vm/opto/superword.cpp @ 1058:73a726751507
6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash
Summary: Disable SuperWord optimization for unsafe read/write
Reviewed-by: kvn, phh
author | cfang |
---|---|
date | Fri, 30 Oct 2009 10:12:52 -0700 |
parents | 00977607da34 |
children | c18cbe5936b8 |
line wrap: on
line diff
--- a/src/share/vm/opto/superword.cpp Thu Oct 29 16:57:55 2009 -0700 +++ b/src/share/vm/opto/superword.cpp Fri Oct 30 10:12:52 2009 -0700 @@ -1921,6 +1921,11 @@ } // Match AddP(base, AddP(ptr, k*iv [+ invariant]), constant) Node* base = adr->in(AddPNode::Base); + //unsafe reference could not be aligned appropriately without runtime checking + if (base == NULL || base->bottom_type() == Type::TOP) { + assert(!valid(), "unsafe access"); + return; + } for (int i = 0; i < 3; i++) { if (!scaled_iv_plus_offset(adr->in(AddPNode::Offset))) { assert(!valid(), "too complex");