blob: c84dfa05bff1a86460355f2a8d3de6b81c8b295b [file] [edit]
# RUN: not --crash llc -mtriple=aarch64 -run-pass=none -filetype=null %s 2>&1 | FileCheck %s
# REQUIRES: aarch64-registered-target
# Undef uses are illegal for generic vregs.
---
name: test_undef_use
body: |
bb.0:
%0:_(s32) = G_CONSTANT i32 0
; Test generic instruction
; CHECK: Bad machine code: Generic virtual register use cannot be undef
G_STORE %0, undef %1:_(p0) :: (store (s32))
; Make sure this fails on a post-isel generic instruction.
; CHECK: Bad machine code: Generic virtual register use cannot be undef
$x0 = COPY undef %2:_(s64)
; Make sure this fails with a target instruction
; CHECK: Bad machine code: Generic virtual register use cannot be undef
RET_ReallyLR implicit $x0, implicit undef %3:_(s32)
...