| OLD | NEW |
| 1 ; This checks to ensure that Subzero aligns spill slots. | 1 ; This checks to ensure that Subzero aligns spill slots. |
| 2 | 2 |
| 3 ; TODO(kschimpf) Find out why lc2i needed. | 3 ; TODO(kschimpf) Find out why lc2i needed. |
| 4 ; REQUIRES: allow_llvm_ir_as_input | 4 ; REQUIRES: allow_llvm_ir_as_input |
| 5 ; RUN: %lc2i -i %s --args --verbose none \ | 5 ; RUN: %lc2i -i %s --args --verbose none \ |
| 6 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ | 6 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ |
| 7 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s | 7 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s |
| 8 ; RUN: %lc2i -i %s --args -O2 --verbose none \ | 8 ; RUN: %lc2i -i %s --args -O2 --verbose none \ |
| 9 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ | 9 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ |
| 10 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s | 10 ; RUN: | llvm-objdump -d --symbolize -x86-asm-syntax=intel - | FileCheck %s |
| 11 ; RUN: %lc2i -i %s --args --verbose none | FileCheck --check-prefix=ERRORS %s | |
| 12 | 11 |
| 13 ; The location of the stack slot for a variable is inferred from the | 12 ; The location of the stack slot for a variable is inferred from the |
| 14 ; return sequence. | 13 ; return sequence. |
| 15 | 14 |
| 16 ; In this file, "global" refers to a variable with a live range across | 15 ; In this file, "global" refers to a variable with a live range across |
| 17 ; multiple basic blocks (not an LLVM global variable) and "local" | 16 ; multiple basic blocks (not an LLVM global variable) and "local" |
| 18 ; refers to a variable that is live in only a single basic block. | 17 ; refers to a variable that is live in only a single basic block. |
| 19 | 18 |
| 20 define <4 x i32> @align_global_vector(i32 %arg) { | 19 define <4 x i32> @align_global_vector(i32 %arg) { |
| 21 entry: | 20 entry: |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 ; CHECK-LABEL: align_local_vector_and_global_float: | 84 ; CHECK-LABEL: align_local_vector_and_global_float: |
| 86 ; CHECK: cvtsi2ss xmm0, eax | 85 ; CHECK: cvtsi2ss xmm0, eax |
| 87 ; CHECK-NEXT: movss dword ptr [esp + {{12|28}}], xmm0 | 86 ; CHECK-NEXT: movss dword ptr [esp + {{12|28}}], xmm0 |
| 88 ; CHECK: movups xmm0, xmmword ptr [{{esp|esp \+ 16}}] | 87 ; CHECK: movups xmm0, xmmword ptr [{{esp|esp \+ 16}}] |
| 89 ; CHECK-NEXT: add esp, 44 | 88 ; CHECK-NEXT: add esp, 44 |
| 90 ; CHECK-NEXT: ret | 89 ; CHECK-NEXT: ret |
| 91 } | 90 } |
| 92 | 91 |
| 93 declare void @ForceXmmSpillsAndUseAlloca(i8*) | 92 declare void @ForceXmmSpillsAndUseAlloca(i8*) |
| 94 declare void @ForceXmmSpillsAndUseFloat(float) | 93 declare void @ForceXmmSpillsAndUseFloat(float) |
| 95 | |
| 96 ; ERRORS-NOT: ICE translation error | |
| OLD | NEW |