--- a/hotspot/src/share/vm/opto/connode.hpp Wed Apr 23 13:57:14 2008 -0700
+++ b/hotspot/src/share/vm/opto/connode.hpp Wed Apr 23 19:09:16 2008 -0700
@@ -239,10 +239,7 @@
// cast pointer to pointer (different type)
class CastPPNode: public ConstraintCastNode {
public:
- CastPPNode (Node *n, const Type *t ): ConstraintCastNode(n, t) {
- // Only CastPP is safe. CastII can cause optimizer loops.
- init_flags(Flag_is_dead_loop_safe);
- }
+ CastPPNode (Node *n, const Type *t ): ConstraintCastNode(n, t) {}
virtual int Opcode() const;
virtual uint ideal_reg() const { return Op_RegP; }
virtual Node *Ideal_DU_postCCP( PhaseCCP * );
@@ -254,10 +251,10 @@
public:
CheckCastPPNode( Node *c, Node *n, const Type *t ) : TypeNode(t,2) {
init_class_id(Class_CheckCastPP);
- init_flags(Flag_is_dead_loop_safe);
init_req(0, c);
init_req(1, n);
}
+
virtual Node *Identity( PhaseTransform *phase );
virtual const Type *Value( PhaseTransform *phase ) const;
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);