1.1 --- a/src/share/vm/opto/connode.hpp Thu Jul 03 11:01:32 2008 -0700 1.2 +++ b/src/share/vm/opto/connode.hpp Fri Jul 11 01:14:44 2008 -0700 1.3 @@ -280,7 +280,6 @@ 1.4 virtual const Type *Value( PhaseTransform *phase ) const; 1.5 virtual uint ideal_reg() const { return Op_RegN; } 1.6 1.7 - static Node* encode(PhaseTransform* phase, Node* value); 1.8 virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp ); 1.9 }; 1.10 1.11 @@ -300,8 +299,6 @@ 1.12 virtual Node *Identity( PhaseTransform *phase ); 1.13 virtual const Type *Value( PhaseTransform *phase ) const; 1.14 virtual uint ideal_reg() const { return Op_RegP; } 1.15 - 1.16 - static Node* decode(PhaseTransform* phase, Node* value); 1.17 }; 1.18 1.19 //------------------------------Conv2BNode------------------------------------- 1.20 @@ -549,10 +546,18 @@ 1.21 virtual uint hash() const ; // { return NO_HASH; } 1.22 virtual uint cmp( const Node &n ) const; 1.23 public: 1.24 - Opaque1Node( Node *n ) : Node(0,n) {} 1.25 + Opaque1Node( Compile* C, Node *n ) : Node(0,n) { 1.26 + // Put it on the Macro nodes list to removed during macro nodes expansion. 1.27 + init_flags(Flag_is_macro); 1.28 + C->add_macro_node(this); 1.29 + } 1.30 // Special version for the pre-loop to hold the original loop limit 1.31 // which is consumed by range check elimination. 1.32 - Opaque1Node( Node *n, Node* orig_limit ) : Node(0,n,orig_limit) {} 1.33 + Opaque1Node( Compile* C, Node *n, Node* orig_limit ) : Node(0,n,orig_limit) { 1.34 + // Put it on the Macro nodes list to removed during macro nodes expansion. 1.35 + init_flags(Flag_is_macro); 1.36 + C->add_macro_node(this); 1.37 + } 1.38 Node* original_loop_limit() { return req()==3 ? in(2) : NULL; } 1.39 virtual int Opcode() const; 1.40 virtual const Type *bottom_type() const { return TypeInt::INT; } 1.41 @@ -572,7 +577,11 @@ 1.42 virtual uint hash() const ; // { return NO_HASH; } 1.43 virtual uint cmp( const Node &n ) const; 1.44 public: 1.45 - Opaque2Node( Node *n ) : Node(0,n) {} 1.46 + Opaque2Node( Compile* C, Node *n ) : Node(0,n) { 1.47 + // Put it on the Macro nodes list to removed during macro nodes expansion. 1.48 + init_flags(Flag_is_macro); 1.49 + C->add_macro_node(this); 1.50 + } 1.51 virtual int Opcode() const; 1.52 virtual const Type *bottom_type() const { return TypeInt::INT; } 1.53 };