Mercurial > hg > truffle
comparison src/share/vm/opto/machnode.hpp @ 3839:3d42f82cd811
7063628: Use cbcond on T4
Summary: Add new short branch instruction to Hotspot sparc assembler.
Reviewed-by: never, twisti, jrose
author | kvn |
---|---|
date | Thu, 21 Jul 2011 11:25:07 -0700 |
parents | 2f644f85485d |
children | c7b60b601eb4 |
comparison
equal
deleted
inserted
replaced
3838:6a991dcb52bb | 3839:3d42f82cd811 |
---|---|
280 | 280 |
281 // Top-level ideal Opcode matched | 281 // Top-level ideal Opcode matched |
282 virtual int ideal_Opcode() const { return Op_Node; } | 282 virtual int ideal_Opcode() const { return Op_Node; } |
283 | 283 |
284 // Set the branch inside jump MachNodes. Error for non-branch Nodes. | 284 // Set the branch inside jump MachNodes. Error for non-branch Nodes. |
285 virtual void label_set( Label& label, uint block_num ); | 285 virtual void label_set( Label* label, uint block_num ); |
286 | 286 |
287 // Adds the label for the case | 287 // Adds the label for the case |
288 virtual void add_case_label( int switch_val, Label* blockLabel); | 288 virtual void add_case_label( int switch_val, Label* blockLabel); |
289 | 289 |
290 // Set the absolute address for methods | 290 // Set the absolute address for methods |
529 add_req(ctrl); | 529 add_req(ctrl); |
530 add_req(memop); | 530 add_req(memop); |
531 } | 531 } |
532 | 532 |
533 virtual void emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const; | 533 virtual void emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const; |
534 virtual void label_set(Label* label, uint block_num); | |
534 virtual bool pinned() const { return true; }; | 535 virtual bool pinned() const { return true; }; |
535 virtual void negate() { } | 536 virtual void negate() { } |
536 virtual const class Type *bottom_type() const { return TypeTuple::IFBOTH; } | 537 virtual const class Type *bottom_type() const { return TypeTuple::IFBOTH; } |
537 virtual uint ideal_reg() const { return NotAMachineReg; } | 538 virtual uint ideal_reg() const { return NotAMachineReg; } |
538 virtual const RegMask &in_RegMask(uint) const; | 539 virtual const RegMask &in_RegMask(uint) const; |
851 | 852 |
852 labelOper(labelOper* l) : _label(l->_label) , _block_num(l->_block_num) {} | 853 labelOper(labelOper* l) : _label(l->_label) , _block_num(l->_block_num) {} |
853 | 854 |
854 virtual MachOper *clone(Compile* C) const; | 855 virtual MachOper *clone(Compile* C) const; |
855 | 856 |
856 virtual Label *label() const { return _label; } | 857 virtual Label *label() const { assert(_label != NULL, "need Label"); return _label; } |
857 | 858 |
858 virtual uint opcode() const; | 859 virtual uint opcode() const; |
859 | 860 |
860 virtual uint hash() const; | 861 virtual uint hash() const; |
861 virtual uint cmp( const MachOper &oper ) const; | 862 virtual uint cmp( const MachOper &oper ) const; |