# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -mtriple aarch64 -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s
...
---
name: p0_s64_legal
tracksRegLiveness: true
body: |
bb.0:
liveins: $q0, $x0
; CHECK-LABEL: name: p0_s64_legal
; CHECK: liveins: $q0, $x0
; CHECK: %copy:_(s64) = COPY $x0
; CHECK: %inttoptr:_(p0) = G_INTTOPTR %copy(s64)
; CHECK: $x0 = COPY %inttoptr(p0)
; CHECK: RET_ReallyLR implicit $x0
%copy:_(s64) = COPY $x0
%inttoptr:_(p0) = G_INTTOPTR %copy(s64)
$x0 = COPY %inttoptr(p0)
RET_ReallyLR implicit $x0
...
---
name: v2s64_to_v2p0_legal
tracksRegLiveness: true
body: |
bb.0:
liveins: $q0, $x0
; CHECK-LABEL: name: v2s64_to_v2p0_legal
; CHECK: liveins: $q0, $x0
; CHECK: %copy:_(<2 x s64>) = COPY $q0
; CHECK: %idx:_(s64) = G_CONSTANT i64 0
; CHECK: %inttoptr:_(<2 x p0>) = G_INTTOPTR %copy(<2 x s64>)
; CHECK: %extract:_(p0) = G_EXTRACT_VECTOR_ELT %inttoptr(<2 x p0>), %idx(s64)
; CHECK: $x0 = COPY %extract(p0)
; CHECK: RET_ReallyLR implicit $x0
%copy:_(<2 x s64>) = COPY $q0
%idx:_(s64) = G_CONSTANT i64 0
%inttoptr:_(<2 x p0>) = G_INTTOPTR %copy(<2 x s64>)
%extract:_(p0) = G_EXTRACT_VECTOR_ELT %inttoptr(<2 x p0>), %idx(s64)
$x0 = COPY %extract(p0)
RET_ReallyLR implicit $x0
...