Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(373)

Side by Side Diff: tests_lit/llvm2ice_tests/shift.ll

Issue 509233002: Convert lit tests to check disassembled assembly. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: add comment Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 ; This is a test of C-level conversion operations that clang lowers 1 ; This is a test of C-level conversion operations that clang lowers
2 ; into pairs of shifts. 2 ; into pairs of shifts.
3 3
4 ; RUN: %llvm2ice -O2 --verbose none %s | FileCheck %s
5 ; RUN: %llvm2ice -Om1 --verbose none %s | FileCheck %s
6 ; RUN: %llvm2ice -O2 --verbose none %s \ 4 ; RUN: %llvm2ice -O2 --verbose none %s \
7 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj 5 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
6 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s
8 ; RUN: %llvm2ice -Om1 --verbose none %s \ 7 ; RUN: %llvm2ice -Om1 --verbose none %s \
9 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj 8 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
9 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s
10 ; RUN: %llvm2ice --verbose none %s | FileCheck --check-prefix=ERRORS %s 10 ; RUN: %llvm2ice --verbose none %s | FileCheck --check-prefix=ERRORS %s
11 ; RUN: %llvm2iceinsts %s | %szdiff %s | FileCheck --check-prefix=DUMP %s 11 ; RUN: %llvm2iceinsts %s | %szdiff %s | FileCheck --check-prefix=DUMP %s
12 ; RUN: %llvm2iceinsts --pnacl %s | %szdiff %s \ 12 ; RUN: %llvm2iceinsts --pnacl %s | %szdiff %s \
13 ; RUN: | FileCheck --check-prefix=DUMP %s 13 ; RUN: | FileCheck --check-prefix=DUMP %s
14 14
15 @i1 = internal global [4 x i8] zeroinitializer, align 4 15 @i1 = internal global [4 x i8] zeroinitializer, align 4
16 @i2 = internal global [4 x i8] zeroinitializer, align 4 16 @i2 = internal global [4 x i8] zeroinitializer, align 4
17 @u1 = internal global [4 x i8] zeroinitializer, align 4 17 @u1 = internal global [4 x i8] zeroinitializer, align 4
18 18
19 define void @conv1() { 19 define void @conv1() {
20 entry: 20 entry:
21 %__0 = bitcast [4 x i8]* @u1 to i32* 21 %__0 = bitcast [4 x i8]* @u1 to i32*
22 %v0 = load i32* %__0, align 1 22 %v0 = load i32* %__0, align 1
23 %sext = shl i32 %v0, 24 23 %sext = shl i32 %v0, 24
24 %v1 = ashr i32 %sext, 24 24 %v1 = ashr i32 %sext, 24
25 %__4 = bitcast [4 x i8]* @i1 to i32* 25 %__4 = bitcast [4 x i8]* @i1 to i32*
26 store i32 %v1, i32* %__4, align 1 26 store i32 %v1, i32* %__4, align 1
27 ret void 27 ret void
28 } 28 }
29 ; CHECK: conv1: 29 ; CHECK-LABEL: conv1:
Jim Stichnoth 2014/08/28 20:19:23 Remove last ':', here and below.
jvoung (off chromium) 2014/08/29 00:51:20 Done.
30 ; CHECK: shl {{.*}}, 24 30 ; CHECK: shl {{.*}}, 24
31 ; CHECK: sar {{.*}}, 24 31 ; CHECK: sar {{.*}}, 24
32 32
33 define void @conv2() { 33 define void @conv2() {
34 entry: 34 entry:
35 %__0 = bitcast [4 x i8]* @u1 to i32* 35 %__0 = bitcast [4 x i8]* @u1 to i32*
36 %v0 = load i32* %__0, align 1 36 %v0 = load i32* %__0, align 1
37 %sext1 = shl i32 %v0, 16 37 %sext1 = shl i32 %v0, 16
38 %v1 = ashr i32 %sext1, 16 38 %v1 = ashr i32 %sext1, 16
39 %__4 = bitcast [4 x i8]* @i2 to i32* 39 %__4 = bitcast [4 x i8]* @i2 to i32*
40 store i32 %v1, i32* %__4, align 1 40 store i32 %v1, i32* %__4, align 1
41 ret void 41 ret void
42 } 42 }
43 ; CHECK: conv2: 43 ; CHECK-LABEL: conv2:
44 ; CHECK: shl {{.*}}, 16 44 ; CHECK: shl {{.*}}, 16
45 ; CHECK: sar {{.*}}, 16 45 ; CHECK: sar {{.*}}, 16
46 46
47 ; ERRORS-NOT: ICE translation error 47 ; ERRORS-NOT: ICE translation error
48 ; DUMP-NOT: SZ 48 ; DUMP-NOT: SZ
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698