| Index: tests_lit/llvm2ice_tests/alloc.ll
|
| diff --git a/tests_lit/llvm2ice_tests/alloc.ll b/tests_lit/llvm2ice_tests/alloc.ll
|
| index af87f7839ec796a5585caf54447157858b014740..80bba30a56e9a832b0dca1c684ca011d907b80af 100644
|
| --- a/tests_lit/llvm2ice_tests/alloc.ll
|
| +++ b/tests_lit/llvm2ice_tests/alloc.ll
|
| @@ -1,11 +1,11 @@
|
| ; This is a basic test of the alloca instruction.
|
|
|
| -; RUN: %llvm2ice -O2 --verbose none %s | FileCheck %s
|
| -; RUN: %llvm2ice -Om1 --verbose none %s | FileCheck %s
|
| ; RUN: %llvm2ice -O2 --verbose none %s \
|
| -; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj
|
| +; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
|
| +; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s
|
| ; RUN: %llvm2ice -Om1 --verbose none %s \
|
| -; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj
|
| +; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
|
| +; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s
|
| ; RUN: %llvm2ice --verbose none %s | FileCheck --check-prefix=ERRORS %s
|
| ; RUN: %llvm2iceinsts %s | %szdiff %s | FileCheck --check-prefix=DUMP %s
|
| ; RUN: %llvm2iceinsts --pnacl %s | %szdiff %s \
|
| @@ -32,7 +32,7 @@ entry:
|
| ret void
|
| }
|
| ; CHECK-LABEL: fixed_416_align_32:
|
| -; CHECK: and esp, 4294967264
|
| +; CHECK: and esp, -32
|
| ; CHECK: sub esp, 416
|
| ; CHECK: sub esp, 16
|
| ; CHECK: mov dword ptr [esp], eax
|
| @@ -59,13 +59,16 @@ entry:
|
| ret void
|
| }
|
| ; CHECK-LABEL: fixed_351_align_32:
|
| -; CHECK: and esp, 4294967264
|
| +; CHECK: and esp, -32
|
| ; CHECK: sub esp, 352
|
| ; CHECK: sub esp, 16
|
| ; CHECK: mov dword ptr [esp], eax
|
| ; CHECK: call f1
|
|
|
| -declare void @f1(i32)
|
| +define void @f1(i32 %ignored) {
|
| +entry:
|
| + ret void
|
| +}
|
|
|
| define void @variable_n_align_16(i32 %n) {
|
| entry:
|
| @@ -75,9 +78,9 @@ entry:
|
| ret void
|
| }
|
| ; CHECK-LABEL: variable_n_align_16:
|
| -; CHECK: mov eax, dword ptr [ebp+8]
|
| +; CHECK: mov eax, dword ptr [ebp + 8]
|
| ; CHECK: add eax, 15
|
| -; CHECK: and eax, 4294967280
|
| +; CHECK: and eax, -16
|
| ; CHECK: sub esp, eax
|
| ; CHECK: sub esp, 16
|
| ; CHECK: mov dword ptr [esp], eax
|
| @@ -92,16 +95,19 @@ entry:
|
| }
|
| ; In -O2, the order of the CHECK-DAG lines in the output is switched.
|
| ; CHECK-LABEL: variable_n_align_32:
|
| -; CHECK-DAG: and esp, 4294967264
|
| -; CHECK-DAG: mov eax, dword ptr [ebp+8]
|
| +; CHECK-DAG: and esp, -32
|
| +; CHECK-DAG: mov eax, dword ptr [ebp + 8]
|
| ; CHECK: add eax, 31
|
| -; CHECK: and eax, 4294967264
|
| +; CHECK: and eax, -32
|
| ; CHECK: sub esp, eax
|
| ; CHECK: sub esp, 16
|
| ; CHECK: mov dword ptr [esp], eax
|
| ; CHECK: call f2
|
|
|
| -declare void @f2(i32)
|
| +define void @f2(i32 %ignored) {
|
| +entry:
|
| + ret void
|
| +}
|
|
|
| ; ERRORS-NOT: ICE translation error
|
| ; DUMP-NOT: SZ
|
|
|