1 # RUN: llc -mtriple=aarch64 -run-pass machinelicm -verify-machineinstrs -o - %s | FileCheck %s
2 # RUN: llc -mtriple=aarch64 -passes machinelicm -o - %s | FileCheck %s
5 tracksRegLiveness: true
7 - { id: 0, size: 8, type: spill-slot }
10 ; CHECK-LABEL: name: test
12 ; CHECK: $x2 = LDRXui %stack.0, 0
13 liveins: $x0, $x1, $x2
18 ; CHECK-NOT: $x2 = LDRXui %stack.0, 0
19 ; CHECK: $x0 = ADDXrr $x0, $x2
22 $x2 = LDRXui %stack.0, 0 :: (load (s64) from %stack.0)
23 $x0 = ADDXrr $x0, killed $x2
24 $xzr = SUBSXri killed $x0, 1, 0, implicit-def $nzcv
25 Bcc 11, %bb.1, implicit $nzcv
34 tracksRegLiveness: true
36 - { id: 0, size: 8, type: spill-slot }
39 ; CHECK-LABEL: name: test2
41 ; CHECK: $x2 = LDRXui %stack.0, 0
42 liveins: $x0, $x1, $x2
47 ; CHECK-NOT: $x2 = LDRXui %stack.0, 0
48 ; CHECK: $w0 = ADDWrr $w0, $w2
51 $x2 = LDRXui %stack.0, 0 :: (load (s64) from %stack.0)
52 $w0 = ADDWrr $w0, killed $w2
53 $wzr = SUBSWri killed $w0, 1, 0, implicit-def $nzcv
54 Bcc 11, %bb.1, implicit $nzcv