1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc -O0 -mtriple=aarch64-- -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s
3
4--- |
5  target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
6
7  define void @implicit_def() { ret void }
8  define void @implicit_def_copy() { ret void }
9...
10
11---
12name:            implicit_def
13legalized:       true
14regBankSelected: true
15registers:
16  - { id: 0, class: gpr }
17  - { id: 1, class: gpr }
18
19body:             |
20  bb.0:
21    ; CHECK-LABEL: name: implicit_def
22    ; CHECK: [[DEF:%[0-9]+]]:gpr32 = IMPLICIT_DEF
23    ; CHECK: [[ADDWrr:%[0-9]+]]:gpr32 = ADDWrr [[DEF]], [[DEF]]
24    ; CHECK: $w0 = COPY [[ADDWrr]]
25    %0(s32) = G_IMPLICIT_DEF
26    %1(s32) = G_ADD %0, %0
27    $w0 = COPY %1(s32)
28...
29---
30name:            implicit_def_copy
31legalized:       true
32regBankSelected: true
33registers:
34  - { id: 0, class: gpr }
35  - { id: 1, class: gpr }
36
37body:             |
38  bb.0:
39    ; CHECK-LABEL: name: implicit_def_copy
40    ; CHECK: [[DEF:%[0-9]+]]:gpr32 = IMPLICIT_DEF
41    ; CHECK: [[COPY:%[0-9]+]]:gpr32all = COPY [[DEF]]
42    ; CHECK: $w0 = COPY [[COPY]]
43    %0(s32) = G_IMPLICIT_DEF
44    %1(s32) = COPY %0(s32)
45    $w0 = COPY %1(s32)
46...
47