diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/Sparc/SparcV9_F2.td | 27 | 
1 files changed, 15 insertions, 12 deletions
| diff --git a/llvm/lib/Target/Sparc/SparcV9_F2.td b/llvm/lib/Target/Sparc/SparcV9_F2.td index 69e4cac76c9..72bcb0903c9 100644 --- a/llvm/lib/Target/Sparc/SparcV9_F2.td +++ b/llvm/lib/Target/Sparc/SparcV9_F2.td @@ -7,40 +7,42 @@  //  class F2 : InstV9 {                   // Format 2 instructions    bits<3> op2; -  set op = 0;    // Op = 0 +  set op          = 0;    // Op = 0    set Inst{24-22} = op2;  }  // Format 2.1 instructions  class F2_1<string name> : F2 {    bits<22> imm; -  bits<5> rd; +  bits<5>  rd; -  set Name = name; +  set Name        = name;    set Inst{29-25} = rd;    set Inst{21-0}  = imm;  }  class F2_br : F2 {                    // Format 2 Branch instruction -  bit annul;  // All branches have an annul bit -  set Inst{29} = annul;    set isBranch    = 1;      // All instances are branch instructions  }  class F2_2<bits<4> cond, string name> : F2_br { // Format 2.2 instructions    bits<22> disp; +  bit      annul;    set Name        = name; +  set Inst{29}    = annul;    set Inst{28-25} = cond;    set Inst{21-0}  = disp;  }  class F2_3<bits<4> cond, string name> : F2_br { // Format 2.3 instructions -  bits<2> cc; +  bits<2>  cc;    bits<19> disp; -  bit predict; +  bit      predict; +  bit      annul;    set Name        = name; +  set Inst{29}    = annul;    set Inst{28-25} = cond;    set Inst{21-20} = cc;    set Inst{19}    = predict; @@ -48,14 +50,15 @@ class F2_3<bits<4> cond, string name> : F2_br { // Format 2.3 instructions  }  class F2_4<bits<3> rcond, string name> : F2_br { // Format 2.4 instructions -  bit        predict; -  bits<5>    rs1; -  bits<16>   disp; +  bits<5>  rs1; +  bits<16> disp; +  bit      predict; +  bit      annul; -  set Name = name; +  set Name        = name; +  set Inst{29}    = annul;    set Inst{28}    = 0;    set Inst{27-25} = rcond; -  //  Inst{24-22} = op2 field    set Inst{21-20} = disp{15-14};    set Inst{19}    = predict;    set Inst{18-14} = rs1; | 

