src/share/vm/opto/idealKit.cpp

changeset 8653
0ffee573412b
parent 6503
a9becfeecd1b
child 8856
ac27a9c85bea
     1.1 --- a/src/share/vm/opto/idealKit.cpp	Mon Nov 21 05:29:59 2016 +0000
     1.2 +++ b/src/share/vm/opto/idealKit.cpp	Wed Nov 23 23:01:34 2016 -0800
     1.3 @@ -368,7 +368,8 @@
     1.4  
     1.5  Node* IdealKit::store(Node* ctl, Node* adr, Node *val, BasicType bt,
     1.6                        int adr_idx,
     1.7 -                      MemNode::MemOrd mo, bool require_atomic_access) {
     1.8 +                      MemNode::MemOrd mo, bool require_atomic_access,
     1.9 +                      bool mismatched) {
    1.10    assert(adr_idx != Compile::AliasIdxTop, "use other store_to_memory factory");
    1.11    const TypePtr* adr_type = NULL;
    1.12    debug_only(adr_type = C->get_adr_type(adr_idx));
    1.13 @@ -379,6 +380,9 @@
    1.14    } else {
    1.15      st = StoreNode::make(_gvn, ctl, mem, adr, adr_type, val, bt, mo);
    1.16    }
    1.17 +  if (mismatched) {
    1.18 +    st->as_Store()->set_mismatched_access();
    1.19 +  }
    1.20    st = transform(st);
    1.21    set_memory(st, adr_idx);
    1.22  

mercurial