src/share/vm/opto/machnode.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/machnode.hpp	Tue Jul 26 19:26:59 2011
--- new/src/share/vm/opto/machnode.hpp	Tue Jul 26 19:26:59 2011

*** 273,285 **** --- 273,282 ---- virtual void negate(); // Apply peephole rule(s) to this instruction virtual MachNode *peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C ); // Check for PC-Relative addressing bool is_pc_relative() const { return (flags() & Flag_is_pc_relative) != 0; } // Top-level ideal Opcode matched virtual int ideal_Opcode() const { return Op_Node; } // Set the branch inside jump MachNodes. Error for non-branch Nodes. virtual void label_set( Label* label, uint block_num );
*** 523,533 **** --- 520,530 ---- class MachNullCheckNode : public MachIdealNode { public: const uint _vidx; // Index of memop being tested MachNullCheckNode( Node *ctrl, Node *memop, uint vidx ) : MachIdealNode(), _vidx(vidx) { init_class_id(Class_MachNullCheck); - init_flags(Flag_is_Branch | Flag_is_pc_relative); add_req(ctrl); add_req(memop); } virtual void emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const;
*** 552,562 **** --- 549,561 ---- // of the Matcher process, but the Matcher is ill suited to issues involving // frame handling, so frame handling is all done in the Ideal world with // occasional callbacks to the machine model for important info. class MachProjNode : public ProjNode { public: - MachProjNode( Node *multi, uint con, const RegMask &out, uint ideal_reg ) : ProjNode(multi,con), _rout(out), _ideal_reg(ideal_reg) {} + init_class_id(Class_MachProj); + } RegMask _rout; const uint _ideal_reg; enum projType { unmatched_proj = 0, // Projs for Control, I/O, memory not matched fat_proj = 999 // Projs killing many regs, defined by _rout
*** 587,596 **** --- 586,604 ---- #ifndef PRODUCT virtual void dump_spec(outputStream *st) const; #endif }; + //------------------------------MachGotoNode----------------------------------- + // Machine-specific versions of GotoNodes + class MachGotoNode : public MachNode { + public: + MachGotoNode() : MachNode() { + init_class_id(Class_MachGoto); + } + }; + //------------------------------MachFastLockNode------------------------------------- // Machine-specific versions of FastLockNodes class MachFastLockNode : public MachNode { virtual uint size_of() const { return sizeof(*this); } // Size is bigger public:
*** 629,646 **** --- 637,652 ---- OopMap* oop_map() const { return _oop_map; } void set_oop_map(OopMap* om) { _oop_map = om; } MachSafePointNode() : MachReturnNode(), _oop_map(NULL), _jvms(NULL), _jvmadj(0) { init_class_id(Class_MachSafePoint); init_flags(Flag_is_safepoint_node); } virtual JVMState* jvms() const { return _jvms; } void set_jvms(JVMState* s) { _jvms = s; } bool is_safepoint_node() const { return (flags() & Flag_is_safepoint_node) != 0; } virtual const Type *bottom_type() const; virtual const RegMask &in_RegMask(uint) const; // Functionality from old debug nodes
*** 700,710 **** --- 706,715 ---- void set_cnt(float c) { _cnt = c; } void set_argsize(int s) { _argsize = s; } MachCallNode() : MachSafePointNode() { init_class_id(Class_MachCall); init_flags(Flag_is_Call); } virtual const Type *bottom_type() const; virtual bool pinned() const { return false; } virtual const Type *Value( PhaseTransform *phase ) const;

src/share/vm/opto/machnode.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File