equal
deleted
inserted
replaced
728 enum {SCMEMPROJCON = (uint)-2}; |
728 enum {SCMEMPROJCON = (uint)-2}; |
729 SCMemProjNode( Node *src) : ProjNode( src, SCMEMPROJCON) { } |
729 SCMemProjNode( Node *src) : ProjNode( src, SCMEMPROJCON) { } |
730 virtual int Opcode() const; |
730 virtual int Opcode() const; |
731 virtual bool is_CFG() const { return false; } |
731 virtual bool is_CFG() const { return false; } |
732 virtual const Type *bottom_type() const {return Type::MEMORY;} |
732 virtual const Type *bottom_type() const {return Type::MEMORY;} |
733 virtual const TypePtr *adr_type() const { return in(0)->in(MemNode::Memory)->adr_type();} |
733 virtual const TypePtr *adr_type() const { |
|
734 Node* ctrl = in(0); |
|
735 if (ctrl == NULL) return NULL; // node is dead |
|
736 return ctrl->in(MemNode::Memory)->adr_type(); |
|
737 } |
734 virtual uint ideal_reg() const { return 0;} // memory projections don't have a register |
738 virtual uint ideal_reg() const { return 0;} // memory projections don't have a register |
735 virtual const Type *Value( PhaseTransform *phase ) const; |
739 virtual const Type *Value( PhaseTransform *phase ) const; |
736 #ifndef PRODUCT |
740 #ifndef PRODUCT |
737 virtual void dump_spec(outputStream *st) const {}; |
741 virtual void dump_spec(outputStream *st) const {}; |
738 #endif |
742 #endif |