diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Target/CellSPU/SPUInstrInfo.td | 6 | ||||
| -rw-r--r-- | llvm/test/CodeGen/CellSPU/jumptable.ll | 12 | 
2 files changed, 10 insertions, 8 deletions
diff --git a/llvm/lib/Target/CellSPU/SPUInstrInfo.td b/llvm/lib/Target/CellSPU/SPUInstrInfo.td index aa6d02ce3ce..f76ebd75bfe 100644 --- a/llvm/lib/Target/CellSPU/SPUInstrInfo.td +++ b/llvm/lib/Target/CellSPU/SPUInstrInfo.td @@ -3467,8 +3467,10 @@ let isBranch = 1, isTerminator = 1, hasCtrlDep = 1 in {          [/* no pattern */]>;      // Indirect branch -    def BI: -      BIForm<0b00010101100, "bi\t$func", [(brind R32C:$func)]>; +    let isIndirectBranch = 1 in { +      def BI: +        BIForm<0b00010101100, "bi\t$func", [(brind R32C:$func)]>; +    }    }    // Conditional branches: diff --git a/llvm/test/CodeGen/CellSPU/jumptable.ll b/llvm/test/CodeGen/CellSPU/jumptable.ll index 87376ef6ed5..66c2fdeb51f 100644 --- a/llvm/test/CodeGen/CellSPU/jumptable.ll +++ b/llvm/test/CodeGen/CellSPU/jumptable.ll @@ -4,18 +4,18 @@ define i32 @test(i32 %param) {  entry:  ;CHECK:        ai      {{\$.}}, $3, -1  ;CHECK:        clgti   {{\$., \$.}}, 3 -;CHECK:        brnz    {{\$.}},.LBB0_2 -  switch i32 %param, label %bb1 [ -    i32 1, label %bb3 +;CHECK:        brnz    {{\$.}},.LBB0_ +  switch i32 %param, label %bb2 [ +    i32 1, label %bb1      i32 2, label %bb2      i32 3, label %bb3 -    i32 4, label %bb1 +    i32 4, label %bb2    ] - +;CHECK-NOT: # BB#2  bb1:                                                ret i32 1  bb2:          ret i32 2  bb3:      -  ret i32 3 +  ret i32 %param  }  | 

