OLD | NEW |
1 ; This tries to be a comprehensive test of i64 operations, in | 1 ; This tries to be a comprehensive test of i64 operations, in |
2 ; particular the patterns for lowering i64 operations into constituent | 2 ; particular the patterns for lowering i64 operations into constituent |
3 ; i32 operations on x86-32. | 3 ; i32 operations on x86-32. |
4 | 4 |
5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ | 5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ |
6 ; RUN: --target x8632 -i %s --args -O2 \ | 6 ; RUN: --target x8632 -i %s --args -O2 -allow-externally-defined-symbols \ |
7 ; RUN: | %if --need=target_X8632 --command FileCheck %s | 7 ; RUN: | %if --need=target_X8632 --command FileCheck %s |
8 | 8 |
9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ | 9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ |
10 ; RUN: --target x8632 -i %s --args -Om1 \ | 10 ; RUN: --target x8632 -i %s --args -Om1 -allow-externally-defined-symbols \ |
11 ; RUN: | %if --need=target_X8632 --command FileCheck --check-prefix=OPTM1 %s | 11 ; RUN: | %if --need=target_X8632 --command FileCheck --check-prefix=OPTM1 %s |
12 | 12 |
13 ; TODO(jvoung): Stop skipping unimplemented parts (via --skip-unimplemented) | 13 ; TODO(jvoung): Stop skipping unimplemented parts (via --skip-unimplemented) |
14 ; once enough infrastructure is in. Also, switch to --filetype=obj | 14 ; once enough infrastructure is in. Also, switch to --filetype=obj |
15 ; when possible. | 15 ; when possible. |
16 ; RUN: %if --need=target_ARM32 --need=allow_dump \ | 16 ; RUN: %if --need=target_ARM32 --need=allow_dump \ |
17 ; RUN: --command %p2i --filetype=asm --assemble \ | 17 ; RUN: --command %p2i --filetype=asm --assemble \ |
18 ; RUN: --disassemble --target arm32 -i %s --args -O2 --skip-unimplemented \ | 18 ; RUN: --disassemble --target arm32 -i %s --args -O2 --skip-unimplemented \ |
| 19 ; RUN: -allow-externally-defined-symbols \ |
19 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ | 20 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ |
20 ; RUN: --command FileCheck --check-prefix ARM32 %s | 21 ; RUN: --command FileCheck --check-prefix ARM32 %s |
21 ; RUN: %if --need=target_ARM32 --need=allow_dump \ | 22 ; RUN: %if --need=target_ARM32 --need=allow_dump \ |
22 ; RUN: --command %p2i --filetype=asm --assemble --disassemble --target arm32 \ | 23 ; RUN: --command %p2i --filetype=asm --assemble --disassemble --target arm32 \ |
23 ; RUN: -i %s --args -Om1 --skip-unimplemented \ | 24 ; RUN: -i %s --args -Om1 --skip-unimplemented \ |
| 25 ; RUN: -allow-externally-defined-symbols \ |
24 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ | 26 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ |
25 ; RUN: --command FileCheck --check-prefix ARM32 %s | 27 ; RUN: --command FileCheck --check-prefix ARM32 %s |
26 | 28 |
27 @__init_array_start = internal constant [0 x i8] zeroinitializer, align 4 | 29 @__init_array_start = internal constant [0 x i8] zeroinitializer, align 4 |
28 @__fini_array_start = internal constant [0 x i8] zeroinitializer, align 4 | 30 @__fini_array_start = internal constant [0 x i8] zeroinitializer, align 4 |
29 @__tls_template_start = internal constant [0 x i8] zeroinitializer, align 8 | 31 @__tls_template_start = internal constant [0 x i8] zeroinitializer, align 8 |
30 @__tls_template_alignment = internal constant [4 x i8] c"\01\00\00\00", align 4 | 32 @__tls_template_alignment = internal constant [4 x i8] c"\01\00\00\00", align 4 |
31 | 33 |
32 define internal i32 @ignore64BitArg(i64 %a, i32 %b, i64 %c) { | 34 define internal i32 @ignore64BitArg(i64 %a, i32 %b, i64 %c) { |
33 entry: | 35 entry: |
(...skipping 1774 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1808 ; CHECK-LABEL: phi64Undef | 1810 ; CHECK-LABEL: phi64Undef |
1809 ; CHECK: mov {{.*}},0x0 | 1811 ; CHECK: mov {{.*}},0x0 |
1810 ; CHECK: mov {{.*}},0x0 | 1812 ; CHECK: mov {{.*}},0x0 |
1811 ; OPTM1-LABEL: phi64Undef | 1813 ; OPTM1-LABEL: phi64Undef |
1812 ; OPTM1: mov {{.*}},0x0 | 1814 ; OPTM1: mov {{.*}},0x0 |
1813 ; OPTM1: mov {{.*}},0x0 | 1815 ; OPTM1: mov {{.*}},0x0 |
1814 ; ARM32-LABEL: phi64Undef | 1816 ; ARM32-LABEL: phi64Undef |
1815 ; ARM32: mov {{.*}} #0 | 1817 ; ARM32: mov {{.*}} #0 |
1816 ; ARM32: mov {{.*}} #0 | 1818 ; ARM32: mov {{.*}} #0 |
1817 | 1819 |
OLD | NEW |