< prev index next >
src/share/vm/opto/castnode.hpp
Print this page
@@ -45,16 +45,16 @@
init_req(1, n);
}
virtual Node* Identity(PhaseGVN* phase);
virtual const Type* Value(PhaseGVN* phase) const;
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
- virtual int Opcode() const;
- virtual uint ideal_reg() const = 0;
+ virtual Opcodes Opcode() const;
+ virtual Opcodes ideal_reg() const = 0;
virtual bool depends_only_on_test() const { return !_carry_dependency; }
bool carry_dependency() const { return _carry_dependency; }
TypeNode* dominating_cast(PhaseTransform *phase) const;
- static Node* make_cast(int opcode, Node* c, Node *n, const Type *t, bool carry_dependency);
+ static Node* make_cast(Opcodes opcode, Node* c, Node *n, const Type *t, bool carry_dependency);
#ifndef PRODUCT
virtual void dump_spec(outputStream *st) const;
#endif
};
@@ -71,12 +71,12 @@
public:
CastIINode(Node* n, const Type* t, bool carry_dependency = false, bool range_check_dependency = false)
: ConstraintCastNode(n, t, carry_dependency), _range_check_dependency(range_check_dependency) {
init_class_id(Class_CastII);
}
- virtual int Opcode() const;
- virtual uint ideal_reg() const { return Op_RegI; }
+ virtual Opcodes Opcode() const;
+ virtual Opcodes ideal_reg() const { return Opcodes::Op_RegI; }
virtual const Type* Value(PhaseGVN* phase) const;
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
const bool has_range_check() {
#ifdef _LP64
return _range_check_dependency;
@@ -96,12 +96,12 @@
class CastPPNode: public ConstraintCastNode {
public:
CastPPNode (Node *n, const Type *t, bool carry_dependency = false)
: ConstraintCastNode(n, t, carry_dependency) {
}
- virtual int Opcode() const;
- virtual uint ideal_reg() const { return Op_RegP; }
+ virtual Opcodes Opcode() const;
+ virtual Opcodes ideal_reg() const { return Opcodes::Op_RegP; }
};
//------------------------------CheckCastPPNode--------------------------------
// for _checkcast, cast pointer to pointer (different type), without JOIN,
class CheckCastPPNode: public ConstraintCastNode {
@@ -112,39 +112,39 @@
init_req(0, c);
}
virtual Node* Identity(PhaseGVN* phase);
virtual const Type* Value(PhaseGVN* phase) const;
- virtual int Opcode() const;
- virtual uint ideal_reg() const { return Op_RegP; }
+ virtual Opcodes Opcode() const;
+ virtual Opcodes ideal_reg() const { return Opcodes::Op_RegP; }
};
//------------------------------CastX2PNode-------------------------------------
// convert a machine-pointer-sized integer to a raw pointer
class CastX2PNode : public Node {
public:
CastX2PNode( Node *n ) : Node(NULL, n) {}
- virtual int Opcode() const;
+ virtual Opcodes Opcode() const;
virtual const Type* Value(PhaseGVN* phase) const;
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
virtual Node* Identity(PhaseGVN* phase);
- virtual uint ideal_reg() const { return Op_RegP; }
+ virtual Opcodes ideal_reg() const { return Opcodes::Op_RegP; }
virtual const Type *bottom_type() const { return TypeRawPtr::BOTTOM; }
};
//------------------------------CastP2XNode-------------------------------------
// Used in both 32-bit and 64-bit land.
// Used for card-marks and unsafe pointer math.
class CastP2XNode : public Node {
public:
CastP2XNode( Node *ctrl, Node *n ) : Node(ctrl, n) {}
- virtual int Opcode() const;
+ virtual Opcodes Opcode() const;
virtual const Type* Value(PhaseGVN* phase) const;
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
virtual Node* Identity(PhaseGVN* phase);
- virtual uint ideal_reg() const { return Op_RegX; }
+ virtual Opcodes ideal_reg() const { return Opcodes::Op_RegX; }
virtual const Type *bottom_type() const { return TypeX_X; }
// Return false to keep node from moving away from an associated card mark.
virtual bool depends_only_on_test() const { return false; }
};
< prev index next >