[AArch64,ELF] Restrict MOVZ/MOVK to non-PIC large code model (#70178)
[llvm-project.git] / llvm / test / CodeGen / X86 / bug47278-eflags-error.mir
blobe4e68451850b7d12b8da740ddfed3a23a77190f7
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=i386-unknown-linux-musl -verify-machineinstrs -run-pass=regallocfast -o - %s | FileCheck %s
4 # Test for correct management of allocatable and non-allocatable
5 # live-ins in fastregalloc
7 ---
8 name: live_through_ecx
9 tracksRegLiveness: true
10 body:             |
11   ; CHECK-LABEL: name: live_through_ecx
12   ; CHECK: bb.0:
13   ; CHECK:   successors: %bb.1(0x80000000)
14   ; CHECK:   liveins: $ecx
15   ; CHECK:   NOOP implicit $ecx
16   ; CHECK: bb.1:
17   ; CHECK:   liveins: $ecx
18   ; CHECK:   RET implicit killed $ecx
19   bb.0:
20     liveins: $ecx
21     NOOP implicit $ecx
23   bb.1:
24     liveins: $ecx
26     RET implicit $ecx
28 ...
30 ---
31 name: live_out_ecx
32 tracksRegLiveness: true
33 body:             |
34   ; CHECK-LABEL: name: live_out_ecx
35   ; CHECK: bb.0:
36   ; CHECK:   successors: %bb.1(0x80000000)
37   ; CHECK:   liveins: $eax, $ebx
38   ; CHECK:   renamable $ecx = COPY killed $ebx
39   ; CHECK: bb.1:
40   ; CHECK:   liveins: $ecx
41   ; CHECK:   RET implicit killed $ecx
42   bb.0:
43     liveins: $eax, $ebx
44     %0:gr32 = COPY $eax
45     %1:gr32 = COPY $ebx
46     $ecx = COPY %1
48   bb.1:
49     liveins: $ecx
51     RET implicit $ecx
53 ...
55 ---
56 name: live_out_eflags
57 tracksRegLiveness: true
58 body:             |
59   ; CHECK-LABEL: name: live_out_eflags
60   ; CHECK: bb.0:
61   ; CHECK:   successors: %bb.1(0x80000000)
62   ; CHECK:   liveins: $eax, $ebx
63   ; CHECK:   TEST32rr killed renamable $eax, killed renamable $ebx, implicit-def $eflags
64   ; CHECK: bb.1:
65   ; CHECK:   liveins: $eflags
66   ; CHECK:   RET implicit killed $eflags
67   bb.0:
68     liveins: $eax, $ebx
69     %0:gr32 = COPY $eax
70     %1:gr32 = COPY $ebx
71     TEST32rr %0, %1, implicit-def $eflags
73   bb.1:
74     liveins: $eflags
76     RET implicit $eflags
78 ...