src/share/vm/opto/connode.cpp

changeset 6313
de95063c0e34
parent 6198
55fb97c4c58d
child 6876
710a3c8b516e
child 7394
5b8e0f84f00f
     1.1 --- a/src/share/vm/opto/connode.cpp	Tue Jan 14 17:46:48 2014 -0800
     1.2 +++ b/src/share/vm/opto/connode.cpp	Fri Jan 24 09:31:53 2014 +0100
     1.3 @@ -188,7 +188,7 @@
     1.4  const Type *CMoveNode::Value( PhaseTransform *phase ) const {
     1.5    if( phase->type(in(Condition)) == Type::TOP )
     1.6      return Type::TOP;
     1.7 -  return phase->type(in(IfFalse))->meet(phase->type(in(IfTrue)));
     1.8 +  return phase->type(in(IfFalse))->meet_speculative(phase->type(in(IfTrue)));
     1.9  }
    1.10  
    1.11  //------------------------------make-------------------------------------------
    1.12 @@ -392,14 +392,14 @@
    1.13  //=============================================================================
    1.14  // If input is already higher or equal to cast type, then this is an identity.
    1.15  Node *ConstraintCastNode::Identity( PhaseTransform *phase ) {
    1.16 -  return phase->type(in(1))->higher_equal(_type) ? in(1) : this;
    1.17 +  return phase->type(in(1))->higher_equal_speculative(_type) ? in(1) : this;
    1.18  }
    1.19  
    1.20  //------------------------------Value------------------------------------------
    1.21  // Take 'join' of input and cast-up type
    1.22  const Type *ConstraintCastNode::Value( PhaseTransform *phase ) const {
    1.23    if( in(0) && phase->type(in(0)) == Type::TOP ) return Type::TOP;
    1.24 -  const Type* ft = phase->type(in(1))->filter(_type);
    1.25 +const Type* ft = phase->type(in(1))->filter_speculative(_type);
    1.26  
    1.27  #ifdef ASSERT
    1.28    // Previous versions of this function had some special case logic,
    1.29 @@ -409,7 +409,7 @@
    1.30      {
    1.31        const Type* t1 = phase->type(in(1));
    1.32        if( t1 == Type::TOP )  assert(ft == Type::TOP, "special case #1");
    1.33 -      const Type* rt = t1->join(_type);
    1.34 +      const Type* rt = t1->join_speculative(_type);
    1.35        if (rt->empty())       assert(ft == Type::TOP, "special case #2");
    1.36        break;
    1.37      }

mercurial