blob: 8cfa22d2469e2c731950675ba67f58b594e9de3b [file]
# RUN: llc -o /dev/null %s -mtriple=s390x-linux-gnu -mcpu=z16 \
# RUN: -verify-machineinstrs -run-pass=register-coalescer
# The LOCMux below produces a dead definition and will be turned into
# a KILL instruction (by LiveRangeEdit::eliminateDeadDef()). When this
# happens, the MemoryOperand must also be removed as this is required
# by the machine verifier.
---
name: fun
tracksRegLiveness: true
body: |
bb.0:
liveins: $r2d
%3:addr64bit = COPY killed $r2d
bb.1:
%5:grx32bit = LMux killed %3, 0, $noreg :: (load (s32))
CHIMux killed %5, 0, implicit-def $cc
%7:grx32bit = LHIMux 0
%1:grx32bit = COPY killed %7
%1:grx32bit = LOCMux %1, undef %8:addr64bit, 0, 14, 6, implicit killed $cc :: (load (s32))
dead %0:grx32bit = COPY killed %1
bb.2:
J %bb.2
...