# RUN: llc -mtriple=aarch64--- -run-pass=aarch64-ptrauth -verify-machineinstrs %s -o - | FileCheck %s
# Test the corner cases that cannot be reliably tested using LLVM IR as input.
--- |
define i64 @blend_untied(i64 %unused, i64 %ptr_arg) {
ret i64 0
}
...
---
# Check that the input register is copied to the output one, if not tied.
name: blend_untied
tracksRegLiveness: true
body: |
bb.0:
liveins: $lr, $x0, $x1
$x0 = PAUTH_BLEND $x1, 42
RET undef $lr
# CHECK: liveins: $lr, $x0, $x1
# CHECK-NEXT: {{^ +$}}
# CHECK-NEXT: $x0 = ORRXrs $xzr, $x1, 0
# CHECK-NEXT: $x0 = MOVKXi $x0, 42, 48
# CHECK-NEXT: RET undef $lr
...