Add a small missed optimization: turn X == C ? X : Y into X == C ? C : Y. This
[llvm/stm8.git] / test / CodeGen / CellSPU / jumptable.ll
blob87376ef6ed53fdf9a010c5ccbf0bb385f8e08cf7
1 ;RUN: llc --march=cellspu -disable-cgp-branch-opts %s -o - | FileCheck %s
2 ; This is to check that emitting jumptables doesn't crash llc
3 define i32 @test(i32 %param) {
4 entry:
5 ;CHECK:        ai      {{\$.}}, $3, -1
6 ;CHECK:        clgti   {{\$., \$.}}, 3
7 ;CHECK:        brnz    {{\$.}},.LBB0_2
8   switch i32 %param, label %bb1 [
9     i32 1, label %bb3
10     i32 2, label %bb2
11     i32 3, label %bb3
12     i32 4, label %bb1
13   ]
15 bb1:                                            
16   ret i32 1
17 bb2:      
18   ret i32 2
19 bb3:     
20   ret i32 3