OLD | NEW |
1 ; Simple tests for icmp with i8, i16, i32 operands. | 1 ; Simple tests for icmp with i8, i16, i32 operands. |
2 | 2 |
3 ; RUN: %if --need=allow_dump --need=target_MIPS32 --command %p2i \ | 3 ; RUN: %if --need=allow_dump --need=target_MIPS32 --command %p2i \ |
4 ; RUN: --filetype=asm --target mips32 -i %s --args -O2 --skip-unimplemented \ | 4 ; RUN: --filetype=asm --target mips32 -i %s --args -O2 \ |
5 ; RUN: -allow-externally-defined-symbols \ | 5 ; RUN: -allow-externally-defined-symbols \ |
6 ; RUN: | %if --need=allow_dump --need=target_MIPS32 --command FileCheck %s \ | 6 ; RUN: | %if --need=allow_dump --need=target_MIPS32 --command FileCheck %s \ |
7 ; RUN: --check-prefix=COMMON --check-prefix=MIPS32 | 7 ; RUN: --check-prefix=COMMON --check-prefix=MIPS32 |
8 ; RUN: %if --need=allow_dump --need=target_MIPS32 --command %p2i \ | 8 ; RUN: %if --need=allow_dump --need=target_MIPS32 --command %p2i \ |
9 ; RUN: --filetype=asm --target mips32 -i %s --args -Om1 --skip-unimplemented \ | 9 ; RUN: --filetype=asm --target mips32 -i %s --args -Om1 \ |
10 ; RUN: -allow-externally-defined-symbols \ | 10 ; RUN: -allow-externally-defined-symbols \ |
11 ; RUN: | %if --need=allow_dump --need=target_MIPS32 --command FileCheck %s \ | 11 ; RUN: | %if --need=allow_dump --need=target_MIPS32 --command FileCheck %s \ |
12 ; RUN: --check-prefix=COMMON --check-prefix=MIPS32 | 12 ; RUN: --check-prefix=COMMON --check-prefix=MIPS32 |
13 | 13 |
14 define internal i32 @icmpEq32(i32 %a, i32 %b) { | 14 define internal i32 @icmpEq32(i32 %a, i32 %b) { |
15 entry: | 15 entry: |
16 %cmp = icmp eq i32 %a, %b | 16 %cmp = icmp eq i32 %a, %b |
17 %cmp.ret_ext = zext i1 %cmp to i32 | 17 %cmp.ret_ext = zext i1 %cmp to i32 |
18 ret i32 %cmp.ret_ext | 18 ret i32 %cmp.ret_ext |
19 } | 19 } |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 %a_16 = trunc i32 %a to i16 | 165 %a_16 = trunc i32 %a to i16 |
166 %b_16 = trunc i32 %b to i16 | 166 %b_16 = trunc i32 %b to i16 |
167 %icmp = icmp ugt i16 %b_16, %a_16 | 167 %icmp = icmp ugt i16 %b_16, %a_16 |
168 %ret = zext i1 %icmp to i32 | 168 %ret = zext i1 %icmp to i32 |
169 ret i32 %ret | 169 ret i32 %ret |
170 } | 170 } |
171 ; MIPS32-LABEL: icmpUgt16 | 171 ; MIPS32-LABEL: icmpUgt16 |
172 ; MIPS32: sll {{.*}}, {{.*}}, 16 | 172 ; MIPS32: sll {{.*}}, {{.*}}, 16 |
173 ; MIPS32: sll {{.*}}, {{.*}}, 16 | 173 ; MIPS32: sll {{.*}}, {{.*}}, 16 |
174 ; MIPS32: sltu | 174 ; MIPS32: sltu |
OLD | NEW |