src/share/vm/opto/machnode.hpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
7069452 Cdiff src/share/vm/opto/machnode.hpp
src/share/vm/opto/machnode.hpp
Print this page
*** 273,285 ****
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 );
--- 273,282 ----
*** 523,533 ****
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;
--- 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);
add_req(ctrl);
add_req(memop);
}
virtual void emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const;
*** 552,562 ****
// 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) {}
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
--- 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 ****
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
--- 637,652 ----
*** 700,710 ****
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;
--- 706,715 ----
src/share/vm/opto/machnode.hpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File