diff options
| author | Derek Schuff <dschuff@chromium.org> | 2013-05-30 08:39:33 -0700 |
|---|---|---|
| committer | Derek Schuff <dschuff@chromium.org> | 2013-05-30 08:39:33 -0700 |
| commit | 5f406495406e92cddd44d3f9aa477e72dca5f37e (patch) | |
| tree | 76b16deaa71bfc1d40d93ba69c1ad35032b953c2 /test/Transforms | |
| parent | c837ccdb820fca24003741c3125da2b885b1c876 (diff) | |
Add switch support to integer promotion pass
Odd-sized switch statements can appear in the sandboxed translator build.
R=mseaborn@chromium.org
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3360
Review URL: https://codereview.chromium.org/15894006
Diffstat (limited to 'test/Transforms')
| -rw-r--r-- | test/Transforms/NaCl/promote-integers.ll | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/test/Transforms/NaCl/promote-integers.ll b/test/Transforms/NaCl/promote-integers.ll index 19d5321c47..7fca6e1078 100644 --- a/test/Transforms/NaCl/promote-integers.ll +++ b/test/Transforms/NaCl/promote-integers.ll @@ -352,4 +352,23 @@ define void @undefoperand(i32 %a) { %a40 = zext i32 %a to i40 %au = and i40 %a40, undef ret void -}
\ No newline at end of file +} + +; CHECK: @switch +; CHECK-NEXT: %a24 = zext i16 %a to i32 +; CHECK-NEXT: switch i32 %a24, label %end [ +; CHECK-NEXT: i32 0, label %if1 +; CHECK-NEXT: i32 1, label %if2 +define void @switch(i16 %a) { + %a24 = zext i16 %a to i24 + switch i24 %a24, label %end [ + i24 0, label %if1 + i24 1, label %if2 + ] +if1: + ret void +if2: + ret void +end: + ret void +} |
