< prev index next >

src/hotspot/share/opto/machnode.hpp

Print this page




 733 #endif
 734 };
 735 
 736 //------------------------------MachIfNode-------------------------------------
 737 // Machine-specific versions of IfNodes
 738 class MachIfNode : public MachBranchNode {
 739   virtual uint size_of() const { return sizeof(*this); } // Size is bigger
 740 public:
 741   float _prob;                  // Probability branch goes either way
 742   float _fcnt;                  // Frequency counter
 743   MachIfNode() : MachBranchNode() {
 744     init_class_id(Class_MachIf);
 745   }
 746   // Negate conditional branches.
 747   virtual void negate() = 0;
 748 #ifndef PRODUCT
 749   virtual void dump_spec(outputStream *st) const;
 750 #endif
 751 };
 752 










 753 //------------------------------MachGotoNode-----------------------------------
 754 // Machine-specific versions of GotoNodes
 755 class MachGotoNode : public MachBranchNode {
 756 public:
 757   MachGotoNode() : MachBranchNode() {
 758     init_class_id(Class_MachGoto);
 759   }
 760 };
 761 
 762 //------------------------------MachFastLockNode-------------------------------------
 763 // Machine-specific versions of FastLockNodes
 764 class MachFastLockNode : public MachNode {
 765   virtual uint size_of() const { return sizeof(*this); } // Size is bigger
 766 public:
 767   BiasedLockingCounters*        _counters;
 768   RTMLockingCounters*       _rtm_counters; // RTM lock counters for inflated locks
 769   RTMLockingCounters* _stack_rtm_counters; // RTM lock counters for stack locks
 770   MachFastLockNode() : MachNode() {}
 771 };
 772 




 733 #endif
 734 };
 735 
 736 //------------------------------MachIfNode-------------------------------------
 737 // Machine-specific versions of IfNodes
 738 class MachIfNode : public MachBranchNode {
 739   virtual uint size_of() const { return sizeof(*this); } // Size is bigger
 740 public:
 741   float _prob;                  // Probability branch goes either way
 742   float _fcnt;                  // Frequency counter
 743   MachIfNode() : MachBranchNode() {
 744     init_class_id(Class_MachIf);
 745   }
 746   // Negate conditional branches.
 747   virtual void negate() = 0;
 748 #ifndef PRODUCT
 749   virtual void dump_spec(outputStream *st) const;
 750 #endif
 751 };
 752 
 753 //------------------------------MachJumpNode-----------------------------------
 754 // Machine-specific versions of JumpNodes
 755 class MachJumpNode : public MachConstantNode {
 756 public:
 757   float* _probs;
 758   MachJumpNode() : MachConstantNode() {
 759     init_class_id(Class_MachJump);
 760   }
 761 };
 762 
 763 //------------------------------MachGotoNode-----------------------------------
 764 // Machine-specific versions of GotoNodes
 765 class MachGotoNode : public MachBranchNode {
 766 public:
 767   MachGotoNode() : MachBranchNode() {
 768     init_class_id(Class_MachGoto);
 769   }
 770 };
 771 
 772 //------------------------------MachFastLockNode-------------------------------------
 773 // Machine-specific versions of FastLockNodes
 774 class MachFastLockNode : public MachNode {
 775   virtual uint size_of() const { return sizeof(*this); } // Size is bigger
 776 public:
 777   BiasedLockingCounters*        _counters;
 778   RTMLockingCounters*       _rtm_counters; // RTM lock counters for inflated locks
 779   RTMLockingCounters* _stack_rtm_counters; // RTM lock counters for stack locks
 780   MachFastLockNode() : MachNode() {}
 781 };
 782 


< prev index next >