equal
deleted
inserted
replaced
33 // cast to a different range |
33 // cast to a different range |
34 class ConstraintCastNode: public TypeNode { |
34 class ConstraintCastNode: public TypeNode { |
35 protected: |
35 protected: |
36 // Can this node be removed post CCP or does it carry a required dependency? |
36 // Can this node be removed post CCP or does it carry a required dependency? |
37 const bool _carry_dependency; |
37 const bool _carry_dependency; |
38 virtual uint cmp( const Node &n ) const; |
38 virtual bool cmp( const Node &n ) const; |
39 virtual uint size_of() const; |
39 virtual uint size_of() const; |
40 |
40 |
41 public: |
41 public: |
42 ConstraintCastNode(Node *n, const Type *t, bool carry_dependency) |
42 ConstraintCastNode(Node *n, const Type *t, bool carry_dependency) |
43 : TypeNode(t,2), _carry_dependency(carry_dependency) { |
43 : TypeNode(t,2), _carry_dependency(carry_dependency) { |
63 // cast integer to integer (different range) |
63 // cast integer to integer (different range) |
64 class CastIINode: public ConstraintCastNode { |
64 class CastIINode: public ConstraintCastNode { |
65 protected: |
65 protected: |
66 // Is this node dependent on a range check? |
66 // Is this node dependent on a range check? |
67 const bool _range_check_dependency; |
67 const bool _range_check_dependency; |
68 virtual uint cmp(const Node &n) const; |
68 virtual bool cmp(const Node &n) const; |
69 virtual uint size_of() const; |
69 virtual uint size_of() const; |
70 |
70 |
71 public: |
71 public: |
72 CastIINode(Node* n, const Type* t, bool carry_dependency = false, bool range_check_dependency = false) |
72 CastIINode(Node* n, const Type* t, bool carry_dependency = false, bool range_check_dependency = false) |
73 : ConstraintCastNode(n, t, carry_dependency), _range_check_dependency(range_check_dependency) { |
73 : ConstraintCastNode(n, t, carry_dependency), _range_check_dependency(range_check_dependency) { |