src/share/vm/adlc/formssel.hpp

changeset 2350
2f644f85485d
parent 2314
f95d63e2154a
child 3040
c7b60b601eb4
     1.1 --- a/src/share/vm/adlc/formssel.hpp	Thu Dec 02 17:21:12 2010 -0800
     1.2 +++ b/src/share/vm/adlc/formssel.hpp	Fri Dec 03 01:34:31 2010 -0800
     1.3 @@ -74,15 +74,16 @@
     1.4  //------------------------------InstructForm-----------------------------------
     1.5  class InstructForm : public Form {
     1.6  private:
     1.7 -  bool          _ideal_only;       // Not a user-defined instruction
     1.8 +  bool           _ideal_only;       // Not a user-defined instruction
     1.9    // Members used for tracking CISC-spilling
    1.10 -  uint          _cisc_spill_operand;// Which operand may cisc-spill
    1.11 +  uint           _cisc_spill_operand;// Which operand may cisc-spill
    1.12    void           set_cisc_spill_operand(uint op_index) { _cisc_spill_operand = op_index; }
    1.13 -  bool          _is_cisc_alternate;
    1.14 +  bool           _is_cisc_alternate;
    1.15    InstructForm  *_cisc_spill_alternate;// cisc possible replacement
    1.16    const char    *_cisc_reg_mask_name;
    1.17    InstructForm  *_short_branch_form;
    1.18    bool           _is_short_branch;
    1.19 +  bool           _is_mach_constant;   // true if Node is a MachConstantNode
    1.20    uint           _alignment;
    1.21  
    1.22  public:
    1.23 @@ -94,6 +95,7 @@
    1.24    Opcode        *_opcode;          // Encoding of the opcode for instruction
    1.25    char          *_size;            // Size of instruction
    1.26    InsEncode     *_insencode;       // Encoding class instruction belongs to
    1.27 +  InsEncode     *_constant;        // Encoding class constant value belongs to
    1.28    Attribute     *_attribs;         // List of Attribute rules
    1.29    Predicate     *_predicate;       // Predicate test for this instruction
    1.30    FormDict       _effects;         // Dictionary of effect rules
    1.31 @@ -251,6 +253,9 @@
    1.32    bool                is_short_branch() { return _is_short_branch; }
    1.33    void                set_short_branch(bool val) { _is_short_branch = val; }
    1.34  
    1.35 +  bool                    is_mach_constant() const { return _is_mach_constant;     }
    1.36 +  void                set_is_mach_constant(bool x) {        _is_mach_constant = x; }
    1.37 +
    1.38    InstructForm       *short_branch_form() { return _short_branch_form; }
    1.39    bool                has_short_branch_form() { return _short_branch_form != NULL; }
    1.40    // Output short branch prototypes and method bodies

mercurial