1 # RUN: llc -mtriple=aarch64 -run-pass machinelicm -verify-machineinstrs -o - %s | FileCheck %s
4 tracksRegLiveness: true
6 - { id: 0, class: gpr64 }
8 - { id: 0, size: 8, type: spill-slot }
11 ; CHECK-LABEL: name: test
13 ; CHECK: $x2 = LDRXui %stack.0, 0
14 liveins: $x0, $x1, $x2
19 ; CHECK-NOT: $x2 = LDRXui %stack.0, 0
20 ; CHECK: $x0 = ADDXrr $x0, $x2
23 $x2 = LDRXui %stack.0, 0 :: (load (s64) from %stack.0)
24 $x0 = ADDXrr $x0, killed $x2
25 $xzr = SUBSXri killed $x0, 1, 0, implicit-def $nzcv
26 Bcc 11, %bb.1, implicit $nzcv
32 %0 = COPY $x0 ; Force isSSA = false.
36 tracksRegLiveness: true
38 - { id: 0, class: gpr64 }
40 - { id: 0, size: 8, type: spill-slot }
43 ; CHECK-LABEL: name: test2
45 ; CHECK: $x2 = LDRXui %stack.0, 0
46 liveins: $x0, $x1, $x2
51 ; CHECK-NOT: $x2 = LDRXui %stack.0, 0
52 ; CHECK: $w0 = ADDWrr $w0, $w2
55 $x2 = LDRXui %stack.0, 0 :: (load (s64) from %stack.0)
56 $w0 = ADDWrr $w0, killed $w2
57 $wzr = SUBSWri killed $w0, 1, 0, implicit-def $nzcv
58 Bcc 11, %bb.1, implicit $nzcv
64 %0 = COPY $x0 ; Force isSSA = false.