src/share/vm/opto/matcher.cpp

changeset 6489
50fdb38839eb
parent 6485
da862781b584
child 6490
41b780b43b74
     1.1 --- a/src/share/vm/opto/matcher.cpp	Fri Nov 22 12:14:09 2013 -0800
     1.2 +++ b/src/share/vm/opto/matcher.cpp	Tue Nov 26 18:38:19 2013 -0800
     1.3 @@ -2333,7 +2333,7 @@
     1.4  bool Matcher::post_store_load_barrier(const Node* vmb) {
     1.5    Compile* C = Compile::current();
     1.6    assert(vmb->is_MemBar(), "");
     1.7 -  assert(vmb->Opcode() != Op_MemBarAcquire, "");
     1.8 +  assert(vmb->Opcode() != Op_MemBarAcquire && vmb->Opcode() != Op_LoadFence, "");
     1.9    const MemBarNode* membar = vmb->as_MemBar();
    1.10  
    1.11    // Get the Ideal Proj node, ctrl, that can be used to iterate forward
    1.12 @@ -2378,7 +2378,7 @@
    1.13      if (x->is_MemBar()) {
    1.14        // We must retain this membar if there is an upcoming volatile
    1.15        // load, which will be followed by acquire membar.
    1.16 -      if (xop == Op_MemBarAcquire) {
    1.17 +      if (xop == Op_MemBarAcquire || xop == Op_LoadFence) {
    1.18          return false;
    1.19        } else {
    1.20          // For other kinds of barriers, check by pretending we

mercurial