[AArch64,ELF] Restrict MOVZ/MOVK to non-PIC large code model (#70178)
[llvm-project.git] / llvm / test / CodeGen / X86 / pr58914.mir
blobf1cafc99d550582fe0703fc85947fb97d078d4c9
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2
2 # RUN: llc -x mir < %s -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -O1 -run-pass=livevars,twoaddressinstruction | FileCheck %s
4 ---
5 name: PR58914
6 tracksRegLiveness: true
7 stack:
8   - { id: 0, offset: 0, size: 768 }
9 body:             |
10   ; CHECK-LABEL: name: PR58914
11   ; CHECK: bb.0:
12   ; CHECK-NEXT:   successors: %bb.1(0x80000000)
13   ; CHECK-NEXT:   liveins: $rcx, $ymm0
14   ; CHECK-NEXT: {{  $}}
15   ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gr64_nosp = COPY killed $rcx
16   ; CHECK-NEXT:   [[COPY1:%[0-9]+]]:vr256x = COPY killed $ymm0
17   ; CHECK-NEXT: {{  $}}
18   ; CHECK-NEXT: bb.1:
19   ; CHECK-NEXT:   successors: %bb.1(0x80000000)
20   ; CHECK-NEXT: {{  $}}
21   ; CHECK-NEXT:   [[COPY2:%[0-9]+]]:vk16wm = COPY $rsp
22   ; CHECK-NEXT:   [[VBLENDMPDZ256rmk:%[0-9]+]]:vr256x = VBLENDMPDZ256rmk killed [[COPY2]], [[COPY1]], %stack.0, 8, [[COPY]], 0, $noreg
23   ; CHECK-NEXT:   RET killed [[VBLENDMPDZ256rmk]]
24   bb.0:
25     successors: %bb.1(0x7c000000)
26     liveins: $rcx, $ymm0
27     %0:gr64_nosp = COPY $rcx
28     %1:vr256x = COPY $ymm0
30   bb.1:
31     successors: %bb.1(0x7c000000)
32     %2:vk16wm = COPY $rsp
33     %3:vr256x = VMOVUPDZ256rmk %1, killed %2, %stack.0, 8, %0, 0, $noreg
34     RET %3
36 ...