1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -mtriple=aarch64-- -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s 3 4--- | 5 define i32 @main() { 6 entry: 7 ret i32 0 8 } 9 10 declare i32 @printf(i8*, ...) 11... 12--- 13name: main 14alignment: 2 15exposesReturnsTwice: false 16legalized: true 17regBankSelected: true 18selected: false 19tracksRegLiveness: true 20registers: 21 - { id: 0, class: gpr } 22 - { id: 1, class: gpr } 23 - { id: 2, class: gpr } 24 - { id: 3, class: gpr } 25 - { id: 4, class: gpr } 26 - { id: 5, class: gpr } 27 - { id: 6, class: gpr } 28 - { id: 7, class: gpr } 29 - { id: 8, class: gpr } 30 - { id: 9, class: gpr } 31 - { id: 10, class: gpr } 32 - { id: 11, class: gpr } 33 - { id: 12, class: gpr } 34 - { id: 13, class: gpr } 35 - { id: 14, class: gpr } 36 - { id: 15, class: gpr } 37frameInfo: 38 isFrameAddressTaken: false 39 isReturnAddressTaken: false 40 hasStackMap: false 41 hasPatchPoint: false 42 stackSize: 0 43 offsetAdjustment: 0 44 maxAlignment: 8 45 adjustsStack: false 46 hasCalls: true 47 maxCallFrameSize: 0 48 hasOpaqueSPAdjustment: false 49 hasVAStart: false 50 hasMustTailInVarArgFunc: false 51body: | 52 bb.1.entry: 53 liveins: $w0 54 ; CHECK-LABEL: name: main 55 ; CHECK: liveins: $w0 56 ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1 57 ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0 58 ; CHECK: [[EONWrr:%[0-9]+]]:gpr32 = EONWrr [[COPY]], [[MOVi32imm]] 59 ; CHECK: $w0 = COPY [[EONWrr]] 60 %0(s32) = G_CONSTANT i32 -1 61 %3(s32) = G_CONSTANT i32 1 62 %1(s32) = COPY $w0 63 %2(s32) = G_XOR %1, %0 64 %4(s32) = G_XOR %2, %3 65 $w0 = COPY %4(s32) 66... 67