Mercurial > hg > graal-compiler
changeset 544:82a980778b92
6793828: G1: invariant: queues are empty when activated
Reviewed-by: jrose, kvn
author | never |
---|---|
date | Thu, 05 Feb 2009 11:42:10 -0800 |
parents | a268411445d9 |
children | 58054a18d735 |
files | src/share/vm/opto/graphKit.cpp src/share/vm/opto/memnode.cpp |
diffstat | 2 files changed, 4 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/opto/graphKit.cpp Wed Feb 04 15:42:52 2009 -0800 +++ b/src/share/vm/opto/graphKit.cpp Thu Feb 05 11:42:10 2009 -0800 @@ -3233,12 +3233,11 @@ // Now some of the values - Node* marking = __ load(no_ctrl, marking_adr, TypeInt::INT, active_type, Compile::AliasIdxRaw); - Node* index = __ load(no_ctrl, index_adr, TypeInt::INT, T_INT, Compile::AliasIdxRaw); - Node* buffer = __ load(no_ctrl, buffer_adr, TypeRawPtr::NOTNULL, T_ADDRESS, Compile::AliasIdxRaw); + Node* marking = __ load(__ ctrl(), marking_adr, TypeInt::INT, active_type, Compile::AliasIdxRaw); // if (!marking) __ if_then(marking, BoolTest::ne, zero); { + Node* index = __ load(__ ctrl(), index_adr, TypeInt::INT, T_INT, Compile::AliasIdxRaw); const Type* t1 = adr->bottom_type(); const Type* t2 = val->bottom_type(); @@ -3246,6 +3245,7 @@ Node* orig = __ load(no_ctrl, adr, val_type, bt, alias_idx); // if (orig != NULL) __ if_then(orig, BoolTest::ne, null()); { + Node* buffer = __ load(__ ctrl(), buffer_adr, TypeRawPtr::NOTNULL, T_ADDRESS, Compile::AliasIdxRaw); // load original value // alias_idx correct??
--- a/src/share/vm/opto/memnode.cpp Wed Feb 04 15:42:52 2009 -0800 +++ b/src/share/vm/opto/memnode.cpp Thu Feb 05 11:42:10 2009 -0800 @@ -1303,6 +1303,7 @@ Node* base = AddPNode::Ideal_base_and_offset(address, phase, ignore); if (base != NULL && phase->type(base)->higher_equal(TypePtr::NOTNULL) + && phase->C->get_alias_index(phase->type(address)->is_ptr()) != Compile::AliasIdxRaw && all_controls_dominate(base, phase->C->start())) { // A method-invariant, non-null address (constant or 'this' argument). set_req(MemNode::Control, NULL);