Mercurial > hg > truffle
comparison 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 |
comparison
equal
deleted
inserted
replaced
1057:f334aec453a1 | 1058:73a726751507 |
---|---|
1919 assert(!valid(), "too complex"); | 1919 assert(!valid(), "too complex"); |
1920 return; | 1920 return; |
1921 } | 1921 } |
1922 // Match AddP(base, AddP(ptr, k*iv [+ invariant]), constant) | 1922 // Match AddP(base, AddP(ptr, k*iv [+ invariant]), constant) |
1923 Node* base = adr->in(AddPNode::Base); | 1923 Node* base = adr->in(AddPNode::Base); |
1924 //unsafe reference could not be aligned appropriately without runtime checking | |
1925 if (base == NULL || base->bottom_type() == Type::TOP) { | |
1926 assert(!valid(), "unsafe access"); | |
1927 return; | |
1928 } | |
1924 for (int i = 0; i < 3; i++) { | 1929 for (int i = 0; i < 3; i++) { |
1925 if (!scaled_iv_plus_offset(adr->in(AddPNode::Offset))) { | 1930 if (!scaled_iv_plus_offset(adr->in(AddPNode::Offset))) { |
1926 assert(!valid(), "too complex"); | 1931 assert(!valid(), "too complex"); |
1927 return; | 1932 return; |
1928 } | 1933 } |