[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / CodeGen / X86 / win64_nonvol.ll
blobe1c615d75f282b14384512b2b0967ce9544c02ae
1 ; RUN: llc < %s -mtriple=x86_64-pc-win32 | FileCheck %s
2 ; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck %s
4 ; Check that, if a Win64 ABI function calls a SysV ABI function, all the
5 ; Win64 nonvolatile registers get saved.
7 ; CHECK-LABEL: bar:
8 define win64cc void @bar(i32 %a, i32 %b) {
9 ; CHECK-DAG: pushq %rdi
10 ; CHECK-DAG: pushq %rsi
11 ; CHECK-DAG: movaps %xmm6,
12 ; CHECK-DAG: movaps %xmm7,
13 ; CHECK-DAG: movaps %xmm8,
14 ; CHECK-DAG: movaps %xmm9,
15 ; CHECK-DAG: movaps %xmm10,
16 ; CHECK-DAG: movaps %xmm11,
17 ; CHECK-DAG: movaps %xmm12,
18 ; CHECK-DAG: movaps %xmm13,
19 ; CHECK-DAG: movaps %xmm14,
20 ; CHECK-DAG: movaps %xmm15,
21 ; CHECK: callq foo
22 ; CHECK: ret
23   call x86_64_sysvcc void @foo(i32 %a, i32 %b)
24   ret void
27 declare x86_64_sysvcc void @foo(i32 %a, i32 %b)