Mercurial > hg > truffle
diff src/share/vm/opto/macro.cpp @ 216:8d191a7697e2
6715633: when matching a memory node the adr_type should not change
Summary: verify the adr_type of a mach node was not changed
Reviewed-by: rasbold, never
author | kvn |
---|---|
date | Fri, 20 Jun 2008 11:10:05 -0700 |
parents | 7793bd37a336 |
children | 1e026f8da827 |
line wrap: on
line diff
--- a/src/share/vm/opto/macro.cpp Fri Jun 20 10:17:09 2008 -0700 +++ b/src/share/vm/opto/macro.cpp Fri Jun 20 11:10:05 2008 -0700 @@ -1674,7 +1674,14 @@ success = eliminate_locking_node(n->as_AbstractLock()); break; default: - assert(false, "unknown node type in macro list"); + if (n->Opcode() == Op_Opaque1 || n->Opcode() == Op_Opaque2) { + _igvn.add_users_to_worklist(n); + _igvn.hash_delete(n); + _igvn.subsume_node(n, n->in(1)); + success = true; + } else { + assert(false, "unknown node type in macro list"); + } } assert(success == (C->macro_count() < old_macro_count), "elimination reduces macro count"); progress = progress || success;