[llvm] r316479 - MIR: Print the register class or bank in vreg defs
Justin Bogner via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 24 11:04:55 PDT 2017
Author: bogner
Date: Tue Oct 24 11:04:54 2017
New Revision: 316479
URL: http://llvm.org/viewvc/llvm-project?rev=316479&view=rev
Log:
MIR: Print the register class or bank in vreg defs
This updates the MIRPrinter to include the regclass when printing
virtual register defs, which is already valid syntax for the
parser. That is, given 64 bit %0 and %1 in a "gpr" regbank,
%1(s64) = COPY %0(s64)
would now be written as
%1:gpr(s64) = COPY %0(s64)
While this change alone introduces a bit of redundancy with the
registers block, it allows us to update the tests to be more concise
and understandable and brings us closer to being able to remove the
registers block completely.
Note: We generally only print the class in defs, but there is one
exception. If there are uses without any defs whatsoever, we'll print
the class on all uses. I'm not completely convinced this comes up in
meaningful machine IR, but for now the MIRParser and MachineVerifier
both accept that kind of stuff, so we don't want to have a situation
where we can print something we can't parse.
Modified:
llvm/trunk/lib/CodeGen/MIRPrinter.cpp
llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv-ios.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-stackprotect.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/debug-insts.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/dynamic-alloca.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-bitcast.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-add.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-div.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ext.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fcmp.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fneg.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-gep.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-itofp.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-nonpowerof2eltsvec.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-rem.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer-in-O0-pipeline.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/no-regclass.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-binop.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-br.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bswap.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-cbz.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-constant.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fma.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-imm.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ptr-casts.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-load.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-muladd.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-phi.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-store.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-trunc.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-xor.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/select.mir
llvm/trunk/test/CodeGen/AArch64/GlobalISel/translate-gep.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/varargs-ios-translator.ll
llvm/trunk/test/CodeGen/AArch64/GlobalISel/vastart.ll
llvm/trunk/test/CodeGen/AArch64/arm64-regress-opt-cmp.mir
llvm/trunk/test/CodeGen/AArch64/regcoal-physreg.mir
llvm/trunk/test/CodeGen/AArch64/spill-undef.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir
llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir
llvm/trunk/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
llvm/trunk/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir
llvm/trunk/test/CodeGen/AMDGPU/detect-dead-lanes.mir
llvm/trunk/test/CodeGen/AMDGPU/endpgm-dce.mir
llvm/trunk/test/CodeGen/AMDGPU/fold-cndmask.mir
llvm/trunk/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir
llvm/trunk/test/CodeGen/AMDGPU/fold-operands-order.mir
llvm/trunk/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir
llvm/trunk/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir
llvm/trunk/test/CodeGen/AMDGPU/regcoal-subrange-join.mir
llvm/trunk/test/CodeGen/AMDGPU/regcoalesce-dbg.mir
llvm/trunk/test/CodeGen/AMDGPU/rename-independent-subregs-mac-operands.mir
llvm/trunk/test/CodeGen/AMDGPU/sdwa-gfx9.mir
llvm/trunk/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir
llvm/trunk/test/CodeGen/AMDGPU/sdwa-vop2-64bit.mir
llvm/trunk/test/CodeGen/AMDGPU/shrink-vop3-carry-out.mir
llvm/trunk/test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll
llvm/trunk/test/CodeGen/AMDGPU/spill-empty-live-interval.mir
llvm/trunk/test/CodeGen/AMDGPU/twoaddr-mad.mir
llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-frame-index.mir
llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-non-ssa.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalizer.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir
llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir
llvm/trunk/test/CodeGen/ARM/imm-peephole-arm.mir
llvm/trunk/test/CodeGen/ARM/imm-peephole-thumb.mir
llvm/trunk/test/CodeGen/Hexagon/cext-opt-basic.mir
llvm/trunk/test/CodeGen/Hexagon/early-if-debug.mir
llvm/trunk/test/CodeGen/Hexagon/expand-condsets-def-undef.mir
llvm/trunk/test/CodeGen/Hexagon/expand-condsets-imm.mir
llvm/trunk/test/CodeGen/Hexagon/expand-condsets-impuse.mir
llvm/trunk/test/CodeGen/Hexagon/expand-condsets-rm-reg.mir
llvm/trunk/test/CodeGen/Hexagon/hwloop-redef-imm.mir
llvm/trunk/test/CodeGen/Hexagon/regalloc-liveout-undef.mir
llvm/trunk/test/CodeGen/Hexagon/unreachable-mbb-phi-subreg.mir
llvm/trunk/test/CodeGen/Lanai/peephole-compare.mir
llvm/trunk/test/CodeGen/MIR/AArch64/atomic-memoperands.mir
llvm/trunk/test/CodeGen/MIR/AArch64/spill-fold.mir
llvm/trunk/test/CodeGen/MIR/AArch64/target-memoperands.mir
llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-imm-f16-f32.mir
llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-multiple.mir
llvm/trunk/test/CodeGen/MIR/AMDGPU/intrinsics.mir
llvm/trunk/test/CodeGen/MIR/AMDGPU/target-flags.mir
llvm/trunk/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir
llvm/trunk/test/CodeGen/MIR/X86/generic-instr-type.mir
llvm/trunk/test/CodeGen/MIR/X86/metadata-operands.mir
llvm/trunk/test/CodeGen/MIR/X86/roundtrip.mir
llvm/trunk/test/CodeGen/MIR/X86/stack-object-operands.mir
llvm/trunk/test/CodeGen/MIR/X86/subregister-index-operands.mir
llvm/trunk/test/CodeGen/MIR/X86/subregister-operands.mir
llvm/trunk/test/CodeGen/MIR/X86/unreachable-mbb-undef-phi.mir
llvm/trunk/test/CodeGen/MIR/X86/virtual-registers.mir
llvm/trunk/test/CodeGen/PowerPC/debuginfo-split-int.ll
llvm/trunk/test/CodeGen/PowerPC/no-rlwimi-trivial-commute.mir
llvm/trunk/test/CodeGen/PowerPC/tls_get_addr_fence1.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-GV.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-brcond.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-cmp.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-constant.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext-x86-64.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fadd-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fdiv-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fmul-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fpext-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fsub-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-gep.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-phi.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-trunc.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-undef.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-GV.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-x32.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-add.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-and-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsi.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsr.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-brcond.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-cmp.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-constant.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-copy.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-ext-x86-64.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-ext.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-extract-vec256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-extract-vec512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fadd-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fconstant.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fdiv-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fmul-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fpext-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-fsub-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-gep.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-inc.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-insert-vec256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-insert-vec512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-intrinsic-x86-flags-read-u32.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-leaf-constant.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-memop-scalar-x32.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-memop-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-memop-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-memop-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-memop-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-merge-vec256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-merge-vec512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-mul-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-mul-vec.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-or-scalar.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-phi.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-sub-v128.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-sub-v256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-sub-v512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-sub.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-trunc.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-undef.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-unmerge-vec256.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-unmerge-vec512.mir
llvm/trunk/test/CodeGen/X86/GlobalISel/select-xor-scalar.mir
llvm/trunk/test/CodeGen/X86/debugloc-no-line-0.ll
llvm/trunk/test/CodeGen/X86/domain-reassignment.mir
llvm/trunk/test/CodeGen/X86/implicit-use-spill.mir
llvm/trunk/test/CodeGen/X86/lea-opt-with-debug.mir
llvm/trunk/test/CodeGen/X86/movtopush.mir
llvm/trunk/test/CodeGen/X86/peephole-recurrence.mir
llvm/trunk/test/CodeGen/X86/peephole.mir
llvm/trunk/test/CodeGen/X86/sqrt-fastmath-mir.ll
llvm/trunk/test/CodeGen/X86/tail-dup-debugloc.ll
llvm/trunk/test/CodeGen/X86/update-terminator-debugloc.ll
llvm/trunk/test/CodeGen/X86/xor-combine-debugloc.ll
Modified: llvm/trunk/lib/CodeGen/MIRPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MIRPrinter.cpp?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/MIRPrinter.cpp (original)
+++ llvm/trunk/lib/CodeGen/MIRPrinter.cpp Tue Oct 24 11:04:54 2017
@@ -270,6 +270,28 @@ static void printCustomRegMask(const uin
OS << ')';
}
+static void printRegClassOrBank(unsigned Reg, raw_ostream &OS,
+ const MachineRegisterInfo &RegInfo,
+ const TargetRegisterInfo *TRI) {
+ if (RegInfo.getRegClassOrNull(Reg))
+ OS << StringRef(TRI->getRegClassName(RegInfo.getRegClass(Reg))).lower();
+ else if (RegInfo.getRegBankOrNull(Reg))
+ OS << StringRef(RegInfo.getRegBankOrNull(Reg)->getName()).lower();
+ else {
+ OS << "_";
+ assert((RegInfo.def_empty(Reg) || RegInfo.getType(Reg).isValid()) &&
+ "Generic registers must have a valid type");
+ }
+}
+
+static void printRegClassOrBank(unsigned Reg, yaml::StringValue &Dest,
+ const MachineRegisterInfo &RegInfo,
+ const TargetRegisterInfo *TRI) {
+ raw_string_ostream OS(Dest.Value);
+ printRegClassOrBank(Reg, OS, RegInfo, TRI);
+}
+
+
void MIRPrinter::convert(yaml::MachineFunction &MF,
const MachineRegisterInfo &RegInfo,
const TargetRegisterInfo *TRI) {
@@ -280,16 +302,7 @@ void MIRPrinter::convert(yaml::MachineFu
unsigned Reg = TargetRegisterInfo::index2VirtReg(I);
yaml::VirtualRegisterDefinition VReg;
VReg.ID = I;
- if (RegInfo.getRegClassOrNull(Reg))
- VReg.Class =
- StringRef(TRI->getRegClassName(RegInfo.getRegClass(Reg))).lower();
- else if (RegInfo.getRegBankOrNull(Reg))
- VReg.Class = StringRef(RegInfo.getRegBankOrNull(Reg)->getName()).lower();
- else {
- VReg.Class = std::string("_");
- assert((RegInfo.def_empty(Reg) || RegInfo.getType(Reg).isValid()) &&
- "Generic registers must have a valid type");
- }
+ printRegClassOrBank(Reg, VReg.Class, RegInfo, TRI);
unsigned PreferredReg = RegInfo.getSimpleHint(Reg);
if (PreferredReg)
printReg(PreferredReg, VReg.PreferredRegister, TRI);
@@ -915,7 +928,8 @@ void MIPrinter::print(const MachineOpera
bool IsDef) {
printTargetFlags(Op);
switch (Op.getType()) {
- case MachineOperand::MO_Register:
+ case MachineOperand::MO_Register: {
+ unsigned Reg = Op.getReg();
if (Op.isImplicit())
OS << (Op.isDef() ? "implicit-def " : "implicit ");
else if (!IsDef && Op.isDef())
@@ -933,15 +947,23 @@ void MIPrinter::print(const MachineOpera
OS << "early-clobber ";
if (Op.isDebug())
OS << "debug-use ";
- printReg(Op.getReg(), OS, TRI);
+ printReg(Reg, OS, TRI);
// Print the sub register.
if (Op.getSubReg() != 0)
OS << '.' << TRI->getSubRegIndexName(Op.getSubReg());
+ if (TargetRegisterInfo::isVirtualRegister(Reg)) {
+ const MachineRegisterInfo &MRI = Op.getParent()->getMF()->getRegInfo();
+ if (IsDef || MRI.def_empty(Reg)) {
+ OS << ':';
+ printRegClassOrBank(Reg, OS, MRI, TRI);
+ }
+ }
if (ShouldPrintRegisterTies && Op.isTied() && !Op.isDef())
OS << "(tied-def " << Op.getParent()->findTiedOperandIdx(I) << ")";
if (TypeToPrint.isValid())
OS << '(' << TypeToPrint << ')';
break;
+ }
case MachineOperand::MO_Immediate:
OS << Op.getImm();
break;
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv-ios.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv-ios.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv-ios.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv-ios.ll Tue Oct 24 11:04:54 2017
@@ -4,14 +4,14 @@ target datalayout = "e-m:o-i64:64-i128:1
target triple = "aarch64-apple-ios9.0"
; CHECK-LABEL: name: test_varargs
-; CHECK: [[ANSWER:%[0-9]+]](s32) = G_CONSTANT i32 42
-; CHECK: [[D_ONE:%[0-9]+]](s64) = G_FCONSTANT double 1.000000e+00
-; CHECK: [[TWELVE:%[0-9]+]](s64) = G_CONSTANT i64 12
-; CHECK: [[THREE:%[0-9]+]](s8) = G_CONSTANT i8 3
-; CHECK: [[ONE:%[0-9]+]](s16) = G_CONSTANT i16 1
-; CHECK: [[FOUR:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[F_ONE:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
-; CHECK: [[TWO:%[0-9]+]](s64) = G_FCONSTANT double 2.000000e+00
+; CHECK: [[ANSWER:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+; CHECK: [[D_ONE:%[0-9]+]]:_(s64) = G_FCONSTANT double 1.000000e+00
+; CHECK: [[TWELVE:%[0-9]+]]:_(s64) = G_CONSTANT i64 12
+; CHECK: [[THREE:%[0-9]+]]:_(s8) = G_CONSTANT i8 3
+; CHECK: [[ONE:%[0-9]+]]:_(s16) = G_CONSTANT i16 1
+; CHECK: [[FOUR:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[F_ONE:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.000000e+00
+; CHECK: [[TWO:%[0-9]+]]:_(s64) = G_FCONSTANT double 2.000000e+00
; CHECK: %w0 = COPY [[ANSWER]]
; CHECK: %d0 = COPY [[D_ONE]]
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-callingconv.ll Tue Oct 24 11:04:54 2017
@@ -4,14 +4,14 @@ target datalayout = "e-m:o-i64:64-i128:1
target triple = "aarch64-linux-gnu"
; CHECK-LABEL: name: args_i32
-; CHECK: %[[ARG0:[0-9]+]](s32) = COPY %w0
-; CHECK: %{{[0-9]+}}(s32) = COPY %w1
-; CHECK: %{{[0-9]+}}(s32) = COPY %w2
-; CHECK: %{{[0-9]+}}(s32) = COPY %w3
-; CHECK: %{{[0-9]+}}(s32) = COPY %w4
-; CHECK: %{{[0-9]+}}(s32) = COPY %w5
-; CHECK: %{{[0-9]+}}(s32) = COPY %w6
-; CHECK: %{{[0-9]+}}(s32) = COPY %w7
+; CHECK: %[[ARG0:[0-9]+]]:_(s32) = COPY %w0
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w1
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w2
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w3
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w4
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w5
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w6
+; CHECK: %{{[0-9]+}}:_(s32) = COPY %w7
; CHECK: %w0 = COPY %[[ARG0]]
define i32 @args_i32(i32 %w0, i32 %w1, i32 %w2, i32 %w3,
@@ -20,14 +20,14 @@ define i32 @args_i32(i32 %w0, i32 %w1, i
}
; CHECK-LABEL: name: args_i64
-; CHECK: %[[ARG0:[0-9]+]](s64) = COPY %x0
-; CHECK: %{{[0-9]+}}(s64) = COPY %x1
-; CHECK: %{{[0-9]+}}(s64) = COPY %x2
-; CHECK: %{{[0-9]+}}(s64) = COPY %x3
-; CHECK: %{{[0-9]+}}(s64) = COPY %x4
-; CHECK: %{{[0-9]+}}(s64) = COPY %x5
-; CHECK: %{{[0-9]+}}(s64) = COPY %x6
-; CHECK: %{{[0-9]+}}(s64) = COPY %x7
+; CHECK: %[[ARG0:[0-9]+]]:_(s64) = COPY %x0
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x1
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x2
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x3
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x4
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x5
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x6
+; CHECK: %{{[0-9]+}}:_(s64) = COPY %x7
; CHECK: %x0 = COPY %[[ARG0]]
define i64 @args_i64(i64 %x0, i64 %x1, i64 %x2, i64 %x3,
i64 %x4, i64 %x5, i64 %x6, i64 %x7) {
@@ -36,14 +36,14 @@ define i64 @args_i64(i64 %x0, i64 %x1, i
; CHECK-LABEL: name: args_ptrs
-; CHECK: %[[ARG0:[0-9]+]](p0) = COPY %x0
-; CHECK: %{{[0-9]+}}(p0) = COPY %x1
-; CHECK: %{{[0-9]+}}(p0) = COPY %x2
-; CHECK: %{{[0-9]+}}(p0) = COPY %x3
-; CHECK: %{{[0-9]+}}(p0) = COPY %x4
-; CHECK: %{{[0-9]+}}(p0) = COPY %x5
-; CHECK: %{{[0-9]+}}(p0) = COPY %x6
-; CHECK: %{{[0-9]+}}(p0) = COPY %x7
+; CHECK: %[[ARG0:[0-9]+]]:_(p0) = COPY %x0
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x1
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x2
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x3
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x4
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x5
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x6
+; CHECK: %{{[0-9]+}}:_(p0) = COPY %x7
; CHECK: %x0 = COPY %[[ARG0]]
define i8* @args_ptrs(i8* %x0, i16* %x1, <2 x i8>* %x2, {i8, i16, i32}* %x3,
[3 x float]* %x4, double* %x5, i8* %x6, i8* %x7) {
@@ -51,28 +51,28 @@ define i8* @args_ptrs(i8* %x0, i16* %x1,
}
; CHECK-LABEL: name: args_arr
-; CHECK: %[[ARG0:[0-9]+]](s64) = COPY %d0
+; CHECK: %[[ARG0:[0-9]+]]:_(s64) = COPY %d0
; CHECK: %d0 = COPY %[[ARG0]]
define [1 x double] @args_arr([1 x double] %d0) {
ret [1 x double] %d0
}
; CHECK-LABEL: name: test_varargs
-; CHECK: [[ANSWER:%[0-9]+]](s32) = G_CONSTANT i32 42
-; CHECK: [[D_ONE:%[0-9]+]](s64) = G_FCONSTANT double 1.000000e+00
-; CHECK: [[TWELVE:%[0-9]+]](s64) = G_CONSTANT i64 12
-; CHECK: [[THREE:%[0-9]+]](s8) = G_CONSTANT i8 3
-; CHECK: [[ONE:%[0-9]+]](s16) = G_CONSTANT i16 1
-; CHECK: [[FOUR:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[F_ONE:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
-; CHECK: [[TWO:%[0-9]+]](s64) = G_FCONSTANT double 2.000000e+00
+; CHECK: [[ANSWER:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+; CHECK: [[D_ONE:%[0-9]+]]:_(s64) = G_FCONSTANT double 1.000000e+00
+; CHECK: [[TWELVE:%[0-9]+]]:_(s64) = G_CONSTANT i64 12
+; CHECK: [[THREE:%[0-9]+]]:_(s8) = G_CONSTANT i8 3
+; CHECK: [[ONE:%[0-9]+]]:_(s16) = G_CONSTANT i16 1
+; CHECK: [[FOUR:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[F_ONE:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.000000e+00
+; CHECK: [[TWO:%[0-9]+]]:_(s64) = G_FCONSTANT double 2.000000e+00
; CHECK: %w0 = COPY [[ANSWER]]
; CHECK: %d0 = COPY [[D_ONE]]
; CHECK: %x1 = COPY [[TWELVE]]
-; CHECK: [[THREE_TMP:%[0-9]+]](s32) = G_ANYEXT [[THREE]]
+; CHECK: [[THREE_TMP:%[0-9]+]]:_(s32) = G_ANYEXT [[THREE]]
; CHECK: %w2 = COPY [[THREE_TMP]](s32)
-; CHECK: [[ONE_TMP:%[0-9]+]](s32) = G_ANYEXT [[ONE]]
+; CHECK: [[ONE_TMP:%[0-9]+]]:_(s32) = G_ANYEXT [[ONE]]
; CHECK: %w3 = COPY [[ONE_TMP]](s32)
; CHECK: %w4 = COPY [[FOUR]](s32)
; CHECK: %s1 = COPY [[F_ONE]](s32)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-stackprotect.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-stackprotect.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-stackprotect.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-stackprotect.ll Tue Oct 24 11:04:54 2017
@@ -7,8 +7,8 @@
; CHECK: - { id: 0, name: StackGuardSlot, type: default, offset: 0, size: 8, alignment: 8,
; CHECK-NOT: id: 1
-; CHECK: [[GUARD_SLOT:%[0-9]+]](p0) = G_FRAME_INDEX %stack.0.StackGuardSlot
-; CHECK: [[GUARD:%[0-9]+]](p0) = LOAD_STACK_GUARD :: (dereferenceable invariant load 8 from @__stack_chk_guard)
+; CHECK: [[GUARD_SLOT:%[0-9]+]]:_(p0) = G_FRAME_INDEX %stack.0.StackGuardSlot
+; CHECK: [[GUARD:%[0-9]+]]:gpr64sp(p0) = LOAD_STACK_GUARD :: (dereferenceable invariant load 8 from @__stack_chk_guard)
; CHECK: G_STORE [[GUARD]](p0), [[GUARD_SLOT]](p0) :: (volatile store 8 into %stack.0.StackGuardSlot)
declare void @llvm.stackprotector(i8*, i8**)
define void @test_stack_guard_remat2() {
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll Tue Oct 24 11:04:54 2017
@@ -7,9 +7,9 @@ target triple = "aarch64--"
; Tests for add.
; CHECK-LABEL: name: addi64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_ADD [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_ADD [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @addi64(i64 %arg1, i64 %arg2) {
@@ -18,9 +18,9 @@ define i64 @addi64(i64 %arg1, i64 %arg2)
}
; CHECK-LABEL: name: muli64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_MUL [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_MUL [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @muli64(i64 %arg1, i64 %arg2) {
@@ -41,10 +41,10 @@ define i64 @muli64(i64 %arg1, i64 %arg2)
; CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true,
; CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' }
; CHECK-NEXT: - { id: 3, name: ptr4, type: default, offset: 0, size: 1, alignment: 8,
-; CHECK: %{{[0-9]+}}(p0) = G_FRAME_INDEX %stack.0.ptr1
-; CHECK: %{{[0-9]+}}(p0) = G_FRAME_INDEX %stack.1.ptr2
-; CHECK: %{{[0-9]+}}(p0) = G_FRAME_INDEX %stack.2.ptr3
-; CHECK: %{{[0-9]+}}(p0) = G_FRAME_INDEX %stack.3.ptr4
+; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.0.ptr1
+; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.1.ptr2
+; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.2.ptr3
+; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.3.ptr4
define void @allocai64() {
%ptr1 = alloca i64
%ptr2 = alloca i64, align 1
@@ -107,10 +107,10 @@ end:
; CHECK-NEXT: successors: %[[TRUE:bb.[0-9]+.true]](0x40000000),
; CHECK: %[[FALSE:bb.[0-9]+.false]](0x40000000)
;
-; CHECK: [[ADDR:%.*]](p0) = COPY %x0
+; CHECK: [[ADDR:%.*]]:_(p0) = COPY %x0
;
; Check that we emit the correct branch.
-; CHECK: [[TST:%.*]](s1) = G_LOAD [[ADDR]](p0)
+; CHECK: [[TST:%.*]]:_(s1) = G_LOAD [[ADDR]](p0)
; CHECK: G_BRCOND [[TST]](s1), %[[TRUE]]
; CHECK: G_BR %[[FALSE]]
;
@@ -135,19 +135,19 @@ false:
;
; CHECK: {{bb.[0-9]+.entry}}:
; CHECK-NEXT: successors: %[[BB_CASE100:bb.[0-9]+.case100]](0x40000000), %[[BB_NOTCASE100_CHECKNEXT:bb.[0-9]+.entry]](0x40000000)
-; CHECK: %0(s32) = COPY %w0
-; CHECK: %[[reg100:[0-9]+]](s32) = G_CONSTANT i32 100
-; CHECK: %[[reg200:[0-9]+]](s32) = G_CONSTANT i32 200
-; CHECK: %[[reg0:[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: %[[reg1:[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: %[[reg2:[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: %[[regicmp100:[0-9]+]](s1) = G_ICMP intpred(eq), %[[reg100]](s32), %0
+; CHECK: %0:_(s32) = COPY %w0
+; CHECK: %[[reg100:[0-9]+]]:_(s32) = G_CONSTANT i32 100
+; CHECK: %[[reg200:[0-9]+]]:_(s32) = G_CONSTANT i32 200
+; CHECK: %[[reg0:[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: %[[reg1:[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: %[[reg2:[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: %[[regicmp100:[0-9]+]]:_(s1) = G_ICMP intpred(eq), %[[reg100]](s32), %0
; CHECK: G_BRCOND %[[regicmp100]](s1), %[[BB_CASE100]]
; CHECK: G_BR %[[BB_NOTCASE100_CHECKNEXT]]
;
; CHECK: [[BB_NOTCASE100_CHECKNEXT]]:
; CHECK-NEXT: successors: %[[BB_CASE200:bb.[0-9]+.case200]](0x40000000), %[[BB_NOTCASE200_CHECKNEXT:bb.[0-9]+.entry]](0x40000000)
-; CHECK: %[[regicmp200:[0-9]+]](s1) = G_ICMP intpred(eq), %[[reg200]](s32), %0
+; CHECK: %[[regicmp200:[0-9]+]]:_(s1) = G_ICMP intpred(eq), %[[reg200]](s32), %0
; CHECK: G_BRCOND %[[regicmp200]](s1), %[[BB_CASE200]]
; CHECK: G_BR %[[BB_NOTCASE200_CHECKNEXT]]
;
@@ -157,20 +157,20 @@ false:
;
; CHECK: [[BB_DEFAULT]]:
; CHECK-NEXT: successors: %[[BB_RET:bb.[0-9]+.return]](0x80000000)
-; CHECK: %[[regretdefault:[0-9]+]](s32) = G_ADD %0, %[[reg0]]
+; CHECK: %[[regretdefault:[0-9]+]]:_(s32) = G_ADD %0, %[[reg0]]
; CHECK: G_BR %[[BB_RET]]
;
; CHECK: [[BB_CASE100]]:
; CHECK-NEXT: successors: %[[BB_RET:bb.[0-9]+.return]](0x80000000)
-; CHECK: %[[regretc100:[0-9]+]](s32) = G_ADD %0, %[[reg1]]
+; CHECK: %[[regretc100:[0-9]+]]:_(s32) = G_ADD %0, %[[reg1]]
; CHECK: G_BR %[[BB_RET]]
;
; CHECK: [[BB_CASE200]]:
; CHECK-NEXT: successors: %[[BB_RET]](0x80000000)
-; CHECK: %[[regretc200:[0-9]+]](s32) = G_ADD %0, %[[reg2]]
+; CHECK: %[[regretc200:[0-9]+]]:_(s32) = G_ADD %0, %[[reg2]]
;
; CHECK: [[BB_RET]]:
-; CHECK-NEXT: %[[regret:[0-9]+]](s32) = G_PHI %[[regretdefault]](s32), %[[BB_DEFAULT]], %[[regretc100]](s32), %[[BB_CASE100]]
+; CHECK-NEXT: %[[regret:[0-9]+]]:_(s32) = G_PHI %[[regretdefault]](s32), %[[BB_DEFAULT]], %[[regretc100]](s32), %[[BB_CASE100]]
; CHECK: %w0 = COPY %[[regret]](s32)
; CHECK: RET_ReallyLR implicit %w0
;
@@ -289,9 +289,9 @@ L2:
; Tests for or.
; CHECK-LABEL: name: ori64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_OR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_OR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @ori64(i64 %arg1, i64 %arg2) {
@@ -300,9 +300,9 @@ define i64 @ori64(i64 %arg1, i64 %arg2)
}
; CHECK-LABEL: name: ori32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_OR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_OR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @ori32(i32 %arg1, i32 %arg2) {
@@ -312,9 +312,9 @@ define i32 @ori32(i32 %arg1, i32 %arg2)
; Tests for xor.
; CHECK-LABEL: name: xori64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_XOR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_XOR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @xori64(i64 %arg1, i64 %arg2) {
@@ -323,9 +323,9 @@ define i64 @xori64(i64 %arg1, i64 %arg2)
}
; CHECK-LABEL: name: xori32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_XOR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_XOR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @xori32(i32 %arg1, i32 %arg2) {
@@ -335,9 +335,9 @@ define i32 @xori32(i32 %arg1, i32 %arg2)
; Tests for and.
; CHECK-LABEL: name: andi64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_AND [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_AND [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @andi64(i64 %arg1, i64 %arg2) {
@@ -346,9 +346,9 @@ define i64 @andi64(i64 %arg1, i64 %arg2)
}
; CHECK-LABEL: name: andi32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_AND [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_AND [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @andi32(i32 %arg1, i32 %arg2) {
@@ -358,9 +358,9 @@ define i32 @andi32(i32 %arg1, i32 %arg2)
; Tests for sub.
; CHECK-LABEL: name: subi64
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %x1
-; CHECK-NEXT: [[RES:%[0-9]+]](s64) = G_SUB [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s64) = G_SUB [[ARG1]], [[ARG2]]
; CHECK-NEXT: %x0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %x0
define i64 @subi64(i64 %arg1, i64 %arg2) {
@@ -369,9 +369,9 @@ define i64 @subi64(i64 %arg1, i64 %arg2)
}
; CHECK-LABEL: name: subi32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_SUB [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_SUB [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @subi32(i32 %arg1, i32 %arg2) {
@@ -380,8 +380,8 @@ define i32 @subi32(i32 %arg1, i32 %arg2)
}
; CHECK-LABEL: name: ptrtoint
-; CHECK: [[ARG1:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[RES:%[0-9]+]](s64) = G_PTRTOINT [[ARG1]]
+; CHECK: [[ARG1:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_PTRTOINT [[ARG1]]
; CHECK: %x0 = COPY [[RES]]
; CHECK: RET_ReallyLR implicit %x0
define i64 @ptrtoint(i64* %a) {
@@ -390,8 +390,8 @@ define i64 @ptrtoint(i64* %a) {
}
; CHECK-LABEL: name: inttoptr
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[RES:%[0-9]+]](p0) = G_INTTOPTR [[ARG1]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[RES:%[0-9]+]]:_(p0) = G_INTTOPTR [[ARG1]]
; CHECK: %x0 = COPY [[RES]]
; CHECK: RET_ReallyLR implicit %x0
define i64* @inttoptr(i64 %a) {
@@ -400,7 +400,7 @@ define i64* @inttoptr(i64 %a) {
}
; CHECK-LABEL: name: trivial_bitcast
-; CHECK: [[ARG1:%[0-9]+]](p0) = COPY %x0
+; CHECK: [[ARG1:%[0-9]+]]:_(p0) = COPY %x0
; CHECK: %x0 = COPY [[ARG1]]
; CHECK: RET_ReallyLR implicit %x0
define i64* @trivial_bitcast(i8* %a) {
@@ -409,13 +409,13 @@ define i64* @trivial_bitcast(i8* %a) {
}
; CHECK-LABEL: name: trivial_bitcast_with_copy
-; CHECK: [[A:%[0-9]+]](p0) = COPY %x0
+; CHECK: [[A:%[0-9]+]]:_(p0) = COPY %x0
; CHECK: G_BR %[[CAST:bb\.[0-9]+.cast]]
; CHECK: [[END:bb\.[0-9]+.end]]:
; CHECK: [[CAST]]:
-; CHECK: {{%[0-9]+}}(p0) = COPY [[A]]
+; CHECK: {{%[0-9]+}}:_(p0) = COPY [[A]]
; CHECK: G_BR %[[END]]
define i64* @trivial_bitcast_with_copy(i8* %a) {
br label %cast
@@ -429,9 +429,9 @@ cast:
}
; CHECK-LABEL: name: bitcast
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[RES1:%[0-9]+]](<2 x s32>) = G_BITCAST [[ARG1]]
-; CHECK: [[RES2:%[0-9]+]](s64) = G_BITCAST [[RES1]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[RES1:%[0-9]+]]:_(<2 x s32>) = G_BITCAST [[ARG1]]
+; CHECK: [[RES2:%[0-9]+]]:_(s64) = G_BITCAST [[RES1]]
; CHECK: %x0 = COPY [[RES2]]
; CHECK: RET_ReallyLR implicit %x0
define i64 @bitcast(i64 %a) {
@@ -441,10 +441,10 @@ define i64 @bitcast(i64 %a) {
}
; CHECK-LABEL: name: trunc
-; CHECK: [[ARG1:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[VEC:%[0-9]+]](<4 x s32>) = G_LOAD
-; CHECK: [[RES1:%[0-9]+]](s8) = G_TRUNC [[ARG1]]
-; CHECK: [[RES2:%[0-9]+]](<4 x s16>) = G_TRUNC [[VEC]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[VEC:%[0-9]+]]:_(<4 x s32>) = G_LOAD
+; CHECK: [[RES1:%[0-9]+]]:_(s8) = G_TRUNC [[ARG1]]
+; CHECK: [[RES2:%[0-9]+]]:_(<4 x s16>) = G_TRUNC [[VEC]]
define void @trunc(i64 %a) {
%vecptr = alloca <4 x i32>
%vec = load <4 x i32>, <4 x i32>* %vecptr
@@ -454,13 +454,13 @@ define void @trunc(i64 %a) {
}
; CHECK-LABEL: name: load
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[ADDR42:%[0-9]+]](p42) = COPY %x1
-; CHECK: [[VAL1:%[0-9]+]](s64) = G_LOAD [[ADDR]](p0) :: (load 8 from %ir.addr, align 16)
-; CHECK: [[VAL2:%[0-9]+]](s64) = G_LOAD [[ADDR42]](p42) :: (load 8 from %ir.addr42)
-; CHECK: [[SUM2:%.*]](s64) = G_ADD [[VAL1]], [[VAL2]]
-; CHECK: [[VAL3:%[0-9]+]](s64) = G_LOAD [[ADDR]](p0) :: (volatile load 8 from %ir.addr)
-; CHECK: [[SUM3:%[0-9]+]](s64) = G_ADD [[SUM2]], [[VAL3]]
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[ADDR42:%[0-9]+]]:_(p42) = COPY %x1
+; CHECK: [[VAL1:%[0-9]+]]:_(s64) = G_LOAD [[ADDR]](p0) :: (load 8 from %ir.addr, align 16)
+; CHECK: [[VAL2:%[0-9]+]]:_(s64) = G_LOAD [[ADDR42]](p42) :: (load 8 from %ir.addr42)
+; CHECK: [[SUM2:%.*]]:_(s64) = G_ADD [[VAL1]], [[VAL2]]
+; CHECK: [[VAL3:%[0-9]+]]:_(s64) = G_LOAD [[ADDR]](p0) :: (volatile load 8 from %ir.addr)
+; CHECK: [[SUM3:%[0-9]+]]:_(s64) = G_ADD [[SUM2]], [[VAL3]]
; CHECK: %x0 = COPY [[SUM3]]
; CHECK: RET_ReallyLR implicit %x0
define i64 @load(i64* %addr, i64 addrspace(42)* %addr42) {
@@ -475,10 +475,10 @@ define i64 @load(i64* %addr, i64 addrspa
}
; CHECK-LABEL: name: store
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[ADDR42:%[0-9]+]](p42) = COPY %x1
-; CHECK: [[VAL1:%[0-9]+]](s64) = COPY %x2
-; CHECK: [[VAL2:%[0-9]+]](s64) = COPY %x3
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[ADDR42:%[0-9]+]]:_(p42) = COPY %x1
+; CHECK: [[VAL1:%[0-9]+]]:_(s64) = COPY %x2
+; CHECK: [[VAL2:%[0-9]+]]:_(s64) = COPY %x3
; CHECK: G_STORE [[VAL1]](s64), [[ADDR]](p0) :: (store 8 into %ir.addr, align 16)
; CHECK: G_STORE [[VAL2]](s64), [[ADDR42]](p42) :: (store 8 into %ir.addr42)
; CHECK: G_STORE [[VAL1]](s64), [[ADDR]](p0) :: (volatile store 8 into %ir.addr)
@@ -492,12 +492,12 @@ define void @store(i64* %addr, i64 addrs
}
; CHECK-LABEL: name: intrinsics
-; CHECK: [[CUR:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[BITS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[CREG:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[PTR:%[0-9]+]](p0) = G_INTRINSIC intrinsic(@llvm.returnaddress), [[CREG]]
-; CHECK: [[PTR_VEC:%[0-9]+]](p0) = G_FRAME_INDEX %stack.0.ptr.vec
-; CHECK: [[VEC:%[0-9]+]](<8 x s8>) = G_LOAD [[PTR_VEC]]
+; CHECK: [[CUR:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[BITS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[CREG:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = G_INTRINSIC intrinsic(@llvm.returnaddress), [[CREG]]
+; CHECK: [[PTR_VEC:%[0-9]+]]:_(p0) = G_FRAME_INDEX %stack.0.ptr.vec
+; CHECK: [[VEC:%[0-9]+]]:_(<8 x s8>) = G_LOAD [[PTR_VEC]]
; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.aarch64.neon.st2), [[VEC]](<8 x s8>), [[VEC]](<8 x s8>), [[PTR]](p0)
; CHECK: RET_ReallyLR
declare i8* @llvm.returnaddress(i32)
@@ -516,12 +516,12 @@ define void @intrinsics(i32 %cur, i32 %b
; CHECK: G_BR %[[FALSE:bb\.[0-9]+.false]]
; CHECK: [[TRUE]]:
-; CHECK: [[RES1:%[0-9]+]](s32) = G_LOAD
+; CHECK: [[RES1:%[0-9]+]]:_(s32) = G_LOAD
; CHECK: [[FALSE]]:
-; CHECK: [[RES2:%[0-9]+]](s32) = G_LOAD
+; CHECK: [[RES2:%[0-9]+]]:_(s32) = G_LOAD
-; CHECK: [[RES:%[0-9]+]](s32) = G_PHI [[RES1]](s32), %[[TRUE]], [[RES2]](s32), %[[FALSE]]
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_PHI [[RES1]](s32), %[[TRUE]], [[RES2]](s32), %[[FALSE]]
; CHECK: %w0 = COPY [[RES]]
define i32 @test_phi(i32* %addr1, i32* %addr2, i1 %tst) {
br i1 %tst, label %true, label %false
@@ -551,13 +551,13 @@ define void @unreachable(i32 %a) {
; It's important that constants are after argument passing, but before the
; rest of the entry block.
; CHECK-LABEL: name: constant_int
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[ONE:%[0-9]+]](s32) = G_CONSTANT i32 1
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[ONE:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
; CHECK: {{bb.[0-9]+}}.next:
-; CHECK: [[SUM1:%[0-9]+]](s32) = G_ADD [[IN]], [[ONE]]
-; CHECK: [[SUM2:%[0-9]+]](s32) = G_ADD [[IN]], [[ONE]]
-; CHECK: [[RES:%[0-9]+]](s32) = G_ADD [[SUM1]], [[SUM2]]
+; CHECK: [[SUM1:%[0-9]+]]:_(s32) = G_ADD [[IN]], [[ONE]]
+; CHECK: [[SUM2:%[0-9]+]]:_(s32) = G_ADD [[IN]], [[ONE]]
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_ADD [[SUM1]], [[SUM2]]
; CHECK: %w0 = COPY [[RES]]
define i32 @constant_int(i32 %in) {
@@ -571,24 +571,24 @@ next:
}
; CHECK-LABEL: name: constant_int_start
-; CHECK: [[TWO:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[ANSWER:%[0-9]+]](s32) = G_CONSTANT i32 42
-; CHECK: [[RES:%[0-9]+]](s32) = G_ADD [[TWO]], [[ANSWER]]
+; CHECK: [[TWO:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[ANSWER:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_ADD [[TWO]], [[ANSWER]]
define i32 @constant_int_start() {
%res = add i32 2, 42
ret i32 %res
}
; CHECK-LABEL: name: test_undef
-; CHECK: [[UNDEF:%[0-9]+]](s32) = G_IMPLICIT_DEF
+; CHECK: [[UNDEF:%[0-9]+]]:_(s32) = G_IMPLICIT_DEF
; CHECK: %w0 = COPY [[UNDEF]]
define i32 @test_undef() {
ret i32 undef
}
; CHECK-LABEL: name: test_constant_inttoptr
-; CHECK: [[ONE:%[0-9]+]](s64) = G_CONSTANT i64 1
-; CHECK: [[PTR:%[0-9]+]](p0) = G_INTTOPTR [[ONE]]
+; CHECK: [[ONE:%[0-9]+]]:_(s64) = G_CONSTANT i64 1
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = G_INTTOPTR [[ONE]]
; CHECK: %x0 = COPY [[PTR]]
define i8* @test_constant_inttoptr() {
ret i8* inttoptr(i64 1 to i8*)
@@ -597,15 +597,15 @@ define i8* @test_constant_inttoptr() {
; This failed purely because the Constant -> VReg map was kept across
; functions, so reuse the "i64 1" from above.
; CHECK-LABEL: name: test_reused_constant
-; CHECK: [[ONE:%[0-9]+]](s64) = G_CONSTANT i64 1
+; CHECK: [[ONE:%[0-9]+]]:_(s64) = G_CONSTANT i64 1
; CHECK: %x0 = COPY [[ONE]]
define i64 @test_reused_constant() {
ret i64 1
}
; CHECK-LABEL: name: test_sext
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RES:%[0-9]+]](s64) = G_SEXT [[IN]]
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_SEXT [[IN]]
; CHECK: %x0 = COPY [[RES]]
define i64 @test_sext(i32 %in) {
%res = sext i32 %in to i64
@@ -613,8 +613,8 @@ define i64 @test_sext(i32 %in) {
}
; CHECK-LABEL: name: test_zext
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RES:%[0-9]+]](s64) = G_ZEXT [[IN]]
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_ZEXT [[IN]]
; CHECK: %x0 = COPY [[RES]]
define i64 @test_zext(i32 %in) {
%res = zext i32 %in to i64
@@ -622,9 +622,9 @@ define i64 @test_zext(i32 %in) {
}
; CHECK-LABEL: name: test_shl
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_SHL [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_SHL [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_shl(i32 %arg1, i32 %arg2) {
@@ -634,9 +634,9 @@ define i32 @test_shl(i32 %arg1, i32 %arg
; CHECK-LABEL: name: test_lshr
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_LSHR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_LSHR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_lshr(i32 %arg1, i32 %arg2) {
@@ -645,9 +645,9 @@ define i32 @test_lshr(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_ashr
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_ASHR [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_ASHR [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_ashr(i32 %arg1, i32 %arg2) {
@@ -656,9 +656,9 @@ define i32 @test_ashr(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_sdiv
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_SDIV [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_SDIV [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_sdiv(i32 %arg1, i32 %arg2) {
@@ -667,9 +667,9 @@ define i32 @test_sdiv(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_udiv
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_UDIV [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_UDIV [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_udiv(i32 %arg1, i32 %arg2) {
@@ -678,9 +678,9 @@ define i32 @test_udiv(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_srem
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_SREM [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_SREM [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_srem(i32 %arg1, i32 %arg2) {
@@ -689,9 +689,9 @@ define i32 @test_srem(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_urem
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %w0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %w1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_UREM [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_UREM [[ARG1]], [[ARG2]]
; CHECK-NEXT: %w0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %w0
define i32 @test_urem(i32 %arg1, i32 %arg2) {
@@ -700,15 +700,15 @@ define i32 @test_urem(i32 %arg1, i32 %ar
}
; CHECK-LABEL: name: test_constant_null
-; CHECK: [[NULL:%[0-9]+]](p0) = G_CONSTANT i64 0
+; CHECK: [[NULL:%[0-9]+]]:_(p0) = G_CONSTANT i64 0
; CHECK: %x0 = COPY [[NULL]]
define i8* @test_constant_null() {
ret i8* null
}
; CHECK-LABEL: name: test_struct_memops
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s64) = G_LOAD [[ADDR]](p0) :: (load 8 from %ir.addr, align 4)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s64) = G_LOAD [[ADDR]](p0) :: (load 8 from %ir.addr, align 4)
; CHECK: G_STORE [[VAL]](s64), [[ADDR]](p0) :: (store 8 into %ir.addr, align 4)
define void @test_struct_memops({ i8, i32 }* %addr) {
%val = load { i8, i32 }, { i8, i32 }* %addr
@@ -717,8 +717,8 @@ define void @test_struct_memops({ i8, i3
}
; CHECK-LABEL: name: test_i1_memops
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s1) = G_LOAD [[ADDR]](p0) :: (load 1 from %ir.addr)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s1) = G_LOAD [[ADDR]](p0) :: (load 1 from %ir.addr)
; CHECK: G_STORE [[VAL]](s1), [[ADDR]](p0) :: (store 1 into %ir.addr)
define void @test_i1_memops(i1* %addr) {
%val = load i1, i1* %addr
@@ -727,10 +727,10 @@ define void @test_i1_memops(i1* %addr) {
}
; CHECK-LABEL: name: int_comparison
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[TST:%[0-9]+]](s1) = G_ICMP intpred(ne), [[LHS]](s32), [[RHS]]
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[LHS]](s32), [[RHS]]
; CHECK: G_STORE [[TST]](s1), [[ADDR]](p0)
define void @int_comparison(i32 %a, i32 %b, i1* %addr) {
%res = icmp ne i32 %a, %b
@@ -739,10 +739,10 @@ define void @int_comparison(i32 %a, i32
}
; CHECK-LABEL: name: ptr_comparison
-; CHECK: [[LHS:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[RHS:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[TST:%[0-9]+]](s1) = G_ICMP intpred(eq), [[LHS]](p0), [[RHS]]
+; CHECK: [[LHS:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[RHS:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[LHS]](p0), [[RHS]]
; CHECK: G_STORE [[TST]](s1), [[ADDR]](p0)
define void @ptr_comparison(i8* %a, i8* %b, i1* %addr) {
%res = icmp eq i8* %a, %b
@@ -751,9 +751,9 @@ define void @ptr_comparison(i8* %a, i8*
}
; CHECK-LABEL: name: test_fadd
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %s0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %s1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_FADD [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_FADD [[ARG1]], [[ARG2]]
; CHECK-NEXT: %s0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %s0
define float @test_fadd(float %arg1, float %arg2) {
@@ -762,9 +762,9 @@ define float @test_fadd(float %arg1, flo
}
; CHECK-LABEL: name: test_fsub
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %s0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %s1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_FSUB [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_FSUB [[ARG1]], [[ARG2]]
; CHECK-NEXT: %s0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %s0
define float @test_fsub(float %arg1, float %arg2) {
@@ -773,9 +773,9 @@ define float @test_fsub(float %arg1, flo
}
; CHECK-LABEL: name: test_fmul
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %s0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %s1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_FMUL [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_FMUL [[ARG1]], [[ARG2]]
; CHECK-NEXT: %s0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %s0
define float @test_fmul(float %arg1, float %arg2) {
@@ -784,9 +784,9 @@ define float @test_fmul(float %arg1, flo
}
; CHECK-LABEL: name: test_fdiv
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %s0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %s1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_FDIV [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_FDIV [[ARG1]], [[ARG2]]
; CHECK-NEXT: %s0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %s0
define float @test_fdiv(float %arg1, float %arg2) {
@@ -795,9 +795,9 @@ define float @test_fdiv(float %arg1, flo
}
; CHECK-LABEL: name: test_frem
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %s0
-; CHECK-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %s1
-; CHECK-NEXT: [[RES:%[0-9]+]](s32) = G_FREM [[ARG1]], [[ARG2]]
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK-NEXT: [[RES:%[0-9]+]]:_(s32) = G_FREM [[ARG1]], [[ARG2]]
; CHECK-NEXT: %s0 = COPY [[RES]]
; CHECK-NEXT: RET_ReallyLR implicit %s0
define float @test_frem(float %arg1, float %arg2) {
@@ -806,13 +806,13 @@ define float @test_frem(float %arg1, flo
}
; CHECK-LABEL: name: test_sadd_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_SADDO [[LHS]], [[RHS]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_SADDO [[LHS]], [[RHS]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.sadd.with.overflow.i32(i32, i32)
define void @test_sadd_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %addr) {
@@ -822,14 +822,14 @@ define void @test_sadd_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_uadd_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[ZERO:%[0-9]+]](s1) = G_CONSTANT i1 false
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_UADDE [[LHS]], [[RHS]], [[ZERO]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[ZERO:%[0-9]+]]:_(s1) = G_CONSTANT i1 false
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_UADDE [[LHS]], [[RHS]], [[ZERO]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.uadd.with.overflow.i32(i32, i32)
define void @test_uadd_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %addr) {
@@ -839,13 +839,13 @@ define void @test_uadd_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_ssub_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_SSUBO [[LHS]], [[RHS]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_SSUBO [[LHS]], [[RHS]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.ssub.with.overflow.i32(i32, i32)
define void @test_ssub_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %subr) {
@@ -855,14 +855,14 @@ define void @test_ssub_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_usub_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[ZERO:%[0-9]+]](s1) = G_CONSTANT i1 false
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_USUBE [[LHS]], [[RHS]], [[ZERO]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[ZERO:%[0-9]+]]:_(s1) = G_CONSTANT i1 false
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_USUBE [[LHS]], [[RHS]], [[ZERO]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.usub.with.overflow.i32(i32, i32)
define void @test_usub_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %subr) {
@@ -872,13 +872,13 @@ define void @test_usub_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_smul_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_SMULO [[LHS]], [[RHS]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_SMULO [[LHS]], [[RHS]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.smul.with.overflow.i32(i32, i32)
define void @test_smul_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %addr) {
@@ -888,13 +888,13 @@ define void @test_smul_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_umul_overflow
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[VAL:%[0-9]+]](s32), [[OVERFLOW:%[0-9]+]](s1) = G_UMULO [[LHS]], [[RHS]]
-; CHECK: [[TMP:%[0-9]+]](s64) = G_IMPLICIT_DEF
-; CHECK: [[TMP1:%[0-9]+]](s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
-; CHECK: [[RES:%[0-9]+]](s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[VAL:%[0-9]+]]:_(s32), [[OVERFLOW:%[0-9]+]]:_(s1) = G_UMULO [[LHS]], [[RHS]]
+; CHECK: [[TMP:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+; CHECK: [[TMP1:%[0-9]+]]:_(s64) = G_INSERT [[TMP]], [[VAL]](s32), 0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_INSERT [[TMP1]], [[OVERFLOW]](s1), 32
; CHECK: G_STORE [[RES]](s64), [[ADDR]](p0)
declare { i32, i1 } @llvm.umul.with.overflow.i32(i32, i32)
define void @test_umul_overflow(i32 %lhs, i32 %rhs, { i32, i1 }* %addr) {
@@ -904,8 +904,8 @@ define void @test_umul_overflow(i32 %lhs
}
; CHECK-LABEL: name: test_extractvalue
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD
-; CHECK: [[RES:%[0-9]+]](s32) = G_EXTRACT [[STRUCT]](s128), 64
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_EXTRACT [[STRUCT]](s128), 64
; CHECK: %w0 = COPY [[RES]]
%struct.nested = type {i8, { i8, i32 }, i32}
define i32 @test_extractvalue(%struct.nested* %addr) {
@@ -915,8 +915,8 @@ define i32 @test_extractvalue(%struct.ne
}
; CHECK-LABEL: name: test_extractvalue_agg
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD
-; CHECK: [[RES:%[0-9]+]](s64) = G_EXTRACT [[STRUCT]](s128), 32
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_EXTRACT [[STRUCT]](s128), 32
; CHECK: G_STORE [[RES]]
define void @test_extractvalue_agg(%struct.nested* %addr, {i8, i32}* %addr2) {
%struct = load %struct.nested, %struct.nested* %addr
@@ -926,9 +926,9 @@ define void @test_extractvalue_agg(%stru
}
; CHECK-LABEL: name: test_insertvalue
-; CHECK: [[VAL:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD
-; CHECK: [[NEWSTRUCT:%[0-9]+]](s128) = G_INSERT [[STRUCT]], [[VAL]](s32), 64
+; CHECK: [[VAL:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD
+; CHECK: [[NEWSTRUCT:%[0-9]+]]:_(s128) = G_INSERT [[STRUCT]], [[VAL]](s32), 64
; CHECK: G_STORE [[NEWSTRUCT]](s128),
define void @test_insertvalue(%struct.nested* %addr, i32 %val) {
%struct = load %struct.nested, %struct.nested* %addr
@@ -939,9 +939,9 @@ define void @test_insertvalue(%struct.ne
define [1 x i64] @test_trivial_insert([1 x i64] %s, i64 %val) {
; CHECK-LABEL: name: test_trivial_insert
-; CHECK: [[STRUCT:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s64) = COPY %x1
-; CHECK: [[RES:%[0-9]+]](s64) = COPY [[VAL]](s64)
+; CHECK: [[STRUCT:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK: [[RES:%[0-9]+]]:_(s64) = COPY [[VAL]](s64)
; CHECK: %x0 = COPY [[RES]]
%res = insertvalue [1 x i64] %s, i64 %val, 0
ret [1 x i64] %res
@@ -949,18 +949,18 @@ define [1 x i64] @test_trivial_insert([1
define [1 x i8*] @test_trivial_insert_ptr([1 x i8*] %s, i8* %val) {
; CHECK-LABEL: name: test_trivial_insert_ptr
-; CHECK: [[STRUCT:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[RES:%[0-9]+]](s64) = G_PTRTOINT [[VAL]](p0)
+; CHECK: [[STRUCT:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_PTRTOINT [[VAL]](p0)
; CHECK: %x0 = COPY [[RES]]
%res = insertvalue [1 x i8*] %s, i8* %val, 0
ret [1 x i8*] %res
}
; CHECK-LABEL: name: test_insertvalue_agg
-; CHECK: [[SMALLSTRUCT:%[0-9]+]](s64) = G_LOAD
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD
-; CHECK: [[RES:%[0-9]+]](s128) = G_INSERT [[STRUCT]], [[SMALLSTRUCT]](s64), 32
+; CHECK: [[SMALLSTRUCT:%[0-9]+]]:_(s64) = G_LOAD
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD
+; CHECK: [[RES:%[0-9]+]]:_(s128) = G_INSERT [[STRUCT]], [[SMALLSTRUCT]](s64), 32
; CHECK: G_STORE [[RES]](s128)
define void @test_insertvalue_agg(%struct.nested* %addr, {i8, i32}* %addr2) {
%smallstruct = load {i8, i32}, {i8, i32}* %addr2
@@ -971,11 +971,11 @@ define void @test_insertvalue_agg(%struc
}
; CHECK-LABEL: name: test_select
-; CHECK: [[TST_C:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TST:%[0-9]+]](s1) = G_TRUNC [[TST_C]]
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %w2
-; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
+; CHECK: [[TST_C:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_TRUNC [[TST_C]]
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %w2
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
; CHECK: %w0 = COPY [[RES]]
define i32 @test_select(i1 %tst, i32 %lhs, i32 %rhs) {
%res = select i1 %tst, i32 %lhs, i32 %rhs
@@ -983,11 +983,11 @@ define i32 @test_select(i1 %tst, i32 %lh
}
; CHECK-LABEL: name: test_select_ptr
-; CHECK: [[TST_C:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TST:%[0-9]+]](s1) = G_TRUNC [[TST_C]]
-; CHECK: [[LHS:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[RHS:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[RES:%[0-9]+]](p0) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
+; CHECK: [[TST_C:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_TRUNC [[TST_C]]
+; CHECK: [[LHS:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[RHS:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[RES:%[0-9]+]]:_(p0) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
; CHECK: %x0 = COPY [[RES]]
define i8* @test_select_ptr(i1 %tst, i8* %lhs, i8* %rhs) {
%res = select i1 %tst, i8* %lhs, i8* %rhs
@@ -995,11 +995,11 @@ define i8* @test_select_ptr(i1 %tst, i8*
}
; CHECK-LABEL: name: test_select_vec
-; CHECK: [[TST_C:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TST:%[0-9]+]](s1) = G_TRUNC [[TST_C]]
-; CHECK: [[LHS:%[0-9]+]](<4 x s32>) = COPY %q0
-; CHECK: [[RHS:%[0-9]+]](<4 x s32>) = COPY %q1
-; CHECK: [[RES:%[0-9]+]](<4 x s32>) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
+; CHECK: [[TST_C:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_TRUNC [[TST_C]]
+; CHECK: [[LHS:%[0-9]+]]:_(<4 x s32>) = COPY %q0
+; CHECK: [[RHS:%[0-9]+]]:_(<4 x s32>) = COPY %q1
+; CHECK: [[RES:%[0-9]+]]:_(<4 x s32>) = G_SELECT [[TST]](s1), [[LHS]], [[RHS]]
; CHECK: %q0 = COPY [[RES]]
define <4 x i32> @test_select_vec(i1 %tst, <4 x i32> %lhs, <4 x i32> %rhs) {
%res = select i1 %tst, <4 x i32> %lhs, <4 x i32> %rhs
@@ -1007,11 +1007,11 @@ define <4 x i32> @test_select_vec(i1 %ts
}
; CHECK-LABEL: name: test_vselect_vec
-; CHECK: [[TST32:%[0-9]+]](<4 x s32>) = COPY %q0
-; CHECK: [[LHS:%[0-9]+]](<4 x s32>) = COPY %q1
-; CHECK: [[RHS:%[0-9]+]](<4 x s32>) = COPY %q2
-; CHECK: [[TST:%[0-9]+]](<4 x s1>) = G_TRUNC [[TST32]](<4 x s32>)
-; CHECK: [[RES:%[0-9]+]](<4 x s32>) = G_SELECT [[TST]](<4 x s1>), [[LHS]], [[RHS]]
+; CHECK: [[TST32:%[0-9]+]]:_(<4 x s32>) = COPY %q0
+; CHECK: [[LHS:%[0-9]+]]:_(<4 x s32>) = COPY %q1
+; CHECK: [[RHS:%[0-9]+]]:_(<4 x s32>) = COPY %q2
+; CHECK: [[TST:%[0-9]+]]:_(<4 x s1>) = G_TRUNC [[TST32]](<4 x s32>)
+; CHECK: [[RES:%[0-9]+]]:_(<4 x s32>) = G_SELECT [[TST]](<4 x s1>), [[LHS]], [[RHS]]
; CHECK: %q0 = COPY [[RES]]
define <4 x i32> @test_vselect_vec(<4 x i32> %tst32, <4 x i32> %lhs, <4 x i32> %rhs) {
%tst = trunc <4 x i32> %tst32 to <4 x i1>
@@ -1020,9 +1020,9 @@ define <4 x i32> @test_vselect_vec(<4 x
}
; CHECK-LABEL: name: test_fptosi
-; CHECK: [[FPADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[FP:%[0-9]+]](s32) = G_LOAD [[FPADDR]](p0)
-; CHECK: [[RES:%[0-9]+]](s64) = G_FPTOSI [[FP]](s32)
+; CHECK: [[FPADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[FP:%[0-9]+]]:_(s32) = G_LOAD [[FPADDR]](p0)
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_FPTOSI [[FP]](s32)
; CHECK: %x0 = COPY [[RES]]
define i64 @test_fptosi(float* %fp.addr) {
%fp = load float, float* %fp.addr
@@ -1031,9 +1031,9 @@ define i64 @test_fptosi(float* %fp.addr)
}
; CHECK-LABEL: name: test_fptoui
-; CHECK: [[FPADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[FP:%[0-9]+]](s32) = G_LOAD [[FPADDR]](p0)
-; CHECK: [[RES:%[0-9]+]](s64) = G_FPTOUI [[FP]](s32)
+; CHECK: [[FPADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[FP:%[0-9]+]]:_(s32) = G_LOAD [[FPADDR]](p0)
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_FPTOUI [[FP]](s32)
; CHECK: %x0 = COPY [[RES]]
define i64 @test_fptoui(float* %fp.addr) {
%fp = load float, float* %fp.addr
@@ -1042,9 +1042,9 @@ define i64 @test_fptoui(float* %fp.addr)
}
; CHECK-LABEL: name: test_sitofp
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[FP:%[0-9]+]](s64) = G_SITOFP [[IN]](s32)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[FP:%[0-9]+]]:_(s64) = G_SITOFP [[IN]](s32)
; CHECK: G_STORE [[FP]](s64), [[ADDR]](p0)
define void @test_sitofp(double* %addr, i32 %in) {
%fp = sitofp i32 %in to double
@@ -1053,9 +1053,9 @@ define void @test_sitofp(double* %addr,
}
; CHECK-LABEL: name: test_uitofp
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[FP:%[0-9]+]](s64) = G_UITOFP [[IN]](s32)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[FP:%[0-9]+]]:_(s64) = G_UITOFP [[IN]](s32)
; CHECK: G_STORE [[FP]](s64), [[ADDR]](p0)
define void @test_uitofp(double* %addr, i32 %in) {
%fp = uitofp i32 %in to double
@@ -1064,8 +1064,8 @@ define void @test_uitofp(double* %addr,
}
; CHECK-LABEL: name: test_fpext
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s64) = G_FPEXT [[IN]](s32)
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_FPEXT [[IN]](s32)
; CHECK: %d0 = COPY [[RES]]
define double @test_fpext(float %in) {
%res = fpext float %in to double
@@ -1073,8 +1073,8 @@ define double @test_fpext(float %in) {
}
; CHECK-LABEL: name: test_fptrunc
-; CHECK: [[IN:%[0-9]+]](s64) = COPY %d0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FPTRUNC [[IN]](s64)
+; CHECK: [[IN:%[0-9]+]]:_(s64) = COPY %d0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FPTRUNC [[IN]](s64)
; CHECK: %s0 = COPY [[RES]]
define float @test_fptrunc(double %in) {
%res = fptrunc double %in to float
@@ -1082,8 +1082,8 @@ define float @test_fptrunc(double %in) {
}
; CHECK-LABEL: name: test_constant_float
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[TMP:%[0-9]+]](s32) = G_FCONSTANT float 1.500000e+00
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[TMP:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.500000e+00
; CHECK: G_STORE [[TMP]](s32), [[ADDR]](p0)
define void @test_constant_float(float* %addr) {
store float 1.5, float* %addr
@@ -1091,12 +1091,12 @@ define void @test_constant_float(float*
}
; CHECK-LABEL: name: float_comparison
-; CHECK: [[LHSADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[RHSADDR:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[BOOLADDR:%[0-9]+]](p0) = COPY %x2
-; CHECK: [[LHS:%[0-9]+]](s32) = G_LOAD [[LHSADDR]](p0)
-; CHECK: [[RHS:%[0-9]+]](s32) = G_LOAD [[RHSADDR]](p0)
-; CHECK: [[TST:%[0-9]+]](s1) = G_FCMP floatpred(oge), [[LHS]](s32), [[RHS]]
+; CHECK: [[LHSADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[RHSADDR:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[BOOLADDR:%[0-9]+]]:_(p0) = COPY %x2
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = G_LOAD [[LHSADDR]](p0)
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = G_LOAD [[RHSADDR]](p0)
+; CHECK: [[TST:%[0-9]+]]:_(s1) = G_FCMP floatpred(oge), [[LHS]](s32), [[RHS]]
; CHECK: G_STORE [[TST]](s1), [[BOOLADDR]](p0)
define void @float_comparison(float* %a.addr, float* %b.addr, i1* %bool.addr) {
%a = load float, float* %a.addr
@@ -1107,10 +1107,10 @@ define void @float_comparison(float* %a.
}
; CHECK-LABEL: name: trivial_float_comparison
-; CHECK: [[ENTRY_R1:%[0-9]+]](s1) = G_CONSTANT i1 false
-; CHECK: [[ENTRY_R2:%[0-9]+]](s1) = G_CONSTANT i1 true
-; CHECK: [[R1:%[0-9]+]](s1) = COPY [[ENTRY_R1]](s1)
-; CHECK: [[R2:%[0-9]+]](s1) = COPY [[ENTRY_R2]](s1)
+; CHECK: [[ENTRY_R1:%[0-9]+]]:_(s1) = G_CONSTANT i1 false
+; CHECK: [[ENTRY_R2:%[0-9]+]]:_(s1) = G_CONSTANT i1 true
+; CHECK: [[R1:%[0-9]+]]:_(s1) = COPY [[ENTRY_R1]](s1)
+; CHECK: [[R2:%[0-9]+]]:_(s1) = COPY [[ENTRY_R2]](s1)
; CHECK: G_ADD [[R1]], [[R2]]
define i1 @trivial_float_comparison(double %a, double %b) {
%r1 = fcmp false double %a, %b
@@ -1123,7 +1123,7 @@ define i1 @trivial_float_comparison(doub
define i32* @test_global() {
; CHECK-LABEL: name: test_global
-; CHECK: [[TMP:%[0-9]+]](p0) = G_GLOBAL_VALUE @var{{$}}
+; CHECK: [[TMP:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @var{{$}}
; CHECK: %x0 = COPY [[TMP]](p0)
ret i32* @var
@@ -1132,7 +1132,7 @@ define i32* @test_global() {
@var1 = addrspace(42) global i32 0
define i32 addrspace(42)* @test_global_addrspace() {
; CHECK-LABEL: name: test_global
-; CHECK: [[TMP:%[0-9]+]](p42) = G_GLOBAL_VALUE @var1{{$}}
+; CHECK: [[TMP:%[0-9]+]]:_(p42) = G_GLOBAL_VALUE @var1{{$}}
; CHECK: %x0 = COPY [[TMP]](p42)
ret i32 addrspace(42)* @var1
@@ -1141,7 +1141,7 @@ define i32 addrspace(42)* @test_global_a
define void()* @test_global_func() {
; CHECK-LABEL: name: test_global_func
-; CHECK: [[TMP:%[0-9]+]](p0) = G_GLOBAL_VALUE @allocai64{{$}}
+; CHECK: [[TMP:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @allocai64{{$}}
; CHECK: %x0 = COPY [[TMP]](p0)
ret void()* @allocai64
@@ -1150,9 +1150,9 @@ define void()* @test_global_func() {
declare void @llvm.memcpy.p0i8.p0i8.i64(i8*, i8*, i64, i32 %align, i1 %volatile)
define void @test_memcpy(i8* %dst, i8* %src, i64 %size) {
; CHECK-LABEL: name: test_memcpy
-; CHECK: [[DST:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[SRC:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[SIZE:%[0-9]+]](s64) = COPY %x2
+; CHECK: [[DST:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[SRC:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = COPY %x2
; CHECK: %x0 = COPY [[DST]]
; CHECK: %x1 = COPY [[SRC]]
; CHECK: %x2 = COPY [[SIZE]]
@@ -1164,9 +1164,9 @@ define void @test_memcpy(i8* %dst, i8* %
declare void @llvm.memmove.p0i8.p0i8.i64(i8*, i8*, i64, i32 %align, i1 %volatile)
define void @test_memmove(i8* %dst, i8* %src, i64 %size) {
; CHECK-LABEL: name: test_memmove
-; CHECK: [[DST:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[SRC:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[SIZE:%[0-9]+]](s64) = COPY %x2
+; CHECK: [[DST:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[SRC:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = COPY %x2
; CHECK: %x0 = COPY [[DST]]
; CHECK: %x1 = COPY [[SRC]]
; CHECK: %x2 = COPY [[SIZE]]
@@ -1178,12 +1178,12 @@ define void @test_memmove(i8* %dst, i8*
declare void @llvm.memset.p0i8.i64(i8*, i8, i64, i32 %align, i1 %volatile)
define void @test_memset(i8* %dst, i8 %val, i64 %size) {
; CHECK-LABEL: name: test_memset
-; CHECK: [[DST:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[SRC_C:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[SRC:%[0-9]+]](s8) = G_TRUNC [[SRC_C]]
-; CHECK: [[SIZE:%[0-9]+]](s64) = COPY %x2
+; CHECK: [[DST:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[SRC_C:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[SRC:%[0-9]+]]:_(s8) = G_TRUNC [[SRC_C]]
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = COPY %x2
; CHECK: %x0 = COPY [[DST]]
-; CHECK: [[SRC_TMP:%[0-9]+]](s32) = G_ANYEXT [[SRC]]
+; CHECK: [[SRC_TMP:%[0-9]+]]:_(s32) = G_ANYEXT [[SRC]]
; CHECK: %w1 = COPY [[SRC_TMP]]
; CHECK: %x2 = COPY [[SIZE]]
; CHECK: BL $memset, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %x0, implicit %w1, implicit %x2
@@ -1195,12 +1195,12 @@ declare i64 @llvm.objectsize.i64(i8*, i1
declare i32 @llvm.objectsize.i32(i8*, i1)
define void @test_objectsize(i8* %addr0, i8* %addr1) {
; CHECK-LABEL: name: test_objectsize
-; CHECK: [[ADDR0:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[ADDR1:%[0-9]+]](p0) = COPY %x1
-; CHECK: {{%[0-9]+}}(s64) = G_CONSTANT i64 -1
-; CHECK: {{%[0-9]+}}(s64) = G_CONSTANT i64 0
-; CHECK: {{%[0-9]+}}(s32) = G_CONSTANT i32 -1
-; CHECK: {{%[0-9]+}}(s32) = G_CONSTANT i32 0
+; CHECK: [[ADDR0:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[ADDR1:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: {{%[0-9]+}}:_(s64) = G_CONSTANT i64 -1
+; CHECK: {{%[0-9]+}}:_(s64) = G_CONSTANT i64 0
+; CHECK: {{%[0-9]+}}:_(s32) = G_CONSTANT i32 -1
+; CHECK: {{%[0-9]+}}:_(s32) = G_CONSTANT i32 0
%size64.0 = call i64 @llvm.objectsize.i64(i8* %addr0, i1 0)
%size64.intmin = call i64 @llvm.objectsize.i64(i8* %addr0, i1 1)
%size32.0 = call i32 @llvm.objectsize.i32(i8* %addr0, i1 0)
@@ -1210,8 +1210,8 @@ define void @test_objectsize(i8* %addr0,
define void @test_large_const(i128* %addr) {
; CHECK-LABEL: name: test_large_const
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s128) = G_CONSTANT i128 42
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s128) = G_CONSTANT i128 42
; CHECK: G_STORE [[VAL]](s128), [[ADDR]](p0)
store i128 42, i128* %addr
ret void
@@ -1224,8 +1224,8 @@ define void @test_large_const(i128* %add
define i8* @test_const_placement() {
; CHECK-LABEL: name: test_const_placement
; CHECK: bb.{{[0-9]+}} (%ir-block.{{[0-9]+}}):
-; CHECK: [[VAL_INT:%[0-9]+]](s32) = G_CONSTANT i32 42
-; CHECK: [[VAL:%[0-9]+]](p0) = G_INTTOPTR [[VAL_INT]](s32)
+; CHECK: [[VAL_INT:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+; CHECK: [[VAL:%[0-9]+]]:_(p0) = G_INTTOPTR [[VAL_INT]](s32)
; CHECK: {{bb.[0-9]+}}.next:
br label %next
@@ -1245,7 +1245,7 @@ define void @test_va_end(i8* %list) {
define void @test_va_arg(i8* %list) {
; CHECK-LABEL: test_va_arg
-; CHECK: [[LIST:%[0-9]+]](p0) = COPY %x0
+; CHECK: [[LIST:%[0-9]+]]:_(p0) = COPY %x0
; CHECK: G_VAARG [[LIST]](p0), 8
; CHECK: G_VAARG [[LIST]](p0), 1
; CHECK: G_VAARG [[LIST]](p0), 16
@@ -1259,9 +1259,9 @@ define void @test_va_arg(i8* %list) {
declare float @llvm.pow.f32(float, float)
define float @test_pow_intrin(float %l, float %r) {
; CHECK-LABEL: name: test_pow_intrin
-; CHECK: [[LHS:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RHS:%[0-9]+]](s32) = COPY %s1
-; CHECK: [[RES:%[0-9]+]](s32) = G_FPOW [[LHS]], [[RHS]]
+; CHECK: [[LHS:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RHS:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FPOW [[LHS]], [[RHS]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.pow.f32(float %l, float %r)
ret float %res
@@ -1270,10 +1270,10 @@ define float @test_pow_intrin(float %l,
declare float @llvm.fma.f32(float, float, float)
define float @test_fma_intrin(float %a, float %b, float %c) {
; CHECK-LABEL: name: test_fma_intrin
-; CHECK: [[A:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[B:%[0-9]+]](s32) = COPY %s1
-; CHECK: [[C:%[0-9]+]](s32) = COPY %s2
-; CHECK: [[RES:%[0-9]+]](s32) = G_FMA [[A]], [[B]], [[C]]
+; CHECK: [[A:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[B:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK: [[C:%[0-9]+]]:_(s32) = COPY %s2
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FMA [[A]], [[B]], [[C]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.fma.f32(float %a, float %b, float %c)
ret float %res
@@ -1282,8 +1282,8 @@ define float @test_fma_intrin(float %a,
declare float @llvm.exp.f32(float)
define float @test_exp_intrin(float %a) {
; CHECK-LABEL: name: test_exp_intrin
-; CHECK: [[A:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FEXP [[A]]
+; CHECK: [[A:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FEXP [[A]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.exp.f32(float %a)
ret float %res
@@ -1292,8 +1292,8 @@ define float @test_exp_intrin(float %a)
declare float @llvm.exp2.f32(float)
define float @test_exp2_intrin(float %a) {
; CHECK-LABEL: name: test_exp2_intrin
-; CHECK: [[A:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FEXP2 [[A]]
+; CHECK: [[A:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FEXP2 [[A]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.exp2.f32(float %a)
ret float %res
@@ -1302,8 +1302,8 @@ define float @test_exp2_intrin(float %a)
declare float @llvm.log.f32(float)
define float @test_log_intrin(float %a) {
; CHECK-LABEL: name: test_log_intrin
-; CHECK: [[A:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FLOG [[A]]
+; CHECK: [[A:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FLOG [[A]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.log.f32(float %a)
ret float %res
@@ -1312,8 +1312,8 @@ define float @test_log_intrin(float %a)
declare float @llvm.log2.f32(float)
define float @test_log2_intrin(float %a) {
; CHECK-LABEL: name: test_log2_intrin
-; CHECK: [[A:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FLOG2 [[A]]
+; CHECK: [[A:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FLOG2 [[A]]
; CHECK: %s0 = COPY [[RES]]
%res = call float @llvm.log2.f32(float %a)
ret float %res
@@ -1331,12 +1331,12 @@ define void @test_lifetime_intrin() {
define void @test_load_store_atomics(i8* %addr) {
; CHECK-LABEL: name: test_load_store_atomics
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[V0:%[0-9]+]](s8) = G_LOAD [[ADDR]](p0) :: (load unordered 1 from %ir.addr)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[V0:%[0-9]+]]:_(s8) = G_LOAD [[ADDR]](p0) :: (load unordered 1 from %ir.addr)
; CHECK: G_STORE [[V0]](s8), [[ADDR]](p0) :: (store monotonic 1 into %ir.addr)
-; CHECK: [[V1:%[0-9]+]](s8) = G_LOAD [[ADDR]](p0) :: (load acquire 1 from %ir.addr)
+; CHECK: [[V1:%[0-9]+]]:_(s8) = G_LOAD [[ADDR]](p0) :: (load acquire 1 from %ir.addr)
; CHECK: G_STORE [[V1]](s8), [[ADDR]](p0) :: (store release 1 into %ir.addr)
-; CHECK: [[V2:%[0-9]+]](s8) = G_LOAD [[ADDR]](p0) :: (load syncscope("singlethread") seq_cst 1 from %ir.addr)
+; CHECK: [[V2:%[0-9]+]]:_(s8) = G_LOAD [[ADDR]](p0) :: (load syncscope("singlethread") seq_cst 1 from %ir.addr)
; CHECK: G_STORE [[V2]](s8), [[ADDR]](p0) :: (store syncscope("singlethread") monotonic 1 into %ir.addr)
%v0 = load atomic i8, i8* %addr unordered, align 1
store atomic i8 %v0, i8* %addr monotonic, align 1
@@ -1352,8 +1352,8 @@ define void @test_load_store_atomics(i8*
define float @test_fneg_f32(float %x) {
; CHECK-LABEL: name: test_fneg_f32
-; CHECK: [[ARG:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[RES:%[0-9]+]](s32) = G_FNEG [[ARG]]
+; CHECK: [[ARG:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_FNEG [[ARG]]
; CHECK: %s0 = COPY [[RES]](s32)
%neg = fsub float -0.000000e+00, %x
ret float %neg
@@ -1361,8 +1361,8 @@ define float @test_fneg_f32(float %x) {
define double @test_fneg_f64(double %x) {
; CHECK-LABEL: name: test_fneg_f64
-; CHECK: [[ARG:%[0-9]+]](s64) = COPY %d0
-; CHECK: [[RES:%[0-9]+]](s64) = G_FNEG [[ARG]]
+; CHECK: [[ARG:%[0-9]+]]:_(s64) = COPY %d0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = G_FNEG [[ARG]]
; CHECK: %d0 = COPY [[RES]](s64)
%neg = fsub double -0.000000e+00, %x
ret double %neg
@@ -1379,10 +1379,10 @@ define void @test_trivial_inlineasm() {
define <2 x i32> @test_insertelement(<2 x i32> %vec, i32 %elt, i32 %idx){
; CHECK-LABEL: name: test_insertelement
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK: [[ELT:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[IDX:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[RES:%[0-9]+]](<2 x s32>) = G_INSERT_VECTOR_ELT [[VEC]], [[ELT]](s32), [[IDX]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK: [[ELT:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[IDX:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[RES:%[0-9]+]]:_(<2 x s32>) = G_INSERT_VECTOR_ELT [[VEC]], [[ELT]](s32), [[IDX]](s32)
; CHECK: %d0 = COPY [[RES]](<2 x s32>)
%res = insertelement <2 x i32> %vec, i32 %elt, i32 %idx
ret <2 x i32> %res
@@ -1390,9 +1390,9 @@ define <2 x i32> @test_insertelement(<2
define i32 @test_extractelement(<2 x i32> %vec, i32 %idx) {
; CHECK-LABEL: name: test_extractelement
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK: [[IDX:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[RES:%[0-9]+]](s32) = G_EXTRACT_VECTOR_ELT [[VEC]](<2 x s32>), [[IDX]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK: [[IDX:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_EXTRACT_VECTOR_ELT [[VEC]](<2 x s32>), [[IDX]](s32)
; CHECK: %w0 = COPY [[RES]](s32)
%res = extractelement <2 x i32> %vec, i32 %idx
ret i32 %res
@@ -1400,7 +1400,7 @@ define i32 @test_extractelement(<2 x i32
define i32 @test_singleelementvector(i32 %elt){
; CHECK-LABEL: name: test_singleelementvector
-; CHECK: [[ELT:%[0-9]+]](s32) = COPY %w0
+; CHECK: [[ELT:%[0-9]+]]:_(s32) = COPY %w0
; CHECK-NOT: G_INSERT_VECTOR_ELT
; CHECK-NOT: G_EXTRACT_VECTOR_ELT
; CHECK: %w0 = COPY [[ELT]](s32)
@@ -1411,24 +1411,24 @@ define i32 @test_singleelementvector(i32
define <2 x i32> @test_constantaggzerovector_v2i32() {
; CHECK-LABEL: name: test_constantaggzerovector_v2i32
-; CHECK: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32)
+; CHECK: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
ret <2 x i32> zeroinitializer
}
define <2 x float> @test_constantaggzerovector_v2f32() {
; CHECK-LABEL: name: test_constantaggzerovector_v2f32
-; CHECK: [[ZERO:%[0-9]+]](s32) = G_FCONSTANT float 0.000000e+00
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32)
+; CHECK: [[ZERO:%[0-9]+]]:_(s32) = G_FCONSTANT float 0.000000e+00
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
ret <2 x float> zeroinitializer
}
define i32 @test_constantaggzerovector_v3i32() {
; CHECK-LABEL: name: test_constantaggzerovector_v3i32
-; CHECK: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[VEC:%[0-9]+]](<3 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32), [[ZERO]](s32)
+; CHECK: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[VEC:%[0-9]+]]:_(<3 x s32>) = G_MERGE_VALUES [[ZERO]](s32), [[ZERO]](s32), [[ZERO]](s32)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<3 x s32>)
%elt = extractelement <3 x i32> zeroinitializer, i32 1
ret i32 %elt
@@ -1436,19 +1436,19 @@ define i32 @test_constantaggzerovector_v
define <2 x i32> @test_constantdatavector_v2i32() {
; CHECK-LABEL: name: test_constantdatavector_v2i32
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
ret <2 x i32> <i32 1, i32 2>
}
define i32 @test_constantdatavector_v3i32() {
; CHECK-LABEL: name: test_constantdatavector_v3i32
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK: [[VEC:%[0-9]+]](<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32), [[C3]](s32)
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK: [[VEC:%[0-9]+]]:_(<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32), [[C3]](s32)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<3 x s32>)
%elt = extractelement <3 x i32> <i32 1, i32 2, i32 3>, i32 1
ret i32 %elt
@@ -1456,28 +1456,28 @@ define i32 @test_constantdatavector_v3i3
define <4 x i32> @test_constantdatavector_v4i32() {
; CHECK-LABEL: name: test_constantdatavector_v4i32
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK: [[C4:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[VEC:%[0-9]+]](<4 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32), [[C3]](s32), [[C4]](s32)
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK: [[C4:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[VEC:%[0-9]+]]:_(<4 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32), [[C3]](s32), [[C4]](s32)
; CHECK: %q0 = COPY [[VEC]](<4 x s32>)
ret <4 x i32> <i32 1, i32 2, i32 3, i32 4>
}
define <2 x double> @test_constantdatavector_v2f64() {
; CHECK-LABEL: name: test_constantdatavector_v2f64
-; CHECK: [[FC1:%[0-9]+]](s64) = G_FCONSTANT double 1.000000e+00
-; CHECK: [[FC2:%[0-9]+]](s64) = G_FCONSTANT double 2.000000e+00
-; CHECK: [[VEC:%[0-9]+]](<2 x s64>) = G_MERGE_VALUES [[FC1]](s64), [[FC2]](s64)
+; CHECK: [[FC1:%[0-9]+]]:_(s64) = G_FCONSTANT double 1.000000e+00
+; CHECK: [[FC2:%[0-9]+]]:_(s64) = G_FCONSTANT double 2.000000e+00
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s64>) = G_MERGE_VALUES [[FC1]](s64), [[FC2]](s64)
; CHECK: %q0 = COPY [[VEC]](<2 x s64>)
ret <2 x double> <double 1.0, double 2.0>
}
define i32 @test_constantaggzerovector_v1s32(i32 %arg){
; CHECK-LABEL: name: test_constantaggzerovector_v1s32
-; CHECK: [[ARG:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
+; CHECK: [[ARG:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
; CHECK-NOT: G_MERGE_VALUES
; CHECK: G_ADD [[ARG]], [[C0]]
%vec = insertelement <1 x i32> undef, i32 %arg, i32 0
@@ -1488,8 +1488,8 @@ define i32 @test_constantaggzerovector_v
define i32 @test_constantdatavector_v1s32(i32 %arg){
; CHECK-LABEL: name: test_constantdatavector_v1s32
-; CHECK: [[ARG:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
+; CHECK: [[ARG:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
; CHECK-NOT: G_MERGE_VALUES
; CHECK: G_ADD [[ARG]], [[C1]]
%vec = insertelement <1 x i32> undef, i32 %arg, i32 0
@@ -1501,7 +1501,7 @@ define i32 @test_constantdatavector_v1s3
declare ghccc float @different_call_conv_target(float %x)
define float @test_different_call_conv_target(float %x) {
; CHECK-LABEL: name: test_different_call_conv
-; CHECK: [[X:%[0-9]+]](s32) = COPY %s0
+; CHECK: [[X:%[0-9]+]]:_(s32) = COPY %s0
; CHECK: %s8 = COPY [[X]]
; CHECK: BL @different_call_conv_target, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %s8, implicit-def %s0
%res = call ghccc float @different_call_conv_target(float %x)
@@ -1510,11 +1510,11 @@ define float @test_different_call_conv_t
define <2 x i32> @test_shufflevector_s32_v2s32(i32 %arg) {
; CHECK-LABEL: name: test_shufflevector_s32_v2s32
-; CHECK: [[ARG:%[0-9]+]](s32) = COPY %w0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](s32) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[MASK:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32)
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](s32), [[UNDEF]], [[MASK]](<2 x s32>)
+; CHECK: [[ARG:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(s32) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](s32), [[UNDEF]], [[MASK]](<2 x s32>)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
%vec = insertelement <1 x i32> undef, i32 %arg, i32 0
%res = shufflevector <1 x i32> %vec, <1 x i32> undef, <2 x i32> zeroinitializer
@@ -1523,10 +1523,10 @@ define <2 x i32> @test_shufflevector_s32
define i32 @test_shufflevector_v2s32_s32(<2 x i32> %arg) {
; CHECK-LABEL: name: test_shufflevector_v2s32_s32
-; CHECK: [[ARG:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<2 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[RES:%[0-9]+]](s32) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[C1]](s32)
+; CHECK: [[ARG:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[C1]](s32)
; CHECK: %w0 = COPY [[RES]](s32)
%vec = shufflevector <2 x i32> %arg, <2 x i32> undef, <1 x i32> <i32 1>
%res = extractelement <1 x i32> %vec, i32 0
@@ -1535,12 +1535,12 @@ define i32 @test_shufflevector_v2s32_s32
define <2 x i32> @test_shufflevector_v2s32_v2s32(<2 x i32> %arg) {
; CHECK-LABEL: name: test_shufflevector_v2s32_v2s32
-; CHECK: [[ARG:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<2 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[MASK:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32)
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
+; CHECK: [[ARG:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
%res = shufflevector <2 x i32> %arg, <2 x i32> undef, <2 x i32> <i32 1, i32 0>
ret <2 x i32> %res
@@ -1548,12 +1548,12 @@ define <2 x i32> @test_shufflevector_v2s
define i32 @test_shufflevector_v2s32_v3s32(<2 x i32> %arg) {
; CHECK-LABEL: name: test_shufflevector_v2s32_v3s32
-; CHECK: [[ARG:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<2 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[MASK:%[0-9]+]](<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32), [[C1]](s32)
-; CHECK: [[VEC:%[0-9]+]](<3 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[MASK]](<3 x s32>)
+; CHECK: [[ARG:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32), [[C1]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<3 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<2 x s32>), [[UNDEF]], [[MASK]](<3 x s32>)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<3 x s32>)
%vec = shufflevector <2 x i32> %arg, <2 x i32> undef, <3 x i32> <i32 1, i32 0, i32 1>
%res = extractelement <3 x i32> %vec, i32 0
@@ -1562,14 +1562,14 @@ define i32 @test_shufflevector_v2s32_v3s
define <4 x i32> @test_shufflevector_v2s32_v4s32(<2 x i32> %arg1, <2 x i32> %arg2) {
; CHECK-LABEL: name: test_shufflevector_v2s32_v4s32
-; CHECK: [[ARG1:%[0-9]+]](<2 x s32>) = COPY %d0
-; CHECK: [[ARG2:%[0-9]+]](<2 x s32>) = COPY %d1
-; CHECK: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK: [[MASK:%[0-9]+]](<4 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C1]](s32), [[C2]](s32), [[C3]](s32)
-; CHECK: [[VEC:%[0-9]+]](<4 x s32>) = G_SHUFFLE_VECTOR [[ARG1]](<2 x s32>), [[ARG2]], [[MASK]](<4 x s32>)
+; CHECK: [[ARG1:%[0-9]+]]:_(<2 x s32>) = COPY %d0
+; CHECK: [[ARG2:%[0-9]+]]:_(<2 x s32>) = COPY %d1
+; CHECK: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK: [[MASK:%[0-9]+]]:_(<4 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C1]](s32), [[C2]](s32), [[C3]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<4 x s32>) = G_SHUFFLE_VECTOR [[ARG1]](<2 x s32>), [[ARG2]], [[MASK]](<4 x s32>)
; CHECK: %q0 = COPY [[VEC]](<4 x s32>)
%res = shufflevector <2 x i32> %arg1, <2 x i32> %arg2, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
ret <4 x i32> %res
@@ -1577,12 +1577,12 @@ define <4 x i32> @test_shufflevector_v2s
define <2 x i32> @test_shufflevector_v4s32_v2s32(<4 x i32> %arg) {
; CHECK-LABEL: name: test_shufflevector_v4s32_v2s32
-; CHECK: [[ARG:%[0-9]+]](<4 x s32>) = COPY %q0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<4 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK-DAG: [[MASK:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C3]](s32)
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<4 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
+; CHECK: [[ARG:%[0-9]+]]:_(<4 x s32>) = COPY %q0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<4 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C3]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](<4 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
; CHECK: %d0 = COPY [[VEC]](<2 x s32>)
%res = shufflevector <4 x i32> %arg, <4 x i32> undef, <2 x i32> <i32 1, i32 3>
ret <2 x i32> %res
@@ -1591,35 +1591,35 @@ define <2 x i32> @test_shufflevector_v4s
define <16 x i8> @test_shufflevector_v8s8_v16s8(<8 x i8> %arg1, <8 x i8> %arg2) {
; CHECK-LABEL: name: test_shufflevector_v8s8_v16s8
-; CHECK: [[ARG1:%[0-9]+]](<8 x s8>) = COPY %d0
-; CHECK: [[ARG2:%[0-9]+]](<8 x s8>) = COPY %d1
-; CHECK: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[C8:%[0-9]+]](s32) = G_CONSTANT i32 8
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C9:%[0-9]+]](s32) = G_CONSTANT i32 9
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[C10:%[0-9]+]](s32) = G_CONSTANT i32 10
-; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK: [[C11:%[0-9]+]](s32) = G_CONSTANT i32 11
-; CHECK: [[C4:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[C12:%[0-9]+]](s32) = G_CONSTANT i32 12
-; CHECK: [[C5:%[0-9]+]](s32) = G_CONSTANT i32 5
-; CHECK: [[C13:%[0-9]+]](s32) = G_CONSTANT i32 13
-; CHECK: [[C6:%[0-9]+]](s32) = G_CONSTANT i32 6
-; CHECK: [[C14:%[0-9]+]](s32) = G_CONSTANT i32 14
-; CHECK: [[C7:%[0-9]+]](s32) = G_CONSTANT i32 7
-; CHECK: [[C15:%[0-9]+]](s32) = G_CONSTANT i32 15
-; CHECK: [[MASK:%[0-9]+]](<16 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C8]](s32), [[C1]](s32), [[C9]](s32), [[C2]](s32), [[C10]](s32), [[C3]](s32), [[C11]](s32), [[C4]](s32), [[C12]](s32), [[C5]](s32), [[C13]](s32), [[C6]](s32), [[C14]](s32), [[C7]](s32), [[C15]](s32)
-; CHECK: [[VEC:%[0-9]+]](<16 x s8>) = G_SHUFFLE_VECTOR [[ARG1]](<8 x s8>), [[ARG2]], [[MASK]](<16 x s32>)
+; CHECK: [[ARG1:%[0-9]+]]:_(<8 x s8>) = COPY %d0
+; CHECK: [[ARG2:%[0-9]+]]:_(<8 x s8>) = COPY %d1
+; CHECK: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[C8:%[0-9]+]]:_(s32) = G_CONSTANT i32 8
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C9:%[0-9]+]]:_(s32) = G_CONSTANT i32 9
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[C10:%[0-9]+]]:_(s32) = G_CONSTANT i32 10
+; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK: [[C11:%[0-9]+]]:_(s32) = G_CONSTANT i32 11
+; CHECK: [[C4:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[C12:%[0-9]+]]:_(s32) = G_CONSTANT i32 12
+; CHECK: [[C5:%[0-9]+]]:_(s32) = G_CONSTANT i32 5
+; CHECK: [[C13:%[0-9]+]]:_(s32) = G_CONSTANT i32 13
+; CHECK: [[C6:%[0-9]+]]:_(s32) = G_CONSTANT i32 6
+; CHECK: [[C14:%[0-9]+]]:_(s32) = G_CONSTANT i32 14
+; CHECK: [[C7:%[0-9]+]]:_(s32) = G_CONSTANT i32 7
+; CHECK: [[C15:%[0-9]+]]:_(s32) = G_CONSTANT i32 15
+; CHECK: [[MASK:%[0-9]+]]:_(<16 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C8]](s32), [[C1]](s32), [[C9]](s32), [[C2]](s32), [[C10]](s32), [[C3]](s32), [[C11]](s32), [[C4]](s32), [[C12]](s32), [[C5]](s32), [[C13]](s32), [[C6]](s32), [[C14]](s32), [[C7]](s32), [[C15]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<16 x s8>) = G_SHUFFLE_VECTOR [[ARG1]](<8 x s8>), [[ARG2]], [[MASK]](<16 x s32>)
; CHECK: %q0 = COPY [[VEC]](<16 x s8>)
%res = shufflevector <8 x i8> %arg1, <8 x i8> %arg2, <16 x i32> <i32 0, i32 8, i32 1, i32 9, i32 2, i32 10, i32 3, i32 11, i32 4, i32 12, i32 5, i32 13, i32 6, i32 14, i32 7, i32 15>
ret <16 x i8> %res
}
; CHECK-LABEL: test_constant_vector
-; CHECK: [[UNDEF:%[0-9]+]](s16) = G_IMPLICIT_DEF
-; CHECK: [[F:%[0-9]+]](s16) = G_FCONSTANT half 0xH3C00
-; CHECK: [[M:%[0-9]+]](<4 x s16>) = G_MERGE_VALUES [[UNDEF]](s16), [[UNDEF]](s16), [[UNDEF]](s16), [[F]](s16)
+; CHECK: [[UNDEF:%[0-9]+]]:_(s16) = G_IMPLICIT_DEF
+; CHECK: [[F:%[0-9]+]]:_(s16) = G_FCONSTANT half 0xH3C00
+; CHECK: [[M:%[0-9]+]]:_(<4 x s16>) = G_MERGE_VALUES [[UNDEF]](s16), [[UNDEF]](s16), [[UNDEF]](s16), [[F]](s16)
; CHECK: %d0 = COPY [[M]](<4 x s16>)
define <4 x half> @test_constant_vector() {
ret <4 x half> <half undef, half undef, half undef, half 0xH3C00>
@@ -1627,8 +1627,8 @@ define <4 x half> @test_constant_vector(
define i32 @test_target_mem_intrinsic(i32* %addr) {
; CHECK-LABEL: name: test_target_mem_intrinsic
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s64) = G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.aarch64.ldxr), [[ADDR]](p0) :: (volatile load 4 from %ir.addr)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s64) = G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.aarch64.ldxr), [[ADDR]](p0) :: (volatile load 4 from %ir.addr)
; CHECK: G_TRUNC [[VAL]](s64)
%val = call i64 @llvm.aarch64.ldxr.p0i32(i32* %addr)
%trunc = trunc i64 %val to i32
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-regbankselect.mir Tue Oct 24 11:04:54 2017
@@ -99,17 +99,14 @@
# Based on the type i32, this should be gpr.
name: defaultMapping
legalized: true
-# CHECK-LABEL: name: defaultMapping
-# CHECK: registers:
-# CHECK: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK: - { id: 1, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
body: |
bb.0.entry:
liveins: %x0
- ; CHECK: %1(s32) = G_ADD %0
+ ; CHECK-LABEL: name: defaultMapping
+ ; CHECK: %1:gpr(s32) = G_ADD %0
%0(s32) = COPY %w0
%1(s32) = G_ADD %0, %0
...
@@ -120,18 +117,15 @@ body: |
# FPR is used for both floating point and vector registers.
name: defaultMappingVector
legalized: true
-# CHECK-LABEL: name: defaultMappingVector
-# CHECK: registers:
-# CHECK: - { id: 0, class: fpr, preferred-register: '' }
-# CHECK: - { id: 1, class: fpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
body: |
bb.0.entry:
liveins: %d0
- ; CHECK: %0(<2 x s32>) = COPY %d0
- ; CHECK: %1(<2 x s32>) = G_ADD %0
+ ; CHECK-LABEL: name: defaultMappingVector
+ ; CHECK: %0:fpr(<2 x s32>) = COPY %d0
+ ; CHECK: %1:fpr(<2 x s32>) = G_ADD %0
%0(<2 x s32>) = COPY %d0
%1(<2 x s32>) = G_ADD %0, %0
...
@@ -142,12 +136,6 @@ body: |
# in FPR, but at the use, it should be GPR.
name: defaultMapping1Repair
legalized: true
-# CHECK-LABEL: name: defaultMapping1Repair
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: fpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 2, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 3, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
@@ -155,10 +143,11 @@ registers:
body: |
bb.0.entry:
liveins: %s0, %x0
- ; CHECK: %0(s32) = COPY %s0
- ; CHECK-NEXT: %1(s32) = COPY %w0
- ; CHECK-NEXT: %3(s32) = COPY %0
- ; CHECK-NEXT: %2(s32) = G_ADD %3, %1
+ ; CHECK-LABEL: name: defaultMapping1Repair
+ ; CHECK: %0:fpr(s32) = COPY %s0
+ ; CHECK-NEXT: %1:gpr(s32) = COPY %w0
+ ; CHECK-NEXT: %3:gpr(s32) = COPY %0
+ ; CHECK-NEXT: %2:gpr(s32) = G_ADD %3, %1
%0(s32) = COPY %s0
%1(s32) = COPY %w0
%2(s32) = G_ADD %0, %1
@@ -167,22 +156,17 @@ body: |
# Check that we repair the assignment for %0 differently for both uses.
name: defaultMapping2Repairs
legalized: true
-# CHECK-LABEL: name: defaultMapping2Repairs
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: fpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 2, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 3, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
body: |
bb.0.entry:
liveins: %s0, %x0
- ; CHECK: %0(s32) = COPY %s0
- ; CHECK-NEXT: %2(s32) = COPY %0
- ; CHECK-NEXT: %3(s32) = COPY %0
- ; CHECK-NEXT: %1(s32) = G_ADD %2, %3
+ ; CHECK-LABEL: name: defaultMapping2Repairs
+ ; CHECK: %0:fpr(s32) = COPY %s0
+ ; CHECK-NEXT: %2:gpr(s32) = COPY %0
+ ; CHECK-NEXT: %3:gpr(s32) = COPY %0
+ ; CHECK-NEXT: %1:gpr(s32) = G_ADD %2, %3
%0(s32) = COPY %s0
%1(s32) = G_ADD %0, %0
...
@@ -194,20 +178,16 @@ body: |
# fixes that.
name: defaultMappingDefRepair
legalized: true
-# CHECK-LABEL: name: defaultMappingDefRepair
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: fpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 2, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: fpr }
body: |
bb.0.entry:
liveins: %w0
- ; CHECK: %0(s32) = COPY %w0
- ; CHECK-NEXT: %2(s32) = G_ADD %0, %0
- ; CHECK-NEXT: %1(s32) = COPY %2
+ ; CHECK-LABEL: name: defaultMappingDefRepair
+ ; CHECK: %0:gpr(s32) = COPY %w0
+ ; CHECK-NEXT: %2:gpr(s32) = G_ADD %0, %0
+ ; CHECK-NEXT: %1:fpr(s32) = COPY %2
%0(s32) = COPY %w0
%1(s32) = G_ADD %0, %0
...
@@ -255,12 +235,6 @@ body: |
# Make sure we can repair physical register uses as well.
name: defaultMappingUseRepairPhysReg
legalized: true
-# CHECK-LABEL: name: defaultMappingUseRepairPhysReg
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: fpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 2, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 3, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
@@ -268,10 +242,11 @@ registers:
body: |
bb.0.entry:
liveins: %w0, %s0
- ; CHECK: %0(s32) = COPY %w0
- ; CHECK-NEXT: %1(s32) = COPY %s0
- ; CHECK-NEXT: %3(s32) = COPY %1
- ; CHECK-NEXT: %2(s32) = G_ADD %0, %3
+ ; CHECK-LABEL: name: defaultMappingUseRepairPhysReg
+ ; CHECK: %0:gpr(s32) = COPY %w0
+ ; CHECK-NEXT: %1:fpr(s32) = COPY %s0
+ ; CHECK-NEXT: %3:gpr(s32) = COPY %1
+ ; CHECK-NEXT: %2:gpr(s32) = G_ADD %0, %3
%0(s32) = COPY %w0
%1(s32) = COPY %s0
%2(s32) = G_ADD %0, %1
@@ -281,18 +256,15 @@ body: |
# Make sure we can repair physical register defs.
name: defaultMappingDefRepairPhysReg
legalized: true
-# CHECK-LABEL: name: defaultMappingDefRepairPhysReg
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
body: |
bb.0.entry:
liveins: %w0
- ; CHECK: %0(s32) = COPY %w0
- ; CHECK-NEXT: %1(s32) = G_ADD %0, %0
+ ; CHECK-LABEL: name: defaultMappingDefRepairPhysReg
+ ; CHECK: %0:gpr(s32) = COPY %w0
+ ; CHECK-NEXT: %1:gpr(s32) = G_ADD %0, %0
; CHECK-NEXT: %s0 = COPY %1
%0(s32) = COPY %w0
%1(s32) = G_ADD %0, %0
@@ -304,21 +276,6 @@ body: |
# G_OR instruction from fpr to gpr.
name: greedyMappingOr
legalized: true
-# CHECK-LABEL: name: greedyMappingOr
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-
-# Fast mode maps vector instruction on FPR.
-# FAST-NEXT: - { id: 2, class: fpr, preferred-register: '' }
-# Fast mode needs two extra copies.
-# FAST-NEXT: - { id: 3, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 4, class: fpr, preferred-register: '' }
-
-# Greedy mode coalesce the computation on the GPR register
-# because it is the cheapest.
-# GREEDY-NEXT: - { id: 2, class: gpr, preferred-register: '' }
-
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
@@ -326,20 +283,19 @@ registers:
body: |
bb.0.entry:
liveins: %x0, %x1
- ; CHECK: %0(<2 x s32>) = COPY %x0
- ; CHECK-NEXT: %1(<2 x s32>) = COPY %x1
-
+ ; CHECK: %0:gpr(<2 x s32>) = COPY %x0
+ ; CHECK-NEXT: %1:gpr(<2 x s32>) = COPY %x1
; Fast mode tries to reuse the source of the copy for the destination.
; Now, the default mapping says that %0 and %1 need to be in FPR.
; The repairing code insert two copies to materialize that.
- ; FAST-NEXT: %3(<2 x s32>) = COPY %0
- ; FAST-NEXT: %4(<2 x s32>) = COPY %1
+ ; FAST-NEXT: %3:fpr(<2 x s32>) = COPY %0
+ ; FAST-NEXT: %4:fpr(<2 x s32>) = COPY %1
; The mapping of G_OR is on FPR.
- ; FAST-NEXT: %2(<2 x s32>) = G_OR %3, %4
+ ; FAST-NEXT: %2:fpr(<2 x s32>) = G_OR %3, %4
; Greedy mode remapped the instruction on the GPR bank.
- ; GREEDY-NEXT: %2(<2 x s32>) = G_OR %0, %1
+ ; GREEDY-NEXT: %2:gpr(<2 x s32>) = G_OR %0, %1
%0(<2 x s32>) = COPY %x0
%1(<2 x s32>) = COPY %x1
%2(<2 x s32>) = G_OR %0, %1
@@ -351,21 +307,6 @@ body: |
# %2 constraint.
name: greedyMappingOrWithConstraints
legalized: true
-# CHECK-LABEL: name: greedyMappingOrWithConstraints
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 2, class: fpr, preferred-register: '' }
-
-# Fast mode maps vector instruction on FPR.
-# Fast mode needs two extra copies.
-# FAST-NEXT: - { id: 3, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 4, class: fpr, preferred-register: '' }
-
-# Greedy mode coalesce the computation on the GPR register because it
-# is the cheapest, but will need one extra copy to materialize %2 into a FPR.
-# GREEDY-NEXT: - { id: 3, class: gpr, preferred-register: '' }
-
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
@@ -373,22 +314,23 @@ registers:
body: |
bb.0.entry:
liveins: %x0, %x1
- ; CHECK: %0(<2 x s32>) = COPY %x0
- ; CHECK-NEXT: %1(<2 x s32>) = COPY %x1
+ ; CHECK-LABEL: name: greedyMappingOrWithConstraints
+ ; CHECK: %0:gpr(<2 x s32>) = COPY %x0
+ ; CHECK-NEXT: %1:gpr(<2 x s32>) = COPY %x1
; Fast mode tries to reuse the source of the copy for the destination.
; Now, the default mapping says that %0 and %1 need to be in FPR.
; The repairing code insert two copies to materialize that.
- ; FAST-NEXT: %3(<2 x s32>) = COPY %0
- ; FAST-NEXT: %4(<2 x s32>) = COPY %1
+ ; FAST-NEXT: %3:fpr(<2 x s32>) = COPY %0
+ ; FAST-NEXT: %4:fpr(<2 x s32>) = COPY %1
; The mapping of G_OR is on FPR.
- ; FAST-NEXT: %2(<2 x s32>) = G_OR %3, %4
+ ; FAST-NEXT: %2:fpr(<2 x s32>) = G_OR %3, %4
; Greedy mode remapped the instruction on the GPR bank.
- ; GREEDY-NEXT: %3(<2 x s32>) = G_OR %0, %1
+ ; GREEDY-NEXT: %3:gpr(<2 x s32>) = G_OR %0, %1
; We need to keep %2 into FPR because we do not know anything about it.
- ; GREEDY-NEXT: %2(<2 x s32>) = COPY %3
+ ; GREEDY-NEXT: %2:fpr(<2 x s32>) = COPY %3
%0(<2 x s32>) = COPY %x0
%1(<2 x s32>) = COPY %x1
%2(<2 x s32>) = G_OR %0, %1
@@ -408,8 +350,8 @@ body: |
bb.0:
liveins: %x0
- ; CHECK: %0 = COPY %x0
- ; CHECK-NEXT: %1 = ADDXrr %0, %0
+ ; CHECK: %0:gpr64 = COPY %x0
+ ; CHECK-NEXT: %1:gpr64 = ADDXrr %0, %0
; CHECK-NEXT: %x0 = COPY %1
; CHECK-NEXT: RET_ReallyLR implicit %x0
@@ -444,8 +386,8 @@ registers:
- { id: 1, class: _ }
# CHECK: body:
-# CHECK: %0(s32) = COPY %w0
-# CHECK: %1(s32) = G_BITCAST %0
+# CHECK: %0:gpr(s32) = COPY %w0
+# CHECK: %1:gpr(s32) = G_BITCAST %0
body: |
bb.0:
liveins: %w0
@@ -467,8 +409,8 @@ registers:
- { id: 1, class: _ }
# CHECK: body:
-# CHECK: %0(<2 x s16>) = COPY %s0
-# CHECK: %1(<2 x s16>) = G_BITCAST %0
+# CHECK: %0:fpr(<2 x s16>) = COPY %s0
+# CHECK: %1:fpr(<2 x s16>) = G_BITCAST %0
body: |
bb.0:
liveins: %s0
@@ -491,8 +433,9 @@ registers:
- { id: 1, class: _ }
# CHECK: body:
-# CHECK: %0(s32) = COPY %w0
-# CHECK: %1(<2 x s16>) = G_BITCAST %0
+# CHECK: %0:gpr(s32) = COPY %w0
+# FAST: %1:fpr(<2 x s16>) = G_BITCAST %0
+# GREEDY: %1:gpr(<2 x s16>) = G_BITCAST %0
body: |
bb.0:
liveins: %w0
@@ -505,18 +448,13 @@ body: |
# CHECK-LABEL: name: bitcast_s32_fpr_gpr
name: bitcast_s32_fpr_gpr
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 1, class: fpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-
# CHECK: body:
-# CHECK: %0(<2 x s16>) = COPY %s0
-# CHECK: %1(s32) = G_BITCAST %0
+# CHECK: %0:fpr(<2 x s16>) = COPY %s0
+# FAST: %1:gpr(s32) = G_BITCAST %0
+# GREEDY: %1:fpr(s32) = G_BITCAST %0
body: |
bb.0:
liveins: %s0
@@ -529,17 +467,12 @@ body: |
# CHECK-LABEL: name: bitcast_s64_gpr
name: bitcast_s64_gpr
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-
# CHECK: body:
-# CHECK: %0(s64) = COPY %x0
-# CHECK: %1(s64) = G_BITCAST %0
+# CHECK: %0:gpr(s64) = COPY %x0
+# CHECK: %1:gpr(s64) = G_BITCAST %0
body: |
bb.0:
liveins: %x0
@@ -552,17 +485,12 @@ body: |
# CHECK-LABEL: name: bitcast_s64_fpr
name: bitcast_s64_fpr
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: fpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: fpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-
# CHECK: body:
-# CHECK: %0(<2 x s32>) = COPY %d0
-# CHECK: %1(<2 x s32>) = G_BITCAST %0
+# CHECK: %0:fpr(<2 x s32>) = COPY %d0
+# CHECK: %1:fpr(<2 x s32>) = G_BITCAST %0
body: |
bb.0:
liveins: %d0
@@ -575,17 +503,13 @@ body: |
# CHECK-LABEL: name: bitcast_s64_gpr_fpr
name: bitcast_s64_gpr_fpr
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# FAST-NEXT: - { id: 1, class: fpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 1, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
# CHECK: body:
-# CHECK: %0(s64) = COPY %x0
-# CHECK: %1(<2 x s32>) = G_BITCAST %0
+# CHECK: %0:gpr(s64) = COPY %x0
+# FAST: %1:fpr(<2 x s32>) = G_BITCAST %0
+# GREEDY: %1:gpr(<2 x s32>) = G_BITCAST %0
body: |
bb.0:
liveins: %x0
@@ -598,18 +522,13 @@ body: |
# CHECK-LABEL: name: bitcast_s64_fpr_gpr
name: bitcast_s64_fpr_gpr
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 1, class: fpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-
# CHECK: body:
-# CHECK: %0(<2 x s32>) = COPY %d0
-# CHECK: %1(s64) = G_BITCAST %0
+# CHECK: %0:fpr(<2 x s32>) = COPY %d0
+# FAST: %1:gpr(s64) = G_BITCAST %0
+# GREEDY: %1:fpr(s64) = G_BITCAST %0
body: |
bb.0:
liveins: %d0
@@ -628,10 +547,8 @@ registers:
- { id: 1, class: _}
- { id: 2, class: _}
- { id: 3, class: _}
-# CHECK: registers:
-# CHECK: - { id: 2, class: fpr, preferred-register: '' }
-# CHECK: - { id: 3, class: fpr, preferred-register: '' }
-# CHECK: %2(<2 x s64>) = G_BITCAST %3(s128)
+# CHECK: %3:fpr(s128) = G_MERGE_VALUES
+# CHECK: %2:fpr(<2 x s64>) = G_BITCAST %3(s128)
body: |
bb.1:
liveins: %x0, %x1
@@ -658,12 +575,9 @@ registers:
- { id: 2, class: _}
- { id: 3, class: _}
- { id: 4, class: _}
-# CHECK: registers:
-# CHECK: - { id: 2, class: fpr, preferred-register: '' }
-# CHECK: - { id: 3, class: fpr, preferred-register: '' }
-# CHECK: - { id: 4, class: fpr, preferred-register: '' }
-# CHECK: %4(s128) = COPY %3(s128)
-# CHECK-NEXT: %2(<2 x s64>) = G_BITCAST %4(s128)
+# CHECK: %3:fpr(s128) = G_MERGE_VALUES
+# CHECK: %4:fpr(s128) = COPY %3(s128)
+# CHECK-NEXT: %2:fpr(<2 x s64>) = G_BITCAST %4(s128)
body: |
bb.1:
liveins: %x0, %x1
@@ -695,7 +609,7 @@ registers:
# CHECK: registers:
# CHECK: - { id: 0, class: fpr128, preferred-register: '' }
# CHECK: - { id: 1, class: fpr, preferred-register: '' }
-# CHECK: %1(s128) = COPY %0
+# CHECK: %1:fpr(s128) = COPY %0
body: |
bb.1:
liveins: %x0
@@ -714,17 +628,6 @@ body: |
# CHECK-LABEL: name: greedyWithChainOfComputation
name: greedyWithChainOfComputation
legalized: true
-
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: gpr, preferred-register: '' }
-# FAST-NEXT: - { id: 2, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 3, class: fpr, preferred-register: '' }
-# FAST-NEXT: - { id: 4, class: fpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 2, class: gpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 3, class: gpr, preferred-register: '' }
-# GREEDY-NEXT: - { id: 4, class: gpr, preferred-register: '' }
-# CHECK-NEXT: - { id: 5, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
@@ -732,17 +635,18 @@ registers:
- { id: 3, class: _ }
- { id: 4, class: _ }
- { id: 5, class: _ }
-
# No repairing should be necessary for both modes.
-# CHECK: %0(s64) = COPY %x0
-# CHECK-NEXT: %1(p0) = COPY %x1
-# CHECK-NEXT: %2(<2 x s32>) = G_BITCAST %0(s64)
-# CHECK-NEXT: %3(<2 x s32>) = G_LOAD %1(p0) :: (load 8 from %ir.addr)
-# CHECK-NEXT: %4(<2 x s32>) = G_OR %2, %3
-# CHECK-NEXT: %5(s64) = G_BITCAST %4(<2 x s32>)
+# CHECK: %0:gpr(s64) = COPY %x0
+# CHECK-NEXT: %1:gpr(p0) = COPY %x1
+# FAST-NEXT: %2:fpr(<2 x s32>) = G_BITCAST %0(s64)
+# FAST-NEXT: %3:fpr(<2 x s32>) = G_LOAD %1(p0) :: (load 8 from %ir.addr)
+# FAST-NEXT: %4:fpr(<2 x s32>) = G_OR %2, %3
+# GREEDY-NEXT: %2:gpr(<2 x s32>) = G_BITCAST %0(s64)
+# GREEDY-NEXT: %3:gpr(<2 x s32>) = G_LOAD %1(p0) :: (load 8 from %ir.addr)
+# GREEDY-NEXT: %4:gpr(<2 x s32>) = G_OR %2, %3
+# CHECK-NEXT: %5:gpr(s64) = G_BITCAST %4(<2 x s32>)
# CHECK-NEXT: %x0 = COPY %5(s64)
# CHECK-NEXT: RET_ReallyLR implicit %x0
-
body: |
bb.0:
liveins: %x0, %x1
@@ -778,12 +682,12 @@ registers:
- { id: 3, class: _ }
# No repairing should be necessary for both modes.
-# CHECK: %0(s64) = COPY %x0
-# CHECK-NEXT: %1(p0) = COPY %x1
-# CHECK-NEXT: %2(s64) = G_LOAD %1(p0) :: (load 8 from %ir.addr)
+# CHECK: %0:gpr(s64) = COPY %x0
+# CHECK-NEXT: %1:gpr(p0) = COPY %x1
+# CHECK-NEXT: %2:fpr(s64) = G_LOAD %1(p0) :: (load 8 from %ir.addr)
# %0 has been mapped to GPR, we need to repair to match FPR.
-# CHECK-NEXT: %4(s64) = COPY %0
-# CHECK-NEXT: %3(s64) = G_FADD %4, %2
+# CHECK-NEXT: %4:fpr(s64) = COPY %0
+# CHECK-NEXT: %3:fpr(s64) = G_FADD %4, %2
# CHECK-NEXT: %x0 = COPY %3(s64)
# CHECK-NEXT: RET_ReallyLR implicit %x0
@@ -818,12 +722,12 @@ registers:
- { id: 1, class: _ }
- { id: 2, class: _ }
-# CHECK: %0(s64) = COPY %x0
-# CHECK-NEXT: %1(p0) = COPY %x1
+# CHECK: %0:gpr(s64) = COPY %x0
+# CHECK-NEXT: %1:gpr(p0) = COPY %x1
# %0 has been mapped to GPR, we need to repair to match FPR.
-# CHECK-NEXT: %3(s64) = COPY %0
-# CHECK-NEXT: %4(s64) = COPY %0
-# CHECK-NEXT: %2(s64) = G_FADD %3, %4
+# CHECK-NEXT: %3:fpr(s64) = COPY %0
+# CHECK-NEXT: %4:fpr(s64) = COPY %0
+# CHECK-NEXT: %2:fpr(s64) = G_FADD %3, %4
# CHECK-NEXT: G_STORE %2(s64), %1(p0) :: (store 8 into %ir.addr)
# CHECK-NEXT: RET_ReallyLR
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll Tue Oct 24 11:04:54 2017
@@ -5,12 +5,12 @@
; CHECK: fixedStack:
; CHECK-DAG: - { id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 1,
; CHECK-DAG: - { id: [[STACK8:[0-9]+]], type: default, offset: 1, size: 1,
-; CHECK: [[LHS_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; CHECK: [[LHS:%[0-9]+]](s8) = G_LOAD [[LHS_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
-; CHECK: [[RHS_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; CHECK: [[RHS:%[0-9]+]](s8) = G_LOAD [[RHS_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
-; CHECK: [[SUM:%[0-9]+]](s8) = G_ADD [[LHS]], [[RHS]]
-; CHECK: [[SUM32:%[0-9]+]](s32) = G_SEXT [[SUM]](s8)
+; CHECK: [[LHS_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; CHECK: [[LHS:%[0-9]+]]:_(s8) = G_LOAD [[LHS_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
+; CHECK: [[RHS_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; CHECK: [[RHS:%[0-9]+]]:_(s8) = G_LOAD [[RHS_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
+; CHECK: [[SUM:%[0-9]+]]:_(s8) = G_ADD [[LHS]], [[RHS]]
+; CHECK: [[SUM32:%[0-9]+]]:_(s32) = G_SEXT [[SUM]](s8)
; CHECK: %w0 = COPY [[SUM32]](s32)
define signext i8 @test_stack_slots([8 x i64], i8 signext %lhs, i8 signext %rhs) {
%sum = add i8 %lhs, %rhs
@@ -18,15 +18,15 @@ define signext i8 @test_stack_slots([8 x
}
; CHECK-LABEL: name: test_call_stack
-; CHECK: [[C42:%[0-9]+]](s8) = G_CONSTANT i8 42
-; CHECK: [[C12:%[0-9]+]](s8) = G_CONSTANT i8 12
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[C42_OFFS:%[0-9]+]](s64) = G_CONSTANT i64 0
-; CHECK: [[C42_LOC:%[0-9]+]](p0) = G_GEP [[SP]], [[C42_OFFS]](s64)
+; CHECK: [[C42:%[0-9]+]]:_(s8) = G_CONSTANT i8 42
+; CHECK: [[C12:%[0-9]+]]:_(s8) = G_CONSTANT i8 12
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[C42_OFFS:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+; CHECK: [[C42_LOC:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[C42_OFFS]](s64)
; CHECK: G_STORE [[C42]](s8), [[C42_LOC]](p0) :: (store 1 into stack, align 0)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[C12_OFFS:%[0-9]+]](s64) = G_CONSTANT i64 1
-; CHECK: [[C12_LOC:%[0-9]+]](p0) = G_GEP [[SP]], [[C12_OFFS]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[C12_OFFS:%[0-9]+]]:_(s64) = G_CONSTANT i64 1
+; CHECK: [[C12_LOC:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[C12_OFFS]](s64)
; CHECK: G_STORE [[C12]](s8), [[C12_LOC]](p0) :: (store 1 into stack + 1, align 0)
; CHECK: BL @test_stack_slots
define void @test_call_stack() {
@@ -46,27 +46,27 @@ define void @test_128bit_struct([2 x i64
}
; CHECK-LABEL: name: take_128bit_struct
-; CHECK: {{%.*}}(p0) = COPY %x0
-; CHECK: {{%.*}}(s64) = COPY %x1
-; CHECK: {{%.*}}(s64) = COPY %x2
+; CHECK: {{%.*}}:_(p0) = COPY %x0
+; CHECK: {{%.*}}:_(s64) = COPY %x1
+; CHECK: {{%.*}}:_(s64) = COPY %x2
define void @take_128bit_struct([2 x i64]* %ptr, [2 x i64] %in) {
store [2 x i64] %in, [2 x i64]* %ptr
ret void
}
; CHECK-LABEL: name: test_split_struct
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD {{.*}}(p0)
-; CHECK: [[LO:%[0-9]+]](s64) = G_EXTRACT [[STRUCT]](s128), 0
-; CHECK: [[HI:%[0-9]+]](s64) = G_EXTRACT [[STRUCT]](s128), 64
-
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF:%[0-9]+]](s64) = G_CONSTANT i64 0
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF]]
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD {{.*}}(p0)
+; CHECK: [[LO:%[0-9]+]]:_(s64) = G_EXTRACT [[STRUCT]](s128), 0
+; CHECK: [[HI:%[0-9]+]]:_(s64) = G_EXTRACT [[STRUCT]](s128), 64
+
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF]]
; CHECK: G_STORE [[LO]](s64), [[ADDR]](p0) :: (store 8 into stack, align 0)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF:%[0-9]+]](s64) = G_CONSTANT i64 8
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF]]
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF]]
; CHECK: G_STORE [[HI]](s64), [[ADDR]](p0) :: (store 8 into stack + 8, align 0)
define void @test_split_struct([2 x i64]* %ptr) {
%struct = load [2 x i64], [2 x i64]* %ptr
@@ -81,11 +81,11 @@ define void @test_split_struct([2 x i64]
; CHECK-DAG: - { id: [[LO_FRAME:[0-9]+]], type: default, offset: 0, size: 8
; CHECK-DAG: - { id: [[HI_FRAME:[0-9]+]], type: default, offset: 8, size: 8
-; CHECK: [[LOPTR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[LO_FRAME]]
-; CHECK: [[LO:%[0-9]+]](s64) = G_LOAD [[LOPTR]](p0) :: (invariant load 8 from %fixed-stack.[[LO_FRAME]], align 0)
+; CHECK: [[LOPTR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[LO_FRAME]]
+; CHECK: [[LO:%[0-9]+]]:_(s64) = G_LOAD [[LOPTR]](p0) :: (invariant load 8 from %fixed-stack.[[LO_FRAME]], align 0)
-; CHECK: [[HIPTR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[HI_FRAME]]
-; CHECK: [[HI:%[0-9]+]](s64) = G_LOAD [[HIPTR]](p0) :: (invariant load 8 from %fixed-stack.[[HI_FRAME]], align 0)
+; CHECK: [[HIPTR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[HI_FRAME]]
+; CHECK: [[HI:%[0-9]+]]:_(s64) = G_LOAD [[HIPTR]](p0) :: (invariant load 8 from %fixed-stack.[[HI_FRAME]], align 0)
define void @take_split_struct([2 x i64]* %ptr, i64, i64, i64,
i64, i64, i64,
[2 x i64] %in) {
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/call-translator.ll Tue Oct 24 11:04:54 2017
@@ -12,7 +12,7 @@ define void @test_trivial_call() {
; CHECK-LABEL: name: test_simple_return
; CHECK: BL @simple_return_callee, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit-def %x0
-; CHECK: [[RES:%[0-9]+]](s64) = COPY %x0
+; CHECK: [[RES:%[0-9]+]]:_(s64) = COPY %x0
; CHECK: %x0 = COPY [[RES]]
; CHECK: RET_ReallyLR implicit %x0
declare i64 @simple_return_callee()
@@ -22,7 +22,7 @@ define i64 @test_simple_return() {
}
; CHECK-LABEL: name: test_simple_arg
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w0
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w0
; CHECK: %w0 = COPY [[IN]]
; CHECK: BL @simple_arg_callee, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0
; CHECK: RET_ReallyLR
@@ -36,7 +36,7 @@ define void @test_simple_arg(i32 %in) {
; CHECK: registers:
; Make sure the register feeding the indirect call is properly constrained.
; CHECK: - { id: [[FUNC:[0-9]+]], class: gpr64, preferred-register: '' }
-; CHECK: %[[FUNC]](p0) = COPY %x0
+; CHECK: %[[FUNC]]:gpr64(p0) = COPY %x0
; CHECK: BLR %[[FUNC]](p0), csr_aarch64_aapcs, implicit-def %lr, implicit %sp
; CHECK: RET_ReallyLR
define void @test_indirect_call(void()* %func) {
@@ -45,8 +45,8 @@ define void @test_indirect_call(void()*
}
; CHECK-LABEL: name: test_multiple_args
-; CHECK: [[IN:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[ANSWER:%[0-9]+]](s32) = G_CONSTANT i32 42
+; CHECK: [[IN:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[ANSWER:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
; CHECK: %w0 = COPY [[ANSWER]]
; CHECK: %x1 = COPY [[IN]]
; CHECK: BL @multiple_args_callee, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0, implicit %x1
@@ -59,17 +59,17 @@ define void @test_multiple_args(i64 %in)
; CHECK-LABEL: name: test_struct_formal
-; CHECK: [[DBL:%[0-9]+]](s64) = COPY %d0
-; CHECK: [[I64:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[I8_C:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[I8:%[0-9]+]](s8) = G_TRUNC [[I8_C]]
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x2
-
-; CHECK: [[UNDEF:%[0-9]+]](s192) = G_IMPLICIT_DEF
-; CHECK: [[ARG0:%[0-9]+]](s192) = G_INSERT [[UNDEF]], [[DBL]](s64), 0
-; CHECK: [[ARG1:%[0-9]+]](s192) = G_INSERT [[ARG0]], [[I64]](s64), 64
-; CHECK: [[ARG2:%[0-9]+]](s192) = G_INSERT [[ARG1]], [[I8]](s8), 128
-; CHECK: [[ARG:%[0-9]+]](s192) = COPY [[ARG2]]
+; CHECK: [[DBL:%[0-9]+]]:_(s64) = COPY %d0
+; CHECK: [[I64:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[I8_C:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[I8:%[0-9]+]]:_(s8) = G_TRUNC [[I8_C]]
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x2
+
+; CHECK: [[UNDEF:%[0-9]+]]:_(s192) = G_IMPLICIT_DEF
+; CHECK: [[ARG0:%[0-9]+]]:_(s192) = G_INSERT [[UNDEF]], [[DBL]](s64), 0
+; CHECK: [[ARG1:%[0-9]+]]:_(s192) = G_INSERT [[ARG0]], [[I64]](s64), 64
+; CHECK: [[ARG2:%[0-9]+]]:_(s192) = G_INSERT [[ARG1]], [[I8]](s8), 128
+; CHECK: [[ARG:%[0-9]+]]:_(s192) = COPY [[ARG2]]
; CHECK: G_STORE [[ARG]](s192), [[ADDR]](p0)
; CHECK: RET_ReallyLR
@@ -80,12 +80,12 @@ define void @test_struct_formal({double,
; CHECK-LABEL: name: test_struct_return
-; CHECK: [[ADDR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL:%[0-9]+]](s192) = G_LOAD [[ADDR]](p0)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL:%[0-9]+]]:_(s192) = G_LOAD [[ADDR]](p0)
-; CHECK: [[DBL:%[0-9]+]](s64) = G_EXTRACT [[VAL]](s192), 0
-; CHECK: [[I64:%[0-9]+]](s64) = G_EXTRACT [[VAL]](s192), 64
-; CHECK: [[I32:%[0-9]+]](s32) = G_EXTRACT [[VAL]](s192), 128
+; CHECK: [[DBL:%[0-9]+]]:_(s64) = G_EXTRACT [[VAL]](s192), 0
+; CHECK: [[I64:%[0-9]+]]:_(s64) = G_EXTRACT [[VAL]](s192), 64
+; CHECK: [[I32:%[0-9]+]]:_(s32) = G_EXTRACT [[VAL]](s192), 128
; CHECK: %d0 = COPY [[DBL]](s64)
; CHECK: %x0 = COPY [[I64]](s64)
@@ -98,23 +98,23 @@ define {double, i64, i32} @test_struct_r
; CHECK-LABEL: name: test_arr_call
; CHECK: hasCalls: true
-; CHECK: [[ARG:%[0-9]+]](s256) = G_LOAD
+; CHECK: [[ARG:%[0-9]+]]:_(s256) = G_LOAD
-; CHECK: [[E0:%[0-9]+]](s64) = G_EXTRACT [[ARG]](s256), 0
-; CHECK: [[E1:%[0-9]+]](s64) = G_EXTRACT [[ARG]](s256), 64
-; CHECK: [[E2:%[0-9]+]](s64) = G_EXTRACT [[ARG]](s256), 128
-; CHECK: [[E3:%[0-9]+]](s64) = G_EXTRACT [[ARG]](s256), 192
+; CHECK: [[E0:%[0-9]+]]:_(s64) = G_EXTRACT [[ARG]](s256), 0
+; CHECK: [[E1:%[0-9]+]]:_(s64) = G_EXTRACT [[ARG]](s256), 64
+; CHECK: [[E2:%[0-9]+]]:_(s64) = G_EXTRACT [[ARG]](s256), 128
+; CHECK: [[E3:%[0-9]+]]:_(s64) = G_EXTRACT [[ARG]](s256), 192
; CHECK: %x0 = COPY [[E0]](s64)
; CHECK: %x1 = COPY [[E1]](s64)
; CHECK: %x2 = COPY [[E2]](s64)
; CHECK: %x3 = COPY [[E3]](s64)
; CHECK: BL @arr_callee, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %x0, implicit %x1, implicit %x2, implicit %x3, implicit-def %x0, implicit-def %x1, implicit-def %x2, implicit-def %x3
-; CHECK: [[E0:%[0-9]+]](s64) = COPY %x0
-; CHECK: [[E1:%[0-9]+]](s64) = COPY %x1
-; CHECK: [[E2:%[0-9]+]](s64) = COPY %x2
-; CHECK: [[E3:%[0-9]+]](s64) = COPY %x3
-; CHECK: [[RES:%[0-9]+]](s256) = G_MERGE_VALUES [[E0]](s64), [[E1]](s64), [[E2]](s64), [[E3]](s64)
+; CHECK: [[E0:%[0-9]+]]:_(s64) = COPY %x0
+; CHECK: [[E1:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK: [[E2:%[0-9]+]]:_(s64) = COPY %x2
+; CHECK: [[E3:%[0-9]+]]:_(s64) = COPY %x3
+; CHECK: [[RES:%[0-9]+]]:_(s256) = G_MERGE_VALUES [[E0]](s64), [[E1]](s64), [[E2]](s64), [[E3]](s64)
; CHECK: G_EXTRACT [[RES]](s256), 64
declare [4 x i64] @arr_callee([4 x i64])
define i64 @test_arr_call([4 x i64]* %addr) {
@@ -126,14 +126,14 @@ define i64 @test_arr_call([4 x i64]* %ad
; CHECK-LABEL: name: test_abi_exts_call
-; CHECK: [[VAL:%[0-9]+]](s8) = G_LOAD
-; CHECK: [[VAL_TMP:%[0-9]+]](s32) = G_ANYEXT [[VAL]]
+; CHECK: [[VAL:%[0-9]+]]:_(s8) = G_LOAD
+; CHECK: [[VAL_TMP:%[0-9]+]]:_(s32) = G_ANYEXT [[VAL]]
; CHECK: %w0 = COPY [[VAL_TMP]]
; CHECK: BL @take_char, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0
-; CHECK: [[SVAL:%[0-9]+]](s32) = G_SEXT [[VAL]](s8)
+; CHECK: [[SVAL:%[0-9]+]]:_(s32) = G_SEXT [[VAL]](s8)
; CHECK: %w0 = COPY [[SVAL]](s32)
; CHECK: BL @take_char, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0
-; CHECK: [[ZVAL:%[0-9]+]](s32) = G_ZEXT [[VAL]](s8)
+; CHECK: [[ZVAL:%[0-9]+]]:_(s32) = G_ZEXT [[VAL]](s8)
; CHECK: %w0 = COPY [[ZVAL]](s32)
; CHECK: BL @take_char, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0
declare void @take_char(i8)
@@ -146,8 +146,8 @@ define void @test_abi_exts_call(i8* %add
}
; CHECK-LABEL: name: test_abi_sext_ret
-; CHECK: [[VAL:%[0-9]+]](s8) = G_LOAD
-; CHECK: [[SVAL:%[0-9]+]](s32) = G_SEXT [[VAL]](s8)
+; CHECK: [[VAL:%[0-9]+]]:_(s8) = G_LOAD
+; CHECK: [[SVAL:%[0-9]+]]:_(s32) = G_SEXT [[VAL]](s8)
; CHECK: %w0 = COPY [[SVAL]](s32)
; CHECK: RET_ReallyLR implicit %w0
define signext i8 @test_abi_sext_ret(i8* %addr) {
@@ -156,8 +156,8 @@ define signext i8 @test_abi_sext_ret(i8*
}
; CHECK-LABEL: name: test_abi_zext_ret
-; CHECK: [[VAL:%[0-9]+]](s8) = G_LOAD
-; CHECK: [[SVAL:%[0-9]+]](s32) = G_ZEXT [[VAL]](s8)
+; CHECK: [[VAL:%[0-9]+]]:_(s8) = G_LOAD
+; CHECK: [[SVAL:%[0-9]+]]:_(s32) = G_ZEXT [[VAL]](s8)
; CHECK: %w0 = COPY [[SVAL]](s32)
; CHECK: RET_ReallyLR implicit %w0
define zeroext i8 @test_abi_zext_ret(i8* %addr) {
@@ -170,13 +170,13 @@ define zeroext i8 @test_abi_zext_ret(i8*
; CHECK-DAG: - { id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 8,
; CHECK-DAG: - { id: [[STACK8:[0-9]+]], type: default, offset: 8, size: 8,
; CHECK-DAG: - { id: [[STACK16:[0-9]+]], type: default, offset: 16, size: 8,
-; CHECK: [[LHS_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; CHECK: [[LHS:%[0-9]+]](s64) = G_LOAD [[LHS_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
-; CHECK: [[RHS_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; CHECK: [[RHS:%[0-9]+]](s64) = G_LOAD [[RHS_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK8]], align 0)
-; CHECK: [[ADDR_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_LOAD [[ADDR_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK16]], align 0)
-; CHECK: [[SUM:%[0-9]+]](s64) = G_ADD [[LHS]], [[RHS]]
+; CHECK: [[LHS_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; CHECK: [[LHS:%[0-9]+]]:_(s64) = G_LOAD [[LHS_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
+; CHECK: [[RHS_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; CHECK: [[RHS:%[0-9]+]]:_(s64) = G_LOAD [[RHS_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK8]], align 0)
+; CHECK: [[ADDR_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_LOAD [[ADDR_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK16]], align 0)
+; CHECK: [[SUM:%[0-9]+]]:_(s64) = G_ADD [[LHS]], [[RHS]]
; CHECK: G_STORE [[SUM]](s64), [[ADDR]](p0)
define void @test_stack_slots([8 x i64], i64 %lhs, i64 %rhs, i64* %addr) {
%sum = add i64 %lhs, %rhs
@@ -185,21 +185,21 @@ define void @test_stack_slots([8 x i64],
}
; CHECK-LABEL: name: test_call_stack
-; CHECK: [[C42:%[0-9]+]](s64) = G_CONSTANT i64 42
-; CHECK: [[C12:%[0-9]+]](s64) = G_CONSTANT i64 12
-; CHECK: [[PTR:%[0-9]+]](p0) = G_CONSTANT i64 0
+; CHECK: [[C42:%[0-9]+]]:_(s64) = G_CONSTANT i64 42
+; CHECK: [[C12:%[0-9]+]]:_(s64) = G_CONSTANT i64 12
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = G_CONSTANT i64 0
; CHECK: ADJCALLSTACKDOWN 24, 0, implicit-def %sp, implicit %sp
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[C42_OFFS:%[0-9]+]](s64) = G_CONSTANT i64 0
-; CHECK: [[C42_LOC:%[0-9]+]](p0) = G_GEP [[SP]], [[C42_OFFS]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[C42_OFFS:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+; CHECK: [[C42_LOC:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[C42_OFFS]](s64)
; CHECK: G_STORE [[C42]](s64), [[C42_LOC]](p0) :: (store 8 into stack, align 0)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[C12_OFFS:%[0-9]+]](s64) = G_CONSTANT i64 8
-; CHECK: [[C12_LOC:%[0-9]+]](p0) = G_GEP [[SP]], [[C12_OFFS]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[C12_OFFS:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+; CHECK: [[C12_LOC:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[C12_OFFS]](s64)
; CHECK: G_STORE [[C12]](s64), [[C12_LOC]](p0) :: (store 8 into stack + 8, align 0)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[PTR_OFFS:%[0-9]+]](s64) = G_CONSTANT i64 16
-; CHECK: [[PTR_LOC:%[0-9]+]](p0) = G_GEP [[SP]], [[PTR_OFFS]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[PTR_OFFS:%[0-9]+]]:_(s64) = G_CONSTANT i64 16
+; CHECK: [[PTR_LOC:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[PTR_OFFS]](s64)
; CHECK: G_STORE [[PTR]](p0), [[PTR_LOC]](p0) :: (store 8 into stack + 16, align 0)
; CHECK: BL @test_stack_slots
; CHECK: ADJCALLSTACKUP 24, 0, implicit-def %sp, implicit %sp
@@ -212,8 +212,8 @@ define void @test_call_stack() {
; CHECK: fixedStack:
; CHECK-NEXT: - { id: [[SLOT:[0-9]+]], type: default, offset: 0, size: 1, alignment: 16, stack-id: 0,
; CHECK-NEXT: isImmutable: true,
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[SLOT]]
-; CHECK: {{%[0-9]+}}(s1) = G_LOAD [[ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[SLOT]], align 0)
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[SLOT]]
+; CHECK: {{%[0-9]+}}:_(s1) = G_LOAD [[ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[SLOT]], align 0)
define void @test_mem_i1([8 x i64], i1 %in) {
ret void
}
@@ -230,27 +230,27 @@ define void @test_128bit_struct([2 x i64
}
; CHECK-LABEL: name: take_128bit_struct
-; CHECK: {{%.*}}(p0) = COPY %x0
-; CHECK: {{%.*}}(s64) = COPY %x1
-; CHECK: {{%.*}}(s64) = COPY %x2
+; CHECK: {{%.*}}:_(p0) = COPY %x0
+; CHECK: {{%.*}}:_(s64) = COPY %x1
+; CHECK: {{%.*}}:_(s64) = COPY %x2
define void @take_128bit_struct([2 x i64]* %ptr, [2 x i64] %in) {
store [2 x i64] %in, [2 x i64]* %ptr
ret void
}
; CHECK-LABEL: name: test_split_struct
-; CHECK: [[STRUCT:%[0-9]+]](s128) = G_LOAD {{.*}}(p0)
-; CHECK: [[LO:%[0-9]+]](s64) = G_EXTRACT [[STRUCT]](s128), 0
-; CHECK: [[HI:%[0-9]+]](s64) = G_EXTRACT [[STRUCT]](s128), 64
-
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF:%[0-9]+]](s64) = G_CONSTANT i64 0
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF]]
+; CHECK: [[STRUCT:%[0-9]+]]:_(s128) = G_LOAD {{.*}}(p0)
+; CHECK: [[LO:%[0-9]+]]:_(s64) = G_EXTRACT [[STRUCT]](s128), 0
+; CHECK: [[HI:%[0-9]+]]:_(s64) = G_EXTRACT [[STRUCT]](s128), 64
+
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF]]
; CHECK: G_STORE [[LO]](s64), [[ADDR]](p0) :: (store 8 into stack, align 0)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF:%[0-9]+]](s64) = G_CONSTANT i64 8
-; CHECK: [[ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF]]
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+; CHECK: [[ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF]]
; CHECK: G_STORE [[HI]](s64), [[ADDR]](p0) :: (store 8 into stack + 8, align 0)
define void @test_split_struct([2 x i64]* %ptr) {
%struct = load [2 x i64], [2 x i64]* %ptr
@@ -265,11 +265,11 @@ define void @test_split_struct([2 x i64]
; CHECK-DAG: - { id: [[LO_FRAME:[0-9]+]], type: default, offset: 0, size: 8
; CHECK-DAG: - { id: [[HI_FRAME:[0-9]+]], type: default, offset: 8, size: 8
-; CHECK: [[LOPTR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[LO_FRAME]]
-; CHECK: [[LO:%[0-9]+]](s64) = G_LOAD [[LOPTR]](p0) :: (invariant load 8 from %fixed-stack.[[LO_FRAME]], align 0)
+; CHECK: [[LOPTR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[LO_FRAME]]
+; CHECK: [[LO:%[0-9]+]]:_(s64) = G_LOAD [[LOPTR]](p0) :: (invariant load 8 from %fixed-stack.[[LO_FRAME]], align 0)
-; CHECK: [[HIPTR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[HI_FRAME]]
-; CHECK: [[HI:%[0-9]+]](s64) = G_LOAD [[HIPTR]](p0) :: (invariant load 8 from %fixed-stack.[[HI_FRAME]], align 0)
+; CHECK: [[HIPTR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[HI_FRAME]]
+; CHECK: [[HI:%[0-9]+]]:_(s64) = G_LOAD [[HIPTR]](p0) :: (invariant load 8 from %fixed-stack.[[HI_FRAME]], align 0)
define void @take_split_struct([2 x i64]* %ptr, i64, i64, i64,
i64, i64, i64,
[2 x i64] %in) {
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/debug-insts.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/debug-insts.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/debug-insts.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/debug-insts.ll Tue Oct 24 11:04:54 2017
@@ -3,7 +3,7 @@
; CHECK-LABEL: name: debug_declare
; CHECK: stack:
-; CHECK: - { id: {{.*}}, name: in.addr, type: default, offset: 0, size: {{.*}}, alignment: {{.*}},
+; CHECK: - { id: {{.*}}, name: in.addr, type: default, offset: 0, size: {{.*}}, alignment: {{.*}},
; CHECK-NEXT: callee-saved-register: '', callee-saved-restored: true,
; CHECK-NEXT: di-variable: '!11', di-expression: '!DIExpression()',
; CHECK: DBG_VALUE debug-use %0(s32), debug-use _, !11, !DIExpression(), debug-location !12
@@ -26,7 +26,7 @@ entry:
}
; CHECK-LABEL: name: debug_value
-; CHECK: [[IN:%[0-9]+]](s32) = COPY %w0
+; CHECK: [[IN:%[0-9]+]]:_(s32) = COPY %w0
define void @debug_value(i32 %in) #0 !dbg !16 {
%addr = alloca i32
; CHECK: DBG_VALUE debug-use [[IN]](s32), debug-use _, !17, !DIExpression(), debug-location !18
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/dynamic-alloca.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/dynamic-alloca.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/dynamic-alloca.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/dynamic-alloca.ll Tue Oct 24 11:04:54 2017
@@ -1,15 +1,15 @@
; RUN: llc -mtriple=aarch64 -global-isel %s -o - -stop-after=irtranslator | FileCheck %s
; CHECK-LABEL: name: test_simple_alloca
-; CHECK: [[NUMELTS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TYPE_SIZE:%[0-9]+]](s64) = G_CONSTANT i64 -1
-; CHECK: [[NUMELTS_64:%[0-9]+]](s64) = G_ZEXT [[NUMELTS]](s32)
-; CHECK: [[NUMBYTES:%[0-9]+]](s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
-; CHECK: [[SP_TMP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[ALLOC:%[0-9]+]](p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
-; CHECK: [[ALIGNED_ALLOC:%[0-9]+]](p0) = G_PTR_MASK [[ALLOC]], 4
+; CHECK: [[NUMELTS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TYPE_SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 -1
+; CHECK: [[NUMELTS_64:%[0-9]+]]:_(s64) = G_ZEXT [[NUMELTS]](s32)
+; CHECK: [[NUMBYTES:%[0-9]+]]:_(s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
+; CHECK: [[SP_TMP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[ALLOC:%[0-9]+]]:_(p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
+; CHECK: [[ALIGNED_ALLOC:%[0-9]+]]:_(p0) = G_PTR_MASK [[ALLOC]], 4
; CHECK: %sp = COPY [[ALIGNED_ALLOC]]
-; CHECK: [[ALLOC:%[0-9]+]](p0) = COPY [[ALIGNED_ALLOC]]
+; CHECK: [[ALLOC:%[0-9]+]]:_(p0) = COPY [[ALIGNED_ALLOC]]
; CHECK: %x0 = COPY [[ALLOC]]
define i8* @test_simple_alloca(i32 %numelts) {
%addr = alloca i8, i32 %numelts
@@ -17,15 +17,15 @@ define i8* @test_simple_alloca(i32 %nume
}
; CHECK-LABEL: name: test_aligned_alloca
-; CHECK: [[NUMELTS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TYPE_SIZE:%[0-9]+]](s64) = G_CONSTANT i64 -1
-; CHECK: [[NUMELTS_64:%[0-9]+]](s64) = G_ZEXT [[NUMELTS]](s32)
-; CHECK: [[NUMBYTES:%[0-9]+]](s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
-; CHECK: [[SP_TMP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[ALLOC:%[0-9]+]](p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
-; CHECK: [[ALIGNED_ALLOC:%[0-9]+]](p0) = G_PTR_MASK [[ALLOC]], 5
+; CHECK: [[NUMELTS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TYPE_SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 -1
+; CHECK: [[NUMELTS_64:%[0-9]+]]:_(s64) = G_ZEXT [[NUMELTS]](s32)
+; CHECK: [[NUMBYTES:%[0-9]+]]:_(s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
+; CHECK: [[SP_TMP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[ALLOC:%[0-9]+]]:_(p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
+; CHECK: [[ALIGNED_ALLOC:%[0-9]+]]:_(p0) = G_PTR_MASK [[ALLOC]], 5
; CHECK: %sp = COPY [[ALIGNED_ALLOC]]
-; CHECK: [[ALLOC:%[0-9]+]](p0) = COPY [[ALIGNED_ALLOC]]
+; CHECK: [[ALLOC:%[0-9]+]]:_(p0) = COPY [[ALIGNED_ALLOC]]
; CHECK: %x0 = COPY [[ALLOC]]
define i8* @test_aligned_alloca(i32 %numelts) {
%addr = alloca i8, i32 %numelts, align 32
@@ -33,14 +33,14 @@ define i8* @test_aligned_alloca(i32 %num
}
; CHECK-LABEL: name: test_natural_alloca
-; CHECK: [[NUMELTS:%[0-9]+]](s32) = COPY %w0
-; CHECK: [[TYPE_SIZE:%[0-9]+]](s64) = G_CONSTANT i64 -16
-; CHECK: [[NUMELTS_64:%[0-9]+]](s64) = G_ZEXT [[NUMELTS]](s32)
-; CHECK: [[NUMBYTES:%[0-9]+]](s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
-; CHECK: [[SP_TMP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[ALLOC:%[0-9]+]](p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
+; CHECK: [[NUMELTS:%[0-9]+]]:_(s32) = COPY %w0
+; CHECK: [[TYPE_SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 -16
+; CHECK: [[NUMELTS_64:%[0-9]+]]:_(s64) = G_ZEXT [[NUMELTS]](s32)
+; CHECK: [[NUMBYTES:%[0-9]+]]:_(s64) = G_MUL [[NUMELTS_64]], [[TYPE_SIZE]]
+; CHECK: [[SP_TMP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[ALLOC:%[0-9]+]]:_(p0) = G_GEP [[SP_TMP]], [[NUMBYTES]]
; CHECK: %sp = COPY [[ALLOC]]
-; CHECK: [[ALLOC_TMP:%[0-9]+]](p0) = COPY [[ALLOC]]
+; CHECK: [[ALLOC_TMP:%[0-9]+]]:_(p0) = COPY [[ALLOC]]
; CHECK: %x0 = COPY [[ALLOC_TMP]]
define i128* @test_natural_alloca(i32 %numelts) {
%addr = alloca i128, i32 %numelts
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-bitcast.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-bitcast.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-bitcast.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-bitcast.ll Tue Oct 24 11:04:54 2017
@@ -23,7 +23,7 @@ define i32 @test_bitcast_invalid_vreg()
%tmp15 = add i32 30, 30
; At this point we mapped 46 values. The 'i32 100' constant will grow the map.
-; CHECK: %46(s32) = G_CONSTANT i32 100
+; CHECK: %46:_(s32) = G_CONSTANT i32 100
; CHECK: %w0 = COPY %46(s32)
%res = bitcast i32 100 to i32
ret i32 %res
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/irtranslator-exceptions.ll Tue Oct 24 11:04:54 2017
@@ -13,26 +13,26 @@ declare i32 @llvm.eh.typeid.for(i8*)
; CHECK: EH_LABEL
; CHECK: %w0 = COPY
; CHECK: BL @foo, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %w0, implicit-def %w0
-; CHECK: {{%[0-9]+}}(s32) = COPY %w0
+; CHECK: {{%[0-9]+}}:_(s32) = COPY %w0
; CHECK: EH_LABEL
; CHECK: G_BR %[[GOOD]]
; CHECK: [[BAD]] (landing-pad):
; CHECK: EH_LABEL
-; CHECK: [[UNDEF:%[0-9]+]](s128) = G_IMPLICIT_DEF
-; CHECK: [[PTR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[VAL_WITH_PTR:%[0-9]+]](s128) = G_INSERT [[UNDEF]], [[PTR]](p0), 0
-; CHECK: [[SEL_PTR:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[SEL:%[0-9]+]](s32) = G_PTRTOINT [[SEL_PTR]]
-; CHECK: [[PTR_SEL:%[0-9]+]](s128) = G_INSERT [[VAL_WITH_PTR]], [[SEL]](s32), 64
-; CHECK: [[PTR_RET:%[0-9]+]](s64) = G_EXTRACT [[PTR_SEL]](s128), 0
-; CHECK: [[SEL_RET:%[0-9]+]](s32) = G_EXTRACT [[PTR_SEL]](s128), 64
+; CHECK: [[UNDEF:%[0-9]+]]:_(s128) = G_IMPLICIT_DEF
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[VAL_WITH_PTR:%[0-9]+]]:_(s128) = G_INSERT [[UNDEF]], [[PTR]](p0), 0
+; CHECK: [[SEL_PTR:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[SEL:%[0-9]+]]:_(s32) = G_PTRTOINT [[SEL_PTR]]
+; CHECK: [[PTR_SEL:%[0-9]+]]:_(s128) = G_INSERT [[VAL_WITH_PTR]], [[SEL]](s32), 64
+; CHECK: [[PTR_RET:%[0-9]+]]:_(s64) = G_EXTRACT [[PTR_SEL]](s128), 0
+; CHECK: [[SEL_RET:%[0-9]+]]:_(s32) = G_EXTRACT [[PTR_SEL]](s128), 64
; CHECK: %x0 = COPY [[PTR_RET]]
; CHECK: %w1 = COPY [[SEL_RET]]
; CHECK: [[GOOD]]:
-; CHECK: [[SEL:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: {{%[0-9]+}}(s128) = G_INSERT {{%[0-9]+}}, [[SEL]](s32), 64
+; CHECK: [[SEL:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: {{%[0-9]+}}:_(s128) = G_INSERT {{%[0-9]+}}, [[SEL]](s32), 64
define { i8*, i32 } @bar() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
%res32 = invoke i32 @foo(i32 42) to label %continue unwind label %broken
@@ -49,7 +49,7 @@ continue:
}
; CHECK-LABEL: name: test_invoke_indirect
-; CHECK: [[CALLEE:%[0-9]+]](p0) = COPY %x0
+; CHECK: [[CALLEE:%[0-9]+]]:gpr64(p0) = COPY %x0
; CHECK: BLR [[CALLEE]]
define void @test_invoke_indirect(void()* %callee) personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
invoke void %callee() to label %continue unwind label %broken
@@ -64,20 +64,20 @@ continue:
; CHECK-LABEL: name: test_invoke_varargs
-; CHECK: [[NULL:%[0-9]+]](p0) = G_CONSTANT i64 0
-; CHECK: [[ANSWER:%[0-9]+]](s32) = G_CONSTANT i32 42
-; CHECK: [[ONE:%[0-9]+]](s32) = G_FCONSTANT float 1.0
+; CHECK: [[NULL:%[0-9]+]]:_(p0) = G_CONSTANT i64 0
+; CHECK: [[ANSWER:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+; CHECK: [[ONE:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.0
; CHECK: %x0 = COPY [[NULL]]
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFFSET:%[0-9]+]](s64) = G_CONSTANT i64 0
-; CHECK: [[SLOT:%[0-9]+]](p0) = G_GEP [[SP]], [[OFFSET]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFFSET:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+; CHECK: [[SLOT:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFFSET]](s64)
; CHECK: G_STORE [[ANSWER]](s32), [[SLOT]]
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFFSET:%[0-9]+]](s64) = G_CONSTANT i64 8
-; CHECK: [[SLOT:%[0-9]+]](p0) = G_GEP [[SP]], [[OFFSET]](s64)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFFSET:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+; CHECK: [[SLOT:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFFSET]](s64)
; CHECK: G_STORE [[ONE]](s32), [[SLOT]]
; CHECK: BL @printf
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-add.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-add.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-add.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-add.mir Tue Oct 24 11:04:54 2017
@@ -35,14 +35,14 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_add_big
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[COPY2:%[0-9]+]](s64) = COPY %x2
- ; CHECK: [[COPY3:%[0-9]+]](s64) = COPY %x3
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[C]](s32)
- ; CHECK: [[UADDE:%[0-9]+]](s64), [[UADDE1:%[0-9]+]](s1) = G_UADDE [[COPY]], [[COPY2]], [[TRUNC]]
- ; CHECK: [[UADDE2:%[0-9]+]](s64), [[UADDE3:%[0-9]+]](s1) = G_UADDE [[COPY1]], [[COPY3]], [[UADDE1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY %x2
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s64) = COPY %x3
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[C]](s32)
+ ; CHECK: [[UADDE:%[0-9]+]]:_(s64), [[UADDE1:%[0-9]+]]:_(s1) = G_UADDE [[COPY]], [[COPY2]], [[TRUNC]]
+ ; CHECK: [[UADDE2:%[0-9]+]]:_(s64), [[UADDE3:%[0-9]+]]:_(s1) = G_UADDE [[COPY1]], [[COPY3]], [[UADDE1]]
; CHECK: %x0 = COPY [[UADDE]](s64)
; CHECK: %x1 = COPY [[UADDE2]](s64)
%0(s64) = COPY %x0
@@ -71,13 +71,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_add_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s8) = G_TRUNC [[ADD]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC2]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[ADD]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC2]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -105,12 +105,12 @@ body: |
liveins: %q0, %q1, %q2, %q3
; CHECK-LABEL: name: test_vector_add
- ; CHECK: [[COPY:%[0-9]+]](<2 x s64>) = COPY %q0
- ; CHECK: [[COPY1:%[0-9]+]](<2 x s64>) = COPY %q1
- ; CHECK: [[COPY2:%[0-9]+]](<2 x s64>) = COPY %q2
- ; CHECK: [[COPY3:%[0-9]+]](<2 x s64>) = COPY %q3
- ; CHECK: [[ADD:%[0-9]+]](<2 x s64>) = G_ADD [[COPY]], [[COPY2]]
- ; CHECK: [[ADD1:%[0-9]+]](<2 x s64>) = G_ADD [[COPY1]], [[COPY3]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(<2 x s64>) = COPY %q0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(<2 x s64>) = COPY %q1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(<2 x s64>) = COPY %q2
+ ; CHECK: [[COPY3:%[0-9]+]]:_(<2 x s64>) = COPY %q3
+ ; CHECK: [[ADD:%[0-9]+]]:_(<2 x s64>) = G_ADD [[COPY]], [[COPY2]]
+ ; CHECK: [[ADD1:%[0-9]+]]:_(<2 x s64>) = G_ADD [[COPY1]], [[COPY3]]
; CHECK: %q0 = COPY [[ADD]](<2 x s64>)
; CHECK: %q1 = COPY [[ADD1]](<2 x s64>)
%0(<2 x s64>) = COPY %q0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-and.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-and.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-and.mir Tue Oct 24 11:04:54 2017
@@ -24,14 +24,14 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_and_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC2:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[TRUNC1]], [[TRUNC2]]
- ; CHECK: [[TRUNC3:%[0-9]+]](s8) = G_TRUNC [[AND]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[TRUNC1]], [[TRUNC2]]
+ ; CHECK: [[TRUNC3:%[0-9]+]]:_(s8) = G_TRUNC [[AND]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir Tue Oct 24 11:04:54 2017
@@ -32,18 +32,18 @@ body: |
%2(s8) = G_TRUNC %0
%3(s8) = G_TRUNC %1
- ; CHECK: [[CMP1:%[0-9]+]](s32) = G_ICMP intpred(sge), %0(s64), %1
- ; CHECK: [[CMP_T1:%[0-9]+]](s1) = G_TRUNC [[CMP1]]
+ ; CHECK: [[CMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(sge), %0(s64), %1
+ ; CHECK: [[CMP_T1:%[0-9]+]]:_(s1) = G_TRUNC [[CMP1]]
%4(s1) = G_ICMP intpred(sge), %0, %1
- ; CHECK: [[CSTMASK1:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[T1:%[0-9]+]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[AND1:%[0-9]+]](s32) = G_AND [[T1]], [[CSTMASK1]]
- ; CHECK: [[CSTMASK2:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[T2:%[0-9]+]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[AND2:%[0-9]+]](s32) = G_AND [[T2]], [[CSTMASK2]]
- ; CHECK: [[CMP2:%[0-9]+]](s32) = G_ICMP intpred(ult), [[AND1]](s32), [[AND2]]
- ; CHECK: [[CMP_T2:%[0-9]+]](s1) = G_TRUNC [[CMP2]]
+ ; CHECK: [[CSTMASK1:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[T1:%[0-9]+]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[AND1:%[0-9]+]]:_(s32) = G_AND [[T1]], [[CSTMASK1]]
+ ; CHECK: [[CSTMASK2:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[T2:%[0-9]+]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[AND2:%[0-9]+]]:_(s32) = G_AND [[T2]], [[CSTMASK2]]
+ ; CHECK: [[CMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(ult), [[AND1]](s32), [[AND2]]
+ ; CHECK: [[CMP_T2:%[0-9]+]]:_(s1) = G_TRUNC [[CMP2]]
%8(s1) = G_ICMP intpred(ult), %2, %3
%9(p0) = G_INTTOPTR %0(s64)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-combines.mir Tue Oct 24 11:04:54 2017
@@ -19,11 +19,11 @@ body: |
; Here the types don't match.
; CHECK-LABEL: name: test_combines_2
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[COPY]]
- ; CHECK: [[MV:%[0-9]+]](s64) = G_MERGE_VALUES [[COPY]](s32), [[ADD]](s32)
- ; CHECK: [[EXTRACT:%[0-9]+]](s1) = G_EXTRACT [[MV]](s64), 0
- ; CHECK: [[EXTRACT1:%[0-9]+]](s64) = G_EXTRACT [[MV]](s64), 0
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
+ ; CHECK: [[MV:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[COPY]](s32), [[ADD]](s32)
+ ; CHECK: [[EXTRACT:%[0-9]+]]:_(s1) = G_EXTRACT [[MV]](s64), 0
+ ; CHECK: [[EXTRACT1:%[0-9]+]]:_(s64) = G_EXTRACT [[MV]](s64), 0
%0:_(s32) = COPY %w0
%1:_(s32) = G_ADD %0, %0
@@ -39,9 +39,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: test_combines_3
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[COPY]]
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[COPY]], [[ADD]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
+ ; CHECK: [[ADD1:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[ADD]]
%0:_(s32) = COPY %w0
%1:_(s32) = G_ADD %0, %0
@@ -57,9 +57,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: test_combines_4
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY [[COPY]](s64)
- ; CHECK: [[ADD:%[0-9]+]](s64) = G_ADD [[COPY1]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY [[COPY]](s64)
+ ; CHECK: [[ADD:%[0-9]+]]:_(s64) = G_ADD [[COPY1]], [[COPY1]]
%0:_(s64) = COPY %x0
%1:_(s128) = G_MERGE_VALUES %0, %0
@@ -74,9 +74,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: test_combines_5
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[COPY]]
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[COPY]], [[ADD]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
+ ; CHECK: [[ADD1:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[ADD]]
%0:_(s32) = COPY %w0
%1:_(s32) = G_ADD %0, %0
@@ -93,9 +93,9 @@ body: |
; Check that we replace all the uses of a G_EXTRACT.
; CHECK-LABEL: name: test_combines_6
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[MUL:%[0-9]+]](s32) = G_MUL [[COPY]], [[COPY]]
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[MUL]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[MUL:%[0-9]+]]:_(s32) = G_MUL [[COPY]], [[COPY]]
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[MUL]]
%0:_(s32) = COPY %w0
%1:_(s32) = G_MERGE_VALUES %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir Tue Oct 24 11:04:54 2017
@@ -29,15 +29,15 @@ body: |
bb.0.entry:
; CHECK-LABEL: name: test_constant
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[C]](s32)
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 42
- ; CHECK: [[TRUNC1:%[0-9]+]](s8) = G_TRUNC [[C1]](s32)
- ; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 -1
- ; CHECK: [[TRUNC2:%[0-9]+]](s16) = G_TRUNC [[C2]](s32)
- ; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 -1
- ; CHECK: [[C4:%[0-9]+]](s64) = G_CONSTANT i64 1
- ; CHECK: [[C5:%[0-9]+]](s64) = G_CONSTANT i64 0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[C]](s32)
+ ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 42
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[C1]](s32)
+ ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 -1
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s16) = G_TRUNC [[C2]](s32)
+ ; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 -1
+ ; CHECK: [[C4:%[0-9]+]]:_(s64) = G_CONSTANT i64 1
+ ; CHECK: [[C5:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
%0(s1) = G_CONSTANT i1 0
%1(s8) = G_CONSTANT i8 42
%2(s16) = G_CONSTANT i16 65535
@@ -56,10 +56,10 @@ body: |
bb.0.entry:
; CHECK-LABEL: name: test_fconstant
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[C1:%[0-9]+]](s64) = G_FCONSTANT double 2.000000e+00
- ; CHECK: [[C2:%[0-9]+]](s32) = G_FCONSTANT half 0xH0000
- ; CHECK: [[FPTRUNC:%[0-9]+]](s16) = G_FPTRUNC [[C2]](s32)
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[C1:%[0-9]+]]:_(s64) = G_FCONSTANT double 2.000000e+00
+ ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_FCONSTANT half 0xH0000
+ ; CHECK: [[FPTRUNC:%[0-9]+]]:_(s16) = G_FPTRUNC [[C2]](s32)
%0(s32) = G_FCONSTANT float 1.0
%1(s64) = G_FCONSTANT double 2.0
%2(s16) = G_FCONSTANT half 0.0
@@ -73,6 +73,6 @@ body: |
bb.0:
; CHECK-LABEL: name: test_global
- ; CHECK: [[GV:%[0-9]+]](p0) = G_GLOBAL_VALUE @var
+ ; CHECK: [[GV:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @var
%0(p0) = G_GLOBAL_VALUE @var
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-div.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-div.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-div.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-div.mir Tue Oct 24 11:04:54 2017
@@ -26,30 +26,30 @@ body: |
%2(s8) = G_TRUNC %0
%3(s8) = G_TRUNC %1
- ; CHECK: [[A:%.*]](s64) = COPY %x0
- ; CHECK: [[B:%.*]](s64) = COPY %x1
- ; CHECK: [[C1:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[S1:%.*]](s32) = G_TRUNC [[A]]
- ; CHECK: [[SHL1:%.*]](s32) = G_SHL [[S1]], [[C1]]
- ; CHECK: [[SEXT1:%.*]](s32) = G_ASHR [[SHL1]], [[C1]]
- ; CHECK: [[C2:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[S2:%.*]](s32) = G_TRUNC [[B]]
- ; CHECK: [[SHL2:%.*]](s32) = G_SHL [[S2]], [[C2]]
- ; CHECK: [[SEXT2:%.*]](s32) = G_ASHR [[SHL2]], [[C2]]
- ; CHECK: [[DIV:%.*]](s32) = G_SDIV [[SEXT1]], [[SEXT2]]
- ; CHECK: [[RES:%.*]](s8) = G_TRUNC [[DIV]]
+ ; CHECK: [[A:%.*]]:_(s64) = COPY %x0
+ ; CHECK: [[B:%.*]]:_(s64) = COPY %x1
+ ; CHECK: [[C1:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[S1:%.*]]:_(s32) = G_TRUNC [[A]]
+ ; CHECK: [[SHL1:%.*]]:_(s32) = G_SHL [[S1]], [[C1]]
+ ; CHECK: [[SEXT1:%.*]]:_(s32) = G_ASHR [[SHL1]], [[C1]]
+ ; CHECK: [[C2:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[S2:%.*]]:_(s32) = G_TRUNC [[B]]
+ ; CHECK: [[SHL2:%.*]]:_(s32) = G_SHL [[S2]], [[C2]]
+ ; CHECK: [[SEXT2:%.*]]:_(s32) = G_ASHR [[SHL2]], [[C2]]
+ ; CHECK: [[DIV:%.*]]:_(s32) = G_SDIV [[SEXT1]], [[SEXT2]]
+ ; CHECK: [[RES:%.*]]:_(s8) = G_TRUNC [[DIV]]
%4(s8) = G_SDIV %2, %3
- ; CHECK: [[CMASK1:%.*]](s32) = G_CONSTANT i32 255
- ; CHECK: [[T1:%.*]](s32) = G_TRUNC [[A]]
- ; CHECK: [[LHS32:%.*]](s32) = G_AND [[T1]], [[CMASK1]]
- ; CHECK: [[CMASK2:%.*]](s32) = G_CONSTANT i32 255
- ; CHECK: [[T2:%.*]](s32) = G_TRUNC [[B]]
- ; CHECK: [[RHS32:%.*]](s32) = G_AND [[T2]], [[CMASK2]]
- ; CHECK: [[QUOT32:%[0-9]+]](s32) = G_UDIV [[LHS32]], [[RHS32]]
- ; CHECK: [[RES:%[0-9]+]](s8) = G_TRUNC [[QUOT32]]
+ ; CHECK: [[CMASK1:%.*]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[T1:%.*]]:_(s32) = G_TRUNC [[A]]
+ ; CHECK: [[LHS32:%.*]]:_(s32) = G_AND [[T1]], [[CMASK1]]
+ ; CHECK: [[CMASK2:%.*]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[T2:%.*]]:_(s32) = G_TRUNC [[B]]
+ ; CHECK: [[RHS32:%.*]]:_(s32) = G_AND [[T2]], [[CMASK2]]
+ ; CHECK: [[QUOT32:%[0-9]+]]:_(s32) = G_UDIV [[LHS32]], [[RHS32]]
+ ; CHECK: [[RES:%[0-9]+]]:_(s8) = G_TRUNC [[QUOT32]]
%5(s8) = G_UDIV %2, %3
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-exceptions.ll Tue Oct 24 11:04:54 2017
@@ -15,18 +15,18 @@ declare void @_Unwind_Resume(i8*)
; CHECK: [[LP]] (landing-pad):
; CHECK: EH_LABEL
-; CHECK: [[PTR:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[STRUCT_PTR:%[0-9]+]](s64) = G_PTRTOINT [[PTR]](p0)
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[STRUCT_PTR:%[0-9]+]]:_(s64) = G_PTRTOINT [[PTR]](p0)
-; CHECK: [[SEL_PTR:%[0-9]+]](p0) = COPY %x1
-; CHECK: [[SEL:%[0-9]+]](s32) = G_PTRTOINT [[SEL_PTR]]
-; CHECK: [[STRUCT_SEL:%[0-9]+]](s64) = G_INSERT {{%[0-9]+}}, [[SEL]](s32), 0
+; CHECK: [[SEL_PTR:%[0-9]+]]:_(p0) = COPY %x1
+; CHECK: [[SEL:%[0-9]+]]:_(s32) = G_PTRTOINT [[SEL_PTR]]
+; CHECK: [[STRUCT_SEL:%[0-9]+]]:_(s64) = G_INSERT {{%[0-9]+}}, [[SEL]](s32), 0
-; CHECK: [[PTR:%[0-9]+]](p0) = G_INTTOPTR [[STRUCT_PTR]](s64)
+; CHECK: [[PTR:%[0-9]+]]:_(p0) = G_INTTOPTR [[STRUCT_PTR]](s64)
; CHECK: G_STORE [[PTR]](p0), {{%[0-9]+}}(p0)
-; CHECK: [[SEL_TMP:%[0-9]+]](s32) = G_EXTRACT [[STRUCT_SEL]](s64), 0
-; CHECK: [[SEL:%[0-9]+]](s32) = COPY [[SEL_TMP]]
+; CHECK: [[SEL_TMP:%[0-9]+]]:_(s32) = G_EXTRACT [[STRUCT_SEL]](s64), 0
+; CHECK: [[SEL:%[0-9]+]]:_(s32) = COPY [[SEL_TMP]]
; CHECK: G_STORE [[SEL]](s32), {{%[0-9]+}}(p0)
define void @bar() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ext.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ext.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ext.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ext.mir Tue Oct 24 11:04:54 2017
@@ -36,44 +36,44 @@ body: |
liveins: %x0, %x1, %x2, %x3
%0(s64) = COPY %x0
- ; CHECK: %1(s1) = G_TRUNC %0
- ; CHECK: %2(s8) = G_TRUNC %0
- ; CHECK: %3(s16) = G_TRUNC %0
- ; CHECK: %4(s32) = G_TRUNC %0
+ ; CHECK: %1:_(s1) = G_TRUNC %0
+ ; CHECK: %2:_(s8) = G_TRUNC %0
+ ; CHECK: %3:_(s16) = G_TRUNC %0
+ ; CHECK: %4:_(s32) = G_TRUNC %0
%1(s1) = G_TRUNC %0
%2(s8) = G_TRUNC %0
%3(s16) = G_TRUNC %0
%4(s32) = G_TRUNC %0
- ; CHECK: %5(s64) = G_ANYEXT %1
- ; CHECK: %6(s64) = G_ZEXT %2
- ; CHECK: %7(s64) = G_ANYEXT %3
- ; CHECK: %8(s64) = G_SEXT %4
+ ; CHECK: %5:_(s64) = G_ANYEXT %1
+ ; CHECK: %6:_(s64) = G_ZEXT %2
+ ; CHECK: %7:_(s64) = G_ANYEXT %3
+ ; CHECK: %8:_(s64) = G_SEXT %4
%5(s64) = G_ANYEXT %1
%6(s64) = G_ZEXT %2
%7(s64) = G_ANYEXT %3
%8(s64) = G_SEXT %4
- ; CHECK: %9(s32) = G_SEXT %1
- ; CHECK: %10(s32) = G_ZEXT %2
- ; CHECK: %11(s32) = G_ANYEXT %3
+ ; CHECK: %9:_(s32) = G_SEXT %1
+ ; CHECK: %10:_(s32) = G_ZEXT %2
+ ; CHECK: %11:_(s32) = G_ANYEXT %3
%9(s32) = G_SEXT %1
%10(s32) = G_ZEXT %2
%11(s32) = G_ANYEXT %3
- ; CHECK: %12(s32) = G_ZEXT %1
- ; CHECK: %13(s32) = G_ANYEXT %2
- ; CHECK: %14(s32) = G_SEXT %3
+ ; CHECK: %12:_(s32) = G_ZEXT %1
+ ; CHECK: %13:_(s32) = G_ANYEXT %2
+ ; CHECK: %14:_(s32) = G_SEXT %3
%12(s32) = G_ZEXT %1
%13(s32) = G_ANYEXT %2
%14(s32) = G_SEXT %3
- ; CHECK: %15(s8) = G_ZEXT %1
- ; CHECK: %16(s16) = G_ANYEXT %2
+ ; CHECK: %15:_(s8) = G_ZEXT %1
+ ; CHECK: %16:_(s16) = G_ANYEXT %2
%15(s8) = G_ZEXT %1
%16(s16) = G_ANYEXT %2
- ; CHECK: %18(s64) = G_FPEXT %17
+ ; CHECK: %18:_(s64) = G_FPEXT %17
%17(s32) = G_TRUNC %0
%18(s64) = G_FPEXT %17
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir Tue Oct 24 11:04:54 2017
@@ -11,14 +11,14 @@ body: |
; value stored is forwarded directly from first load.
; CHECK-LABEL: name: test_extracts_1
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]](p0) = COPY %x2
- ; CHECK: [[LOAD:%[0-9]+]](s64) = G_LOAD [[COPY2]](p0) :: (load 16)
- ; CHECK: [[C:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[COPY2]], [[C]](s64)
- ; CHECK: [[LOAD1:%[0-9]+]](s64) = G_LOAD [[GEP]](p0) :: (load 16)
- ; CHECK: [[COPY3:%[0-9]+]](s64) = COPY [[LOAD]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(p0) = COPY %x2
+ ; CHECK: [[LOAD:%[0-9]+]]:_(s64) = G_LOAD [[COPY2]](p0) :: (load 16)
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[COPY2]], [[C]](s64)
+ ; CHECK: [[LOAD1:%[0-9]+]]:_(s64) = G_LOAD [[GEP]](p0) :: (load 16)
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s64) = COPY [[LOAD]](s64)
; CHECK: G_STORE [[COPY3]](s64), [[COPY2]](p0) :: (store 8)
; CHECK: RET_ReallyLR
%0:_(s64) = COPY %x0
@@ -38,16 +38,16 @@ body: |
; Low extraction wipes takes whole low register. High extraction is real.
; CHECK-LABEL: name: test_extracts_2
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]](p0) = COPY %x2
- ; CHECK: [[LOAD:%[0-9]+]](s64) = G_LOAD [[COPY2]](p0) :: (load 16)
- ; CHECK: [[C:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[COPY2]], [[C]](s64)
- ; CHECK: [[LOAD1:%[0-9]+]](s64) = G_LOAD [[GEP]](p0) :: (load 16)
- ; CHECK: [[COPY3:%[0-9]+]](s64) = COPY [[LOAD]](s64)
- ; CHECK: [[EXTRACT:%[0-9]+]](s32) = G_EXTRACT [[LOAD1]](s64), 0
- ; CHECK: [[COPY4:%[0-9]+]](s32) = COPY [[EXTRACT]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(p0) = COPY %x2
+ ; CHECK: [[LOAD:%[0-9]+]]:_(s64) = G_LOAD [[COPY2]](p0) :: (load 16)
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[COPY2]], [[C]](s64)
+ ; CHECK: [[LOAD1:%[0-9]+]]:_(s64) = G_LOAD [[GEP]](p0) :: (load 16)
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s64) = COPY [[LOAD]](s64)
+ ; CHECK: [[EXTRACT:%[0-9]+]]:_(s32) = G_EXTRACT [[LOAD1]](s64), 0
+ ; CHECK: [[COPY4:%[0-9]+]]:_(s32) = COPY [[EXTRACT]](s32)
; CHECK: G_STORE [[COPY3]](s64), [[COPY2]](p0) :: (store 8)
; CHECK: G_STORE [[COPY4]](s32), [[COPY2]](p0) :: (store 4)
; CHECK: RET_ReallyLR
@@ -70,11 +70,11 @@ body: |
; CHECK-LABEL: name: test_extracts_3
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[EXTRACT:%[0-9]+]](s32) = G_EXTRACT [[COPY]](s64), 32
- ; CHECK: [[EXTRACT1:%[0-9]+]](s32) = G_EXTRACT [[COPY1]](s64), 0
- ; CHECK: [[MV:%[0-9]+]](s64) = G_MERGE_VALUES [[EXTRACT]](s32), [[EXTRACT1]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[EXTRACT:%[0-9]+]]:_(s32) = G_EXTRACT [[COPY]](s64), 32
+ ; CHECK: [[EXTRACT1:%[0-9]+]]:_(s32) = G_EXTRACT [[COPY1]](s64), 0
+ ; CHECK: [[MV:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[EXTRACT]](s32), [[EXTRACT1]](s32)
; CHECK: RET_ReallyLR
%0:_(s64) = COPY %x0
%1:_(s64) = COPY %x1
@@ -91,10 +91,10 @@ body: |
; CHECK-LABEL: name: test_extracts_4
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[EXTRACT:%[0-9]+]](s32) = G_EXTRACT [[COPY]](s64), 32
- ; CHECK: [[COPY2:%[0-9]+]](s32) = COPY [[EXTRACT]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[EXTRACT:%[0-9]+]]:_(s32) = G_EXTRACT [[COPY]](s64), 32
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY [[EXTRACT]](s32)
; CHECK: RET_ReallyLR
%0:_(s64) = COPY %x0
%1:_(s64) = COPY %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fcmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fcmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fcmp.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fcmp.mir Tue Oct 24 11:04:54 2017
@@ -29,13 +29,13 @@ body: |
%2(s32) = G_TRUNC %0
%3(s32) = G_TRUNC %1
- ; CHECK: [[CMP1:%[0-9]+]](s32) = G_FCMP floatpred(oge), %0(s64), %1
- ; CHECK: [[TRUNC1:%[0-9]+]](s1) = G_TRUNC [[CMP1]]
+ ; CHECK: [[CMP1:%[0-9]+]]:_(s32) = G_FCMP floatpred(oge), %0(s64), %1
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s1) = G_TRUNC [[CMP1]]
%4(s32) = G_FCMP floatpred(oge), %0, %1
%6(s1) = G_TRUNC %4(s32)
- ; CHECK: [[CMP2:%[0-9]+]](s32) = G_FCMP floatpred(uno), %2(s32), %3
- ; CHECK: [[TRUNC2:%[0-9]+]](s1) = G_TRUNC [[CMP2]]
+ ; CHECK: [[CMP2:%[0-9]+]]:_(s32) = G_FCMP floatpred(uno), %2(s32), %3
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[CMP2]]
%5(s32) = G_FCMP floatpred(uno), %2, %3
%7(s1) = G_TRUNC %5(s32)
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fneg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fneg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fneg.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fneg.mir Tue Oct 24 11:04:54 2017
@@ -22,9 +22,9 @@ body: |
bb.1:
liveins: %s0
; CHECK-LABEL: name: test_fneg_f32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float -0.000000e+00
- ; CHECK: [[FSUB:%[0-9]+]](s32) = G_FSUB [[C]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %s0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float -0.000000e+00
+ ; CHECK: [[FSUB:%[0-9]+]]:_(s32) = G_FSUB [[C]], [[COPY]]
; CHECK: %s0 = COPY [[FSUB]](s32)
%0(s32) = COPY %s0
%1(s32) = G_FNEG %0
@@ -39,9 +39,9 @@ body: |
bb.1:
liveins: %d0
; CHECK-LABEL: name: test_fneg_f64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %d0
- ; CHECK: [[C:%[0-9]+]](s64) = G_FCONSTANT double -0.000000e+00
- ; CHECK: [[FSUB:%[0-9]+]](s64) = G_FSUB [[C]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %d0
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_FCONSTANT double -0.000000e+00
+ ; CHECK: [[FSUB:%[0-9]+]]:_(s64) = G_FSUB [[C]], [[COPY]]
; CHECK: %d0 = COPY [[FSUB]](s64)
%0(s64) = COPY %d0
%1(s64) = G_FNEG %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-fptoi.mir Tue Oct 24 11:04:54 2017
@@ -31,8 +31,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptosi_s32_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOSI:%[0-9]+]](s32) = G_FPTOSI [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s32) = G_FPTOSI [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s32) = G_FPTOSI %0
...
@@ -43,8 +43,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptoui_s32_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s32) = G_FPTOUI [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s32) = G_FPTOUI %0
...
@@ -55,8 +55,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptosi_s32_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOSI:%[0-9]+]](s32) = G_FPTOSI [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s32) = G_FPTOSI [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s32) = G_FPTOSI %0
...
@@ -67,8 +67,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptoui_s32_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s32) = G_FPTOUI [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s32) = G_FPTOUI %0
...
@@ -79,8 +79,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptosi_s64_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOSI:%[0-9]+]](s64) = G_FPTOSI [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s64) = G_FPTOSI [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s64) = G_FPTOSI %0
...
@@ -91,8 +91,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptoui_s64_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOUI:%[0-9]+]](s64) = G_FPTOUI [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s64) = G_FPTOUI [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s64) = G_FPTOUI %0
...
@@ -103,8 +103,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptosi_s64_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOSI:%[0-9]+]](s64) = G_FPTOSI [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s64) = G_FPTOSI [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s64) = G_FPTOSI %0
...
@@ -115,8 +115,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptoui_s64_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOUI:%[0-9]+]](s64) = G_FPTOUI [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s64) = G_FPTOUI [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s64) = G_FPTOUI %0
...
@@ -129,9 +129,9 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptosi_s1_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOSI:%[0-9]+]](s32) = G_FPTOSI [[COPY]](s32)
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[FPTOSI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s32) = G_FPTOSI [[COPY]](s32)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[FPTOSI]](s32)
%0:_(s32) = COPY %w0
%1:_(s1) = G_FPTOSI %0
...
@@ -142,9 +142,9 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptoui_s1_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s32)
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[FPTOUI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s32) = G_FPTOUI [[COPY]](s32)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[FPTOUI]](s32)
%0:_(s32) = COPY %w0
%1:_(s1) = G_FPTOUI %0
...
@@ -155,9 +155,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptosi_s8_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOSI:%[0-9]+]](s32) = G_FPTOSI [[COPY]](s64)
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[FPTOSI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s32) = G_FPTOSI [[COPY]](s64)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[FPTOSI]](s32)
%0:_(s64) = COPY %x0
%1:_(s8) = G_FPTOSI %0
...
@@ -168,9 +168,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_fptoui_s8_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s64)
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[FPTOUI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s32) = G_FPTOUI [[COPY]](s64)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[FPTOUI]](s32)
%0:_(s64) = COPY %x0
%1:_(s8) = G_FPTOUI %0
...
@@ -181,9 +181,9 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptosi_s16_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOSI:%[0-9]+]](s32) = G_FPTOSI [[COPY]](s32)
- ; CHECK: [[TRUNC:%[0-9]+]](s16) = G_TRUNC [[FPTOSI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:_(s32) = G_FPTOSI [[COPY]](s32)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s16) = G_TRUNC [[FPTOSI]](s32)
%0:_(s32) = COPY %w0
%1:_(s16) = G_FPTOSI %0
...
@@ -194,9 +194,9 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_fptoui_s16_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s32)
- ; CHECK: [[TRUNC:%[0-9]+]](s16) = G_TRUNC [[FPTOUI]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:_(s32) = G_FPTOUI [[COPY]](s32)
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s16) = G_TRUNC [[FPTOUI]](s32)
%0:_(s32) = COPY %w0
%1:_(s16) = G_FPTOUI %0
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-gep.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-gep.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-gep.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-gep.mir Tue Oct 24 11:04:54 2017
@@ -22,13 +22,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_gep_small
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[C:%[0-9]+]](s64) = G_CONSTANT i64 56
- ; CHECK: [[COPY2:%[0-9]+]](s64) = COPY [[COPY1]](s64)
- ; CHECK: [[SHL:%[0-9]+]](s64) = G_SHL [[COPY2]], [[C]]
- ; CHECK: [[ASHR:%[0-9]+]](s64) = G_ASHR [[SHL]], [[C]]
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[COPY]], [[ASHR]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 56
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY [[COPY1]](s64)
+ ; CHECK: [[SHL:%[0-9]+]]:_(s64) = G_SHL [[COPY2]], [[C]]
+ ; CHECK: [[ASHR:%[0-9]+]]:_(s64) = G_ASHR [[SHL]], [[C]]
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[COPY]], [[ASHR]](s64)
; CHECK: %x0 = COPY [[GEP]](p0)
%0(p0) = COPY %x0
%1(s64) = COPY %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-ignore-non-generic.mir Tue Oct 24 11:04:54 2017
@@ -17,7 +17,7 @@ body: |
liveins: %x0
; CHECK-LABEL: name: test_copy
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
; CHECK: %x0 = COPY [[COPY]](s64)
%0(s64) = COPY %x0
%x0 = COPY %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir Tue Oct 24 11:04:54 2017
@@ -21,8 +21,8 @@ body: |
; forwarded to the G_STORE. Hi part is unchanged so (split) G_LOAD gets
; forwarded.
; CHECK-LABEL: name: test_inserts_1
- ; CHECK: [[LO:%[0-9]+]](s64) = G_LOAD
- ; CHECK: [[HI:%[0-9]+]](s64) = G_LOAD
+ ; CHECK: [[LO:%[0-9]+]]:_(s64) = G_LOAD
+ ; CHECK: [[HI:%[0-9]+]]:_(s64) = G_LOAD
; CHECK: G_STORE %0(s64)
; CHECK: G_STORE [[HI]]
%0:_(s64) = COPY %x0
@@ -43,9 +43,9 @@ body: |
; Low insertion wipes out the old register entirely, so %0 gets forwarded
; to the G_STORE again. Second insertion is real.
; CHECK-LABEL: name: test_inserts_2
- ; CHECK: [[LO:%[0-9]+]](s64) = G_LOAD
- ; CHECK: [[HI:%[0-9]+]](s64) = G_LOAD
- ; CHECK: [[NEWHI:%[0-9]+]](s64) = G_INSERT [[HI]], %1(s32), 0
+ ; CHECK: [[LO:%[0-9]+]]:_(s64) = G_LOAD
+ ; CHECK: [[HI:%[0-9]+]]:_(s64) = G_LOAD
+ ; CHECK: [[NEWHI:%[0-9]+]]:_(s64) = G_INSERT [[HI]], %1(s32), 0
; CHECK: G_STORE %0(s64)
; CHECK: G_STORE [[NEWHI]]
%0:_(s64) = COPY %x0
@@ -68,9 +68,9 @@ body: |
; certainly better than the alternative of directly forwarding the value
; which would cause a nasty type mismatch.
; CHECK-LABEL: name: test_inserts_3
- ; CHECK: [[LO:%[0-9]+]](s64) = G_LOAD
- ; CHECK: [[HI:%[0-9]+]](s64) = G_LOAD
- ; CHECK: [[NEWLO:%[0-9]+]](s64) = G_PTRTOINT %0(p0)
+ ; CHECK: [[LO:%[0-9]+]]:_(s64) = G_LOAD
+ ; CHECK: [[HI:%[0-9]+]]:_(s64) = G_LOAD
+ ; CHECK: [[NEWLO:%[0-9]+]]:_(s64) = G_PTRTOINT %0(p0)
; CHECK: G_STORE [[NEWLO]](s64)
; CHECK: G_STORE [[HI]]
%0:_(p0) = COPY %x0
@@ -90,9 +90,9 @@ body: |
; A narrow insert gets surrounded by a G_ANYEXT/G_TRUNC pair.
; CHECK-LABEL: name: test_inserts_4
- ; CHECK: [[VALEXT:%[0-9]+]](s32) = COPY %2(s32)
- ; CHECK: [[VAL:%[0-9]+]](s32) = G_INSERT [[VALEXT]], %1(s1), 0
- ; CHECK: %5(s8) = G_TRUNC [[VAL]](s32)
+ ; CHECK: [[VALEXT:%[0-9]+]]:_(s32) = COPY %2(s32)
+ ; CHECK: [[VAL:%[0-9]+]]:_(s32) = G_INSERT [[VALEXT]], %1(s1), 0
+ ; CHECK: %5:_(s8) = G_TRUNC [[VAL]](s32)
%4:_(s32) = COPY %w0
%0:_(s1) = G_TRUNC %4
%5:_(s32) = COPY %w1
@@ -111,11 +111,11 @@ body: |
; CHECK-LABEL: name: test_inserts_5
- ; CHECK: [[INS_LO:%[0-9]+]](s32) = G_EXTRACT %2(s64), 0
- ; CHECK: [[VAL_LO:%[0-9]+]](s64) = G_INSERT %0, [[INS_LO]](s32), 32
- ; CHECK: [[INS_HI:%[0-9]+]](s32) = G_EXTRACT %2(s64), 32
- ; CHECK: [[VAL_HI:%[0-9]+]](s64) = G_INSERT %1, [[INS_HI]](s32), 0
- ; CHECK: %4(s128) = G_MERGE_VALUES [[VAL_LO]](s64), [[VAL_HI]](s64)
+ ; CHECK: [[INS_LO:%[0-9]+]]:_(s32) = G_EXTRACT %2(s64), 0
+ ; CHECK: [[VAL_LO:%[0-9]+]]:_(s64) = G_INSERT %0, [[INS_LO]](s32), 32
+ ; CHECK: [[INS_HI:%[0-9]+]]:_(s32) = G_EXTRACT %2(s64), 32
+ ; CHECK: [[VAL_HI:%[0-9]+]]:_(s64) = G_INSERT %1, [[INS_HI]](s32), 0
+ ; CHECK: %4:_(s128) = G_MERGE_VALUES [[VAL_LO]](s64), [[VAL_HI]](s64)
%0:_(s64) = COPY %x0
%1:_(s64) = COPY %x1
%2:_(s64) = COPY %x2
@@ -132,8 +132,8 @@ body: |
; CHECK-LABEL: name: test_inserts_6
- ; CHECK: [[VAL_LO:%[0-9]+]](s64) = G_INSERT %0, %2(s32), 32
- ; CHECK: %4(s128) = G_MERGE_VALUES [[VAL_LO]](s64), %1(s64)
+ ; CHECK: [[VAL_LO:%[0-9]+]]:_(s64) = G_INSERT %0, %2(s32), 32
+ ; CHECK: %4:_(s128) = G_MERGE_VALUES [[VAL_LO]](s64), %1(s64)
%0:_(s64) = COPY %x0
%1:_(s64) = COPY %x1
%2:_(s32) = COPY %w2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-itofp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-itofp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-itofp.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-itofp.mir Tue Oct 24 11:04:54 2017
@@ -31,8 +31,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s32_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SITOFP:%[0-9]+]](s32) = G_SITOFP [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s32) = G_SITOFP [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s32) = G_SITOFP %0
...
@@ -43,8 +43,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_uitofp_s32_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[UITOFP:%[0-9]+]](s32) = G_UITOFP [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s32) = G_UITOFP [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s32) = G_UITOFP %0
...
@@ -55,8 +55,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_sitofp_s32_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[SITOFP:%[0-9]+]](s32) = G_SITOFP [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s32) = G_SITOFP [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s32) = G_SITOFP %0
...
@@ -67,8 +67,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_uitofp_s32_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[UITOFP:%[0-9]+]](s32) = G_UITOFP [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s32) = G_UITOFP [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s32) = G_UITOFP %0
...
@@ -79,8 +79,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s64_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SITOFP:%[0-9]+]](s64) = G_SITOFP [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s64) = G_SITOFP [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s64) = G_SITOFP %0
...
@@ -91,8 +91,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_uitofp_s64_s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[UITOFP:%[0-9]+]](s64) = G_UITOFP [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s64) = G_UITOFP [[COPY]](s32)
%0:_(s32) = COPY %w0
%1:_(s64) = G_UITOFP %0
...
@@ -103,8 +103,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_sitofp_s64_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[SITOFP:%[0-9]+]](s64) = G_SITOFP [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s64) = G_SITOFP [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s64) = G_SITOFP %0
...
@@ -115,8 +115,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_uitofp_s64_s64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[UITOFP:%[0-9]+]](s64) = G_UITOFP [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s64) = G_UITOFP [[COPY]](s64)
%0:_(s64) = COPY %x0
%1:_(s64) = G_UITOFP %0
...
@@ -128,12 +128,12 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s32_s1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 31
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[SHL:%[0-9]+]](s32) = G_SHL [[COPY1]], [[C]]
- ; CHECK: [[ASHR:%[0-9]+]](s32) = G_ASHR [[SHL]], [[C]]
- ; CHECK: [[SITOFP:%[0-9]+]](s32) = G_SITOFP [[ASHR]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 31
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[COPY1]], [[C]]
+ ; CHECK: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SHL]], [[C]]
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s32) = G_SITOFP [[ASHR]](s32)
%0:_(s32) = COPY %w0
%1:_(s1) = G_TRUNC %0
%2:_(s32) = G_SITOFP %1
@@ -145,11 +145,11 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_uitofp_s32_s1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 1
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[COPY1]], [[C]]
- ; CHECK: [[UITOFP:%[0-9]+]](s32) = G_UITOFP [[AND]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C]]
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s32) = G_UITOFP [[AND]](s32)
%0:_(s32) = COPY %w0
%1:_(s1) = G_TRUNC %0
%2:_(s32) = G_UITOFP %1
@@ -161,12 +161,12 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s64_s8
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 24
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[SHL:%[0-9]+]](s32) = G_SHL [[COPY1]], [[C]]
- ; CHECK: [[ASHR:%[0-9]+]](s32) = G_ASHR [[SHL]], [[C]]
- ; CHECK: [[SITOFP:%[0-9]+]](s64) = G_SITOFP [[ASHR]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[COPY1]], [[C]]
+ ; CHECK: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SHL]], [[C]]
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s64) = G_SITOFP [[ASHR]](s32)
%0:_(s32) = COPY %w0
%1:_(s8) = G_TRUNC %0
%2:_(s64) = G_SITOFP %1
@@ -178,11 +178,11 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_uitofp_s64_s8
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[COPY1]], [[C]]
- ; CHECK: [[UITOFP:%[0-9]+]](s64) = G_UITOFP [[AND]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C]]
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s64) = G_UITOFP [[AND]](s32)
%0:_(s32) = COPY %w0
%1:_(s8) = G_TRUNC %0
%2:_(s64) = G_UITOFP %1
@@ -194,12 +194,12 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s32_s16
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 16
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[SHL:%[0-9]+]](s32) = G_SHL [[COPY1]], [[C]]
- ; CHECK: [[ASHR:%[0-9]+]](s32) = G_ASHR [[SHL]], [[C]]
- ; CHECK: [[SITOFP:%[0-9]+]](s32) = G_SITOFP [[ASHR]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[COPY1]], [[C]]
+ ; CHECK: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SHL]], [[C]]
+ ; CHECK: [[SITOFP:%[0-9]+]]:_(s32) = G_SITOFP [[ASHR]](s32)
%0:_(s32) = COPY %w0
%1:_(s16) = G_TRUNC %0
%2:_(s32) = G_SITOFP %1
@@ -211,11 +211,11 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_uitofp_s32_s16
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 65535
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY [[COPY]](s32)
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[COPY1]], [[C]]
- ; CHECK: [[UITOFP:%[0-9]+]](s32) = G_UITOFP [[AND]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C]]
+ ; CHECK: [[UITOFP:%[0-9]+]]:_(s32) = G_UITOFP [[AND]](s32)
%0:_(s32) = COPY %w0
%1:_(s16) = G_TRUNC %0
%2:_(s32) = G_UITOFP %1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir Tue Oct 24 11:04:54 2017
@@ -31,33 +31,33 @@ body: |
; CHECK-LABEL: name: test_load
%0(p0) = COPY %x0
- ; CHECK: [[BIT8:%[0-9]+]](s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
- ; CHECK: %1(s1) = G_TRUNC [[BIT8]]
+ ; CHECK: [[BIT8:%[0-9]+]]:_(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
+ ; CHECK: %1:_(s1) = G_TRUNC [[BIT8]]
%1(s1) = G_LOAD %0 :: (load 1 from %ir.addr)
- ; CHECK: %2(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
+ ; CHECK: %2:_(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
%2(s8) = G_LOAD %0 :: (load 1 from %ir.addr)
- ; CHECK: %3(s16) = G_LOAD %0(p0) :: (load 2 from %ir.addr)
+ ; CHECK: %3:_(s16) = G_LOAD %0(p0) :: (load 2 from %ir.addr)
%3(s16) = G_LOAD %0 :: (load 2 from %ir.addr)
- ; CHECK: %4(s32) = G_LOAD %0(p0) :: (load 4 from %ir.addr)
+ ; CHECK: %4:_(s32) = G_LOAD %0(p0) :: (load 4 from %ir.addr)
%4(s32) = G_LOAD %0 :: (load 4 from %ir.addr)
- ; CHECK: %5(s64) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
+ ; CHECK: %5:_(s64) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
%5(s64) = G_LOAD %0 :: (load 8 from %ir.addr)
- ; CHECK: %6(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
+ ; CHECK: %6:_(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
%6(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
- ; CHECK: %7(<2 x s32>) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
+ ; CHECK: %7:_(<2 x s32>) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
%7(<2 x s32>) = G_LOAD %0(p0) :: (load 8 from %ir.addr)
- ; CHECK: [[LOAD0:%[0-9]+]](s64) = G_LOAD %0(p0) :: (load 16 from %ir.addr)
- ; CHECK: [[OFFSET1:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[GEP1:%[0-9]+]](p0) = G_GEP %0, [[OFFSET1]](s64)
- ; CHECK: [[LOAD1:%[0-9]+]](s64) = G_LOAD [[GEP1]](p0) :: (load 16 from %ir.addr)
- ; CHECK: %8(s128) = G_MERGE_VALUES [[LOAD0]](s64), [[LOAD1]](s64)
+ ; CHECK: [[LOAD0:%[0-9]+]]:_(s64) = G_LOAD %0(p0) :: (load 16 from %ir.addr)
+ ; CHECK: [[OFFSET1:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[GEP1:%[0-9]+]]:_(p0) = G_GEP %0, [[OFFSET1]](s64)
+ ; CHECK: [[LOAD1:%[0-9]+]]:_(s64) = G_LOAD [[GEP1]](p0) :: (load 16 from %ir.addr)
+ ; CHECK: %8:_(s128) = G_MERGE_VALUES [[LOAD0]](s64), [[LOAD1]](s64)
%8(s128) = G_LOAD %0(p0) :: (load 16 from %ir.addr)
...
@@ -80,11 +80,11 @@ body: |
%0(p0) = COPY %x0
%1(s32) = COPY %w1
- ; CHECK: [[C1:%.*]](s32) = G_CONSTANT i32 1
- ; CHECK: [[B:%.*]](s32) = COPY %1(s32)
- ; CHECK: [[COPY_C1:%.*]](s32) = COPY [[C1]]
- ; CHECK: [[AND:%.*]](s32) = G_AND [[B]], [[COPY_C1]]
- ; CHECK: [[BIT8:%.*]](s8) = G_TRUNC [[AND]]
+ ; CHECK: [[C1:%.*]]:_(s32) = G_CONSTANT i32 1
+ ; CHECK: [[B:%.*]]:_(s32) = COPY %1(s32)
+ ; CHECK: [[COPY_C1:%.*]]:_(s32) = COPY [[C1]]
+ ; CHECK: [[AND:%.*]]:_(s32) = G_AND [[B]], [[COPY_C1]]
+ ; CHECK: [[BIT8:%.*]]:_(s8) = G_TRUNC [[AND]]
; CHECK: G_STORE [[BIT8]](s8), %0(p0) :: (store 1 into %ir.addr)
@@ -110,8 +110,8 @@ body: |
G_STORE %0(p0), %0(p0) :: (store 8 into %ir.addr)
; CHECK: G_STORE %5(s64), %0(p0) :: (store 16 into %ir.addr)
- ; CHECK: [[OFFSET1:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[GEP1:%[0-9]+]](p0) = G_GEP %0, [[OFFSET1]](s64)
+ ; CHECK: [[OFFSET1:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[GEP1:%[0-9]+]]:_(p0) = G_GEP %0, [[OFFSET1]](s64)
; CHECK: G_STORE %6(s64), [[GEP1]](p0) :: (store 16 into %ir.addr)
%6(s64) = G_PTRTOINT %0(p0)
%7(s128) = G_MERGE_VALUES %5, %6
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir Tue Oct 24 11:04:54 2017
@@ -25,13 +25,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_mul_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[MUL:%[0-9]+]](s32) = G_MUL [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s8) = G_TRUNC [[MUL]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC2]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[MUL:%[0-9]+]]:_(s32) = G_MUL [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[MUL]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC2]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -50,13 +50,13 @@ body: |
liveins: %x0, %x1, %w2, %w3
; CHECK-LABEL: name: test_mul_overflow
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[MUL:%[0-9]+]](s64) = G_MUL [[COPY]], [[COPY1]]
- ; CHECK: [[SMULH:%[0-9]+]](s64) = G_SMULH [[COPY]], [[COPY1]]
- ; CHECK: [[C:%[0-9]+]](s64) = G_CONSTANT i64 0
- ; CHECK: [[ICMP:%[0-9]+]](s32) = G_ICMP intpred(ne), [[SMULH]](s64), [[C]]
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[ICMP]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[MUL:%[0-9]+]]:_(s64) = G_MUL [[COPY]], [[COPY1]]
+ ; CHECK: [[SMULH:%[0-9]+]]:_(s64) = G_SMULH [[COPY]], [[COPY1]]
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 0
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ne), [[SMULH]](s64), [[C]]
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[ICMP]](s32)
%0:_(s64) = COPY %x0
%1:_(s64) = COPY %x1
%2:_(s64), %3:_(s1) = G_SMULO %0, %1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-nonpowerof2eltsvec.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-nonpowerof2eltsvec.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-nonpowerof2eltsvec.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-nonpowerof2eltsvec.mir Tue Oct 24 11:04:54 2017
@@ -19,10 +19,10 @@ body: |
bb.0:
liveins: %w0, %w1, %w2
; CHECK-LABEL: name: test_legalize_merge_v3s32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]](s32) = COPY %w2
- ; CHECK: [[MV:%[0-9]+]](<3 x s32>) = G_MERGE_VALUES [[COPY]](s32), [[COPY1]](s32), [[COPY2]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY %w2
+ ; CHECK: [[MV:%[0-9]+]]:_(<3 x s32>) = G_MERGE_VALUES [[COPY]](s32), [[COPY1]](s32), [[COPY2]](s32)
%0(s32) = COPY %w0
%1(s32) = COPY %w1
%2(s32) = COPY %w2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-or.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-or.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-or.mir Tue Oct 24 11:04:54 2017
@@ -15,13 +15,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_or_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[OR:%[0-9]+]](s32) = G_OR [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s8) = G_TRUNC [[OR]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC2]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[OR:%[0-9]+]]:_(s32) = G_OR [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[OR]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC2]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -52,12 +52,12 @@ body: |
; copying the results of the G_OR ops.
; CHECK-LABEL: name: test_big_scalar_power_of_2
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[COPY2:%[0-9]+]](s64) = COPY %x2
- ; CHECK: [[COPY3:%[0-9]+]](s64) = COPY %x3
- ; CHECK: [[OR:%[0-9]+]](s64) = G_OR [[COPY]], [[COPY2]]
- ; CHECK: [[OR1:%[0-9]+]](s64) = G_OR [[COPY1]], [[COPY3]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY %x2
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s64) = COPY %x3
+ ; CHECK: [[OR:%[0-9]+]]:_(s64) = G_OR [[COPY]], [[COPY2]]
+ ; CHECK: [[OR1:%[0-9]+]]:_(s64) = G_OR [[COPY1]], [[COPY3]]
; CHECK: %x0 = COPY [[OR]](s64)
; CHECK: %x1 = COPY [[OR1]](s64)
; CHECK: RET_ReallyLR implicit %x0, implicit %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir Tue Oct 24 11:04:54 2017
@@ -4,7 +4,7 @@
source_filename = "/tmp/test.ll"
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
target triple = "aarch64-unknown-unknown"
-
+
define i32 @legalize_phi(i32 %argc) {
entry:
ret i32 0
@@ -48,7 +48,7 @@ legalized: false
regBankSelected: false
selected: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
- { id: 2, class: _, preferred-register: '' }
@@ -60,26 +60,26 @@ registers:
- { id: 8, class: _, preferred-register: '' }
- { id: 9, class: _, preferred-register: '' }
- { id: 10, class: _, preferred-register: '' }
-liveins:
+liveins:
body: |
bb.0:
; Test that we insert legalization artifacts(Truncs here) into the correct BBs
; while legalizing the G_PHI to s16.
; CHECK-LABEL: name: legalize_phi
; CHECK-LABEL: bb.1:
- ; CHECK: [[ADD_BB1:%.*]](s32) = G_ADD
- ; CHECK: [[RES_BB1:%.*]](s16) = G_TRUNC [[ADD_BB1]]
+ ; CHECK: [[ADD_BB1:%.*]]:_(s32) = G_ADD
+ ; CHECK: [[RES_BB1:%.*]]:_(s16) = G_TRUNC [[ADD_BB1]]
; CHECK-LABEL: bb.2:
- ; CHECK: [[ADD_BB2:%.*]](s32) = G_ADD
- ; CHECK: [[RES_BB2:%.*]](s16) = G_TRUNC [[ADD_BB2]]
+ ; CHECK: [[ADD_BB2:%.*]]:_(s32) = G_ADD
+ ; CHECK: [[RES_BB2:%.*]]:_(s16) = G_TRUNC [[ADD_BB2]]
; CHECK-LABEL: bb.3:
- ; CHECK: [[RES_PHI:%.*]](s16) = G_PHI [[RES_BB1]](s16), %bb.1, [[RES_BB2]](s16), %bb.2
- ; CHECK: [[RES:%.*]](s1) = G_TRUNC [[RES_PHI]]
+ ; CHECK: [[RES_PHI:%.*]]:_(s16) = G_PHI [[RES_BB1]](s16), %bb.1, [[RES_BB2]](s16), %bb.2
+ ; CHECK: [[RES:%.*]]:_(s1) = G_TRUNC [[RES_PHI]]
successors: %bb.1(0x40000000), %bb.2(0x40000000)
liveins: %w0
-
+
%0(s32) = COPY %w0
%1(s32) = G_CONSTANT i32 0
%3(s32) = G_CONSTANT i32 1
@@ -87,20 +87,20 @@ body: |
%2(s1) = G_ICMP intpred(ugt), %0(s32), %1
G_BRCOND %2(s1), %bb.1
G_BR %bb.2
-
+
bb.1:
successors: %bb.3(0x80000000)
-
+
%4(s32) = G_ADD %0, %3
%5(s1) = G_TRUNC %4(s32)
G_BR %bb.3
-
+
bb.2:
successors: %bb.3(0x80000000)
-
+
%7(s32) = G_ADD %0, %6
%8(s1) = G_TRUNC %7(s32)
-
+
bb.3:
%9(s1) = G_PHI %5(s1), %bb.1, %8(s1), %bb.2
%10(s32) = G_ZEXT %9(s1)
@@ -128,14 +128,14 @@ body: |
bb.1:
; CHECK-LABEL: name: legalize_phi_ptr
; CHECK-LABEL: bb.0:
- ; CHECK: [[A:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[B:%[0-9]+]](p0) = COPY %x1
- ; CHECK: [[CE:%[0-9]+]](s32) = COPY %w2
- ; CHECK: [[C:%[0-9]+]](s1) = G_TRUNC [[CE]]
+ ; CHECK: [[A:%[0-9]+]]:_(p0) = COPY %x0
+ ; CHECK: [[B:%[0-9]+]]:_(p0) = COPY %x1
+ ; CHECK: [[CE:%[0-9]+]]:_(s32) = COPY %w2
+ ; CHECK: [[C:%[0-9]+]]:_(s1) = G_TRUNC [[CE]]
; CHECK-LABEL: bb.1:
; CHECK-LABEL: bb.2:
- ; CHECK: %3(p0) = G_PHI [[A]](p0), %bb.0, [[B]](p0), %bb.1
+ ; CHECK: %3:_(p0) = G_PHI [[A]](p0), %bb.0, [[B]](p0), %bb.1
; CHECK: %x0 = COPY %3(p0)
successors: %bb.2, %bb.3
liveins: %w2, %x0, %x1
@@ -184,17 +184,17 @@ body: |
; Test that we properly legalize a phi with a predecessor that's empty
; CHECK-LABEL: name: legalize_phi_empty
; CHECK-LABEL: bb.0:
- ; CHECK: [[ENTRY_ADD:%.*]](s32) = G_ADD
+ ; CHECK: [[ENTRY_ADD:%.*]]:_(s32) = G_ADD
; CHECK-LABEL: bb.1:
- ; CHECK: [[ADD_BB1:%.*]](s32) = G_ADD
- ; CHECK: [[RES_BB1:%.*]](s16) = G_TRUNC [[ADD_BB1]]
+ ; CHECK: [[ADD_BB1:%.*]]:_(s32) = G_ADD
+ ; CHECK: [[RES_BB1:%.*]]:_(s16) = G_TRUNC [[ADD_BB1]]
; CHECK-LABEL: bb.2:
- ; CHECK: [[RES_BB2:%.*]](s16) = G_TRUNC [[ENTRY_ADD]]
+ ; CHECK: [[RES_BB2:%.*]]:_(s16) = G_TRUNC [[ENTRY_ADD]]
- ; CHECK: [[RES_PHI:%.*]](s16) = G_PHI [[RES_BB1]](s16), %bb.1, [[RES_BB2]](s16), %bb.2
- ; CHECK: [[RES:%.*]](s1) = G_TRUNC [[RES_PHI]]
+ ; CHECK: [[RES_PHI:%.*]]:_(s16) = G_PHI [[RES_BB1]](s16), %bb.1, [[RES_BB2]](s16), %bb.2
+ ; CHECK: [[RES:%.*]]:_(s1) = G_TRUNC [[RES_PHI]]
%0(s32) = COPY %w0
%1(s32) = G_CONSTANT i32 0
@@ -249,13 +249,13 @@ body: |
; Test that we properly legalize a phi that uses a value from the same BB
; CHECK-LABEL: name: legalize_phi_loop
; CHECK-LABEL: bb.0:
- ; CHECK: [[C0:%.*]](s32) = G_CONSTANT i32 0
- ; CHECK: [[RES_BB1:%.*]](s16) = G_TRUNC [[C0]]
+ ; CHECK: [[C0:%.*]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[RES_BB1:%.*]]:_(s16) = G_TRUNC [[C0]]
; CHECK-LABEL: bb.1:
- ; CHECK: [[RES_PHI:%.*]](s16) = G_PHI [[RES_BB1]](s16), %bb.0, [[RES_BB2:%.*]](s16), %bb.1
+ ; CHECK: [[RES_PHI:%.*]]:_(s16) = G_PHI [[RES_BB1]](s16), %bb.0, [[RES_BB2:%.*]](s16), %bb.1
; CHECK-NEXT: G_ANYEXT [[RES_PHI]]
- ; CHECK: [[RES_BB2]](s16) = G_ANYEXT
+ ; CHECK: [[RES_BB2]]:_(s16) = G_ANYEXT
%0(s32) = COPY %w0
%2(s8) = G_CONSTANT i8 1
%7(s8) = G_CONSTANT i8 0
@@ -297,13 +297,13 @@ body: |
; Test that we properly legalize a phi that uses itself
; CHECK-LABEL: name: legalize_phi_cycle
; CHECK-LABEL: bb.0:
- ; CHECK: [[C0:%.*]](s32) = G_CONSTANT i32 0
- ; CHECK: [[RES_BB1:%.*]](s16) = G_TRUNC [[C0]]
+ ; CHECK: [[C0:%.*]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[RES_BB1:%.*]]:_(s16) = G_TRUNC [[C0]]
; CHECK-LABEL: bb.1:
- ; CHECK: [[RES_PHI:%.*]](s16) = G_PHI [[RES_BB1]](s16), %bb.0, [[RES_BB2:%.*]](s16), %bb.1
+ ; CHECK: [[RES_PHI:%.*]]:_(s16) = G_PHI [[RES_BB1]](s16), %bb.0, [[RES_BB2:%.*]](s16), %bb.1
; CHECK-NEXT: G_TRUNC
- ; CHECK: [[RES_BB2]](s16) = COPY
+ ; CHECK: [[RES_BB2]]:_(s16) = COPY
%0(s32) = COPY %w0
%4(s8) = G_CONSTANT i8 0
@@ -354,21 +354,21 @@ body: |
; correct location (ie make sure G_PHIs are the first insts in the BB).
; CHECK-LABEL: name: legalize_phi_same_bb
; CHECK-LABEL: bb.0:
- ; CHECK: [[C42:%.*]](s32) = G_CONSTANT i32 42
- ; CHECK: [[ENTRY_ADD:%.*]](s32) = G_ADD
+ ; CHECK: [[C42:%.*]]:_(s32) = G_CONSTANT i32 42
+ ; CHECK: [[ENTRY_ADD:%.*]]:_(s32) = G_ADD
; CHECK-LABEL: bb.1:
- ; CHECK: [[BB1_ADD:%.*]](s32) = G_ADD
- ; CHECK: [[RES1_BB1:%.*]](s16) = G_TRUNC [[BB1_ADD]]
- ; CHECK: [[RES2_BB1:%.*]](s16) = G_TRUNC [[BB1_ADD]]
+ ; CHECK: [[BB1_ADD:%.*]]:_(s32) = G_ADD
+ ; CHECK: [[RES1_BB1:%.*]]:_(s16) = G_TRUNC [[BB1_ADD]]
+ ; CHECK: [[RES2_BB1:%.*]]:_(s16) = G_TRUNC [[BB1_ADD]]
; CHECK-LABEL: bb.2:
- ; CHECK: [[RES1_BB2:%.*]](s16) = G_TRUNC [[ENTRY_ADD]]
- ; CHECK: [[RES2_BB2:%.*]](s16) = G_TRUNC [[C42]]
+ ; CHECK: [[RES1_BB2:%.*]]:_(s16) = G_TRUNC [[ENTRY_ADD]]
+ ; CHECK: [[RES2_BB2:%.*]]:_(s16) = G_TRUNC [[C42]]
; CHECK-LABEL: bb.3:
- ; CHECK: [[RES1_PHI:%.*]](s16) = G_PHI [[RES1_BB1]](s16), %bb.1, [[RES1_BB2]](s16), %bb.2
- ; CHECK-NEXT: [[RES_PHI:%.*]](s16) = G_PHI [[RES2_BB1]](s16), %bb.1, [[RES2_BB2]](s16), %bb.2
+ ; CHECK: [[RES1_PHI:%.*]]:_(s16) = G_PHI [[RES1_BB1]](s16), %bb.1, [[RES1_BB2]](s16), %bb.2
+ ; CHECK-NEXT: [[RES_PHI:%.*]]:_(s16) = G_PHI [[RES2_BB1]](s16), %bb.1, [[RES2_BB2]](s16), %bb.2
; CHECK-NEXT: G_TRUNC
; CHECK-NEXT: G_TRUNC
@@ -438,19 +438,19 @@ body: |
; in different BBs.
; CHECK-LABEL: name: legalize_phi_diff_bb
; CHECK-LABEL: bb.0:
- ; CHECK: [[C44:%.*]](s32) = G_CONSTANT i32 44
- ; CHECK: [[C43:%.*]](s32) = G_CONSTANT i32 43
- ; CHECK: [[ENTRY_ADD:%.*]](s32) = G_ADD
- ; CHECK: [[RES_ENTRY:%.*]](s16) = G_TRUNC [[ENTRY_ADD]]
- ; CHECK: [[RES_ENTRY1:%.*]](s16) = G_TRUNC [[ENTRY_ADD]]
+ ; CHECK: [[C44:%.*]]:_(s32) = G_CONSTANT i32 44
+ ; CHECK: [[C43:%.*]]:_(s32) = G_CONSTANT i32 43
+ ; CHECK: [[ENTRY_ADD:%.*]]:_(s32) = G_ADD
+ ; CHECK: [[RES_ENTRY:%.*]]:_(s16) = G_TRUNC [[ENTRY_ADD]]
+ ; CHECK: [[RES_ENTRY1:%.*]]:_(s16) = G_TRUNC [[ENTRY_ADD]]
; CHECK-LABEL: bb.1:
- ; CHECK: [[RES1_PHI:%.*]](s16) = G_PHI [[RES_ENTRY]](s16), %bb.0, [[RES_BB1:%.*]](s16), %bb.1
- ; CHECK: [[RES_BB1:%.*]](s16) = G_TRUNC
- ; CHECK: [[RES_FOR_BB2:%.*]](s16) = COPY [[RES1_PHI]]
+ ; CHECK: [[RES1_PHI:%.*]]:_(s16) = G_PHI [[RES_ENTRY]](s16), %bb.0, [[RES_BB1:%.*]](s16), %bb.1
+ ; CHECK: [[RES_BB1:%.*]]:_(s16) = G_TRUNC
+ ; CHECK: [[RES_FOR_BB2:%.*]]:_(s16) = COPY [[RES1_PHI]]
; CHECK-LABEL: bb.2:
- ; CHECK: [[RES2_PHI:%.*]](s16) = G_PHI [[RES_FOR_BB2]](s16), %bb.1, [[RES_ENTRY1:%.*]](s16), %bb.0
+ ; CHECK: [[RES2_PHI:%.*]]:_(s16) = G_PHI [[RES_FOR_BB2]](s16), %bb.1, [[RES_ENTRY1:%.*]](s16), %bb.0
; CHECK-NEXT: G_TRUNC
%0(s32) = COPY %w0
@@ -483,4 +483,3 @@ body: |
RET_ReallyLR implicit %w0
...
-
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir Tue Oct 24 11:04:54 2017
@@ -26,13 +26,13 @@ body: |
; CHECK: %d0 = COPY %0
; CHECK: %d1 = COPY %1
; CHECK: BL $pow, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %d0, implicit %d1, implicit-def %d0
- ; CHECK: %4(s64) = COPY %d0
+ ; CHECK: %4:_(s64) = COPY %d0
%4:_(s64) = G_FPOW %0, %1
; CHECK: %s0 = COPY %2
; CHECK: %s1 = COPY %3
; CHECK: BL $powf, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %s0, implicit %s1, implicit-def %s0
- ; CHECK: %5(s32) = COPY %s0
+ ; CHECK: %5:_(s32) = COPY %s0
%5:_(s32) = G_FPOW %2, %3
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-rem.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-rem.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-rem.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-rem.mir Tue Oct 24 11:04:54 2017
@@ -32,9 +32,9 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_urem_64
- ; CHECK: [[QUOT:%[0-9]+]](s64) = G_UDIV %0, %1
- ; CHECK: [[PROD:%[0-9]+]](s64) = G_MUL [[QUOT]], %1
- ; CHECK: [[RES:%[0-9]+]](s64) = G_SUB %0, [[PROD]]
+ ; CHECK: [[QUOT:%[0-9]+]]:_(s64) = G_UDIV %0, %1
+ ; CHECK: [[PROD:%[0-9]+]]:_(s64) = G_MUL [[QUOT]], %1
+ ; CHECK: [[RES:%[0-9]+]]:_(s64) = G_SUB %0, [[PROD]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
%2(s64) = G_UREM %0, %1
@@ -53,11 +53,11 @@ body: |
bb.0.entry:
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_srem_32
- ; CHECK: [[T1:%.*]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[T2:%.*]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[DIV:%.*]](s32) = G_SDIV [[T1]], [[T2]]
- ; CHECK: [[MUL:%.*]](s32) = G_MUL [[DIV]], [[T2]]
- ; CHECK: [[RES:%.*]](s32) = G_SUB [[T1]], [[MUL]]
+ ; CHECK: [[T1:%.*]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[T2:%.*]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[DIV:%.*]]:_(s32) = G_SDIV [[T1]], [[T2]]
+ ; CHECK: [[MUL:%.*]]:_(s32) = G_MUL [[DIV]], [[T2]]
+ ; CHECK: [[RES:%.*]]:_(s32) = G_SUB [[T1]], [[MUL]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -79,22 +79,22 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_srem_8
- ; CHECK: [[C1:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[SRC1:%.*]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[SHL1:%.*]](s32) = G_SHL [[SRC1]], [[C1]]
- ; CHECK: [[LHS_SEXT:%.*]](s32) = G_ASHR [[SHL1]], [[C1]]
- ; CHECK: [[C2:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[SRC2:%.*]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[SHL2:%.*]](s32) = G_SHL [[SRC2]], [[C2]]
- ; CHECK: [[RHS_SEXT:%.*]](s32) = G_ASHR [[SHL2]], [[C2]]
- ; CHECK: [[SDIV:%.*]](s32) = G_SDIV [[LHS_SEXT]], [[RHS_SEXT]]
- ; CHECK: [[A:%.*]](s32) = COPY [[SDIV]]
- ; CHECK: [[SRC3:%.*]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[MUL:%.*]](s32) = G_MUL [[A]], [[SRC3]]
- ; CHECK: [[SRC4:%.*]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[SRC5:%.*]](s32) = COPY [[MUL]]
- ; CHECK: [[SUB:%.*]](s32) = G_SUB [[SRC4]], [[SRC5]]
- ; CHECK: [[RES:%.*]](s8) = G_TRUNC [[SUB]]
+ ; CHECK: [[C1:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[SRC1:%.*]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[SHL1:%.*]]:_(s32) = G_SHL [[SRC1]], [[C1]]
+ ; CHECK: [[LHS_SEXT:%.*]]:_(s32) = G_ASHR [[SHL1]], [[C1]]
+ ; CHECK: [[C2:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[SRC2:%.*]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[SHL2:%.*]]:_(s32) = G_SHL [[SRC2]], [[C2]]
+ ; CHECK: [[RHS_SEXT:%.*]]:_(s32) = G_ASHR [[SHL2]], [[C2]]
+ ; CHECK: [[SDIV:%.*]]:_(s32) = G_SDIV [[LHS_SEXT]], [[RHS_SEXT]]
+ ; CHECK: [[A:%.*]]:_(s32) = COPY [[SDIV]]
+ ; CHECK: [[SRC3:%.*]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[MUL:%.*]]:_(s32) = G_MUL [[A]], [[SRC3]]
+ ; CHECK: [[SRC4:%.*]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[SRC5:%.*]]:_(s32) = COPY [[MUL]]
+ ; CHECK: [[SUB:%.*]]:_(s32) = G_SUB [[SRC4]], [[SRC5]]
+ ; CHECK: [[RES:%.*]]:_(s8) = G_TRUNC [[SUB]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -119,7 +119,7 @@ body: |
; CHECK: %d0 = COPY %0
; CHECK: %d1 = COPY %1
; CHECK: BL $fmod, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %d0, implicit %d1, implicit-def %d0
- ; CHECK: [[RES:%.*]](s64) = COPY %d0
+ ; CHECK: [[RES:%.*]]:_(s64) = COPY %d0
%0(s64) = COPY %x0
%1(s64) = COPY %x1
%2(s64) = G_FREM %0, %1
@@ -127,7 +127,7 @@ body: |
; CHECK: %s0 = COPY %3
; CHECK: %s1 = COPY %4
; CHECK: BL $fmodf, csr_aarch64_aapcs, implicit-def %lr, implicit %sp, implicit %s0, implicit %s1, implicit-def %s0
- ; CHECK: [[RES:%.*]](s32) = COPY %s0
+ ; CHECK: [[RES:%.*]]:_(s32) = COPY %s0
%3(s32) = G_TRUNC %0
%4(s32) = G_TRUNC %1
%5(s32) = G_FREM %3, %4
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-shift.mir Tue Oct 24 11:04:54 2017
@@ -27,32 +27,32 @@ body: |
%2(s8) = G_TRUNC %0
%3(s8) = G_TRUNC %1
- ; CHECK: [[C1:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[SRC:%.*]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[SHL1:%.*]](s32) = G_SHL [[SRC]], [[C1]]
- ; CHECK: [[SEXT1:%.*]](s32) = G_ASHR [[SHL1]], [[C1]]
- ; CHECK: [[C2:%.*]](s32) = G_CONSTANT i32 24
- ; CHECK: [[SRC2:%.*]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[SHL2:%.*]](s32) = G_SHL [[SRC2]], [[C2]]
- ; CHECK: [[SEXT2:%.*]](s32) = G_ASHR [[SHL2]], [[C2]]
- ; CHECK: [[RES32:%[0-9]+]](s32) = G_ASHR [[SEXT1]], [[SEXT2]]
- ; CHECK: %4(s8) = G_TRUNC [[RES32]]
+ ; CHECK: [[C1:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[SRC:%.*]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[SHL1:%.*]]:_(s32) = G_SHL [[SRC]], [[C1]]
+ ; CHECK: [[SEXT1:%.*]]:_(s32) = G_ASHR [[SHL1]], [[C1]]
+ ; CHECK: [[C2:%.*]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[SRC2:%.*]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[SHL2:%.*]]:_(s32) = G_SHL [[SRC2]], [[C2]]
+ ; CHECK: [[SEXT2:%.*]]:_(s32) = G_ASHR [[SHL2]], [[C2]]
+ ; CHECK: [[RES32:%[0-9]+]]:_(s32) = G_ASHR [[SEXT1]], [[SEXT2]]
+ ; CHECK: %4:_(s8) = G_TRUNC [[RES32]]
%4(s8) = G_ASHR %2, %3
- ; CHECK: [[C1:%.*]](s32) = G_CONSTANT i32 255
- ; CHECK: [[SRC:%.*]](s32) = G_TRUNC %0(s64)
- ; CHECK: [[ZEXT:%.*]](s32) = G_AND [[SRC]], [[C1]]
- ; CHECK: [[C2:%.*]](s32) = G_CONSTANT i32 255
- ; CHECK: [[SRC2:%.*]](s32) = G_TRUNC %1(s64)
- ; CHECK: [[ZEXT2:%.*]](s32) = G_AND [[SRC2]], [[C2]]
- ; CHECK: [[RES32:%[0-9]+]](s32) = G_LSHR [[ZEXT]], [[ZEXT2]]
- ; CHECK: %5(s8) = G_TRUNC [[RES32]]
+ ; CHECK: [[C1:%.*]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[SRC:%.*]]:_(s32) = G_TRUNC %0(s64)
+ ; CHECK: [[ZEXT:%.*]]:_(s32) = G_AND [[SRC]], [[C1]]
+ ; CHECK: [[C2:%.*]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[SRC2:%.*]]:_(s32) = G_TRUNC %1(s64)
+ ; CHECK: [[ZEXT2:%.*]]:_(s32) = G_AND [[SRC2]], [[C2]]
+ ; CHECK: [[RES32:%[0-9]+]]:_(s32) = G_LSHR [[ZEXT]], [[ZEXT2]]
+ ; CHECK: %5:_(s8) = G_TRUNC [[RES32]]
%5(s8) = G_LSHR %2, %3
- ; CHECK: [[OP0:%.*]](s32) = G_TRUNC %0
- ; CHECK: [[OP1:%.*]](s32) = G_TRUNC %1
- ; CHECK: [[RES32:%.*]](s32) = G_SHL [[OP0]], [[OP1]]
- ; CHECK: [[RES:%.*]](s8) = G_TRUNC [[RES32]](s32)
+ ; CHECK: [[OP0:%.*]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[OP1:%.*]]:_(s32) = G_TRUNC %1
+ ; CHECK: [[RES32:%.*]]:_(s32) = G_SHL [[OP0]], [[OP1]]
+ ; CHECK: [[RES:%.*]]:_(s8) = G_TRUNC [[RES32]](s32)
%6(s8) = G_SHL %2, %3
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir Tue Oct 24 11:04:54 2017
@@ -45,8 +45,8 @@ body: |
%4(s32) = G_TRUNC %0
; CHECK-LABEL: name: test_simple
- ; CHECK: %5(p0) = G_INTTOPTR %0
- ; CHECK: %6(s64) = G_PTRTOINT %5
+ ; CHECK: %5:_(p0) = G_INTTOPTR %0
+ ; CHECK: %6:_(s64) = G_PTRTOINT %5
%5(p0) = G_INTTOPTR %0
%6(s64) = G_PTRTOINT %5
@@ -55,32 +55,32 @@ body: |
bb.1.next:
- ; CHECK: [[LHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
- ; CHECK: %7(s1) = G_TRUNC [[RES]](s32)
+ ; CHECK: [[LHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
+ ; CHECK: %7:_(s1) = G_TRUNC [[RES]](s32)
%7(s1) = G_SELECT %1, %1, %1
- ; CHECK: [[LHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
- ; CHECK: %8(s8) = G_TRUNC [[RES]](s32)
+ ; CHECK: [[LHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
+ ; CHECK: %8:_(s8) = G_TRUNC [[RES]](s32)
%8(s8) = G_SELECT %1, %2, %2
- ; CHECK: [[LHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RHS:%[0-9]+]](s32) = G_TRUNC %0
- ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
- ; CHECK: %9(s16) = G_TRUNC [[RES]](s32)
+ ; CHECK: [[LHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RHS:%[0-9]+]]:_(s32) = G_TRUNC %0
+ ; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SELECT %1(s1), [[LHS]], [[RHS]]
+ ; CHECK: %9:_(s16) = G_TRUNC [[RES]](s32)
%9(s16) = G_SELECT %1, %3, %3
%10(s32) = G_SELECT %1, %4, %4
%11(s64) = G_SELECT %1, %0, %0
- ; CHECK: %12(<2 x s32>) = G_BITCAST %0
- ; CHECK: %13(s64) = G_BITCAST %12
- ; CHECK: %14(s32) = G_BITCAST %10
- ; CHECK: %15(<4 x s8>) = G_BITCAST %0
- ; CHECK: %16(<2 x s16>) = G_BITCAST %0
+ ; CHECK: %12:_(<2 x s32>) = G_BITCAST %0
+ ; CHECK: %13:_(s64) = G_BITCAST %12
+ ; CHECK: %14:_(s32) = G_BITCAST %10
+ ; CHECK: %15:_(<4 x s8>) = G_BITCAST %0
+ ; CHECK: %16:_(<2 x s16>) = G_BITCAST %0
%12(<2 x s32>) = G_BITCAST %0
%13(s64) = G_BITCAST %12
%14(s32) = G_BITCAST %10
@@ -101,7 +101,7 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: bitcast128
; This is legal and shouldn't be changed.
- ; CHECK: %2(<2 x s64>) = G_BITCAST %3(s128)
+ ; CHECK: %2:_(<2 x s64>) = G_BITCAST %3(s128)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
%3(s128) = G_MERGE_VALUES %0(s64), %1(s64)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir Tue Oct 24 11:04:54 2017
@@ -24,13 +24,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_sub_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[SUB:%[0-9]+]](s32) = G_SUB [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s8) = G_TRUNC [[SUB]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC2]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[SUB:%[0-9]+]]:_(s32) = G_SUB [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[SUB]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC2]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-undef.mir Tue Oct 24 11:04:54 2017
@@ -7,10 +7,10 @@ registers:
body: |
bb.0.entry:
liveins:
- ; CHECK-LABEL: name: test_implicit_def
- ; CHECK: [[DEF:%[0-9]+]](s64) = G_IMPLICIT_DEF
- ; CHECK: [[DEF1:%[0-9]+]](s64) = G_IMPLICIT_DEF
- ; CHECK: [[MV:%[0-9]+]](s128) = G_MERGE_VALUES [[DEF]](s64), [[DEF1]](s64)
+ ; CHECK-LABEL: name: test_implicit_def
+ ; CHECK: [[DEF:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+ ; CHECK: [[DEF1:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF
+ ; CHECK: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[DEF]](s64), [[DEF1]](s64)
%0:_(s128) = G_IMPLICIT_DEF
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir Tue Oct 24 11:04:54 2017
@@ -13,27 +13,27 @@ body: |
%0:_(p0) = COPY %x0
; CHECK-LABEL: name: test_vaarg
- ; CHECK: [[LIST:%[0-9]+]](p0) = G_LOAD %0(p0) :: (load 8)
- ; CHECK: %1(s8) = G_LOAD [[LIST]](p0) :: (load 1, align 8)
- ; CHECK: [[SLOTSIZE:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[NEXT:%[0-9]+]](p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
+ ; CHECK: [[LIST:%[0-9]+]]:_(p0) = G_LOAD %0(p0) :: (load 8)
+ ; CHECK: %1:_(s8) = G_LOAD [[LIST]](p0) :: (load 1, align 8)
+ ; CHECK: [[SLOTSIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[NEXT:%[0-9]+]]:_(p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
; CHECK: G_STORE [[NEXT]](p0), %0(p0) :: (store 8)
%1:_(s8) = G_VAARG %0(p0), 1
- ; CHECK: [[LIST:%[0-9]+]](p0) = G_LOAD %0(p0) :: (load 8)
- ; CHECK: %2(s64) = G_LOAD [[LIST]](p0) :: (load 8)
- ; CHECK: [[SLOTSIZE:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[NEXT:%[0-9]+]](p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
+ ; CHECK: [[LIST:%[0-9]+]]:_(p0) = G_LOAD %0(p0) :: (load 8)
+ ; CHECK: %2:_(s64) = G_LOAD [[LIST]](p0) :: (load 8)
+ ; CHECK: [[SLOTSIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[NEXT:%[0-9]+]]:_(p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
; CHECK: G_STORE [[NEXT]](p0), %0(p0) :: (store 8)
%2:_(s64) = G_VAARG %0(p0), 8
- ; CHECK: [[LIST:%[0-9]+]](p0) = G_LOAD %0(p0) :: (load 8)
- ; CHECK: [[ALIGNM1:%[0-9]+]](s64) = G_CONSTANT i64 15
- ; CHECK: [[ALIGNTMP:%[0-9]+]](p0) = G_GEP [[LIST]], [[ALIGNM1]](s64)
- ; CHECK: [[LIST:%[0-9]+]](p0) = G_PTR_MASK [[ALIGNTMP]], 4
- ; CHECK: %3(s64) = G_LOAD [[LIST]](p0) :: (load 8, align 16)
- ; CHECK: [[SLOTSIZE:%[0-9]+]](s64) = G_CONSTANT i64 8
- ; CHECK: [[NEXT:%[0-9]+]](p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
+ ; CHECK: [[LIST:%[0-9]+]]:_(p0) = G_LOAD %0(p0) :: (load 8)
+ ; CHECK: [[ALIGNM1:%[0-9]+]]:_(s64) = G_CONSTANT i64 15
+ ; CHECK: [[ALIGNTMP:%[0-9]+]]:_(p0) = G_GEP [[LIST]], [[ALIGNM1]](s64)
+ ; CHECK: [[LIST:%[0-9]+]]:_(p0) = G_PTR_MASK [[ALIGNTMP]], 4
+ ; CHECK: %3:_(s64) = G_LOAD [[LIST]](p0) :: (load 8, align 16)
+ ; CHECK: [[SLOTSIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 8
+ ; CHECK: [[NEXT:%[0-9]+]]:_(p0) = G_GEP [[LIST]], [[SLOTSIZE]](s64)
; CHECK: G_STORE [[NEXT]](p0), %0(p0) :: (store 8)
%3:_(s64) = G_VAARG %0(p0), 16
...
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir Tue Oct 24 11:04:54 2017
@@ -24,13 +24,13 @@ body: |
liveins: %x0, %x1, %x2, %x3
; CHECK-LABEL: name: test_scalar_xor_small
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %x1
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
- ; CHECK: [[TRUNC1:%[0-9]+]](s32) = G_TRUNC [[COPY1]](s64)
- ; CHECK: [[XOR:%[0-9]+]](s32) = G_XOR [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s8) = G_TRUNC [[XOR]](s32)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC2]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %x1
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY1]](s64)
+ ; CHECK: [[XOR:%[0-9]+]]:_(s32) = G_XOR [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s8) = G_TRUNC [[XOR]](s32)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC2]](s8)
; CHECK: %x0 = COPY [[ANYEXT]](s64)
%0(s64) = COPY %x0
%1(s64) = COPY %x1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer-in-O0-pipeline.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer-in-O0-pipeline.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer-in-O0-pipeline.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer-in-O0-pipeline.mir Tue Oct 24 11:04:54 2017
@@ -9,16 +9,16 @@
--- |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
target triple = "aarch64-apple-ios"
-
+
define float @foo(float %arg, i1 %cond) {
br i1 %cond, label %true, label %false
-
+
true: ; preds = %0
br label %end
-
+
false: ; preds = %0
br label %end
-
+
end: ; preds = %false, %true
%val = phi float [ 1.000000e+00, %true ], [ 2.000000e+00, %false ]
%res = fadd float %arg, %val
@@ -55,23 +55,23 @@ registers:
# First block remains untouched
# CHECK: body
-# CHECK: %4(s32) = G_FCONSTANT float 1.000000e+00
-# CHECK: %5(s32) = G_FCONSTANT float 2.000000e+00
+# CHECK: %4:fpr(s32) = G_FCONSTANT float 1.000000e+00
+# CHECK: %5:fpr(s32) = G_FCONSTANT float 2.000000e+00
# Second block will get the constant 1.0 when the localizer is enabled.
# CHECK: bb.1.true:
# OPT-NOT: G_FCONSTANT
-# OPTNONE: [[FONE:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
+# OPTNONE: [[FONE:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
# CHECK: G_BR %bb.3.end
# Thrid block will get the constant 2.0 when the localizer is enabled.
# CHECK: bb.2.false:
# OPT-NOT: G_FCONSTANT
-# OPTNONE: [[FTWO:%[0-9]+]](s32) = G_FCONSTANT float 2.000000e+00
+# OPTNONE: [[FTWO:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 2.000000e+00
# CHECK: bb.3.end
-# OPTNONE: %2(s32) = PHI [[FONE]](s32), %bb.1.true, [[FTWO]](s32), %bb.2.false
-# OPT: %2(s32) = PHI %4(s32), %bb.1.true, %5(s32), %bb.2.false
+# OPTNONE: %2:fpr(s32) = PHI [[FONE]](s32), %bb.1.true, [[FTWO]](s32), %bb.2.false
+# OPT: %2:fpr(s32) = PHI %4(s32), %bb.1.true, %5(s32), %bb.2.false
# CHECK-NEXT: G_FADD %0, %2
body: |
bb.0 (%ir-block.0):
@@ -84,12 +84,12 @@ body: |
%5(s32) = G_FCONSTANT float 2.000000e+00
G_BRCOND %1(s1), %bb.1.true
G_BR %bb.2.false
-
+
bb.1.true:
G_BR %bb.3.end
-
+
bb.2.false:
-
+
bb.3.end:
%2(s32) = PHI %4(s32), %bb.1.true, %5(s32), %bb.2.false
%3(s32) = G_FADD %0, %2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/localizer.mir Tue Oct 24 11:04:54 2017
@@ -1,3 +1,4 @@
+# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -O0 -mtriple=aarch64-apple-ios -run-pass=localizer -verify-machineinstrs -global-isel %s -o - | FileCheck %s -check-prefix=CHECK
# Test the localizer.
@@ -23,11 +24,8 @@ regBankSelected: true
body: |
bb.0:
; CHECK-LABEL: name: local_use
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[C]], [[C]]
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[C]], [[C]]
%0:gpr(s32) = G_CONSTANT 1
%1:gpr(s32) = G_ADD %0, %0
...
@@ -38,22 +36,17 @@ legalized: true
regBankSelected: true
body: |
; CHECK-LABEL: name: non_local_1use
+ ; CHECK: bb.0:
+ ; CHECK: successors: %bb.1(0x80000000)
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[C]], [[C]]
+ ; CHECK: bb.1:
+ ; CHECK: [[C1:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD1:%[0-9]+]]:gpr(s32) = G_ADD [[C1]], [[ADD]]
; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: bb.0:
- ; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[C]], [[C]]
- ; CHECK: bb.1:
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[C1]], [[ADD]]
bb.0:
successors: %bb.1
@@ -70,22 +63,17 @@ legalized: true
regBankSelected: true
body: |
; CHECK-LABEL: name: non_local_2uses
+ ; CHECK: bb.0:
+ ; CHECK: successors: %bb.1(0x80000000)
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[C]], [[C]]
+ ; CHECK: bb.1:
+ ; CHECK: [[C1:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD1:%[0-9]+]]:gpr(s32) = G_ADD [[C1]], [[C1]]
; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: bb.0:
- ; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[C]], [[C]]
- ; CHECK: bb.1:
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[C1]], [[C1]]
bb.0:
successors: %bb.1
@@ -103,26 +91,20 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: non_local_phi_use
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 4, class: gpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[C]], [[C]]
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[C]], [[C]]
; CHECK: bb.1:
; CHECK: successors: %bb.2(0x80000000)
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT 1
+ ; CHECK: [[C1:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
; CHECK: bb.2:
- ; CHECK: [[PHI:%[0-9]+]](s32) = PHI [[C1]](s32), %bb.1
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[PHI]], [[PHI]]
+ ; CHECK: [[PHI:%[0-9]+]]:gpr(s32) = PHI [[C1]](s32), %bb.1
+ ; CHECK: [[ADD1:%[0-9]+]]:gpr(s32) = G_ADD [[PHI]], [[PHI]]
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
successors: %bb.1
@@ -144,28 +126,21 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: non_local_phi_use_followed_by_use
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 4, class: gpr
- ; CHECK-NEXT: id: 5, class: gpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[C]], [[C]]
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[C]], [[C]]
; CHECK: bb.1:
; CHECK: successors: %bb.2(0x80000000)
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT 1
+ ; CHECK: [[C1:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
; CHECK: bb.2:
- ; CHECK: [[PHI:%[0-9]+]](s32) = PHI [[C1]](s32), %bb.1
- ; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT 1
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[PHI]], [[C2]]
+ ; CHECK: [[PHI:%[0-9]+]]:gpr(s32) = PHI [[C1]](s32), %bb.1
+ ; CHECK: [[C2:%[0-9]+]]:gpr(s32) = G_CONSTANT 1
+ ; CHECK: [[ADD1:%[0-9]+]]:gpr(s32) = G_ADD [[PHI]], [[C2]]
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
successors: %bb.1
@@ -187,28 +162,21 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: non_local_phi_use_followed_by_use_fi
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 4, class: gpr
- ; CHECK-NEXT: id: 5, class: gpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[FRAME_INDEX:%[0-9]+]](s32) = G_FRAME_INDEX 1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[FRAME_INDEX]], [[FRAME_INDEX]]
+ ; CHECK: [[FRAME_INDEX:%[0-9]+]]:gpr(s32) = G_FRAME_INDEX 1
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[FRAME_INDEX]], [[FRAME_INDEX]]
; CHECK: bb.1:
; CHECK: successors: %bb.2(0x80000000)
- ; CHECK: [[FRAME_INDEX1:%[0-9]+]](s32) = G_FRAME_INDEX 1
+ ; CHECK: [[FRAME_INDEX1:%[0-9]+]]:gpr(s32) = G_FRAME_INDEX 1
; CHECK: bb.2:
- ; CHECK: [[PHI:%[0-9]+]](s32) = PHI [[FRAME_INDEX1]](s32), %bb.1
- ; CHECK: [[FRAME_INDEX2:%[0-9]+]](s32) = G_FRAME_INDEX 1
- ; CHECK: [[ADD1:%[0-9]+]](s32) = G_ADD [[PHI]], [[FRAME_INDEX2]]
+ ; CHECK: [[PHI:%[0-9]+]]:gpr(s32) = PHI [[FRAME_INDEX1]](s32), %bb.1
+ ; CHECK: [[FRAME_INDEX2:%[0-9]+]]:gpr(s32) = G_FRAME_INDEX 1
+ ; CHECK: [[ADD1:%[0-9]+]]:gpr(s32) = G_ADD [[PHI]], [[FRAME_INDEX2]]
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
successors: %bb.1
@@ -230,28 +198,21 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: float_non_local_phi_use_followed_by_use_fi
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK-NEXT: id: 2, class: fpr
- ; CHECK-NEXT: id: 3, class: fpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 4, class: fpr
- ; CHECK-NEXT: id: 5, class: fpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[FADD:%[0-9]+]](s32) = G_FADD [[C]], [[C]]
+ ; CHECK: [[C:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[FADD:%[0-9]+]]:fpr(s32) = G_FADD [[C]], [[C]]
; CHECK: bb.1:
; CHECK: successors: %bb.2(0x80000000)
- ; CHECK: [[C1:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[C1:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
; CHECK: bb.2:
- ; CHECK: [[PHI:%[0-9]+]](s32) = PHI [[C1]](s32), %bb.1
- ; CHECK: [[C2:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[FADD1:%[0-9]+]](s32) = G_FADD [[PHI]], [[C2]]
+ ; CHECK: [[PHI:%[0-9]+]]:fpr(s32) = PHI [[C1]](s32), %bb.1
+ ; CHECK: [[C2:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[FADD1:%[0-9]+]]:fpr(s32) = G_FADD [[PHI]], [[C2]]
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
successors: %bb.1
@@ -275,26 +236,20 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: non_local_phi
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK-NEXT: id: 2, class: fpr
- ; CHECK-NEXT: id: 3, class: fpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 4, class: fpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[FADD:%[0-9]+]](s32) = G_FADD [[C]], [[C]]
+ ; CHECK: [[C:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[FADD:%[0-9]+]]:fpr(s32) = G_FADD [[C]], [[C]]
; CHECK: bb.1:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[PHI:%[0-9]+]](s32) = PHI [[FADD]](s32), %bb.0, %4(s32), %bb.1
- ; CHECK: [[C1:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[FADD1:%[0-9]+]](s32) = G_FADD [[PHI]], [[FADD]]
+ ; CHECK: [[PHI:%[0-9]+]]:fpr(s32) = PHI [[FADD]](s32), %bb.0, %4(s32), %bb.1
+ ; CHECK: [[C1:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[FADD1:%[0-9]+]]:fpr(s32) = G_FADD [[PHI]], [[FADD]]
; CHECK: G_BR %bb.1
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
successors: %bb.1
@@ -317,26 +272,21 @@ regBankSelected: true
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: non_local_label
-
- ; Existing registers should be left untouched
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK-NEXT: id: 2, class: fpr
- ; The newly created reg should be on the same regbank/regclass as its origin.
- ; CHECK-NEXT: id: 3, class: fpr
-
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
; CHECK: liveins: %s0
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[C:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
; CHECK: bb.1:
; CHECK: successors: %bb.1(0x80000000)
; CHECK: EH_LABEL 1
- ; CHECK: [[C1:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[FADD:%[0-9]+]](s32) = G_FADD [[COPY]], [[C1]]
+ ; CHECK: [[C1:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[FADD:%[0-9]+]]:fpr(s32) = G_FADD [[COPY]], [[C1]]
; CHECK: G_BR %bb.1
+
+ ; Existing registers should be left untouched
+ ; The newly created reg should be on the same regbank/regclass as its origin.
+
bb.0:
liveins: %s0
successors: %bb.1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/no-regclass.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/no-regclass.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/no-regclass.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/no-regclass.mir Tue Oct 24 11:04:54 2017
@@ -22,7 +22,7 @@ body: |
liveins: %w0
; CHECK-LABEL: name: unused_reg
; CHECK: liveins: %w0
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32all = COPY %w0
; CHECK: %w0 = COPY [[COPY]]
%0:gpr(s32) = COPY %w0
%1:gpr(s32) = G_MERGE_VALUES %0(s32)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/regbankselect-default.mir Tue Oct 24 11:04:54 2017
@@ -82,11 +82,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_add_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[ADD:%[0-9]+]]:gpr(s32) = G_ADD [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_ADD %0, %0
...
@@ -101,11 +98,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_add_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[ADD:%[0-9]+]](<4 x s32>) = G_ADD [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[ADD:%[0-9]+]]:fpr(<4 x s32>) = G_ADD [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_ADD %0, %0
...
@@ -120,11 +114,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sub_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SUB:%[0-9]+]](s32) = G_SUB [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[SUB:%[0-9]+]]:gpr(s32) = G_SUB [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_SUB %0, %0
...
@@ -139,11 +130,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_sub_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[SUB:%[0-9]+]](<4 x s32>) = G_SUB [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[SUB:%[0-9]+]]:fpr(<4 x s32>) = G_SUB [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_SUB %0, %0
...
@@ -158,11 +146,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_mul_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[MUL:%[0-9]+]](s32) = G_MUL [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[MUL:%[0-9]+]]:gpr(s32) = G_MUL [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_MUL %0, %0
...
@@ -177,11 +162,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_mul_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[MUL:%[0-9]+]](<4 x s32>) = G_MUL [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[MUL:%[0-9]+]]:fpr(<4 x s32>) = G_MUL [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_MUL %0, %0
...
@@ -196,11 +178,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_and_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[AND:%[0-9]+]]:gpr(s32) = G_AND [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_AND %0, %0
...
@@ -215,11 +194,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_and_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[AND:%[0-9]+]](<4 x s32>) = G_AND [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[AND:%[0-9]+]]:fpr(<4 x s32>) = G_AND [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_AND %0, %0
...
@@ -234,11 +210,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_or_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[OR:%[0-9]+]](s32) = G_OR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[OR:%[0-9]+]]:gpr(s32) = G_OR [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_OR %0, %0
...
@@ -253,11 +226,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_or_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[OR:%[0-9]+]](<4 x s32>) = G_OR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[OR:%[0-9]+]]:fpr(<4 x s32>) = G_OR [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_OR %0, %0
...
@@ -272,11 +242,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_xor_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[XOR:%[0-9]+]](s32) = G_XOR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[XOR:%[0-9]+]]:gpr(s32) = G_XOR [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_XOR %0, %0
...
@@ -291,11 +258,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_xor_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[XOR:%[0-9]+]](<4 x s32>) = G_XOR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[XOR:%[0-9]+]]:fpr(<4 x s32>) = G_XOR [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_XOR %0, %0
...
@@ -310,11 +274,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_shl_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SHL:%[0-9]+]](s32) = G_SHL [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[SHL:%[0-9]+]]:gpr(s32) = G_SHL [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_SHL %0, %0
...
@@ -329,11 +290,8 @@ body: |
bb.0:
liveins: %q0
; CHECK-LABEL: name: test_shl_v4s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](<4 x s32>) = COPY %q0
- ; CHECK: [[SHL:%[0-9]+]](<4 x s32>) = G_SHL [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(<4 x s32>) = COPY %q0
+ ; CHECK: [[SHL:%[0-9]+]]:fpr(<4 x s32>) = G_SHL [[COPY]], [[COPY]]
%0(<4 x s32>) = COPY %q0
%1(<4 x s32>) = G_SHL %0, %0
...
@@ -348,11 +306,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_lshr_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[LSHR:%[0-9]+]](s32) = G_LSHR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[LSHR:%[0-9]+]]:gpr(s32) = G_LSHR [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_LSHR %0, %0
...
@@ -367,11 +322,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_ashr_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ASHR:%[0-9]+]](s32) = G_ASHR [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[ASHR:%[0-9]+]]:gpr(s32) = G_ASHR [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_ASHR %0, %0
...
@@ -386,11 +338,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sdiv_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SDIV:%[0-9]+]](s32) = G_SDIV [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[SDIV:%[0-9]+]]:gpr(s32) = G_SDIV [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_SDIV %0, %0
...
@@ -405,11 +354,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_udiv_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[UDIV:%[0-9]+]](s32) = G_UDIV [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[UDIV:%[0-9]+]]:gpr(s32) = G_UDIV [[COPY]], [[COPY]]
%0(s32) = COPY %w0
%1(s32) = G_UDIV %0, %0
...
@@ -424,11 +370,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_anyext_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[ANYEXT:%[0-9]+]]:gpr(s64) = G_ANYEXT [[COPY]](s32)
%0(s32) = COPY %w0
%1(s64) = G_ANYEXT %0
...
@@ -443,11 +386,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sext_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SEXT:%[0-9]+]](s64) = G_SEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[SEXT:%[0-9]+]]:gpr(s64) = G_SEXT [[COPY]](s32)
%0(s32) = COPY %w0
%1(s64) = G_SEXT %0
...
@@ -462,11 +402,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_zext_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ZEXT:%[0-9]+]](s64) = G_ZEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[ZEXT:%[0-9]+]]:gpr(s64) = G_ZEXT [[COPY]](s32)
%0(s32) = COPY %w0
%1(s64) = G_ZEXT %0
...
@@ -481,11 +418,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_trunc_s32_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[TRUNC:%[0-9]+]](s32) = G_TRUNC [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s64) = COPY %x0
+ ; CHECK: [[TRUNC:%[0-9]+]]:gpr(s32) = G_TRUNC [[COPY]](s64)
%0(s64) = COPY %x0
%1(s32) = G_TRUNC %0
...
@@ -498,9 +432,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: test_constant_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT 123
+ ; CHECK: [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT 123
%0(s32) = G_CONSTANT 123
...
@@ -512,9 +444,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: test_constant_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK: [[C:%[0-9]+]](p0) = G_CONSTANT 0
+ ; CHECK: [[C:%[0-9]+]]:gpr(p0) = G_CONSTANT 0
%0(p0) = G_CONSTANT 0
...
@@ -529,13 +459,9 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_icmp_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[ICMP:%[0-9]+]](s32) = G_ICMP intpred(ne), [[COPY]](s32), [[COPY]]
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[ICMP]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[ICMP:%[0-9]+]]:gpr(s32) = G_ICMP intpred(ne), [[COPY]](s32), [[COPY]]
+ ; CHECK: [[TRUNC:%[0-9]+]]:gpr(s1) = G_TRUNC [[ICMP]](s32)
%0(s32) = COPY %w0
%1(s32) = G_ICMP intpred(ne), %0, %0
%2(s1) = G_TRUNC %1(s32)
@@ -552,13 +478,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_icmp_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[ICMP:%[0-9]+]](s32) = G_ICMP intpred(ne), [[COPY]](p0), [[COPY]]
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[ICMP]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(p0) = COPY %x0
+ ; CHECK: [[ICMP:%[0-9]+]]:gpr(s32) = G_ICMP intpred(ne), [[COPY]](p0), [[COPY]]
+ ; CHECK: [[TRUNC:%[0-9]+]]:gpr(s1) = G_TRUNC [[ICMP]](s32)
%0(p0) = COPY %x0
%1(s32) = G_ICMP intpred(ne), %0, %0
%2(s1) = G_TRUNC %1(s32)
@@ -574,9 +496,7 @@ stack:
body: |
bb.0:
; CHECK-LABEL: name: test_frame_index_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK: [[FRAME_INDEX:%[0-9]+]](p0) = G_FRAME_INDEX %stack.0.ptr0
+ ; CHECK: [[FRAME_INDEX:%[0-9]+]]:gpr(p0) = G_FRAME_INDEX %stack.0.ptr0
%0(p0) = G_FRAME_INDEX %stack.0.ptr0
...
@@ -590,11 +510,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_ptrtoint_s64_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[PTRTOINT:%[0-9]+]](s64) = G_PTRTOINT [[COPY]](p0)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(p0) = COPY %x0
+ ; CHECK: [[PTRTOINT:%[0-9]+]]:gpr(s64) = G_PTRTOINT [[COPY]](p0)
%0(p0) = COPY %x0
%1(s64) = G_PTRTOINT %0
...
@@ -609,11 +526,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_inttoptr_p0_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[INTTOPTR:%[0-9]+]](p0) = G_INTTOPTR [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s64) = COPY %x0
+ ; CHECK: [[INTTOPTR:%[0-9]+]]:gpr(p0) = G_INTTOPTR [[COPY]](s64)
%0(s64) = COPY %x0
%1(p0) = G_INTTOPTR %0
...
@@ -628,11 +542,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_load_s32_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[LOAD:%[0-9]+]](s32) = G_LOAD [[COPY]](p0) :: (load 4)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(p0) = COPY %x0
+ ; CHECK: [[LOAD:%[0-9]+]]:gpr(s32) = G_LOAD [[COPY]](p0) :: (load 4)
%0(p0) = COPY %x0
%1(s32) = G_LOAD %0 :: (load 4)
...
@@ -647,11 +558,8 @@ body: |
bb.0:
liveins: %x0, %w1
; CHECK-LABEL: name: test_store_s32_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %w1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(p0) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr(s32) = COPY %w1
; CHECK: G_STORE [[COPY1]](s32), [[COPY]](p0) :: (store 4)
%0(p0) = COPY %x0
%1(s32) = COPY %w1
@@ -668,11 +576,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fadd_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FADD:%[0-9]+]](s32) = G_FADD [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FADD:%[0-9]+]]:fpr(s32) = G_FADD [[COPY]], [[COPY]]
%0(s32) = COPY %s0
%1(s32) = G_FADD %0, %0
...
@@ -687,11 +592,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fsub_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FSUB:%[0-9]+]](s32) = G_FSUB [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FSUB:%[0-9]+]]:fpr(s32) = G_FSUB [[COPY]], [[COPY]]
%0(s32) = COPY %s0
%1(s32) = G_FSUB %0, %0
...
@@ -706,11 +608,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fmul_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FMUL:%[0-9]+]](s32) = G_FMUL [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FMUL:%[0-9]+]]:fpr(s32) = G_FMUL [[COPY]], [[COPY]]
%0(s32) = COPY %s0
%1(s32) = G_FMUL %0, %0
...
@@ -725,11 +624,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fdiv_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FDIV:%[0-9]+]](s32) = G_FDIV [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FDIV:%[0-9]+]]:fpr(s32) = G_FDIV [[COPY]], [[COPY]]
%0(s32) = COPY %s0
%1(s32) = G_FDIV %0, %0
...
@@ -744,11 +640,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fpext_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FPEXT:%[0-9]+]](s64) = G_FPEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FPEXT:%[0-9]+]]:fpr(s64) = G_FPEXT [[COPY]](s32)
%0(s32) = COPY %s0
%1(s64) = G_FPEXT %0
...
@@ -763,11 +656,8 @@ body: |
bb.0:
liveins: %d0
; CHECK-LABEL: name: test_fptrunc_s32_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %d0
- ; CHECK: [[FPTRUNC:%[0-9]+]](s32) = G_FPTRUNC [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s64) = COPY %d0
+ ; CHECK: [[FPTRUNC:%[0-9]+]]:fpr(s32) = G_FPTRUNC [[COPY]](s64)
%0(s64) = COPY %d0
%1(s32) = G_FPTRUNC %0
...
@@ -780,9 +670,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: test_fconstant_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[C:%[0-9]+]]:fpr(s32) = G_FCONSTANT float 1.000000e+00
%0(s32) = G_FCONSTANT float 1.0
...
@@ -797,13 +685,9 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fcmp_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FCMP:%[0-9]+]](s32) = G_FCMP floatpred(olt), [[COPY]](s32), [[COPY]]
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[FCMP]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FCMP:%[0-9]+]]:gpr(s32) = G_FCMP floatpred(olt), [[COPY]](s32), [[COPY]]
+ ; CHECK: [[TRUNC:%[0-9]+]]:gpr(s1) = G_TRUNC [[FCMP]](s32)
%0(s32) = COPY %s0
%1(s32) = G_FCMP floatpred(olt), %0, %0
%2(s1) = G_TRUNC %1(s32)
@@ -819,11 +703,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_sitofp_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %w0
- ; CHECK: [[SITOFP:%[0-9]+]](s64) = G_SITOFP [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s32) = COPY %w0
+ ; CHECK: [[SITOFP:%[0-9]+]]:fpr(s64) = G_SITOFP [[COPY]](s32)
%0(s32) = COPY %w0
%1(s64) = G_SITOFP %0
...
@@ -838,11 +719,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: test_uitofp_s32_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: fpr
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %x0
- ; CHECK: [[UITOFP:%[0-9]+]](s32) = G_UITOFP [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(s64) = COPY %x0
+ ; CHECK: [[UITOFP:%[0-9]+]]:fpr(s32) = G_UITOFP [[COPY]](s64)
%0(s64) = COPY %x0
%1(s32) = G_UITOFP %0
...
@@ -857,11 +735,8 @@ body: |
bb.0:
liveins: %s0
; CHECK-LABEL: name: test_fptosi_s64_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %s0
- ; CHECK: [[FPTOSI:%[0-9]+]](s64) = G_FPTOSI [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY %s0
+ ; CHECK: [[FPTOSI:%[0-9]+]]:gpr(s64) = G_FPTOSI [[COPY]](s32)
%0(s32) = COPY %s0
%1(s64) = G_FPTOSI %0
...
@@ -876,11 +751,8 @@ body: |
bb.0:
liveins: %d0
; CHECK-LABEL: name: test_fptoui_s32_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %d0
- ; CHECK: [[FPTOUI:%[0-9]+]](s32) = G_FPTOUI [[COPY]](s64)
+ ; CHECK: [[COPY:%[0-9]+]]:fpr(s64) = COPY %d0
+ ; CHECK: [[FPTOUI:%[0-9]+]]:gpr(s32) = G_FPTOUI [[COPY]](s64)
%0(s64) = COPY %d0
%1(s32) = G_FPTOUI %0
...
@@ -898,26 +770,19 @@ registers:
- { id: 5, class: _, preferred-register: '' }
body: |
; CHECK-LABEL: name: test_gphi_ptr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK-NEXT: id: 4, class: gpr
- ; CHECK-NEXT: id: 5, class: _
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x40000000), %bb.2(0x40000000)
; CHECK: liveins: %w2, %x0, %x1
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]](p0) = COPY %x1
- ; CHECK: [[COPY2:%[0-9]+]](s32) = COPY %w2
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[COPY2]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr(p0) = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr(p0) = COPY %x1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr(s32) = COPY %w2
+ ; CHECK: [[TRUNC:%[0-9]+]]:gpr(s1) = G_TRUNC [[COPY2]](s32)
; CHECK: G_BRCOND [[TRUNC]](s1), %bb.1
; CHECK: G_BR %bb.2
; CHECK: bb.1:
; CHECK: successors: %bb.2(0x80000000)
; CHECK: bb.2:
- ; CHECK: [[PHI:%[0-9]+]](p0) = G_PHI [[COPY]](p0), %bb.0, [[COPY1]](p0), %bb.1
+ ; CHECK: [[PHI:%[0-9]+]]:gpr(p0) = G_PHI [[COPY]](p0), %bb.0, [[COPY1]](p0), %bb.1
; CHECK: %x0 = COPY [[PHI]](p0)
; CHECK: RET_ReallyLR implicit %x0
bb.0:
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-binop.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-binop.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-binop.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-binop.mir Tue Oct 24 11:04:54 2017
@@ -73,13 +73,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: add_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[ADDWrr:%[0-9]+]] = ADDWrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[ADDWrr:%[0-9]+]]:gpr32 = ADDWrr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[ADDWrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -103,13 +99,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: add_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[ADDXrr:%[0-9]+]] = ADDXrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[ADDXrr:%[0-9]+]]:gpr64 = ADDXrr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[ADDXrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -132,12 +124,8 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: add_imm_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr32sp
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[ADDWri:%[0-9]+]] = ADDWri [[COPY]], 1, 0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32sp = COPY %w0
+ ; CHECK: [[ADDWri:%[0-9]+]]:gpr32sp = ADDWri [[COPY]], 1, 0
; CHECK: %w0 = COPY [[ADDWri]]
%0(s32) = COPY %w0
%1(s32) = G_CONSTANT i32 1
@@ -160,12 +148,8 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: add_imm_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr64sp
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[ADDXri:%[0-9]+]] = ADDXri [[COPY]], 1, 0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[ADDXri:%[0-9]+]]:gpr64sp = ADDXri [[COPY]], 1, 0
; CHECK: %x0 = COPY [[ADDXri]]
%0(s64) = COPY %x0
%1(s64) = G_CONSTANT i32 1
@@ -185,16 +169,12 @@ registers:
body: |
; CHECK-LABEL: name: add_imm_s32_gpr_bb
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr32sp
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32sp = COPY %w0
; CHECK: B %bb.1
; CHECK: bb.1:
- ; CHECK: [[ADDWri:%[0-9]+]] = ADDWri [[COPY]], 1, 0
+ ; CHECK: [[ADDWri:%[0-9]+]]:gpr32sp = ADDWri [[COPY]], 1, 0
; CHECK: %w0 = COPY [[ADDWri]]
bb.0:
liveins: %w0, %w1
@@ -225,13 +205,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: sub_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[SUBSWrr:%[0-9]+]] = SUBSWrr [[COPY]], [[COPY1]], implicit-def %nzcv
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[SUBSWrr:%[0-9]+]]:gpr32 = SUBSWrr [[COPY]], [[COPY1]], implicit-def %nzcv
; CHECK: %w0 = COPY [[SUBSWrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -255,13 +231,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: sub_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[SUBSXrr:%[0-9]+]] = SUBSXrr [[COPY]], [[COPY1]], implicit-def %nzcv
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[COPY]], [[COPY1]], implicit-def %nzcv
; CHECK: %x0 = COPY [[SUBSXrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -285,13 +257,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: or_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[ORRWrr:%[0-9]+]] = ORRWrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[ORRWrr:%[0-9]+]]:gpr32 = ORRWrr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[ORRWrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -315,13 +283,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: or_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[ORRXrr:%[0-9]+]] = ORRXrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[ORRXrr:%[0-9]+]]:gpr64 = ORRXrr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[ORRXrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -347,13 +311,9 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: or_v2s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[ORRv8i8_:%[0-9]+]] = ORRv8i8 [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: [[ORRv8i8_:%[0-9]+]]:fpr64 = ORRv8i8 [[COPY]], [[COPY1]]
; CHECK: %d0 = COPY [[ORRv8i8_]]
%0(<2 x s32>) = COPY %d0
%1(<2 x s32>) = COPY %d1
@@ -377,13 +337,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: and_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[ANDWrr:%[0-9]+]] = ANDWrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[ANDWrr:%[0-9]+]]:gpr32 = ANDWrr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[ANDWrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -407,13 +363,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: and_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[ANDXrr:%[0-9]+]] = ANDXrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[ANDXrr:%[0-9]+]]:gpr64 = ANDXrr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[ANDXrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -437,13 +389,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: shl_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[LSLVWr:%[0-9]+]] = LSLVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[LSLVWr:%[0-9]+]]:gpr32 = LSLVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[LSLVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -467,13 +415,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: shl_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[LSLVXr:%[0-9]+]] = LSLVXr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[LSLVXr:%[0-9]+]]:gpr64 = LSLVXr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[LSLVXr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -497,13 +441,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: lshr_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[LSRVWr:%[0-9]+]] = LSRVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[LSRVWr:%[0-9]+]]:gpr32 = LSRVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[LSRVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -527,13 +467,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: lshr_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[LSRVXr:%[0-9]+]] = LSRVXr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[LSRVXr:%[0-9]+]]:gpr64 = LSRVXr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[LSRVXr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -557,13 +493,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: ashr_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[ASRVWr:%[0-9]+]] = ASRVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[ASRVWr:%[0-9]+]]:gpr32 = ASRVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[ASRVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -587,13 +519,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: ashr_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[ASRVXr:%[0-9]+]] = ASRVXr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[ASRVXr:%[0-9]+]]:gpr64 = ASRVXr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[ASRVXr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -618,13 +546,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: mul_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[MADDWrrr:%[0-9]+]] = MADDWrrr [[COPY]], [[COPY1]], %wzr
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[MADDWrrr:%[0-9]+]]:gpr32 = MADDWrrr [[COPY]], [[COPY1]], %wzr
; CHECK: %w0 = COPY [[MADDWrrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -648,13 +572,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: mul_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[MADDXrrr:%[0-9]+]] = MADDXrrr [[COPY]], [[COPY1]], %xzr
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[MADDXrrr:%[0-9]+]]:gpr64 = MADDXrrr [[COPY]], [[COPY1]], %xzr
; CHECK: %x0 = COPY [[MADDXrrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -674,15 +594,10 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: mulh_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK-NEXT: id: 3, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[SMULHrr:%[0-9]+]] = SMULHrr [[COPY]], [[COPY1]]
- ; CHECK: [[UMULHrr:%[0-9]+]] = UMULHrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[SMULHrr:%[0-9]+]]:gpr64 = SMULHrr [[COPY]], [[COPY1]]
+ ; CHECK: [[UMULHrr:%[0-9]+]]:gpr64 = UMULHrr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[SMULHrr]]
; CHECK: %x0 = COPY [[UMULHrr]]
%0:gpr(s64) = COPY %x0
@@ -709,13 +624,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: sdiv_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[SDIVWr:%[0-9]+]] = SDIVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[SDIVWr:%[0-9]+]]:gpr32 = SDIVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[SDIVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -739,13 +650,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: sdiv_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[SDIVXr:%[0-9]+]] = SDIVXr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[SDIVXr:%[0-9]+]]:gpr64 = SDIVXr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[SDIVXr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -769,13 +676,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: udiv_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[UDIVWr:%[0-9]+]] = UDIVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[UDIVWr:%[0-9]+]]:gpr32 = UDIVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[UDIVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -799,13 +702,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: udiv_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[UDIVXr:%[0-9]+]] = UDIVXr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[UDIVXr:%[0-9]+]]:gpr64 = UDIVXr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[UDIVXr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -829,13 +728,9 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: fadd_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[FADDSrr:%[0-9]+]] = FADDSrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
+ ; CHECK: [[FADDSrr:%[0-9]+]]:fpr32 = FADDSrr [[COPY]], [[COPY1]]
; CHECK: %s0 = COPY [[FADDSrr]]
%0(s32) = COPY %s0
%1(s32) = COPY %s1
@@ -858,13 +753,9 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: fadd_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[FADDDrr:%[0-9]+]] = FADDDrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: [[FADDDrr:%[0-9]+]]:fpr64 = FADDDrr [[COPY]], [[COPY1]]
; CHECK: %d0 = COPY [[FADDDrr]]
%0(s64) = COPY %d0
%1(s64) = COPY %d1
@@ -887,13 +778,9 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: fsub_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[FSUBSrr:%[0-9]+]] = FSUBSrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
+ ; CHECK: [[FSUBSrr:%[0-9]+]]:fpr32 = FSUBSrr [[COPY]], [[COPY1]]
; CHECK: %s0 = COPY [[FSUBSrr]]
%0(s32) = COPY %s0
%1(s32) = COPY %s1
@@ -916,13 +803,9 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: fsub_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[FSUBDrr:%[0-9]+]] = FSUBDrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: [[FSUBDrr:%[0-9]+]]:fpr64 = FSUBDrr [[COPY]], [[COPY1]]
; CHECK: %d0 = COPY [[FSUBDrr]]
%0(s64) = COPY %d0
%1(s64) = COPY %d1
@@ -945,13 +828,9 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: fmul_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[FMULSrr:%[0-9]+]] = FMULSrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
+ ; CHECK: [[FMULSrr:%[0-9]+]]:fpr32 = FMULSrr [[COPY]], [[COPY1]]
; CHECK: %s0 = COPY [[FMULSrr]]
%0(s32) = COPY %s0
%1(s32) = COPY %s1
@@ -974,13 +853,9 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: fmul_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[FMULDrr:%[0-9]+]] = FMULDrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: [[FMULDrr:%[0-9]+]]:fpr64 = FMULDrr [[COPY]], [[COPY1]]
; CHECK: %d0 = COPY [[FMULDrr]]
%0(s64) = COPY %d0
%1(s64) = COPY %d1
@@ -1003,13 +878,9 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: fdiv_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[FDIVSrr:%[0-9]+]] = FDIVSrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
+ ; CHECK: [[FDIVSrr:%[0-9]+]]:fpr32 = FDIVSrr [[COPY]], [[COPY1]]
; CHECK: %s0 = COPY [[FDIVSrr]]
%0(s32) = COPY %s0
%1(s32) = COPY %s1
@@ -1032,13 +903,9 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: fdiv_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[FDIVDrr:%[0-9]+]] = FDIVDrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: [[FDIVDrr:%[0-9]+]]:fpr64 = FDIVDrr [[COPY]], [[COPY1]]
; CHECK: %d0 = COPY [[FDIVDrr]]
%0(s64) = COPY %d0
%1(s64) = COPY %d1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir Tue Oct 24 11:04:54 2017
@@ -29,11 +29,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: bitcast_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32all
- ; CHECK-NEXT: id: 1, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32all = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32all = COPY [[COPY]]
; CHECK: %w0 = COPY [[COPY1]]
%0(s32) = COPY %w0
%1(s32) = G_BITCAST %0
@@ -54,11 +51,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: bitcast_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY [[COPY]]
; CHECK: %s0 = COPY [[COPY1]]
%0(s32) = COPY %s0
%1(s32) = G_BITCAST %0
@@ -79,11 +73,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: bitcast_s32_gpr_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32all
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32all = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY [[COPY]]
; CHECK: %s0 = COPY [[COPY1]]
%0(s32) = COPY %w0
%1(s32) = G_BITCAST %0
@@ -104,11 +95,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: bitcast_s32_fpr_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
; CHECK: %w0 = COPY [[COPY1]]
%0(s32) = COPY %s0
%1(s32) = G_BITCAST %0
@@ -129,11 +117,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: bitcast_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64all
- ; CHECK-NEXT: id: 1, class: gpr64all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64all = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64all = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s64) = COPY %x0
%1(s64) = G_BITCAST %0
@@ -154,11 +139,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: bitcast_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY [[COPY]]
; CHECK: %d0 = COPY [[COPY1]]
%0(s64) = COPY %d0
%1(s64) = G_BITCAST %0
@@ -178,11 +160,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: bitcast_s64_gpr_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64all
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64all = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY [[COPY]]
; CHECK: %d0 = COPY [[COPY1]]
%0(s64) = COPY %x0
%1(s64) = G_BITCAST %0
@@ -203,11 +182,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: bitcast_s64_fpr_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s64) = COPY %d0
%1(s64) = G_BITCAST %0
@@ -228,11 +204,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: bitcast_s64_v2f32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s64) = COPY %d0
%1(<2 x s32>) = G_BITCAST %0
@@ -253,11 +226,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: bitcast_s64_v8i8_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s64) = COPY %d0
%1(<8 x s8>) = G_BITCAST %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-br.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-br.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-br.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-br.mir Tue Oct 24 11:04:54 2017
@@ -61,7 +61,7 @@ registers:
# CHECK: body:
# CHECK: bb.0:
-# CHECK: %0 = COPY %x0
+# CHECK: %0:gpr64 = COPY %x0
# CHECK: BR %0
body: |
bb.0:
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bswap.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bswap.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bswap.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-bswap.mir Tue Oct 24 11:04:54 2017
@@ -22,11 +22,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: bswap_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[REVWr:%[0-9]+]] = REVWr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[REVWr:%[0-9]+]]:gpr32 = REVWr [[COPY]]
; CHECK: %w0 = COPY [[REVWr]]
%0(s32) = COPY %w0
%1(s32) = G_BSWAP %0
@@ -47,11 +44,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: bswap_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[REVXr:%[0-9]+]] = REVXr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[REVXr:%[0-9]+]]:gpr64 = REVXr [[COPY]]
; CHECK: %x0 = COPY [[REVXr]]
%0(s64) = COPY %x0
%1(s64) = G_BSWAP %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-cbz.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-cbz.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-cbz.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-cbz.mir Tue Oct 24 11:04:54 2017
@@ -15,7 +15,7 @@ regBankSelected: true
# CHECK: body:
# CHECK: bb.0:
-# CHECK: %0 = COPY %w0
+# CHECK: %0:gpr32 = COPY %w0
# CHECK: CBZW %0, %bb.1
# CHECK: B %bb.0
body: |
@@ -41,7 +41,7 @@ regBankSelected: true
# CHECK: body:
# CHECK: bb.0:
-# CHECK: %0 = COPY %x0
+# CHECK: %0:gpr64 = COPY %x0
# CHECK: CBZX %0, %bb.1
# CHECK: B %bb.0
body: |
@@ -67,7 +67,7 @@ regBankSelected: true
# CHECK: body:
# CHECK: bb.0:
-# CHECK: %0 = COPY %w0
+# CHECK: %0:gpr32 = COPY %w0
# CHECK: CBNZW %0, %bb.1
# CHECK: B %bb.0
body: |
@@ -93,7 +93,7 @@ regBankSelected: true
# CHECK: body:
# CHECK: bb.0:
-# CHECK: %0 = COPY %x0
+# CHECK: %0:gpr64 = COPY %x0
# CHECK: CBNZX %0, %bb.1
# CHECK: B %bb.0
body: |
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-constant.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-constant.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-constant.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-constant.mir Tue Oct 24 11:04:54 2017
@@ -23,7 +23,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: const_s32
- ; CHECK: [[MOVi32imm:%[0-9]+]] = MOVi32imm 42
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 42
; CHECK: %w0 = COPY [[MOVi32imm]]
%0(s32) = G_CONSTANT i32 42
%w0 = COPY %0(s32)
@@ -39,7 +39,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: const_s64
- ; CHECK: [[MOVi64imm:%[0-9]+]] = MOVi64imm 1234567890123
+ ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = MOVi64imm 1234567890123
; CHECK: %x0 = COPY [[MOVi64imm]]
%0(s64) = G_CONSTANT i64 1234567890123
%x0 = COPY %0(s64)
@@ -55,8 +55,8 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: fconst_s32
- ; CHECK: [[MOVi32imm:%[0-9]+]] = MOVi32imm 1080033280
- ; CHECK: [[COPY:%[0-9]+]] = COPY [[MOVi32imm]]
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1080033280
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY [[MOVi32imm]]
; CHECK: %s0 = COPY [[COPY]]
%0(s32) = G_FCONSTANT float 3.5
%s0 = COPY %0(s32)
@@ -72,8 +72,8 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: fconst_s64
- ; CHECK: [[MOVi64imm:%[0-9]+]] = MOVi64imm 4607182418800017408
- ; CHECK: [[COPY:%[0-9]+]] = COPY [[MOVi64imm]]
+ ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = MOVi64imm 4607182418800017408
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY [[MOVi64imm]]
; CHECK: %d0 = COPY [[COPY]]
%0(s64) = G_FCONSTANT double 1.0
%d0 = COPY %0(s64)
@@ -89,7 +89,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: fconst_s32_0
- ; CHECK: [[FMOVS0_:%[0-9]+]] = FMOVS0
+ ; CHECK: [[FMOVS0_:%[0-9]+]]:fpr32 = FMOVS0
; CHECK: %s0 = COPY [[FMOVS0_]]
%0(s32) = G_FCONSTANT float 0.0
%s0 = COPY %0(s32)
@@ -105,7 +105,7 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: fconst_s64_0
- ; CHECK: [[FMOVD0_:%[0-9]+]] = FMOVD0
+ ; CHECK: [[FMOVD0_:%[0-9]+]]:fpr64 = FMOVD0
; CHECK: %x0 = COPY [[FMOVD0_]]
%0(s64) = G_FCONSTANT double 0.0
%x0 = COPY %0(s64)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir Tue Oct 24 11:04:54 2017
@@ -43,8 +43,8 @@ body: |
bb.0:
liveins: %w0
; CHECK-LABEL: name: test_dbg_value
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[ADDWrr:%[0-9]+]] = ADDWrr [[COPY]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[ADDWrr:%[0-9]+]]:gpr32 = ADDWrr [[COPY]], [[COPY]]
; CHECK: %w0 = COPY [[ADDWrr]]
; CHECK: DBG_VALUE debug-use [[ADDWrr]], debug-use _, !7, !DIExpression(), debug-location !9
%0:gpr(s32) = COPY %w0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fma.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fma.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fma.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fma.mir Tue Oct 24 11:04:54 2017
@@ -23,15 +23,10 @@ body: |
liveins: %w0, %w1, %w2
; CHECK-LABEL: name: FMADDSrrr_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: fpr32
- ; CHECK-NEXT: id: 3, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY %w2
- ; CHECK: [[FMADDSrrr:%[0-9]+]] = FMADDSrrr [[COPY]], [[COPY1]], [[COPY2]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:fpr32 = COPY %w2
+ ; CHECK: [[FMADDSrrr:%[0-9]+]]:fpr32 = FMADDSrrr [[COPY]], [[COPY1]], [[COPY2]]
; CHECK: %w0 = COPY [[FMADDSrrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -39,4 +34,3 @@ body: |
%3(s32) = G_FMA %0, %1, %2
%w0 = COPY %3
...
-
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir Tue Oct 24 11:04:54 2017
@@ -47,11 +47,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: fptrunc_s16_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr16
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTHSr:%[0-9]+]] = FCVTHSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTHSr:%[0-9]+]]:fpr16 = FCVTHSr [[COPY]]
; CHECK: %h0 = COPY [[FCVTHSr]]
%0(s32) = COPY %s0
%1(s16) = G_FPTRUNC %0
@@ -72,11 +69,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptrunc_s16_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr16
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTHDr:%[0-9]+]] = FCVTHDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTHDr:%[0-9]+]]:fpr16 = FCVTHDr [[COPY]]
; CHECK: %h0 = COPY [[FCVTHDr]]
%0(s64) = COPY %d0
%1(s16) = G_FPTRUNC %0
@@ -97,11 +91,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptrunc_s32_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTSDr:%[0-9]+]] = FCVTSDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTSDr:%[0-9]+]]:fpr32 = FCVTSDr [[COPY]]
; CHECK: %s0 = COPY [[FCVTSDr]]
%0(s64) = COPY %d0
%1(s32) = G_FPTRUNC %0
@@ -122,11 +113,8 @@ body: |
liveins: %h0
; CHECK-LABEL: name: fpext_s32_s16_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr16
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %h0
- ; CHECK: [[FCVTSHr:%[0-9]+]] = FCVTSHr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr16 = COPY %h0
+ ; CHECK: [[FCVTSHr:%[0-9]+]]:fpr32 = FCVTSHr [[COPY]]
; CHECK: %s0 = COPY [[FCVTSHr]]
%0(s16) = COPY %h0
%1(s32) = G_FPEXT %0
@@ -147,11 +135,8 @@ body: |
liveins: %h0
; CHECK-LABEL: name: fpext_s64_s16_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr16
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %h0
- ; CHECK: [[FCVTDHr:%[0-9]+]] = FCVTDHr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr16 = COPY %h0
+ ; CHECK: [[FCVTDHr:%[0-9]+]]:fpr64 = FCVTDHr [[COPY]]
; CHECK: %d0 = COPY [[FCVTDHr]]
%0(s16) = COPY %h0
%1(s64) = G_FPEXT %0
@@ -172,11 +157,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fpext_s64_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTDSr:%[0-9]+]] = FCVTDSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTDSr:%[0-9]+]]:fpr64 = FCVTDSr [[COPY]]
; CHECK: %d0 = COPY [[FCVTDSr]]
%0(s32) = COPY %s0
%1(s64) = G_FPEXT %0
@@ -197,11 +179,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sitofp_s32_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[SCVTFUWSri:%[0-9]+]] = SCVTFUWSri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[SCVTFUWSri:%[0-9]+]]:fpr32 = SCVTFUWSri [[COPY]]
; CHECK: %s0 = COPY [[SCVTFUWSri]]
%0(s32) = COPY %w0
%1(s32) = G_SITOFP %0
@@ -222,11 +201,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: sitofp_s32_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[SCVTFUXSri:%[0-9]+]] = SCVTFUXSri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[SCVTFUXSri:%[0-9]+]]:fpr32 = SCVTFUXSri [[COPY]]
; CHECK: %s0 = COPY [[SCVTFUXSri]]
%0(s64) = COPY %x0
%1(s32) = G_SITOFP %0
@@ -247,11 +223,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sitofp_s64_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[SCVTFUWDri:%[0-9]+]] = SCVTFUWDri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[SCVTFUWDri:%[0-9]+]]:fpr64 = SCVTFUWDri [[COPY]]
; CHECK: %d0 = COPY [[SCVTFUWDri]]
%0(s32) = COPY %w0
%1(s64) = G_SITOFP %0
@@ -272,11 +245,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: sitofp_s64_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[SCVTFUXDri:%[0-9]+]] = SCVTFUXDri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[SCVTFUXDri:%[0-9]+]]:fpr64 = SCVTFUXDri [[COPY]]
; CHECK: %d0 = COPY [[SCVTFUXDri]]
%0(s64) = COPY %x0
%1(s64) = G_SITOFP %0
@@ -297,11 +267,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: uitofp_s32_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[UCVTFUWSri:%[0-9]+]] = UCVTFUWSri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[UCVTFUWSri:%[0-9]+]]:fpr32 = UCVTFUWSri [[COPY]]
; CHECK: %s0 = COPY [[UCVTFUWSri]]
%0(s32) = COPY %w0
%1(s32) = G_UITOFP %0
@@ -322,11 +289,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: uitofp_s32_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[UCVTFUXSri:%[0-9]+]] = UCVTFUXSri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[UCVTFUXSri:%[0-9]+]]:fpr32 = UCVTFUXSri [[COPY]]
; CHECK: %s0 = COPY [[UCVTFUXSri]]
%0(s64) = COPY %x0
%1(s32) = G_UITOFP %0
@@ -347,11 +311,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: uitofp_s64_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[UCVTFUWDri:%[0-9]+]] = UCVTFUWDri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[UCVTFUWDri:%[0-9]+]]:fpr64 = UCVTFUWDri [[COPY]]
; CHECK: %d0 = COPY [[UCVTFUWDri]]
%0(s32) = COPY %w0
%1(s64) = G_UITOFP %0
@@ -372,11 +333,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: uitofp_s64_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[UCVTFUXDri:%[0-9]+]] = UCVTFUXDri [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[UCVTFUXDri:%[0-9]+]]:fpr64 = UCVTFUXDri [[COPY]]
; CHECK: %d0 = COPY [[UCVTFUXDri]]
%0(s64) = COPY %x0
%1(s64) = G_UITOFP %0
@@ -397,11 +355,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: fptosi_s32_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTZSUWSr:%[0-9]+]] = FCVTZSUWSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTZSUWSr:%[0-9]+]]:gpr32 = FCVTZSUWSr [[COPY]]
; CHECK: %w0 = COPY [[FCVTZSUWSr]]
%0(s32) = COPY %s0
%1(s32) = G_FPTOSI %0
@@ -422,11 +377,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptosi_s32_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTZSUWDr:%[0-9]+]] = FCVTZSUWDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTZSUWDr:%[0-9]+]]:gpr32 = FCVTZSUWDr [[COPY]]
; CHECK: %w0 = COPY [[FCVTZSUWDr]]
%0(s64) = COPY %d0
%1(s32) = G_FPTOSI %0
@@ -447,11 +399,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: fptosi_s64_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTZSUXSr:%[0-9]+]] = FCVTZSUXSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTZSUXSr:%[0-9]+]]:gpr64 = FCVTZSUXSr [[COPY]]
; CHECK: %x0 = COPY [[FCVTZSUXSr]]
%0(s32) = COPY %s0
%1(s64) = G_FPTOSI %0
@@ -472,11 +421,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptosi_s64_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTZSUXDr:%[0-9]+]] = FCVTZSUXDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTZSUXDr:%[0-9]+]]:gpr64 = FCVTZSUXDr [[COPY]]
; CHECK: %x0 = COPY [[FCVTZSUXDr]]
%0(s64) = COPY %d0
%1(s64) = G_FPTOSI %0
@@ -497,11 +443,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: fptoui_s32_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTZUUWSr:%[0-9]+]] = FCVTZUUWSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTZUUWSr:%[0-9]+]]:gpr32 = FCVTZUUWSr [[COPY]]
; CHECK: %w0 = COPY [[FCVTZUUWSr]]
%0(s32) = COPY %s0
%1(s32) = G_FPTOUI %0
@@ -522,11 +465,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptoui_s32_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTZUUWDr:%[0-9]+]] = FCVTZUUWDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTZUUWDr:%[0-9]+]]:gpr32 = FCVTZUUWDr [[COPY]]
; CHECK: %w0 = COPY [[FCVTZUUWDr]]
%0(s64) = COPY %d0
%1(s32) = G_FPTOUI %0
@@ -547,11 +487,8 @@ body: |
liveins: %s0
; CHECK-LABEL: name: fptoui_s64_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr32
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[FCVTZUUXSr:%[0-9]+]] = FCVTZUUXSr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY %s0
+ ; CHECK: [[FCVTZUUXSr:%[0-9]+]]:gpr64 = FCVTZUUXSr [[COPY]]
; CHECK: %x0 = COPY [[FCVTZUUXSr]]
%0(s32) = COPY %s0
%1(s64) = G_FPTOUI %0
@@ -572,11 +509,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: fptoui_s64_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[FCVTZUUXDr:%[0-9]+]] = FCVTZUUXDr [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[FCVTZUUXDr:%[0-9]+]]:gpr64 = FCVTZUUXDr [[COPY]]
; CHECK: %x0 = COPY [[FCVTZUUXDr]]
%0(s64) = COPY %d0
%1(s64) = G_FPTOUI %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-imm.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-imm.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-imm.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-imm.mir Tue Oct 24 11:04:54 2017
@@ -23,9 +23,7 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: imm_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK: [[MOVi32imm:%[0-9]+]] = MOVi32imm -1234
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm -1234
; CHECK: %w0 = COPY [[MOVi32imm]]
%0(s32) = G_CONSTANT i32 -1234
%w0 = COPY %0(s32)
@@ -45,9 +43,7 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: imm_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK: [[MOVi64imm:%[0-9]+]] = MOVi64imm 1234
+ ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = MOVi64imm 1234
; CHECK: %x0 = COPY [[MOVi64imm]]
%0(s64) = G_CONSTANT i64 1234
%x0 = COPY %0(s64)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-implicit-def.mir Tue Oct 24 11:04:54 2017
@@ -18,11 +18,8 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: implicit_def
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[DEF:%[0-9]+]] = IMPLICIT_DEF
- ; CHECK: [[ADDWrr:%[0-9]+]] = ADDWrr [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:gpr32 = IMPLICIT_DEF
+ ; CHECK: [[ADDWrr:%[0-9]+]]:gpr32 = ADDWrr [[DEF]], [[DEF]]
; CHECK: %w0 = COPY [[ADDWrr]]
%0(s32) = G_IMPLICIT_DEF
%1(s32) = G_ADD %0, %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-insert-extract.mir Tue Oct 24 11:04:54 2017
@@ -15,12 +15,12 @@ body: |
%1:gpr(s64) = G_IMPLICIT_DEF
; CHECK: body:
- ; CHECK: [[TMP:%[0-9]+]] = SUBREG_TO_REG 0, %0, 15
- ; CHECK: %2 = BFMXri %1, [[TMP]], 0, 31
+ ; CHECK: [[TMP:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, %0, 15
+ ; CHECK: %2:gpr64 = BFMXri %1, [[TMP]], 0, 31
%2:gpr(s64) = G_INSERT %1, %0, 0
- ; CHECK: [[TMP:%[0-9]+]] = SUBREG_TO_REG 0, %0, 15
- ; CHECK: %3 = BFMXri %1, [[TMP]], 51, 31
+ ; CHECK: [[TMP:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, %0, 15
+ ; CHECK: %3:gpr64 = BFMXri %1, [[TMP]], 51, 31
%3:gpr(s64) = G_INSERT %1, %0, 13
%x0 = COPY %2
@@ -41,12 +41,12 @@ body: |
%0:gpr(s64) = COPY %x0
; CHECK: body:
- ; CHECK: [[TMP:%[0-9]+]] = UBFMXri %0, 0, 31
- ; CHECK: %1 = COPY [[TMP]].sub_32
+ ; CHECK: [[TMP:%[0-9]+]]:gpr64 = UBFMXri %0, 0, 31
+ ; CHECK: %1:gpr32 = COPY [[TMP]].sub_32
%1:gpr(s32) = G_EXTRACT %0, 0
- ; CHECK: [[TMP:%[0-9]+]] = UBFMXri %0, 13, 44
- ; CHECK: %2 = COPY [[TMP]].sub_32
+ ; CHECK: [[TMP:%[0-9]+]]:gpr64 = UBFMXri %0, 13, 44
+ ; CHECK: %2:gpr32 = COPY [[TMP]].sub_32
%2:gpr(s32) = G_EXTRACT %0, 13
%w0 = COPY %1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ext.mir Tue Oct 24 11:04:54 2017
@@ -32,13 +32,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: anyext_s64_from_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32all
- ; CHECK-NEXT: id: 1, class: gpr64all
- ; CHECK-NEXT: id: 2, class: gpr64all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[COPY]], 15
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[SUBREG_TO_REG]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32all = COPY %w0
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64all = SUBREG_TO_REG 0, [[COPY]], 15
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64all = COPY [[SUBREG_TO_REG]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s32) = COPY %w0
%1(s64) = G_ANYEXT %0
@@ -59,13 +55,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: anyext_s32_from_s8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32all
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%2:gpr(s32) = COPY %w0
%0(s8) = G_TRUNC %2
@@ -87,13 +79,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: zext_s64_from_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[COPY]], 15
- ; CHECK: [[UBFMXri:%[0-9]+]] = UBFMXri [[SUBREG_TO_REG]], 0, 31
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[COPY]], 15
+ ; CHECK: [[UBFMXri:%[0-9]+]]:gpr64 = UBFMXri [[SUBREG_TO_REG]], 0, 31
; CHECK: %x0 = COPY [[UBFMXri]]
%0(s32) = COPY %w0
%1(s64) = G_ZEXT %0
@@ -114,13 +102,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: zext_s32_from_s16
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[UBFMWri:%[0-9]+]] = UBFMWri [[COPY1]], 0, 15
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[UBFMWri:%[0-9]+]]:gpr32 = UBFMWri [[COPY1]], 0, 15
; CHECK: %w0 = COPY [[UBFMWri]]
%2:gpr(s32) = COPY %w0
%0(s16) = G_TRUNC %2
@@ -142,13 +126,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: zext_s32_from_s8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[UBFMWri:%[0-9]+]] = UBFMWri [[COPY1]], 0, 15
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[UBFMWri:%[0-9]+]]:gpr32 = UBFMWri [[COPY1]], 0, 15
; CHECK: %w0 = COPY [[UBFMWri]]
%2:gpr(s32) = COPY %w0
%0(s16) = G_TRUNC %2
@@ -170,15 +150,10 @@ body: |
liveins: %w0
; CHECK-LABEL: name: zext_s16_from_s8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK-NEXT: id: 3, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[UBFMWri:%[0-9]+]] = UBFMWri [[COPY1]], 0, 7
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[UBFMWri]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[UBFMWri:%[0-9]+]]:gpr32 = UBFMWri [[COPY1]], 0, 7
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[UBFMWri]]
; CHECK: %w0 = COPY [[COPY2]]
%2:gpr(s32) = COPY %w0
%0(s8) = G_TRUNC %2
@@ -201,13 +176,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sext_s64_from_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[COPY]], 15
- ; CHECK: [[SBFMXri:%[0-9]+]] = SBFMXri [[SUBREG_TO_REG]], 0, 31
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[COPY]], 15
+ ; CHECK: [[SBFMXri:%[0-9]+]]:gpr64 = SBFMXri [[SUBREG_TO_REG]], 0, 31
; CHECK: %x0 = COPY [[SBFMXri]]
%0(s32) = COPY %w0
%1(s64) = G_SEXT %0
@@ -228,13 +199,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sext_s32_from_s16
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[SBFMWri:%[0-9]+]] = SBFMWri [[COPY1]], 0, 15
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[SBFMWri:%[0-9]+]]:gpr32 = SBFMWri [[COPY1]], 0, 15
; CHECK: %w0 = COPY [[SBFMWri]]
%2:gpr(s32) = COPY %w0
%0(s16) = G_TRUNC %2
@@ -256,13 +223,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sext_s32_from_s8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[SBFMWri:%[0-9]+]] = SBFMWri [[COPY1]], 0, 7
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[SBFMWri:%[0-9]+]]:gpr32 = SBFMWri [[COPY1]], 0, 7
; CHECK: %w0 = COPY [[SBFMWri]]
%2:gpr(s32) = COPY %w0
%0(s8) = G_TRUNC %2
@@ -284,15 +247,10 @@ body: |
liveins: %w0
; CHECK-LABEL: name: sext_s16_from_s8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK-NEXT: id: 3, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[SBFMWri:%[0-9]+]] = SBFMWri [[COPY1]], 0, 7
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[SBFMWri]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[SBFMWri:%[0-9]+]]:gpr32 = SBFMWri [[COPY1]], 0, 7
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[SBFMWri]]
; CHECK: %w0 = COPY [[COPY2]]
%2:gpr(s32) = COPY %w0
%0(s8) = G_TRUNC %2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ptr-casts.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ptr-casts.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ptr-casts.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-int-ptr-casts.mir Tue Oct 24 11:04:54 2017
@@ -24,11 +24,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: inttoptr_p0_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64all
- ; CHECK-NEXT: id: 1, class: gpr64all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64all = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64all = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(s64) = COPY %x0
%1(p0) = G_INTTOPTR %0
@@ -47,11 +44,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: ptrtoint_s64_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY [[COPY]]
; CHECK: %x0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s64) = G_PTRTOINT %0
@@ -70,11 +64,8 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: ptrtoint_s32_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]].sub_32
; CHECK: %w0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s32) = G_PTRTOINT %0
@@ -93,13 +84,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: ptrtoint_s16_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%0(p0) = COPY %x0
%1(s16) = G_PTRTOINT %0
@@ -119,13 +106,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: ptrtoint_s8_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%0(p0) = COPY %x0
%1(s8) = G_PTRTOINT %0
@@ -145,13 +128,9 @@ body: |
bb.0:
liveins: %x0
; CHECK-LABEL: name: ptrtoint_s1_p0
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%0(p0) = COPY %x0
%1(s1) = G_PTRTOINT %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-intrinsic-aarch64-sdiv.mir Tue Oct 24 11:04:54 2017
@@ -24,13 +24,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: sdiv_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[SDIVWr:%[0-9]+]] = SDIVWr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[SDIVWr:%[0-9]+]]:gpr32 = SDIVWr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[SDIVWr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-load.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-load.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-load.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-load.mir Tue Oct 24 11:04:54 2017
@@ -46,11 +46,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRXui:%[0-9]+]] = LDRXui [[COPY]], 0 :: (load 8 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRXui:%[0-9]+]]:gpr64 = LDRXui [[COPY]], 0 :: (load 8 from %ir.addr)
; CHECK: %x0 = COPY [[LDRXui]]
%0(p0) = COPY %x0
%1(s64) = G_LOAD %0 :: (load 8 from %ir.addr)
@@ -71,11 +68,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRWui:%[0-9]+]] = LDRWui [[COPY]], 0 :: (load 4 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRWui:%[0-9]+]]:gpr32 = LDRWui [[COPY]], 0 :: (load 4 from %ir.addr)
; CHECK: %w0 = COPY [[LDRWui]]
%0(p0) = COPY %x0
%1(s32) = G_LOAD %0 :: (load 4 from %ir.addr)
@@ -96,13 +90,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s16_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRHHui:%[0-9]+]] = LDRHHui [[COPY]], 0 :: (load 2 from %ir.addr)
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[LDRHHui]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRHHui:%[0-9]+]]:gpr32 = LDRHHui [[COPY]], 0 :: (load 2 from %ir.addr)
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32all = COPY [[LDRHHui]]
; CHECK: %w0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s16) = G_LOAD %0 :: (load 2 from %ir.addr)
@@ -124,13 +114,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s8_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRBBui:%[0-9]+]] = LDRBBui [[COPY]], 0 :: (load 1 from %ir.addr)
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[LDRBBui]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRBBui:%[0-9]+]]:gpr32 = LDRBBui [[COPY]], 0 :: (load 1 from %ir.addr)
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32all = COPY [[LDRBBui]]
; CHECK: %w0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s8) = G_LOAD %0 :: (load 1 from %ir.addr)
@@ -155,10 +141,7 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_fi_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[LDRXui:%[0-9]+]] = LDRXui %stack.0.ptr0, 0 :: (load 8)
+ ; CHECK: [[LDRXui:%[0-9]+]]:gpr64 = LDRXui %stack.0.ptr0, 0 :: (load 8)
; CHECK: %x0 = COPY [[LDRXui]]
%0(p0) = G_FRAME_INDEX %stack.0.ptr0
%1(s64) = G_LOAD %0 :: (load 8)
@@ -181,13 +164,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_128_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRXui:%[0-9]+]] = LDRXui [[COPY]], 16 :: (load 8 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRXui:%[0-9]+]]:gpr64 = LDRXui [[COPY]], 16 :: (load 8 from %ir.addr)
; CHECK: %x0 = COPY [[LDRXui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 128
@@ -212,13 +190,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_512_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRWui:%[0-9]+]] = LDRWui [[COPY]], 128 :: (load 4 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRWui:%[0-9]+]]:gpr32 = LDRWui [[COPY]], 128 :: (load 4 from %ir.addr)
; CHECK: %w0 = COPY [[LDRWui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 512
@@ -243,15 +216,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_64_s16_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr32
- ; CHECK-NEXT: id: 4, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRHHui:%[0-9]+]] = LDRHHui [[COPY]], 32 :: (load 2 from %ir.addr)
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[LDRHHui]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRHHui:%[0-9]+]]:gpr32 = LDRHHui [[COPY]], 32 :: (load 2 from %ir.addr)
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32all = COPY [[LDRHHui]]
; CHECK: %w0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 64
@@ -277,15 +244,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_1_s8_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr32
- ; CHECK-NEXT: id: 4, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRBBui:%[0-9]+]] = LDRBBui [[COPY]], 1 :: (load 1 from %ir.addr)
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[LDRBBui]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRBBui:%[0-9]+]]:gpr32 = LDRBBui [[COPY]], 1 :: (load 1 from %ir.addr)
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32all = COPY [[LDRBBui]]
; CHECK: %w0 = COPY [[COPY1]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 1
@@ -309,11 +270,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRDui:%[0-9]+]] = LDRDui [[COPY]], 0 :: (load 8 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRDui:%[0-9]+]]:fpr64 = LDRDui [[COPY]], 0 :: (load 8 from %ir.addr)
; CHECK: %d0 = COPY [[LDRDui]]
%0(p0) = COPY %x0
%1(s64) = G_LOAD %0 :: (load 8 from %ir.addr)
@@ -334,11 +292,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRSui:%[0-9]+]] = LDRSui [[COPY]], 0 :: (load 4 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRSui:%[0-9]+]]:fpr32 = LDRSui [[COPY]], 0 :: (load 4 from %ir.addr)
; CHECK: %s0 = COPY [[LDRSui]]
%0(p0) = COPY %x0
%1(s32) = G_LOAD %0 :: (load 4 from %ir.addr)
@@ -359,11 +314,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s16_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr16
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRHui:%[0-9]+]] = LDRHui [[COPY]], 0 :: (load 2 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRHui:%[0-9]+]]:fpr16 = LDRHui [[COPY]], 0 :: (load 2 from %ir.addr)
; CHECK: %h0 = COPY [[LDRHui]]
%0(p0) = COPY %x0
%1(s16) = G_LOAD %0 :: (load 2 from %ir.addr)
@@ -384,11 +336,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_s8_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr8
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRBui:%[0-9]+]] = LDRBui [[COPY]], 0 :: (load 1 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRBui:%[0-9]+]]:fpr8 = LDRBui [[COPY]], 0 :: (load 1 from %ir.addr)
; CHECK: %b0 = COPY [[LDRBui]]
%0(p0) = COPY %x0
%1(s8) = G_LOAD %0 :: (load 1 from %ir.addr)
@@ -411,13 +360,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_8_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRDui:%[0-9]+]] = LDRDui [[COPY]], 1 :: (load 8 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRDui:%[0-9]+]]:fpr64 = LDRDui [[COPY]], 1 :: (load 8 from %ir.addr)
; CHECK: %d0 = COPY [[LDRDui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 8
@@ -442,13 +386,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_16_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRSui:%[0-9]+]] = LDRSui [[COPY]], 4 :: (load 4 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRSui:%[0-9]+]]:fpr32 = LDRSui [[COPY]], 4 :: (load 4 from %ir.addr)
; CHECK: %s0 = COPY [[LDRSui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 16
@@ -473,13 +412,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_64_s16_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: fpr16
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRHui:%[0-9]+]] = LDRHui [[COPY]], 32 :: (load 2 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRHui:%[0-9]+]]:fpr16 = LDRHui [[COPY]], 32 :: (load 2 from %ir.addr)
; CHECK: %h0 = COPY [[LDRHui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 64
@@ -504,13 +438,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_gep_32_s8_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: fpr8
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRBui:%[0-9]+]] = LDRBui [[COPY]], 32 :: (load 1 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRBui:%[0-9]+]]:fpr8 = LDRBui [[COPY]], 32 :: (load 1 from %ir.addr)
; CHECK: %b0 = COPY [[LDRBui]]
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 32
@@ -532,11 +461,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: load_v2s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[LDRDui:%[0-9]+]] = LDRDui [[COPY]], 0 :: (load 8 from %ir.addr)
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[LDRDui:%[0-9]+]]:fpr64 = LDRDui [[COPY]], 0 :: (load 8 from %ir.addr)
; CHECK: %d0 = COPY [[LDRDui]]
%0(p0) = COPY %x0
%1(<2 x s32>) = G_LOAD %0 :: (load 8 from %ir.addr)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-muladd.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-muladd.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-muladd.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-muladd.mir Tue Oct 24 11:04:54 2017
@@ -26,18 +26,10 @@ body: |
liveins: %x0, %w1, %w2
; CHECK-LABEL: name: SMADDLrrr_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK-NEXT: id: 4, class: gpr
- ; CHECK-NEXT: id: 5, class: gpr
- ; CHECK-NEXT: id: 6, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY %w2
- ; CHECK: [[SMADDLrrr:%[0-9]+]] = SMADDLrrr [[COPY1]], [[COPY2]], [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32 = COPY %w2
+ ; CHECK: [[SMADDLrrr:%[0-9]+]]:gpr64 = SMADDLrrr [[COPY1]], [[COPY2]], [[COPY]]
; CHECK: %x0 = COPY [[SMADDLrrr]]
%0(s64) = COPY %x0
%1(s32) = COPY %w1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-neon-vcvtfxu2fp.mir Tue Oct 24 11:04:54 2017
@@ -23,12 +23,8 @@ body: |
liveins: %d0
; CHECK-LABEL: name: vcvtfxu2fp_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: fpr64
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[UCVTFd:%[0-9]+]] = UCVTFd [[COPY]], 12
+ ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY %d0
+ ; CHECK: [[UCVTFd:%[0-9]+]]:fpr64 = UCVTFd [[COPY]], 12
; CHECK: %d1 = COPY [[UCVTFd]]
%0(s64) = COPY %d0
%1(s32) = G_CONSTANT i32 12
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-phi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-phi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-phi.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-phi.mir Tue Oct 24 11:04:54 2017
@@ -4,20 +4,20 @@
source_filename = "/tmp/test.ll"
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
target triple = "aarch64-unknown-unknown"
-
+
define i32 @test_phi(i32 %argc) {
entry:
%cmp = icmp ugt i32 %argc, 0
br i1 %cmp, label %case1, label %case2
-
+
case1: ; preds = %entry
%tmp1 = add i32 %argc, 1
br label %return
-
+
case2: ; preds = %entry
%tmp2 = add i32 %argc, 2
br label %return
-
+
return: ; preds = %case2, %case1
%res = phi i32 [ %tmp1, %case1 ], [ %tmp2, %case2 ]
ret i32 %res
@@ -37,7 +37,7 @@ legalized: true
regBankSelected: true
selected: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr, preferred-register: '' }
- { id: 1, class: gpr, preferred-register: '' }
- { id: 2, class: gpr, preferred-register: '' }
@@ -47,14 +47,14 @@ registers:
- { id: 6, class: gpr, preferred-register: '' }
- { id: 7, class: gpr, preferred-register: '' }
- { id: 8, class: gpr, preferred-register: '' }
-liveins:
+liveins:
body: |
bb.1.entry:
successors: %bb.2.case1(0x40000000), %bb.3.case2(0x40000000)
liveins: %w0
; CHECK-LABEL: name: test_phi
- ; CHECK: [[RES:%.*]] = PHI
-
+ ; CHECK: [[RES:%.*]]:gpr32 = PHI
+
%0(s32) = COPY %w0
%1(s32) = G_CONSTANT i32 0
%3(s32) = G_CONSTANT i32 1
@@ -63,18 +63,18 @@ body: |
%2(s1) = G_TRUNC %8(s32)
G_BRCOND %2(s1), %bb.2.case1
G_BR %bb.3.case2
-
+
bb.2.case1:
successors: %bb.4.return(0x80000000)
-
+
%4(s32) = G_ADD %0, %3
G_BR %bb.4.return
-
+
bb.3.case2:
successors: %bb.4.return(0x80000000)
-
+
%6(s32) = G_ADD %0, %5
-
+
bb.4.return:
%7(s32) = G_PHI %4(s32), %bb.2.case1, %6(s32), %bb.3.case2
%w0 = COPY %7(s32)
@@ -116,7 +116,7 @@ body: |
bb.2:
- ; CHECK: %{{[0-9]+}} = PHI %{{[0-9]+}}, %bb.0, %{{[0-9]+}}, %bb.1
+ ; CHECK: %{{[0-9]+}}:gpr64 = PHI %{{[0-9]+}}, %bb.0, %{{[0-9]+}}, %bb.1
%3(p0) = G_PHI %0(p0), %bb.0, %1(p0), %bb.1
%x0 = COPY %3(p0)
RET_ReallyLR implicit %x0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-pr32733.mir Tue Oct 24 11:04:54 2017
@@ -53,9 +53,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: main
; CHECK: liveins: %w0
- ; CHECK: [[MOVi32imm:%[0-9]+]] = MOVi32imm 1
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[EONWrr:%[0-9]+]] = EONWrr [[COPY]], [[MOVi32imm]]
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[EONWrr:%[0-9]+]]:gpr32 = EONWrr [[COPY]], [[MOVi32imm]]
; CHECK: %w0 = COPY [[EONWrr]]
%0(s32) = G_CONSTANT i32 -1
%3(s32) = G_CONSTANT i32 1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-store.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-store.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-store.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-store.mir Tue Oct 24 11:04:54 2017
@@ -45,11 +45,8 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: store_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
; CHECK: STRXui [[COPY1]], [[COPY]], 0 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(s64) = COPY %x1
@@ -71,11 +68,8 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
; CHECK: STRWui [[COPY1]], [[COPY]], 0 :: (store 4 into %ir.addr)
%0(p0) = COPY %x0
%1(s32) = COPY %w1
@@ -97,13 +91,9 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_s16_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32 = COPY [[COPY1]]
; CHECK: STRHHui [[COPY2]], [[COPY]], 0 :: (store 2 into %ir.addr)
%0(p0) = COPY %x0
%2:gpr(s32) = COPY %w1
@@ -126,13 +116,9 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_s8_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32 = COPY [[COPY1]]
; CHECK: STRBBui [[COPY2]], [[COPY]], 0 :: (store 1 into %ir.addr)
%0(p0) = COPY %x0
%2:gpr(s32) = COPY %w1
@@ -155,10 +141,7 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: store_zero_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
; CHECK: STRXui %xzr, [[COPY]], 0 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(s64) = G_CONSTANT i64 0
@@ -180,10 +163,7 @@ body: |
liveins: %x0
; CHECK-LABEL: name: store_zero_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
; CHECK: STRWui %wzr, [[COPY]], 0 :: (store 4 into %ir.addr)
%0(p0) = COPY %x0
%1(s32) = G_CONSTANT i32 0
@@ -208,10 +188,7 @@ body: |
liveins: %x0
; CHECK-LABEL: name: store_fi_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
; CHECK: STRXui [[COPY]], %stack.0.ptr0, 0 :: (store 8)
%0(p0) = COPY %x0
%1(p0) = G_FRAME_INDEX %stack.0.ptr0
@@ -234,13 +211,8 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: store_gep_128_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
; CHECK: STRXui [[COPY1]], [[COPY]], 16 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(s64) = COPY %x1
@@ -265,13 +237,8 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_gep_512_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
; CHECK: STRWui [[COPY1]], [[COPY]], 128 :: (store 4 into %ir.addr)
%0(p0) = COPY %x0
%1(s32) = COPY %w1
@@ -296,15 +263,9 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_gep_64_s16_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK-NEXT: id: 4, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32 = COPY [[COPY1]]
; CHECK: STRHHui [[COPY2]], [[COPY]], 32 :: (store 2 into %ir.addr)
%0(p0) = COPY %x0
%4:gpr(s32) = COPY %w1
@@ -330,15 +291,9 @@ body: |
liveins: %x0, %w1
; CHECK-LABEL: name: store_gep_1_s8_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK-NEXT: id: 4, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32 = COPY [[COPY1]]
; CHECK: STRBBui [[COPY2]], [[COPY]], 1 :: (store 1 into %ir.addr)
%0(p0) = COPY %x0
%4:gpr(s32) = COPY %w1
@@ -362,11 +317,8 @@ body: |
liveins: %x0, %d1
; CHECK-LABEL: name: store_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
; CHECK: STRDui [[COPY1]], [[COPY]], 0 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(s64) = COPY %d1
@@ -388,11 +340,8 @@ body: |
liveins: %x0, %s1
; CHECK-LABEL: name: store_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
; CHECK: STRSui [[COPY1]], [[COPY]], 0 :: (store 4 into %ir.addr)
%0(p0) = COPY %x0
%1(s32) = COPY %s1
@@ -416,13 +365,8 @@ body: |
liveins: %x0, %d1
; CHECK-LABEL: name: store_gep_8_s64_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr64
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
; CHECK: STRDui [[COPY1]], [[COPY]], 1 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(s64) = COPY %d1
@@ -447,13 +391,8 @@ body: |
liveins: %x0, %s1
; CHECK-LABEL: name: store_gep_8_s32_fpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: fpr32
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gpr
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr32 = COPY %s1
; CHECK: STRSui [[COPY1]], [[COPY]], 2 :: (store 4 into %ir.addr)
%0(p0) = COPY %x0
%1(s32) = COPY %s1
@@ -462,26 +401,22 @@ body: |
G_STORE %1, %3 :: (store 4 into %ir.addr)
...
---
-# CHECK-LABEL: name: store_v2s32
name: store_v2s32
legalized: true
regBankSelected: true
-# CHECK: registers:
-# CHECK-NEXT: - { id: 0, class: gpr64sp, preferred-register: '' }
-# CHECK-NEXT: - { id: 1, class: fpr64, preferred-register: '' }
registers:
- { id: 0, class: gpr }
- { id: 1, class: fpr }
-# CHECK: body:
-# CHECK: %0 = COPY %x0
-# CHECK: %1 = COPY %d1
-# CHECK: STRDui %1, %0, 0 :: (store 8 into %ir.addr)
body: |
bb.0:
liveins: %x0, %d1
+ ; CHECK-LABEL: name: store_v2s32
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY %d1
+ ; CHECK: STRDui [[COPY1]], [[COPY]], 0 :: (store 8 into %ir.addr)
%0(p0) = COPY %x0
%1(<2 x s32>) = COPY %d1
G_STORE %1, %0 :: (store 8 into %ir.addr)
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-trunc.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-trunc.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-trunc.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-trunc.mir Tue Oct 24 11:04:54 2017
@@ -23,11 +23,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: trunc_s32_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64sp
- ; CHECK-NEXT: id: 1, class: gpr32sp
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64sp = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32sp = COPY [[COPY]].sub_32
; CHECK: %w0 = COPY [[COPY1]]
%0(s64) = COPY %x0
%1(s32) = G_TRUNC %0
@@ -48,13 +45,9 @@ body: |
liveins: %x0
; CHECK-LABEL: name: trunc_s8_s64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_32
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]].sub_32
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%0(s64) = COPY %x0
%1(s8) = G_TRUNC %0
@@ -76,13 +69,9 @@ body: |
liveins: %w0
; CHECK-LABEL: name: trunc_s1_s32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32all
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]]
- ; CHECK: [[COPY2:%[0-9]+]] = COPY [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY [[COPY]]
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr32all = COPY [[COPY1]]
; CHECK: %w0 = COPY [[COPY2]]
%0(s32) = COPY %w0
%1(s1) = G_TRUNC %0
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-xor.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-xor.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-xor.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select-xor.mir Tue Oct 24 11:04:54 2017
@@ -29,13 +29,9 @@ body: |
liveins: %w0, %w1
; CHECK-LABEL: name: xor_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr32
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %w1
- ; CHECK: [[EORWrr:%[0-9]+]] = EORWrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY %w1
+ ; CHECK: [[EORWrr:%[0-9]+]]:gpr32 = EORWrr [[COPY]], [[COPY1]]
; CHECK: %w0 = COPY [[EORWrr]]
%0(s32) = COPY %w0
%1(s32) = COPY %w1
@@ -59,13 +55,9 @@ body: |
liveins: %x0, %x1
; CHECK-LABEL: name: xor_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr64
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %x1
- ; CHECK: [[EORXrr:%[0-9]+]] = EORXrr [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY %x1
+ ; CHECK: [[EORXrr:%[0-9]+]]:gpr64 = EORXrr [[COPY]], [[COPY1]]
; CHECK: %x0 = COPY [[EORXrr]]
%0(s64) = COPY %x0
%1(s64) = COPY %x1
@@ -90,12 +82,8 @@ body: |
liveins: %w0
; CHECK-LABEL: name: xor_constant_n1_s32_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[ORNWrr:%[0-9]+]] = ORNWrr %wzr, [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[ORNWrr:%[0-9]+]]:gpr32 = ORNWrr %wzr, [[COPY]]
; CHECK: %w0 = COPY [[ORNWrr]]
%0(s32) = COPY %w0
%1(s32) = G_CONSTANT i32 -1
@@ -119,12 +107,8 @@ body: |
liveins: %x0
; CHECK-LABEL: name: xor_constant_n1_s64_gpr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr64
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %x0
- ; CHECK: [[ORNXrr:%[0-9]+]] = ORNXrr %xzr, [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[ORNXrr:%[0-9]+]]:gpr64 = ORNXrr %xzr, [[COPY]]
; CHECK: %x0 = COPY [[ORNXrr]]
%0(s64) = COPY %x0
%1(s64) = G_CONSTANT i64 -1
@@ -146,16 +130,12 @@ registers:
body: |
; CHECK-LABEL: name: xor_constant_n1_s32_gpr_2bb
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gpr32
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr32
; CHECK: bb.0:
; CHECK: successors: %bb.1(0x80000000)
; CHECK: B %bb.1
; CHECK: bb.1:
- ; CHECK: [[COPY:%[0-9]+]] = COPY %w0
- ; CHECK: [[ORNWrr:%[0-9]+]] = ORNWrr %wzr, [[COPY]]
+ ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY %w0
+ ; CHECK: [[ORNWrr:%[0-9]+]]:gpr32 = ORNWrr %wzr, [[COPY]]
; CHECK: %w0 = COPY [[ORNWrr]]
bb.0:
liveins: %w0, %w1
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/select.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/select.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/select.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/select.mir Tue Oct 24 11:04:54 2017
@@ -43,7 +43,7 @@ stack:
- { id: 0, name: ptr0, offset: 0, size: 8, alignment: 8 }
# CHECK: body:
-# CHECK: %0 = ADDXri %stack.0.ptr0, 0, 0
+# CHECK: %0:gpr64sp = ADDXri %stack.0.ptr0, 0, 0
body: |
bb.0:
%0(p0) = G_FRAME_INDEX %stack.0.ptr0
@@ -61,8 +61,8 @@ registers:
- { id: 2, class: gpr }
# CHECK: body:
-# CHECK: %1 = MOVi64imm 42
-# CHECK: %2 = ADDXrr %0, %1
+# CHECK: %1:gpr64 = MOVi64imm 42
+# CHECK: %2:gpr64 = ADDXrr %0, %1
body: |
bb.0:
liveins: %x0
@@ -79,7 +79,7 @@ legalized: true
regBankSelected: true
# CHECK: body:
-# CHECK: %1 = ANDXri %0, 8060
+# CHECK: %1:gpr64sp = ANDXri %0, 8060
body: |
bb.0:
liveins: %x0
@@ -98,9 +98,9 @@ registers:
- { id: 0, class: gpr }
# CHECK: body:
-# IOS: %0 = MOVaddr target-flags(aarch64-page) @var_local, target-flags(aarch64-pageoff, aarch64-nc) @var_local
-# LINUX-DEFAULT: %0 = MOVaddr target-flags(aarch64-page) @var_local, target-flags(aarch64-pageoff, aarch64-nc) @var_local
-# LINUX-PIC: %0 = LOADgot target-flags(aarch64-got) @var_local
+# IOS: %0:gpr64 = MOVaddr target-flags(aarch64-page) @var_local, target-flags(aarch64-pageoff, aarch64-nc) @var_local
+# LINUX-DEFAULT: %0:gpr64 = MOVaddr target-flags(aarch64-page) @var_local, target-flags(aarch64-pageoff, aarch64-nc) @var_local
+# LINUX-PIC: %0:gpr64 = LOADgot target-flags(aarch64-got) @var_local
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @var_local
@@ -116,9 +116,9 @@ registers:
- { id: 0, class: gpr }
# CHECK: body:
-# IOS: %0 = LOADgot target-flags(aarch64-got) @var_got
-# LINUX-DEFAULT: %0 = MOVaddr target-flags(aarch64-page) @var_got, target-flags(aarch64-pageoff, aarch64-nc) @var_got
-# LINUX-PIC: %0 = LOADgot target-flags(aarch64-got) @var_got
+# IOS: %0:gpr64 = LOADgot target-flags(aarch64-got) @var_got
+# LINUX-DEFAULT: %0:gpr64 = MOVaddr target-flags(aarch64-page) @var_got, target-flags(aarch64-pageoff, aarch64-nc) @var_got
+# LINUX-PIC: %0:gpr64 = LOADgot target-flags(aarch64-got) @var_got
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @var_got
@@ -154,13 +154,13 @@ registers:
# CHECK: body:
# CHECK: %wzr = SUBSWrr %0, %0, implicit-def %nzcv
-# CHECK: %1 = CSINCWr %wzr, %wzr, 1, implicit %nzcv
+# CHECK: %1:gpr32 = CSINCWr %wzr, %wzr, 1, implicit %nzcv
# CHECK: %xzr = SUBSXrr %2, %2, implicit-def %nzcv
-# CHECK: %3 = CSINCWr %wzr, %wzr, 3, implicit %nzcv
+# CHECK: %3:gpr32 = CSINCWr %wzr, %wzr, 3, implicit %nzcv
# CHECK: %xzr = SUBSXrr %4, %4, implicit-def %nzcv
-# CHECK: %5 = CSINCWr %wzr, %wzr, 0, implicit %nzcv
+# CHECK: %5:gpr32 = CSINCWr %wzr, %wzr, 0, implicit %nzcv
body: |
bb.0:
@@ -210,12 +210,12 @@ registers:
# CHECK: body:
# CHECK: FCMPSrr %0, %0, implicit-def %nzcv
-# CHECK: [[TST_MI:%[0-9]+]] = CSINCWr %wzr, %wzr, 5, implicit %nzcv
-# CHECK: [[TST_GT:%[0-9]+]] = CSINCWr %wzr, %wzr, 13, implicit %nzcv
-# CHECK: %1 = ORRWrr [[TST_MI]], [[TST_GT]]
+# CHECK: [[TST_MI:%[0-9]+]]:gpr32 = CSINCWr %wzr, %wzr, 5, implicit %nzcv
+# CHECK: [[TST_GT:%[0-9]+]]:gpr32 = CSINCWr %wzr, %wzr, 13, implicit %nzcv
+# CHECK: %1:gpr32 = ORRWrr [[TST_MI]], [[TST_GT]]
# CHECK: FCMPDrr %2, %2, implicit-def %nzcv
-# CHECK: %3 = CSINCWr %wzr, %wzr, 4, implicit %nzcv
+# CHECK: %3:gpr32 = CSINCWr %wzr, %wzr, 4, implicit %nzcv
body: |
bb.0:
@@ -253,7 +253,7 @@ registers:
# CHECK: body:
# CHECK: bb.1:
-# CHECK: %2 = PHI %0, %bb.0, %2, %bb.1
+# CHECK: %2:fpr32 = PHI %0, %bb.0, %2, %bb.1
body: |
bb.0:
@@ -305,11 +305,11 @@ registers:
# CHECK: body:
# CHECK: %wzr = ANDSWri %0, 0, implicit-def %nzcv
-# CHECK: %3 = CSELWr %1, %2, 1, implicit %nzcv
+# CHECK: %3:gpr32 = CSELWr %1, %2, 1, implicit %nzcv
# CHECK: %wzr = ANDSWri %0, 0, implicit-def %nzcv
-# CHECK: %6 = CSELXr %4, %5, 1, implicit %nzcv
+# CHECK: %6:gpr64 = CSELXr %4, %5, 1, implicit %nzcv
# CHECK: %wzr = ANDSWri %0, 0, implicit-def %nzcv
-# CHECK: %9 = CSELXr %7, %8, 1, implicit %nzcv
+# CHECK: %9:gpr64 = CSELXr %7, %8, 1, implicit %nzcv
body: |
bb.0:
liveins: %w0, %w1, %w2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/translate-gep.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/translate-gep.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/translate-gep.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/translate-gep.ll Tue Oct 24 11:04:54 2017
@@ -4,9 +4,9 @@
define %type* @first_offset_const(%type* %addr) {
; CHECK-LABEL: name: first_offset_const
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[OFFSET:%[0-9]+]](s64) = G_CONSTANT i64 32
-; CHECK: [[RES:%[0-9]+]](p0) = G_GEP [[BASE]], [[OFFSET]](s64)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[OFFSET:%[0-9]+]]:_(s64) = G_CONSTANT i64 32
+; CHECK: [[RES:%[0-9]+]]:_(p0) = G_GEP [[BASE]], [[OFFSET]](s64)
; CHECK: %x0 = COPY [[RES]](p0)
%res = getelementptr %type, %type* %addr, i32 1
@@ -15,8 +15,8 @@ define %type* @first_offset_const(%type*
define %type* @first_offset_trivial(%type* %addr) {
; CHECK-LABEL: name: first_offset_trivial
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[TRIVIAL:%[0-9]+]](p0) = COPY [[BASE]](p0)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[TRIVIAL:%[0-9]+]]:_(p0) = COPY [[BASE]](p0)
; CHECK: %x0 = COPY [[TRIVIAL]](p0)
%res = getelementptr %type, %type* %addr, i32 0
@@ -25,12 +25,12 @@ define %type* @first_offset_trivial(%typ
define %type* @first_offset_variable(%type* %addr, i64 %idx) {
; CHECK-LABEL: name: first_offset_variable
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IDX:%[0-9]+]](s64) = COPY %x1
-; CHECK: [[SIZE:%[0-9]+]](s64) = G_CONSTANT i64 32
-; CHECK: [[OFFSET:%[0-9]+]](s64) = G_MUL [[SIZE]], [[IDX]]
-; CHECK: [[STEP0:%[0-9]+]](p0) = G_GEP [[BASE]], [[OFFSET]](s64)
-; CHECK: [[RES:%[0-9]+]](p0) = COPY [[STEP0]](p0)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IDX:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 32
+; CHECK: [[OFFSET:%[0-9]+]]:_(s64) = G_MUL [[SIZE]], [[IDX]]
+; CHECK: [[STEP0:%[0-9]+]]:_(p0) = G_GEP [[BASE]], [[OFFSET]](s64)
+; CHECK: [[RES:%[0-9]+]]:_(p0) = COPY [[STEP0]](p0)
; CHECK: %x0 = COPY [[RES]](p0)
%res = getelementptr %type, %type* %addr, i64 %idx
@@ -39,13 +39,13 @@ define %type* @first_offset_variable(%ty
define %type* @first_offset_ext(%type* %addr, i32 %idx) {
; CHECK-LABEL: name: first_offset_ext
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IDX32:%[0-9]+]](s32) = COPY %w1
-; CHECK: [[SIZE:%[0-9]+]](s64) = G_CONSTANT i64 32
-; CHECK: [[IDX64:%[0-9]+]](s64) = G_SEXT [[IDX32]](s32)
-; CHECK: [[OFFSET:%[0-9]+]](s64) = G_MUL [[SIZE]], [[IDX64]]
-; CHECK: [[STEP0:%[0-9]+]](p0) = G_GEP [[BASE]], [[OFFSET]](s64)
-; CHECK: [[RES:%[0-9]+]](p0) = COPY [[STEP0]](p0)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IDX32:%[0-9]+]]:_(s32) = COPY %w1
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 32
+; CHECK: [[IDX64:%[0-9]+]]:_(s64) = G_SEXT [[IDX32]](s32)
+; CHECK: [[OFFSET:%[0-9]+]]:_(s64) = G_MUL [[SIZE]], [[IDX64]]
+; CHECK: [[STEP0:%[0-9]+]]:_(p0) = G_GEP [[BASE]], [[OFFSET]](s64)
+; CHECK: [[RES:%[0-9]+]]:_(p0) = COPY [[STEP0]](p0)
; CHECK: %x0 = COPY [[RES]](p0)
%res = getelementptr %type, %type* %addr, i32 %idx
@@ -55,14 +55,14 @@ define %type* @first_offset_ext(%type* %
%type1 = type [4 x [4 x i32]]
define i32* @const_then_var(%type1* %addr, i64 %idx) {
; CHECK-LABEL: name: const_then_var
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IDX:%[0-9]+]](s64) = COPY %x1
-; CHECK: [[OFFSET1:%[0-9]+]](s64) = G_CONSTANT i64 272
-; CHECK: [[SIZE:%[0-9]+]](s64) = G_CONSTANT i64 4
-; CHECK: [[BASE1:%[0-9]+]](p0) = G_GEP [[BASE]], [[OFFSET1]](s64)
-; CHECK: [[OFFSET2:%[0-9]+]](s64) = G_MUL [[SIZE]], [[IDX]]
-; CHECK: [[BASE2:%[0-9]+]](p0) = G_GEP [[BASE1]], [[OFFSET2]](s64)
-; CHECK: [[RES:%[0-9]+]](p0) = COPY [[BASE2]](p0)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IDX:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK: [[OFFSET1:%[0-9]+]]:_(s64) = G_CONSTANT i64 272
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 4
+; CHECK: [[BASE1:%[0-9]+]]:_(p0) = G_GEP [[BASE]], [[OFFSET1]](s64)
+; CHECK: [[OFFSET2:%[0-9]+]]:_(s64) = G_MUL [[SIZE]], [[IDX]]
+; CHECK: [[BASE2:%[0-9]+]]:_(p0) = G_GEP [[BASE1]], [[OFFSET2]](s64)
+; CHECK: [[RES:%[0-9]+]]:_(p0) = COPY [[BASE2]](p0)
; CHECK: %x0 = COPY [[RES]](p0)
%res = getelementptr %type1, %type1* %addr, i32 4, i32 1, i64 %idx
@@ -71,13 +71,13 @@ define i32* @const_then_var(%type1* %add
define i32* @var_then_const(%type1* %addr, i64 %idx) {
; CHECK-LABEL: name: var_then_const
-; CHECK: [[BASE:%[0-9]+]](p0) = COPY %x0
-; CHECK: [[IDX:%[0-9]+]](s64) = COPY %x1
-; CHECK: [[SIZE:%[0-9]+]](s64) = G_CONSTANT i64 64
-; CHECK: [[OFFSET2:%[0-9]+]](s64) = G_CONSTANT i64 40
-; CHECK: [[OFFSET1:%[0-9]+]](s64) = G_MUL [[SIZE]], [[IDX]]
-; CHECK: [[BASE1:%[0-9]+]](p0) = G_GEP [[BASE]], [[OFFSET1]](s64)
-; CHECK: [[BASE2:%[0-9]+]](p0) = G_GEP [[BASE1]], [[OFFSET2]](s64)
+; CHECK: [[BASE:%[0-9]+]]:_(p0) = COPY %x0
+; CHECK: [[IDX:%[0-9]+]]:_(s64) = COPY %x1
+; CHECK: [[SIZE:%[0-9]+]]:_(s64) = G_CONSTANT i64 64
+; CHECK: [[OFFSET2:%[0-9]+]]:_(s64) = G_CONSTANT i64 40
+; CHECK: [[OFFSET1:%[0-9]+]]:_(s64) = G_MUL [[SIZE]], [[IDX]]
+; CHECK: [[BASE1:%[0-9]+]]:_(p0) = G_GEP [[BASE]], [[OFFSET1]](s64)
+; CHECK: [[BASE2:%[0-9]+]]:_(p0) = G_GEP [[BASE1]], [[OFFSET2]](s64)
; CHECK: %x0 = COPY [[BASE2]](p0)
%res = getelementptr %type1, %type1* %addr, i64 %idx, i32 2, i32 2
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/varargs-ios-translator.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/varargs-ios-translator.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/varargs-ios-translator.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/varargs-ios-translator.ll Tue Oct 24 11:04:54 2017
@@ -6,8 +6,8 @@ define void @test_varargs_sentinel(i8* %
; CHECK: fixedStack:
; CHECK: - { id: [[VARARGS_SLOT:[0-9]+]], type: default, offset: 8
; CHECK: body:
-; CHECK: [[LIST:%[0-9]+]] = COPY %x0
-; CHECK: [[VARARGS_AREA:%[0-9]+]] = ADDXri %fixed-stack.[[VARARGS_SLOT]], 0, 0
+; CHECK: [[LIST:%[0-9]+]]:gpr64sp = COPY %x0
+; CHECK: [[VARARGS_AREA:%[0-9]+]]:gpr64common = ADDXri %fixed-stack.[[VARARGS_SLOT]], 0, 0
; CHECK: STRXui [[VARARGS_AREA]], [[LIST]], 0 :: (store 8 into %ir.list, align 0)
call void @llvm.va_start(i8* %list)
ret void
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/vastart.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/vastart.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/vastart.ll (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/vastart.ll Tue Oct 24 11:04:54 2017
@@ -5,7 +5,7 @@
declare void @llvm.va_start(i8*)
define void @test_va_start(i8* %list) {
; CHECK-LABEL: name: test_va_start
-; CHECK: [[LIST:%[0-9]+]](p0) = COPY %x0
+; CHECK: [[LIST:%[0-9]+]]:_(p0) = COPY %x0
; CHECK-IOS: G_VASTART [[LIST]](p0) :: (store 8 into %ir.list, align 0)
; CHECK-LINUX: G_VASTART [[LIST]](p0) :: (store 32 into %ir.list, align 0)
call void @llvm.va_start(i8* %list)
Modified: llvm/trunk/test/CodeGen/AArch64/arm64-regress-opt-cmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/arm64-regress-opt-cmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/arm64-regress-opt-cmp.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/arm64-regress-opt-cmp.mir Tue Oct 24 11:04:54 2017
@@ -1,5 +1,5 @@
# RUN: llc -mtriple=aarch64-linux-gnu -run-pass peephole-opt -o - %s | FileCheck %s
-# CHECK: %1 = ANDWri {{.*}}
+# CHECK: %1:gpr32common = ANDWri {{.*}}
# CHECK-NEXT: %wzr = SUBSWri {{.*}}
--- |
define i32 @test01() nounwind {
Modified: llvm/trunk/test/CodeGen/AArch64/regcoal-physreg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/regcoal-physreg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/regcoal-physreg.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/regcoal-physreg.mir Tue Oct 24 11:04:54 2017
@@ -13,7 +13,7 @@ name: func0
body: |
bb.0:
; We usually should not coalesce copies from allocatable physregs.
- ; CHECK: %0 = COPY %w7
+ ; CHECK: %0:gpr32 = COPY %w7
; CHECK: STRWui %0, %x1, 0
%0 : gpr32 = COPY %w7
STRWui %0, %x1, 0
@@ -26,7 +26,7 @@ body: |
; It is not fine to coalesce copies from reserved physregs when they are
; clobbered.
- ; CHECK: %2 = COPY %fp
+ ; CHECK: %2:gpr64 = COPY %fp
; CHECK: STRXui %2, %x1, 0
%2 : gpr64 = COPY %fp
%fp = SUBXri %fp, 4, 0
@@ -56,14 +56,14 @@ body: |
; Only coalesce when the source register is reserved as a whole (this is
; a limitation of the current code which cannot update liveness information
; of the non-reserved part).
- ; CHECK: %6 = COPY %x28_fp
+ ; CHECK: %6:xseqpairsclass = COPY %x28_fp
; CHECK: HINT 0, implicit %6
%6 : xseqpairsclass = COPY %x28_fp
HINT 0, implicit %6
; It is not fine to coalesce copies from reserved physregs when they are
; clobbered by the regmask on a call.
- ; CHECK: %7 = COPY %x18
+ ; CHECK: %7:gpr64 = COPY %x18
; CHECK: BL @f2, csr_aarch64_aapcs, implicit-def dead %lr, implicit %sp, implicit-def %sp
; CHECK: STRXui %7, %x1, 0
@@ -80,7 +80,7 @@ body: |
; Cannot coalesce when there are reads of the physreg.
; CHECK-NOT: %fp = SUBXri %fp, 8, 0
- ; CHECK: %9 = SUBXri %fp, 8, 0
+ ; CHECK: %9:gpr64sp = SUBXri %fp, 8, 0
; CHECK: STRXui %fp, %fp, 0
; CHECK: %fp = COPY %9
%9 : gpr64sp = SUBXri %fp, 8, 0
@@ -96,7 +96,7 @@ body: |
; Cannot coalesce physreg because we have reads on other CFG paths (we
; currently abort for any control flow)
; CHECK-NOT: %fp = SUBXri
- ; CHECK: %0 = SUBXri %fp, 12, 0
+ ; CHECK: %0:gpr64sp = SUBXri %fp, 12, 0
; CHECK: CBZX undef %x0, %bb.1
; CHECK: B %bb.2
%0 : gpr64sp = SUBXri %fp, 12, 0
Modified: llvm/trunk/test/CodeGen/AArch64/spill-undef.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/spill-undef.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/spill-undef.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/spill-undef.mir Tue Oct 24 11:04:54 2017
@@ -5,19 +5,19 @@
--- |
; ModuleID = 'stuff.ll'
target triple = "aarch64--"
-
+
@g = external global i32
-
+
define void @foobar() {
ret void
}
-
+
...
---
name: foobar
alignment: 2
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr32 }
- { id: 1, class: gpr32 }
- { id: 2, class: gpr32all }
@@ -37,25 +37,25 @@ body: |
; But on that path, we don't care about its value.
; Emit a simple KILL instruction instead of an
; actual spill.
- ; CHECK: [[UNDEF:%[0-9]+]] = IMPLICIT_DEF
+ ; CHECK: [[UNDEF:%[0-9]+]]:gpr32 = IMPLICIT_DEF
; CHECK-NEXT: KILL [[UNDEF]]
%8 = IMPLICIT_DEF
; %9 us going to be spilled.
; But it is only partially undef.
; Make sure we spill it properly
- ; CHECK: [[NINE:%[0-9]+]] = COPY %x0
- ; CHECK: [[NINE]].sub_32 = IMPLICIT_DEF
+ ; CHECK: [[NINE:%[0-9]+]]:gpr64 = COPY %x0
+ ; CHECK: [[NINE]].sub_32:gpr64 = IMPLICIT_DEF
; CHECK-NEXT: STRXui [[NINE]]
%9 = COPY %x0
%9.sub_32 = IMPLICIT_DEF
CBNZW %wzr, %bb.2
B %bb.1
-
+
bb.1:
%4 = ADRP target-flags(aarch64-page) @g
%8 = LDRWui %4, target-flags(aarch64-pageoff, aarch64-nc) @g :: (volatile dereferenceable load 4 from @g)
INLINEASM $nop, 1, 12, implicit-def dead early-clobber %x0, 12, implicit-def dead early-clobber %x1, 12, implicit-def dead early-clobber %x2, 12, implicit-def dead early-clobber %x3, 12, implicit-def dead early-clobber %x4, 12, implicit-def dead early-clobber %x5, 12, implicit-def dead early-clobber %x6, 12, implicit-def dead early-clobber %x7, 12, implicit-def dead early-clobber %x8, 12, implicit-def dead early-clobber %x9, 12, implicit-def dead early-clobber %x10, 12, implicit-def dead early-clobber %x11, 12, implicit-def dead early-clobber %x12, 12, implicit-def dead early-clobber %x13, 12, implicit-def dead early-clobber %x14, 12, implicit-def dead early-clobber %x15, 12, implicit-def dead early-clobber %x16, 12, implicit-def dead early-clobber %x17, 12, implicit-def dead early-clobber %x18, 12, implicit-def dead early-clobber %x19, 12, implicit-def dead early-clobber %x20, 12, implicit-def dead early-clobber %x21, 12, implicit-def dead early-clobber %x22, 12, implicit-def dead early-clobber %x23, 12, implicit-def dead early-clobber %x24, 12, implicit-def dead early-clobber %x25, 12, implicit-def dead early-clobber %x26, 12, implicit-def dead early-clobber %x27, 12, implicit-def dead early-clobber %x28, 12, implicit-def dead early-clobber %fp, 12, implicit-def dead early-clobber %lr
-
+
bb.2:
INLINEASM $nop, 1, 12, implicit-def dead early-clobber %x0, 12, implicit-def dead early-clobber %x1, 12, implicit-def dead early-clobber %x2, 12, implicit-def dead early-clobber %x3, 12, implicit-def dead early-clobber %x4, 12, implicit-def dead early-clobber %x5, 12, implicit-def dead early-clobber %x6, 12, implicit-def dead early-clobber %x7, 12, implicit-def dead early-clobber %x8, 12, implicit-def dead early-clobber %x9, 12, implicit-def dead early-clobber %x10, 12, implicit-def dead early-clobber %x11, 12, implicit-def dead early-clobber %x12, 12, implicit-def dead early-clobber %x13, 12, implicit-def dead early-clobber %x14, 12, implicit-def dead early-clobber %x15, 12, implicit-def dead early-clobber %x16, 12, implicit-def dead early-clobber %x17, 12, implicit-def dead early-clobber %x18, 12, implicit-def dead early-clobber %x19, 12, implicit-def dead early-clobber %x20, 12, implicit-def dead early-clobber %x21, 12, implicit-def dead early-clobber %x22, 12, implicit-def dead early-clobber %x23, 12, implicit-def dead early-clobber %x24, 12, implicit-def dead early-clobber %x25, 12, implicit-def dead early-clobber %x26, 12, implicit-def dead early-clobber %x27, 12, implicit-def dead early-clobber %x28, 12, implicit-def dead early-clobber %fp, 12, implicit-def dead early-clobber %lr
%6 = ADRP target-flags(aarch64-page) @g
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll Tue Oct 24 11:04:54 2017
@@ -5,7 +5,7 @@
; Tests for add.
; CHECK: name: addi32
-; CHECK: {{%[0-9]+}}(s32) = G_ADD
+; CHECK: {{%[0-9]+}}:_(s32) = G_ADD
define amdgpu_kernel void @addi32(i32 %arg1, i32 %arg2) {
%res = add i32 %arg1, %arg2
store i32 %res, i32 addrspace(1)* undef
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir Tue Oct 24 11:04:54 2017
@@ -13,7 +13,7 @@ legalized: true
regBankSelected: true
# GCN: global_addrspace
-# GCN: [[PTR:%[0-9]+]] = COPY %vgpr0_vgpr1
+# GCN: [[PTR:%[0-9]+]]:vreg_64 = COPY %vgpr0_vgpr1
# GCN: FLAT_LOAD_DWORD [[PTR]], 0, 0, 0
body: |
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir Tue Oct 24 11:04:54 2017
@@ -14,83 +14,83 @@ legalized: true
regBankSelected: true
# GCN: body:
-# GCN: [[PTR:%[0-9]+]] = COPY %sgpr0_sgpr1
+# GCN: [[PTR:%[0-9]+]]:sreg_64 = COPY %sgpr0_sgpr1
# Immediate offset:
# SICI: S_LOAD_DWORD_IMM [[PTR]], 1, 0
-# VI: S_LOAD_DWORD_IMM [[PTR]], 4, 0
+# VI: S_LOAD_DWORD_IMM [[PTR]], 4, 0
# Max immediate offset for SI
# SICI: S_LOAD_DWORD_IMM [[PTR]], 255, 0
# VI: S_LOAD_DWORD_IMM [[PTR]], 1020, 0
# Immediate overflow for SI
-# SI: [[K1024:%[0-9]+]] = S_MOV_B32 1024
+# SI: [[K1024:%[0-9]+]]:sreg_32 = S_MOV_B32 1024
# SI: S_LOAD_DWORD_SGPR [[PTR]], [[K1024]], 0
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 256, 0
# VI: S_LOAD_DWORD_IMM [[PTR]], 1024, 0
# Max immediate offset for VI
-# SI: [[K1048572:%[0-9]+]] = S_MOV_B32 1048572
+# SI: [[K1048572:%[0-9]+]]:sreg_32 = S_MOV_B32 1048572
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 262143
# VI: S_LOAD_DWORD_IMM [[PTR]], 1048572
#
# Immediate overflow for VI
-# SIVI: [[K1048576:%[0-9]+]] = S_MOV_B32 1048576
+# SIVI: [[K1048576:%[0-9]+]]:sreg_32 = S_MOV_B32 1048576
# SIVI: S_LOAD_DWORD_SGPR [[PTR]], [[K1048576]], 0
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 262144, 0
# Max immediate for CI
-# SIVI: [[K_LO:%[0-9]+]] = S_MOV_B32 4294967292
-# SIVI: [[K_HI:%[0-9]+]] = S_MOV_B32 3
-# SIVI: [[K:%[0-9]+]] = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
-# SIVI-DAG: [[K_SUB0:%[0-9]+]] = COPY [[K]].sub0
-# SIVI-DAG: [[PTR_LO:%[0-9]+]] = COPY [[PTR]].sub0
-# SIVI: [[ADD_PTR_LO:%[0-9]+]] = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
-# SIVI-DAG: [[K_SUB1:%[0-9]+]] = COPY [[K]].sub1
-# SIVI-DAG: [[PTR_HI:%[0-9]+]] = COPY [[PTR]].sub1
-# SIVI: [[ADD_PTR_HI:%[0-9]+]] = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
-# SIVI: [[ADD_PTR:%[0-9]+]] = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
+# SIVI: [[K_LO:%[0-9]+]]:sreg_32 = S_MOV_B32 4294967292
+# SIVI: [[K_HI:%[0-9]+]]:sreg_32 = S_MOV_B32 3
+# SIVI: [[K:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
+# SIVI-DAG: [[K_SUB0:%[0-9]+]]:sgpr_32 = COPY [[K]].sub0
+# SIVI-DAG: [[PTR_LO:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub0
+# SIVI: [[ADD_PTR_LO:%[0-9]+]]:sreg_32 = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
+# SIVI-DAG: [[K_SUB1:%[0-9]+]]:sgpr_32 = COPY [[K]].sub1
+# SIVI-DAG: [[PTR_HI:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub1
+# SIVI: [[ADD_PTR_HI:%[0-9]+]]:sreg_32 = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
+# SIVI: [[ADD_PTR:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
# SIVI: S_LOAD_DWORD_IMM [[ADD_PTR]], 0, 0
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 4294967295, 0
# Immediate overflow for CI
-# GCN: [[K_LO:%[0-9]+]] = S_MOV_B32 0
-# GCN: [[K_HI:%[0-9]+]] = S_MOV_B32 4
-# GCN: [[K:%[0-9]+]] = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
-# GCN-DAG: [[K_SUB0:%[0-9]+]] = COPY [[K]].sub0
-# GCN-DAG: [[PTR_LO:%[0-9]+]] = COPY [[PTR]].sub0
-# GCN: [[ADD_PTR_LO:%[0-9]+]] = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
-# GCN-DAG: [[K_SUB1:%[0-9]+]] = COPY [[K]].sub1
-# GCN-DAG: [[PTR_HI:%[0-9]+]] = COPY [[PTR]].sub1
-# GCN: [[ADD_PTR_HI:%[0-9]+]] = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
-# GCN: [[ADD_PTR:%[0-9]+]] = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
+# GCN: [[K_LO:%[0-9]+]]:sreg_32 = S_MOV_B32 0
+# GCN: [[K_HI:%[0-9]+]]:sreg_32 = S_MOV_B32 4
+# GCN: [[K:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
+# GCN-DAG: [[K_SUB0:%[0-9]+]]:sgpr_32 = COPY [[K]].sub0
+# GCN-DAG: [[PTR_LO:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub0
+# GCN: [[ADD_PTR_LO:%[0-9]+]]:sreg_32 = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
+# GCN-DAG: [[K_SUB1:%[0-9]+]]:sgpr_32 = COPY [[K]].sub1
+# GCN-DAG: [[PTR_HI:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub1
+# GCN: [[ADD_PTR_HI:%[0-9]+]]:sreg_32 = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
+# GCN: [[ADD_PTR:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
# GCN: S_LOAD_DWORD_IMM [[ADD_PTR]], 0, 0
# Max 32-bit byte offset
-# SIVI: [[K4294967292:%[0-9]+]] = S_MOV_B32 4294967292
+# SIVI: [[K4294967292:%[0-9]+]]:sreg_32 = S_MOV_B32 4294967292
# SIVI: S_LOAD_DWORD_SGPR [[PTR]], [[K4294967292]], 0
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 1073741823, 0
# Overflow 32-bit byte offset
-# SIVI: [[K_LO:%[0-9]+]] = S_MOV_B32 0
-# SIVI: [[K_HI:%[0-9]+]] = S_MOV_B32 1
-# SIVI: [[K:%[0-9]+]] = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
-# SIVI-DAG: [[K_SUB0:%[0-9]+]] = COPY [[K]].sub0
-# SIVI-DAG: [[PTR_LO:%[0-9]+]] = COPY [[PTR]].sub0
-# SIVI: [[ADD_PTR_LO:%[0-9]+]] = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
-# SIVI-DAG: [[K_SUB1:%[0-9]+]] = COPY [[K]].sub1
-# SIVI-DAG: [[PTR_HI:%[0-9]+]] = COPY [[PTR]].sub1
-# SIVI: [[ADD_PTR_HI:%[0-9]+]] = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
-# SIVI: [[ADD_PTR:%[0-9]+]] = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
+# SIVI: [[K_LO:%[0-9]+]]:sreg_32 = S_MOV_B32 0
+# SIVI: [[K_HI:%[0-9]+]]:sreg_32 = S_MOV_B32 1
+# SIVI: [[K:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[K_LO]], 1, [[K_HI]], 2
+# SIVI-DAG: [[K_SUB0:%[0-9]+]]:sgpr_32 = COPY [[K]].sub0
+# SIVI-DAG: [[PTR_LO:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub0
+# SIVI: [[ADD_PTR_LO:%[0-9]+]]:sreg_32 = S_ADD_U32 [[PTR_LO]], [[K_SUB0]]
+# SIVI-DAG: [[K_SUB1:%[0-9]+]]:sgpr_32 = COPY [[K]].sub1
+# SIVI-DAG: [[PTR_HI:%[0-9]+]]:sgpr_32 = COPY [[PTR]].sub1
+# SIVI: [[ADD_PTR_HI:%[0-9]+]]:sreg_32 = S_ADDC_U32 [[PTR_HI]], [[K_SUB1]]
+# SIVI: [[ADD_PTR:%[0-9]+]]:sreg_64 = REG_SEQUENCE [[ADD_PTR_LO]], 1, [[ADD_PTR_HI]], 2
# SIVI: S_LOAD_DWORD_IMM [[ADD_PTR]], 0, 0
# CI: S_LOAD_DWORD_IMM_ci [[PTR]], 1073741824, 0
body: |
bb.0:
liveins: %sgpr0_sgpr1
-
+
%0:sgpr(p2) = COPY %sgpr0_sgpr1
%1:sgpr(s64) = G_CONSTANT i64 4
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-flat.mir Tue Oct 24 11:04:54 2017
@@ -13,8 +13,8 @@ legalized: true
regBankSelected: true
# GCN: global_addrspace
-# GCN: [[PTR:%[0-9]+]] = COPY %vgpr0_vgpr1
-# GCN: [[VAL:%[0-9]+]] = COPY %vgpr2
+# GCN: [[PTR:%[0-9]+]]:vreg_64 = COPY %vgpr0_vgpr1
+# GCN: [[VAL:%[0-9]+]]:vgpr_32 = COPY %vgpr2
# GCN: FLAT_STORE_DWORD [[PTR]], [[VAL]], 0, 0, 0
body: |
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll Tue Oct 24 11:04:54 2017
@@ -2,7 +2,7 @@
; CHECK-LABEL: name: test_f32_inreg
-; CHECK: [[S0:%[0-9]+]](s32) = COPY %sgpr0
+; CHECK: [[S0:%[0-9]+]]:_(s32) = COPY %sgpr0
; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), %{{[0-9]+}}(s32), %{{[0-9]+}}(s32), [[S0]]
define amdgpu_vs void @test_f32_inreg(float inreg %arg0) {
call void @llvm.amdgcn.exp.f32(i32 32, i32 15, float %arg0, float undef, float undef, float undef, i1 false, i1 false) #0
@@ -10,7 +10,7 @@ define amdgpu_vs void @test_f32_inreg(fl
}
; CHECK-LABEL: name: test_f32
-; CHECK: [[V0:%[0-9]+]](s32) = COPY %vgpr0
+; CHECK: [[V0:%[0-9]+]]:_(s32) = COPY %vgpr0
; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), %{{[0-9]+}}(s32), %{{[0-9]+}}(s32), [[V0]]
define amdgpu_vs void @test_f32(float %arg0) {
call void @llvm.amdgcn.exp.f32(i32 32, i32 15, float %arg0, float undef, float undef, float undef, i1 false, i1 false) #0
@@ -18,7 +18,7 @@ define amdgpu_vs void @test_f32(float %a
}
; CHECK-LABEL: name: test_ptr2_byval
-; CHECK: [[S01:%[0-9]+]](p2) = COPY %sgpr0_sgpr1
+; CHECK: [[S01:%[0-9]+]]:_(p2) = COPY %sgpr0_sgpr1
; CHECK: G_LOAD [[S01]]
define amdgpu_vs void @test_ptr2_byval(i32 addrspace(2)* byval %arg0) {
%tmp0 = load volatile i32, i32 addrspace(2)* %arg0
@@ -26,7 +26,7 @@ define amdgpu_vs void @test_ptr2_byval(i
}
; CHECK-LABEL: name: test_ptr2_inreg
-; CHECK: [[S01:%[0-9]+]](p2) = COPY %sgpr0_sgpr1
+; CHECK: [[S01:%[0-9]+]]:_(p2) = COPY %sgpr0_sgpr1
; CHECK: G_LOAD [[S01]]
define amdgpu_vs void @test_ptr2_inreg(i32 addrspace(2)* inreg %arg0) {
%tmp0 = load volatile i32, i32 addrspace(2)* %arg0
@@ -34,8 +34,8 @@ define amdgpu_vs void @test_ptr2_inreg(i
}
; CHECK-LABEL: name: test_sgpr_alignment0
-; CHECK: [[S0:%[0-9]+]](s32) = COPY %sgpr0
-; CHECK: [[S23:%[0-9]+]](p2) = COPY %sgpr2_sgpr3
+; CHECK: [[S0:%[0-9]+]]:_(s32) = COPY %sgpr0
+; CHECK: [[S23:%[0-9]+]]:_(p2) = COPY %sgpr2_sgpr3
; CHECK: G_LOAD [[S23]]
; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), %{{[0-9]+}}(s32), %{{[0-9]+}}(s32), [[S0]]
define amdgpu_vs void @test_sgpr_alignment0(float inreg %arg0, i32 addrspace(2)* inreg %arg1) {
@@ -45,11 +45,11 @@ define amdgpu_vs void @test_sgpr_alignme
}
; CHECK-LABEL: name: test_order
-; CHECK: [[S0:%[0-9]+\(s32\)]] = COPY %sgpr0
-; CHECK: [[S1:%[0-9]+\(s32\)]] = COPY %sgpr1
-; CHECK: [[V0:%[0-9]+\(s32\)]] = COPY %vgpr0
-; CHECK: [[V1:%[0-9]+\(s32\)]] = COPY %vgpr1
-; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), %{{[0-9]+}}(s32), %{{[0-9]+}}(s32), [[V0]], [[S0]], [[V1]], [[S1]]
+; CHECK: [[S0:%[0-9]+]]:_(s32) = COPY %sgpr0
+; CHECK: [[S1:%[0-9]+]]:_(s32) = COPY %sgpr1
+; CHECK: [[V0:%[0-9]+]]:_(s32) = COPY %vgpr0
+; CHECK: [[V1:%[0-9]+]]:_(s32) = COPY %vgpr1
+; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), %{{[0-9]+}}(s32), %{{[0-9]+}}(s32), [[V0]](s32), [[S0]](s32), [[V1]](s32), [[S1]](s32)
define amdgpu_vs void @test_order(float inreg %arg0, float inreg %arg1, float %arg2, float %arg3) {
call void @llvm.amdgcn.exp.f32(i32 32, i32 15, float %arg2, float %arg0, float %arg3, float %arg1, i1 false, i1 false) #0
ret void
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-add.mir Tue Oct 24 11:04:54 2017
@@ -16,9 +16,9 @@ body: |
liveins: %vgpr0, %vgpr1
; CHECK-LABEL: name: test_add
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %vgpr1
- ; CHECK: [[ADD:%[0-9]+]](s32) = G_ADD [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %vgpr1
+ ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY1]]
%0(s32) = COPY %vgpr0
%1(s32) = COPY %vgpr1
%2(s32) = G_ADD %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-and.mir Tue Oct 24 11:04:54 2017
@@ -16,9 +16,9 @@ body: |
liveins: %vgpr0, %vgpr1
; CHECK-LABEL: name: test_and
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %vgpr1
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %vgpr1
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY]], [[COPY1]]
%0(s32) = COPY %vgpr0
%1(s32) = COPY %vgpr1
%2(s32) = G_AND %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir Tue Oct 24 11:04:54 2017
@@ -16,9 +16,9 @@ body: |
liveins: %vgpr0
; CHECK-LABEL: name: test_bitcast
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[BITCAST:%[0-9]+]](<2 x s16>) = G_BITCAST [[COPY]](s32)
- ; CHECK: [[BITCAST1:%[0-9]+]](s32) = G_BITCAST [[BITCAST]](<2 x s16>)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[BITCAST:%[0-9]+]]:_(<2 x s16>) = G_BITCAST [[COPY]](s32)
+ ; CHECK: [[BITCAST1:%[0-9]+]]:_(s32) = G_BITCAST [[BITCAST]](<2 x s16>)
%0(s32) = COPY %vgpr0
%1(<2 x s16>) = G_BITCAST %0
%2(s32) = G_BITCAST %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir Tue Oct 24 11:04:54 2017
@@ -27,8 +27,9 @@ body: |
bb.0.entry:
; CHECK-LABEL: name: test_constant
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 5
- ; CHECK: [[C1:%[0-9]+]](s1) = G_CONSTANT i1 false
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 5
+ ; CHECK: [[C1:%[0-9]+]]:_(s1) = G_CONSTANT i1 false
+ ; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C1]](s1), [[C1]](s1)
%0(s32) = G_CONSTANT i32 5
%1(s1) = G_CONSTANT i1 0
G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp.f32), %0, %0, %0, %0, %0, %0, %1, %1;
@@ -43,8 +44,8 @@ body: |
bb.0.entry:
; CHECK-LABEL: name: test_fconstant
- ; CHECK: [[C:%[0-9]+]](s32) = G_FCONSTANT float 1.000000e+00
- ; CHECK: [[C1:%[0-9]+]](s32) = G_FCONSTANT float 7.500000e+00
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.000000e+00
+ ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_FCONSTANT float 7.500000e+00
%0(s32) = G_FCONSTANT float 1.0
%1(s32) = G_FCONSTANT float 7.5
...
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir Tue Oct 24 11:04:54 2017
@@ -16,9 +16,9 @@ body: |
liveins: %vgpr0, %vgpr1
; CHECK-LABEL: name: test_fmul
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %vgpr1
- ; CHECK: [[FMUL:%[0-9]+]](s32) = G_FMUL [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %vgpr1
+ ; CHECK: [[FMUL:%[0-9]+]]:_(s32) = G_FMUL [[COPY]], [[COPY1]]
%0(s32) = COPY %vgpr0
%1(s32) = COPY %vgpr1
%2(s32) = G_FMUL %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir Tue Oct 24 11:04:54 2017
@@ -18,9 +18,9 @@ body: |
bb.0.entry:
liveins: %vgpr0
; CHECK-LABEL: name: test_icmp
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ne), [[C]](s32), [[COPY]]
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[C]](s32), [[COPY]]
%0(s32) = G_CONSTANT i32 0
%1(s32) = COPY %vgpr0
%2(s1) = G_ICMP intpred(ne), %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-or.mir Tue Oct 24 11:04:54 2017
@@ -15,9 +15,9 @@ body: |
liveins: %vgpr0, %vgpr1
; CHECK-LABEL: name: test_or
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %vgpr1
- ; CHECK: [[OR:%[0-9]+]](s32) = G_OR [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %vgpr1
+ ; CHECK: [[OR:%[0-9]+]]:_(s32) = G_OR [[COPY]], [[COPY1]]
%0(s32) = COPY %vgpr0
%1(s32) = COPY %vgpr1
%2(s32) = G_OR %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir Tue Oct 24 11:04:54 2017
@@ -18,12 +18,12 @@ body: |
bb.0:
liveins: %vgpr0
; CHECK-LABEL: name: test_select
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ne), [[C]](s32), [[COPY]]
- ; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
- ; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
- ; CHECK: [[SELECT:%[0-9]+]](s32) = G_SELECT [[ICMP]](s1), [[C1]], [[C2]]
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[C]](s32), [[COPY]]
+ ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+ ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+ ; CHECK: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP]](s1), [[C1]], [[C2]]
%0(s32) = G_CONSTANT i32 0
%1(s32) = COPY %vgpr0
Modified: llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir Tue Oct 24 11:04:54 2017
@@ -12,9 +12,9 @@ body: |
liveins: %vgpr0, %vgpr1
; CHECK-LABEL: name: test_shl
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %vgpr0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %vgpr1
- ; CHECK: [[SHL:%[0-9]+]](s32) = G_SHL [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %vgpr0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %vgpr1
+ ; CHECK: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[COPY]], [[COPY1]]
%0(s32) = COPY %vgpr0
%1(s32) = COPY %vgpr1
%2(s32) = G_SHL %0, %1
Modified: llvm/trunk/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/clamp-omod-special-case.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/clamp-omod-special-case.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/clamp-omod-special-case.mir Tue Oct 24 11:04:54 2017
@@ -1,8 +1,8 @@
# RUN: llc -march=amdgcn -verify-machineinstrs -run-pass si-fold-operands %s -o - | FileCheck -check-prefix=GCN %s
---
# GCN-LABEL: name: v_max_self_clamp_not_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN-NEXT: %21 = V_MAX_F32_e64 0, killed %20, 0, killed %20, 0, 0, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN-NEXT: %21:vgpr_32 = V_MAX_F32_e64 0, killed %20, 0, killed %20, 0, 0, implicit %exec
name: v_max_self_clamp_not_set_f32
tracksRegLiveness: true
@@ -64,8 +64,8 @@ body: |
...
---
# GCN-LABEL: name: v_clamp_omod_already_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN: %21 = V_MAX_F32_e64 0, killed %20, 0, killed %20, 1, 3, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN: %21:vgpr_32 = V_MAX_F32_e64 0, killed %20, 0, killed %20, 1, 3, implicit %exec
name: v_clamp_omod_already_set_f32
tracksRegLiveness: true
registers:
@@ -127,8 +127,8 @@ body: |
# Don't fold a mul that looks like an omod if itself has omod set
# GCN-LABEL: name: v_omod_mul_omod_already_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN-NEXT: %21 = V_MUL_F32_e64 0, killed %20, 0, 1056964608, 0, 3, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN-NEXT: %21:vgpr_32 = V_MUL_F32_e64 0, killed %20, 0, 1056964608, 0, 3, implicit %exec
name: v_omod_mul_omod_already_set_f32
tracksRegLiveness: true
registers:
@@ -191,8 +191,8 @@ body: |
# Don't fold a mul that looks like an omod if itself has clamp set
# This might be OK, but would require folding the clamp at the same time.
# GCN-LABEL: name: v_omod_mul_clamp_already_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN-NEXT: %21 = V_MUL_F32_e64 0, killed %20, 0, 1056964608, 1, 0, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN-NEXT: %21:vgpr_32 = V_MUL_F32_e64 0, killed %20, 0, 1056964608, 1, 0, implicit %exec
name: v_omod_mul_clamp_already_set_f32
tracksRegLiveness: true
@@ -269,8 +269,8 @@ body: |
# Don't fold a mul that looks like an omod if itself has omod set
# GCN-LABEL: name: v_omod_add_omod_already_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN-NEXT: %21 = V_ADD_F32_e64 0, killed %20, 0, killed %20, 0, 3, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN-NEXT: %21:vgpr_32 = V_ADD_F32_e64 0, killed %20, 0, killed %20, 0, 3, implicit %exec
name: v_omod_add_omod_already_set_f32
tracksRegLiveness: true
registers:
@@ -333,8 +333,8 @@ body: |
# Don't fold a mul that looks like an omod if itself has clamp set
# This might be OK, but would require folding the clamp at the same time.
# GCN-LABEL: name: v_omod_add_clamp_already_set_f32
-# GCN: %20 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
-# GCN-NEXT: %21 = V_ADD_F32_e64 0, killed %20, 0, killed %20, 1, 0, implicit %exec
+# GCN: %20:vgpr_32 = V_ADD_F32_e64 0, killed %17, 0, 1065353216, 0, 0, implicit %exec
+# GCN-NEXT: %21:vgpr_32 = V_ADD_F32_e64 0, killed %20, 0, killed %20, 1, 0, implicit %exec
name: v_omod_add_clamp_already_set_f32
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir Tue Oct 24 11:04:54 2017
@@ -2,7 +2,7 @@
...
# GCN-LABEL: name: s_fold_and_imm_regimm_32{{$}}
-# GCN: %10 = V_MOV_B32_e32 1543, implicit %exec
+# GCN: %10:vgpr_32 = V_MOV_B32_e32 1543, implicit %exec
# GCN: BUFFER_STORE_DWORD_OFFSET killed %10,
name: s_fold_and_imm_regimm_32
alignment: 0
@@ -62,19 +62,19 @@ body: |
# GCN-LABEL: name: v_fold_and_imm_regimm_32{{$}}
-# GCN: %9 = V_MOV_B32_e32 646, implicit %exec
+# GCN: %9:vgpr_32 = V_MOV_B32_e32 646, implicit %exec
# GCN: FLAT_STORE_DWORD %19, %9,
-# GCN: %10 = V_MOV_B32_e32 646, implicit %exec
+# GCN: %10:vgpr_32 = V_MOV_B32_e32 646, implicit %exec
# GCN: FLAT_STORE_DWORD %19, %10
-# GCN: %11 = V_MOV_B32_e32 646, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 646, implicit %exec
# GCN: FLAT_STORE_DWORD %19, %11,
-# GCN: %12 = V_MOV_B32_e32 1234567, implicit %exec
+# GCN: %12:vgpr_32 = V_MOV_B32_e32 1234567, implicit %exec
# GCN: FLAT_STORE_DWORD %19, %12,
-# GCN: %13 = V_MOV_B32_e32 63, implicit %exec
+# GCN: %13:vgpr_32 = V_MOV_B32_e32 63, implicit %exec
# GCN: FLAT_STORE_DWORD %19, %13,
name: v_fold_and_imm_regimm_32
@@ -226,34 +226,34 @@ body: |
---
# GCN-LABEL: name: v_fold_shl_imm_regimm_32{{$}}
-# GCN: %11 = V_MOV_B32_e32 40955904, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 40955904, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %11,
-# GCN: %12 = V_MOV_B32_e32 24, implicit %exec
+# GCN: %12:vgpr_32 = V_MOV_B32_e32 24, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %12,
-# GCN: %13 = V_MOV_B32_e32 4096, implicit %exec
+# GCN: %13:vgpr_32 = V_MOV_B32_e32 4096, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %13,
-# GCN: %14 = V_MOV_B32_e32 24, implicit %exec
+# GCN: %14:vgpr_32 = V_MOV_B32_e32 24, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %14,
-# GCN: %15 = V_MOV_B32_e32 0, implicit %exec
+# GCN: %15:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %15,
-# GCN: %22 = V_MOV_B32_e32 4096, implicit %exec
+# GCN: %22:vgpr_32 = V_MOV_B32_e32 4096, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %22,
-# GCN: %23 = V_MOV_B32_e32 1, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 1, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %23,
-# GCN: %25 = V_MOV_B32_e32 2, implicit %exec
+# GCN: %25:vgpr_32 = V_MOV_B32_e32 2, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %25,
-# GCN: %26 = V_MOV_B32_e32 7927808, implicit %exec
+# GCN: %26:vgpr_32 = V_MOV_B32_e32 7927808, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %26,
-# GCN: %28 = V_MOV_B32_e32 -8, implicit %exec
+# GCN: %28:vgpr_32 = V_MOV_B32_e32 -8, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %28,
name: v_fold_shl_imm_regimm_32
@@ -367,7 +367,7 @@ body: |
---
# GCN-LABEL: name: s_fold_ashr_imm_regimm_32{{$}}
-# GCN: %11 = V_MOV_B32_e32 243, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 243, implicit %exec
# GCN: BUFFER_STORE_DWORD_OFFSET killed %11, killed %8,
name: s_fold_ashr_imm_regimm_32
alignment: 0
@@ -425,34 +425,34 @@ body: |
...
# GCN-LABEL: name: v_fold_ashr_imm_regimm_32{{$}}
-# GCN: %11 = V_MOV_B32_e32 3903258, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 3903258, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %11,
-# GCN: %12 = V_MOV_B32_e32 62452139, implicit %exec
+# GCN: %12:vgpr_32 = V_MOV_B32_e32 62452139, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %12,
-# GCN: %13 = V_MOV_B32_e32 1678031, implicit %exec
+# GCN: %13:vgpr_32 = V_MOV_B32_e32 1678031, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %13,
-# GCN: %14 = V_MOV_B32_e32 3, implicit %exec
+# GCN: %14:vgpr_32 = V_MOV_B32_e32 3, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %14,
-# GCN: %15 = V_MOV_B32_e32 -1, implicit %exec
+# GCN: %15:vgpr_32 = V_MOV_B32_e32 -1, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %15,
-# GCN: %22 = V_MOV_B32_e32 62500, implicit %exec
+# GCN: %22:vgpr_32 = V_MOV_B32_e32 62500, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %22,
-# GCN: %23 = V_MOV_B32_e32 500000, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 500000, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %23,
-# GCN: %25 = V_MOV_B32_e32 1920, implicit %exec
+# GCN: %25:vgpr_32 = V_MOV_B32_e32 1920, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %25,
-# GCN: %26 = V_MOV_B32_e32 487907, implicit %exec
+# GCN: %26:vgpr_32 = V_MOV_B32_e32 487907, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %26,
-# GCN: %28 = V_MOV_B32_e32 -1, implicit %exec
+# GCN: %28:vgpr_32 = V_MOV_B32_e32 -1, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %28,
name: v_fold_ashr_imm_regimm_32
@@ -575,7 +575,7 @@ body: |
---
# GCN-LABEL: name: s_fold_lshr_imm_regimm_32{{$}}
-# GCN: %11 = V_MOV_B32_e32 1048332, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 1048332, implicit %exec
# GCN: BUFFER_STORE_DWORD_OFFSET killed %11, killed %8,
name: s_fold_lshr_imm_regimm_32
alignment: 0
@@ -634,34 +634,34 @@ body: |
---
# GCN-LABEL: name: v_fold_lshr_imm_regimm_32{{$}}
-# GCN: %11 = V_MOV_B32_e32 3903258, implicit %exec
+# GCN: %11:vgpr_32 = V_MOV_B32_e32 3903258, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %11,
-# GCN: %12 = V_MOV_B32_e32 62452139, implicit %exec
+# GCN: %12:vgpr_32 = V_MOV_B32_e32 62452139, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %12,
-# GCN: %13 = V_MOV_B32_e32 1678031, implicit %exec
+# GCN: %13:vgpr_32 = V_MOV_B32_e32 1678031, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %13,
-# GCN: %14 = V_MOV_B32_e32 3, implicit %exec
+# GCN: %14:vgpr_32 = V_MOV_B32_e32 3, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %14,
-# GCN: %15 = V_MOV_B32_e32 1, implicit %exec
+# GCN: %15:vgpr_32 = V_MOV_B32_e32 1, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %15,
-# GCN: %22 = V_MOV_B32_e32 62500, implicit %exec
+# GCN: %22:vgpr_32 = V_MOV_B32_e32 62500, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %22,
-# GCN: %23 = V_MOV_B32_e32 500000, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 500000, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %23,
-# GCN: %25 = V_MOV_B32_e32 1920, implicit %exec
+# GCN: %25:vgpr_32 = V_MOV_B32_e32 1920, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %25,
-# GCN: %26 = V_MOV_B32_e32 487907, implicit %exec
+# GCN: %26:vgpr_32 = V_MOV_B32_e32 487907, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %26,
-# GCN: %28 = V_MOV_B32_e32 1073741823, implicit %exec
+# GCN: %28:vgpr_32 = V_MOV_B32_e32 1073741823, implicit %exec
# GCN: FLAT_STORE_DWORD %20, %28,
name: v_fold_lshr_imm_regimm_32
@@ -787,7 +787,7 @@ body: |
# GCN-LABEL: name: undefined_vreg_operand{{$}}
# GCN: bb.0
-# GCN-NEXT: FLAT_STORE_DWORD undef %3, undef %1,
+# GCN-NEXT: FLAT_STORE_DWORD undef %3:vreg_64, undef %1:vgpr_32,
# GCN-NEXT: S_ENDPGM
name: undefined_vreg_operand
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/detect-dead-lanes.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/detect-dead-lanes.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/detect-dead-lanes.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/detect-dead-lanes.mir Tue Oct 24 11:04:54 2017
@@ -6,12 +6,12 @@
# CHECK: S_NOP 0, implicit-def %0
# CHECK: S_NOP 0, implicit-def %1
# CHECK: S_NOP 0, implicit-def dead %2
-# CHECK: %3 = REG_SEQUENCE %0, {{[0-9]+}}, %1, {{[0-9]+}}, undef %2, {{[0-9]+}}
+# CHECK: %3:sreg_128 = REG_SEQUENCE %0, {{[0-9]+}}, %1, {{[0-9]+}}, undef %2, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %3.sub0
# CHECK: S_NOP 0, implicit %3.sub1
# CHECK: S_NOP 0, implicit undef %3.sub2
-# CHECK: %4 = COPY %3.sub0_sub1
-# CHECK: %5 = COPY undef %3.sub2_sub3
+# CHECK: %4:sreg_64 = COPY %3.sub0_sub1
+# CHECK: %5:sreg_64 = COPY undef %3.sub2_sub3
# CHECK: S_NOP 0, implicit %4.sub0
# CHECK: S_NOP 0, implicit %4.sub1
# CHECK: S_NOP 0, implicit undef %5.sub0
@@ -42,9 +42,9 @@ body: |
# Check defined lanes transfer; Includes checking for some special cases like
# undef operands or IMPLICIT_DEF definitions.
# CHECK-LABEL: name: test1
-# CHECK: %0 = REG_SEQUENCE %sgpr0, {{[0-9]+}}, %sgpr0, {{[0-9]+}}
-# CHECK: %1 = INSERT_SUBREG %0, %sgpr1, {{[0-9]+}}
-# CHECK: %2 = INSERT_SUBREG %0.sub2_sub3, %sgpr42, {{[0-9]+}}
+# CHECK: %0:sreg_128 = REG_SEQUENCE %sgpr0, {{[0-9]+}}, %sgpr0, {{[0-9]+}}
+# CHECK: %1:sreg_128 = INSERT_SUBREG %0, %sgpr1, {{[0-9]+}}
+# CHECK: %2:sreg_64 = INSERT_SUBREG %0.sub2_sub3, %sgpr42, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %1.sub0
# CHECK: S_NOP 0, implicit undef %1.sub1
# CHECK: S_NOP 0, implicit %1.sub2
@@ -52,25 +52,25 @@ body: |
# CHECK: S_NOP 0, implicit %2.sub0
# CHECK: S_NOP 0, implicit undef %2.sub1
-# CHECK: %3 = IMPLICIT_DEF
-# CHECK: %4 = INSERT_SUBREG %0, undef %3, {{[0-9]+}}
+# CHECK: %3:sreg_32_xm0 = IMPLICIT_DEF
+# CHECK: %4:sreg_128 = INSERT_SUBREG %0, undef %3, {{[0-9]+}}
# CHECK: S_NOP 0, implicit undef %4.sub0
# CHECK: S_NOP 0, implicit undef %4.sub1
# CHECK: S_NOP 0, implicit %4.sub2
# CHECK: S_NOP 0, implicit undef %4.sub3
-# CHECK: %5 = EXTRACT_SUBREG %0, {{[0-9]+}}
-# CHECK: %6 = EXTRACT_SUBREG %5, {{[0-9]+}}
-# CHECK: %7 = EXTRACT_SUBREG %5, {{[0-9]+}}
+# CHECK: %5:sreg_64 = EXTRACT_SUBREG %0, {{[0-9]+}}
+# CHECK: %6:sreg_32_xm0 = EXTRACT_SUBREG %5, {{[0-9]+}}
+# CHECK: %7:sreg_32_xm0 = EXTRACT_SUBREG %5, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %5
# CHECK: S_NOP 0, implicit %6
# CHECK: S_NOP 0, implicit undef %7
-# CHECK: %8 = IMPLICIT_DEF
-# CHECK: %9 = EXTRACT_SUBREG undef %8, {{[0-9]+}}
+# CHECK: %8:sreg_64 = IMPLICIT_DEF
+# CHECK: %9:sreg_32_xm0 = EXTRACT_SUBREG undef %8, {{[0-9]+}}
# CHECK: S_NOP 0, implicit undef %9
-# CHECK: %10 = EXTRACT_SUBREG undef %0, {{[0-9]+}}
+# CHECK: %10:sreg_128 = EXTRACT_SUBREG undef %0, {{[0-9]+}}
# CHECK: S_NOP 0, implicit undef %10
name: test1
registers:
@@ -125,29 +125,29 @@ body: |
# CHECK: S_NOP 0, implicit-def dead %0
# CHECK: S_NOP 0, implicit-def %1
# CHECK: S_NOP 0, implicit-def %2
-# CHECK: %3 = REG_SEQUENCE undef %0, {{[0-9]+}}, %1, {{[0-9]+}}, %2, {{[0-9]+}}
+# CHECK: %3:sreg_128 = REG_SEQUENCE undef %0, {{[0-9]+}}, %1, {{[0-9]+}}, %2, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %3.sub1
# CHECK: S_NOP 0, implicit %3.sub3
# CHECK: S_NOP 0, implicit-def %4
# CHECK: S_NOP 0, implicit-def dead %5
-# CHECK: %6 = REG_SEQUENCE %4, {{[0-9]+}}, undef %5, {{[0-9]+}}
+# CHECK: %6:sreg_64 = REG_SEQUENCE %4, {{[0-9]+}}, undef %5, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %6
# CHECK: S_NOP 0, implicit-def dead %7
# CHECK: S_NOP 0, implicit-def %8
-# CHECK: %9 = INSERT_SUBREG undef %7, %8, {{[0-9]+}}
+# CHECK: %9:sreg_128 = INSERT_SUBREG undef %7, %8, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %9.sub2
# CHECK: S_NOP 0, implicit-def %10
# CHECK: S_NOP 0, implicit-def dead %11
-# CHECK: %12 = INSERT_SUBREG %10, undef %11, {{[0-9]+}}
+# CHECK: %12:sreg_128 = INSERT_SUBREG %10, undef %11, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %12.sub3
# CHECK: S_NOP 0, implicit-def %13
# CHECK: S_NOP 0, implicit-def dead %14
-# CHECK: %15 = REG_SEQUENCE %13, {{[0-9]+}}, undef %14, {{[0-9]+}}
-# CHECK: %16 = EXTRACT_SUBREG %15, {{[0-9]+}}
+# CHECK: %15:sreg_128 = REG_SEQUENCE %13, {{[0-9]+}}, undef %14, {{[0-9]+}}
+# CHECK: %16:sreg_64 = EXTRACT_SUBREG %15, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %16.sub1
name: test2
@@ -205,7 +205,7 @@ body: |
# CHECK-LABEL: name: test3
# CHECK: S_NOP 0, implicit-def %0
# CHECK: %vcc = COPY %0
-# CHECK: %1 = COPY %vcc
+# CHECK: %1:sreg_64 = COPY %vcc
# CHECK: S_NOP 0, implicit %1
name: test3
tracksRegLiveness: true
@@ -225,7 +225,7 @@ body: |
# CHECK-LABEL: name: test4
# CHECK: S_NOP 0, implicit-def dead %0
# CHECK: KILL undef %0
-# CHECK: %1 = IMPLICIT_DEF
+# CHECK: %1:sreg_64 = IMPLICIT_DEF
# CHECK: S_NOP 0, implicit undef %1
name: test4
tracksRegLiveness: true
@@ -245,7 +245,7 @@ body: |
# used.
# CHECK-LABEL: name: test5
# CHECK: S_NOP 0, implicit-def %0
-# CHECK: %1 = REG_SEQUENCE undef %0, {{[0-9]+}}, %0, {{[0-9]+}}
+# CHECK: %1:sreg_64 = REG_SEQUENCE undef %0, {{[0-9]+}}, %0, {{[0-9]+}}
# CHECK: S_NOP 0, implicit %1.sub1
name: test5
tracksRegLiveness: true
@@ -265,10 +265,10 @@ body: |
# CHECK: S_NOP 0, implicit-def %0
# CHECK: S_NOP 0, implicit-def dead %1
# CHECK: S_NOP 0, implicit-def dead %2
-# CHECK: %3 = REG_SEQUENCE %0, {{[0-9]+}}, undef %1, {{[0-9]+}}, undef %2, {{[0-9]+}}
+# CHECK: %3:sreg_128 = REG_SEQUENCE %0, {{[0-9]+}}, undef %1, {{[0-9]+}}, undef %2, {{[0-9]+}}
# CHECK: bb.1:
-# CHECK: %4 = PHI %3, %bb.0, %5, %bb.1
+# CHECK: %4:sreg_128 = PHI %3, %bb.0, %5, %bb.1
# CHECK: bb.2:
# CHECK: S_NOP 0, implicit %4.sub0
@@ -315,12 +315,12 @@ body: |
# CHECK: S_NOP 0, implicit-def %1
# CHECK: S_NOP 0, implicit-def dead %2
# CHECK: S_NOP 0, implicit-def %3
-# CHECK: %4 = REG_SEQUENCE %0, {{[0-9]+}}, %1, {{[0-9]+}}, undef %2, {{[0-9]+}}, %3, {{[0-9]+}}
+# CHECK: %4:sreg_128 = REG_SEQUENCE %0, {{[0-9]+}}, %1, {{[0-9]+}}, undef %2, {{[0-9]+}}, %3, {{[0-9]+}}
# CHECK: bb.1:
-# CHECK: %5 = PHI %4, %bb.0, %6, %bb.1
+# CHECK: %5:sreg_128 = PHI %4, %bb.0, %6, %bb.1
-# CHECK: %6 = REG_SEQUENCE %5.sub1, {{[0-9]+}}, %5.sub3, {{[0-9]+}}, undef %5.sub2, {{[0-9]+}}, %5.sub0, {{[0-9]+}}
+# CHECK: %6:sreg_128 = REG_SEQUENCE %5.sub1, {{[0-9]+}}, %5.sub3, {{[0-9]+}}, undef %5.sub2, {{[0-9]+}}, %5.sub0, {{[0-9]+}}
# CHECK: bb.2:
# CHECK: S_NOP 0, implicit %6.sub3
@@ -361,12 +361,12 @@ body: |
# CHECK-LABEL: name: loop2
# CHECK: bb.0:
# CHECK: S_NOP 0, implicit-def %0
-# CHECK: %1 = REG_SEQUENCE %0, {{[0-9]+}}
+# CHECK: %1:sreg_128 = REG_SEQUENCE %0, {{[0-9]+}}
# CHECK: bb.1:
-# CHECK: %2 = PHI %1, %bb.0, %3, %bb.1
+# CHECK: %2:sreg_128 = PHI %1, %bb.0, %3, %bb.1
-# CHECK: %3 = REG_SEQUENCE %2.sub3, {{[0-9]+}}, undef %2.sub1, {{[0-9]+}}, %2.sub0, {{[0-9]+}}, %2.sub2, {{[0-9]+}}
+# CHECK: %3:sreg_128 = REG_SEQUENCE %2.sub3, {{[0-9]+}}, undef %2.sub1, {{[0-9]+}}, %2.sub0, {{[0-9]+}}, %2.sub2, {{[0-9]+}}
# CHECK: bb.2:
# CHECK: S_NOP 0, implicit %2.sub0
Modified: llvm/trunk/test/CodeGen/AMDGPU/endpgm-dce.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/endpgm-dce.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/endpgm-dce.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/endpgm-dce.mir Tue Oct 24 11:04:54 2017
@@ -25,7 +25,7 @@ body: |
---
# GCN-LABEL: name: load_without_memoperand
# GCN: %sgpr0_sgpr1 = S_OR_B64 %exec, killed %vcc, implicit-def %scc
-# GCN-NEXT: dead %1 = FLAT_LOAD_DWORD %0, 0, 0, 0, implicit %exec, implicit %flat_scr
+# GCN-NEXT: dead %1:vgpr_32 = FLAT_LOAD_DWORD %0, 0, 0, 0, implicit %exec, implicit %flat_scr
# GCN-NEXT: S_ENDPGM
name: load_without_memoperand
tracksRegLiveness: true
@@ -49,7 +49,7 @@ body: |
---
# GCN-LABEL: name: load_volatile
# GCN: %sgpr0_sgpr1 = S_OR_B64 %exec, killed %vcc, implicit-def %scc
-# GCN-NEXT: dead %1 = FLAT_LOAD_DWORD %0, 0, 0, 0, implicit %exec, implicit %flat_scr :: (volatile load 4)
+# GCN-NEXT: dead %1:vgpr_32 = FLAT_LOAD_DWORD %0, 0, 0, 0, implicit %exec, implicit %flat_scr :: (volatile load 4)
# GCN-NEXT: S_ENDPGM
name: load_volatile
tracksRegLiveness: true
@@ -120,7 +120,7 @@ body: |
---
# GCN-LABEL: name: exp
# GCN: %sgpr0_sgpr1 = S_OR_B64 %exec, killed %vcc, implicit-def %scc
-# GCN-NEXT: EXP 32, undef %0, undef %1, %2, undef %3, 0, 0, 15, implicit %exec
+# GCN-NEXT: EXP 32, undef %0:vgpr_32, undef %1:vgpr_32, %2, undef %3:vgpr_32, 0, 0, 15, implicit %exec
# GCN-NEXT: S_ENDPGM
name: exp
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/fold-cndmask.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/fold-cndmask.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/fold-cndmask.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/fold-cndmask.mir Tue Oct 24 11:04:54 2017
@@ -1,11 +1,11 @@
# RUN: llc -march=amdgcn -run-pass si-fold-operands -verify-machineinstrs -o - %s | FileCheck %s
-# CHECK: %1 = V_MOV_B32_e32 0, implicit %exec
-# CHECK: %2 = V_MOV_B32_e32 0, implicit %exec
-# CHECK: %4 = COPY %3
-# CHECK: %5 = V_MOV_B32_e32 0, implicit %exec
-# CHECK: %6 = V_MOV_B32_e32 0, implicit %exec
-# CHECK: %7 = COPY %3
+# CHECK: %1:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# CHECK: %2:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# CHECK: %4:vgpr_32 = COPY %3
+# CHECK: %5:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# CHECK: %6:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# CHECK: %7:vgpr_32 = COPY %3
---
name: fold_cndmask
Modified: llvm/trunk/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir Tue Oct 24 11:04:54 2017
@@ -1,8 +1,8 @@
# RUN: llc -march=amdgcn -run-pass peephole-opt -verify-machineinstrs %s -o - | FileCheck -check-prefix=GCN %s
...
# GCN-LABEL: name: no_fold_imm_madak_mac_clamp_f32
-# GCN: %23 = V_MOV_B32_e32 1090519040, implicit %exec
-# GCN-NEXT: %24 = V_MAC_F32_e64 0, killed %19, 0, killed %21, 0, %23, 1, 0, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 1090519040, implicit %exec
+# GCN-NEXT: %24:vgpr_32 = V_MAC_F32_e64 0, killed %19, 0, killed %21, 0, %23, 1, 0, implicit %exec
name: no_fold_imm_madak_mac_clamp_f32
tracksRegLiveness: true
@@ -72,8 +72,8 @@ body: |
...
---
# GCN-LABEL: name: no_fold_imm_madak_mac_omod_f32
-# GCN: %23 = V_MOV_B32_e32 1090519040, implicit %exec
-# GCN: %24 = V_MAC_F32_e64 0, killed %19, 0, killed %21, 0, %23, 0, 2, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 1090519040, implicit %exec
+# GCN: %24:vgpr_32 = V_MAC_F32_e64 0, killed %19, 0, killed %21, 0, %23, 0, 2, implicit %exec
name: no_fold_imm_madak_mac_omod_f32
tracksRegLiveness: true
@@ -143,8 +143,8 @@ body: |
...
---
# GCN: name: no_fold_imm_madak_mad_clamp_f32
-# GCN: %23 = V_MOV_B32_e32 1090519040, implicit %exec
-# GCN: %24 = V_MAD_F32 0, killed %19, 0, killed %21, 0, %23, 1, 0, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 1090519040, implicit %exec
+# GCN: %24:vgpr_32 = V_MAD_F32 0, killed %19, 0, killed %21, 0, %23, 1, 0, implicit %exec
name: no_fold_imm_madak_mad_clamp_f32
tracksRegLiveness: true
@@ -214,8 +214,8 @@ body: |
...
---
# GCN: name: no_fold_imm_madak_mad_omod_f32
-# GCN: %23 = V_MOV_B32_e32 1090519040, implicit %exec
-# GCN: %24 = V_MAD_F32 0, killed %19, 0, killed %21, 0, %23, 0, 1, implicit %exec
+# GCN: %23:vgpr_32 = V_MOV_B32_e32 1090519040, implicit %exec
+# GCN: %24:vgpr_32 = V_MAD_F32 0, killed %19, 0, killed %21, 0, %23, 0, 1, implicit %exec
name: no_fold_imm_madak_mad_omod_f32
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/fold-operands-order.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/fold-operands-order.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/fold-operands-order.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/fold-operands-order.mir Tue Oct 24 11:04:54 2017
@@ -6,10 +6,10 @@
# aren't made in users before the def is seen.
# GCN-LABEL: name: mov_in_use_list_2x{{$}}
-# GCN: %2 = V_MOV_B32_e32 0, implicit %exec
-# GCN-NEXT: %3 = COPY undef %0
+# GCN: %2:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# GCN-NEXT: %3:vgpr_32 = COPY undef %0
-# GCN: %1 = V_MOV_B32_e32 0, implicit %exec
+# GCN: %1:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
name: mov_in_use_list_2x
Modified: llvm/trunk/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir Tue Oct 24 11:04:54 2017
@@ -2,8 +2,8 @@
# GCN-LABEL: name: cluster_add_addc
# GCN: S_NOP 0, implicit-def %vcc
-# GCN: dead %2, %3 = V_ADD_I32_e64 %0, %1, implicit %exec
-# GCN: dead %4, dead %5 = V_ADDC_U32_e64 %6, %7, %3, implicit %exec
+# GCN: dead %2:vgpr_32, %3:sreg_64_xexec = V_ADD_I32_e64 %0, %1, implicit %exec
+# GCN: dead %4:vgpr_32, dead %5:sreg_64_xexec = V_ADDC_U32_e64 %6, %7, %3, implicit %exec
name: cluster_add_addc
registers:
- { id: 0, class: vgpr_32 }
@@ -27,10 +27,10 @@ body: |
...
# GCN-LABEL: name: interleave_add64s
-# GCN: dead %8, %9 = V_ADD_I32_e64 %0, %1, implicit %exec
-# GCN-NEXT: dead %12, dead %13 = V_ADDC_U32_e64 %4, %5, %9, implicit %exec
-# GCN-NEXT: dead %10, %11 = V_ADD_I32_e64 %2, %3, implicit %exec
-# GCN-NEXT: dead %14, dead %15 = V_ADDC_U32_e64 %6, %7, %11, implicit %exec
+# GCN: dead %8:vgpr_32, %9:sreg_64_xexec = V_ADD_I32_e64 %0, %1, implicit %exec
+# GCN-NEXT: dead %12:vgpr_32, dead %13:sreg_64_xexec = V_ADDC_U32_e64 %4, %5, %9, implicit %exec
+# GCN-NEXT: dead %10:vgpr_32, %11:sreg_64_xexec = V_ADD_I32_e64 %2, %3, implicit %exec
+# GCN-NEXT: dead %14:vgpr_32, dead %15:sreg_64_xexec = V_ADDC_U32_e64 %6, %7, %11, implicit %exec
name: interleave_add64s
registers:
- { id: 0, class: vgpr_32 }
@@ -71,8 +71,8 @@ body: |
# GCN-LABEL: name: cluster_mov_addc
# GCN: S_NOP 0, implicit-def %vcc
-# GCN-NEXT: %2 = S_MOV_B64 0
-# GCN-NEXT: dead %3, dead %4 = V_ADDC_U32_e64 %0, %1, %2, implicit %exec
+# GCN-NEXT: %2:sreg_64_xexec = S_MOV_B64 0
+# GCN-NEXT: dead %3:vgpr_32, dead %4:sreg_64_xexec = V_ADDC_U32_e64 %0, %1, %2, implicit %exec
name: cluster_mov_addc
registers:
- { id: 0, class: vgpr_32 }
@@ -93,12 +93,12 @@ body: |
...
# GCN-LABEL: name: no_cluster_add_addc_diff_sgpr
-# GCN: dead %2, dead %3 = V_ADD_I32_e64 %0, %1, implicit %exec
-# GCN-NEXT: %6 = V_MOV_B32_e32 0, implicit %exec
-# GCN-NEXT: %7 = V_MOV_B32_e32 0, implicit %exec
+# GCN: dead %2:vgpr_32, dead %3:sreg_64_xexec = V_ADD_I32_e64 %0, %1, implicit %exec
+# GCN-NEXT: %6:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# GCN-NEXT: %7:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
# GCN-NEXT: S_NOP 0, implicit-def %vcc
-# GCN-NEXT: %8 = S_MOV_B64 0
-# GCN-NEXT: dead %4, dead %5 = V_ADDC_U32_e64 %6, %7, %8, implicit %exec
+# GCN-NEXT: %8:sreg_64_xexec = S_MOV_B64 0
+# GCN-NEXT: dead %4:vgpr_32, dead %5:sreg_64_xexec = V_ADDC_U32_e64 %6, %7, %8, implicit %exec
name: no_cluster_add_addc_diff_sgpr
registers:
- { id: 0, class: vgpr_32 }
@@ -123,8 +123,8 @@ body: |
...
# GCN-LABEL: name: cluster_sub_subb
# GCN: S_NOP 0, implicit-def %vcc
-# GCN: dead %2, %3 = V_SUB_I32_e64 %0, %1, implicit %exec
-# GCN: dead %4, dead %5 = V_SUBB_U32_e64 %6, %7, %3, implicit %exec
+# GCN: dead %2:vgpr_32, %3:sreg_64_xexec = V_SUB_I32_e64 %0, %1, implicit %exec
+# GCN: dead %4:vgpr_32, dead %5:sreg_64_xexec = V_SUBB_U32_e64 %6, %7, %3, implicit %exec
name: cluster_sub_subb
registers:
- { id: 0, class: vgpr_32 }
@@ -149,8 +149,8 @@ body: |
# GCN-LABEL: name: cluster_cmp_cndmask
# GCN: S_NOP 0, implicit-def %vcc
-# GCN-NEXT: %3 = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
-# GCN-NEXT: dead %4 = V_CNDMASK_B32_e64 %0, %1, %3, implicit %exec
+# GCN-NEXT: %3:sreg_64_xexec = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
+# GCN-NEXT: dead %4:vgpr_32 = V_CNDMASK_B32_e64 %0, %1, %3, implicit %exec
name: cluster_cmp_cndmask
registers:
- { id: 0, class: vgpr_32 }
@@ -172,9 +172,9 @@ body: |
...
# GCN-LABEL: name: cluster_multi_use_cmp_cndmask
-# GCN: %4 = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
-# GCN-NEXT: dead %5 = V_CNDMASK_B32_e64 %2, %1, %4, implicit %exec
-# GCN-NEXT: dead %6 = V_CNDMASK_B32_e64 %1, %3, %4, implicit %exec
+# GCN: %4:sreg_64_xexec = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
+# GCN-NEXT: dead %5:vgpr_32 = V_CNDMASK_B32_e64 %2, %1, %4, implicit %exec
+# GCN-NEXT: dead %6:vgpr_32 = V_CNDMASK_B32_e64 %1, %3, %4, implicit %exec
name: cluster_multi_use_cmp_cndmask
registers:
- { id: 0, class: vgpr_32 }
@@ -200,10 +200,10 @@ body: |
...
# GCN-LABEL: name: cluster_multi_use_cmp_cndmask2
-# GCN: %4 = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
-# GCN-NEXT: dead %5 = V_CNDMASK_B32_e64 %2, %1, %4, implicit %exec
-# GCN-NEXT: %3 = V_MOV_B32_e32 0, implicit %exec
-# GCN-NEXT: dead %6 = V_CNDMASK_B32_e64 %1, %3, %4, implicit %exec
+# GCN: %4:sreg_64_xexec = V_CMP_EQ_I32_e64 %0, %1, implicit %exec
+# GCN-NEXT: dead %5:vgpr_32 = V_CNDMASK_B32_e64 %2, %1, %4, implicit %exec
+# GCN-NEXT: %3:vgpr_32 = V_MOV_B32_e32 0, implicit %exec
+# GCN-NEXT: dead %6:vgpr_32 = V_CNDMASK_B32_e64 %1, %3, %4, implicit %exec
name: cluster_multi_use_cmp_cndmask2
registers:
- { id: 0, class: vgpr_32 }
Modified: llvm/trunk/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir Tue Oct 24 11:04:54 2017
@@ -3,21 +3,21 @@
# Check that constant is in SGPR registers
# GCN-LABEL: {{^}}name: const_to_sgpr{{$}}
-# GCN: %[[HI:[0-9]+]] = S_MOV_B32 0
-# GCN-NEXT: %[[LO:[0-9]+]] = S_MOV_B32 1048576
-# GCN-NEXT: %[[SGPR_PAIR:[0-9]+]] = REG_SEQUENCE killed %[[LO]], 1, killed %[[HI]], 2
+# GCN: %[[HI:[0-9]+]]:sreg_32_xm0 = S_MOV_B32 0
+# GCN-NEXT: %[[LO:[0-9]+]]:sreg_32_xm0 = S_MOV_B32 1048576
+# GCN-NEXT: %[[SGPR_PAIR:[0-9]+]]:sreg_64 = REG_SEQUENCE killed %[[LO]], 1, killed %[[HI]], 2
# GCN-NEXT: V_CMP_LT_U64_e64 killed %{{[0-9]+}}, %[[SGPR_PAIR]], implicit %exec
# GCN-LABEL: {{^}}name: const_to_sgpr_multiple_use{{$}}
-# GCN: %[[HI:[0-9]+]] = S_MOV_B32 0
-# GCN-NEXT: %[[LO:[0-9]+]] = S_MOV_B32 1048576
-# GCN-NEXT: %[[SGPR_PAIR:[0-9]+]] = REG_SEQUENCE killed %[[LO]], 1, killed %[[HI]], 2
+# GCN: %[[HI:[0-9]+]]:sreg_32_xm0 = S_MOV_B32 0
+# GCN-NEXT: %[[LO:[0-9]+]]:sreg_32_xm0 = S_MOV_B32 1048576
+# GCN-NEXT: %[[SGPR_PAIR:[0-9]+]]:sreg_64 = REG_SEQUENCE killed %[[LO]], 1, killed %[[HI]], 2
# GCN-NEXT: V_CMP_LT_U64_e64 killed %{{[0-9]+}}, %[[SGPR_PAIR]], implicit %exec
# GCN-NEXT: V_CMP_LT_U64_e64 killed %{{[0-9]+}}, %[[SGPR_PAIR]], implicit %exec
# GCN-LABEL: {{^}}name: const_to_sgpr_subreg{{$}}
-# GCN: %[[OP0:[0-9]+]] = REG_SEQUENCE killed %{{[0-9]+}}, 1, killed %{{[0-9]+}}, 2
+# GCN: %[[OP0:[0-9]+]]:vreg_64 = REG_SEQUENCE killed %{{[0-9]+}}, 1, killed %{{[0-9]+}}, 2
# GCN-NEXT: V_CMP_LT_U32_e64 killed %[[OP0]].sub0, 12, implicit %exec
--- |
Modified: llvm/trunk/test/CodeGen/AMDGPU/regcoal-subrange-join.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/regcoal-subrange-join.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/regcoal-subrange-join.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/regcoal-subrange-join.mir Tue Oct 24 11:04:54 2017
@@ -4,10 +4,10 @@
# This test will provoke a subrange join (see annotations below) during simple register coalescing
# Without a fix for PR33524 this causes an unreachable in SubRange Join
#
-# GCN-DAG: undef %[[REG0:[0-9]+]].sub0 = COPY %sgpr5
-# GCN-DAG: undef %[[REG1:[0-9]+]].sub0 = COPY %sgpr2
-# GCN-DAG: %[[REG0]].sub1 = S_MOV_B32 1
-# GCN-DAG: %[[REG1]].sub1 = S_MOV_B32 1
+# GCN-DAG: undef %[[REG0:[0-9]+]].sub0:sgpr_64 = COPY %sgpr5
+# GCN-DAG: undef %[[REG1:[0-9]+]].sub0:sgpr_64 = COPY %sgpr2
+# GCN-DAG: %[[REG0]].sub1:sgpr_64 = S_MOV_B32 1
+# GCN-DAG: %[[REG1]].sub1:sgpr_64 = S_MOV_B32 1
--- |
define amdgpu_vs void @regcoal-subrange-join(i32 inreg %arg, i32 inreg %arg1, i32 inreg %arg2, i32 inreg %arg3, i32 inreg %arg4, i32 inreg %arg5, i32 %arg6) local_unnamed_addr #0 {
Modified: llvm/trunk/test/CodeGen/AMDGPU/regcoalesce-dbg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/regcoalesce-dbg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/regcoalesce-dbg.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/regcoalesce-dbg.mir Tue Oct 24 11:04:54 2017
@@ -4,12 +4,12 @@
# LIS->getInstructionIndex with a DBG_VALUE instruction, which does not have
# a slot index.
-# CHECK: %13.sub2 = S_MOV_B32 0
+# CHECK: %13.sub2:sgpr_128 = S_MOV_B32 0
# CHECK: DBG_VALUE{{.*}}debug-use %13.sub2
--- |
define amdgpu_kernel void @test(i32 addrspace(1)* %out) { ret void }
-
+
!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !4, producer: "llvm", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4)
!1 = !DILocalVariable(name: "a", scope: !2, file: !4, line: 126, type: !6)
!2 = distinct !DISubprogram(name: "test", scope: !4, file: !4, line: 1, type: !3, isLocal: false, isDefinition: true, scopeLine: 2, flags: DIFlagPrototyped, isOptimized: true, unit: !0, variables: !5)
@@ -25,7 +25,7 @@
---
name: test
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: sgpr_64 }
- { id: 1, class: sreg_32_xm0 }
- { id: 2, class: sgpr_32 }
@@ -47,13 +47,13 @@ registers:
- { id: 18, class: vgpr_32 }
- { id: 19, class: vreg_64 }
- { id: 20, class: vreg_64 }
-liveins:
+liveins:
- { reg: '%sgpr0_sgpr1', virtual-reg: '%0' }
- { reg: '%vgpr0', virtual-reg: '%3' }
body: |
bb.0:
liveins: %sgpr0_sgpr1, %vgpr0
-
+
%3 = COPY killed %vgpr0
%0 = COPY killed %sgpr0_sgpr1
%4 = S_LOAD_DWORDX2_IMM %0, 9, 0 :: (non-temporal dereferenceable invariant load 8 from `i64 addrspace(2)* undef`)
Modified: llvm/trunk/test/CodeGen/AMDGPU/rename-independent-subregs-mac-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/rename-independent-subregs-mac-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/rename-independent-subregs-mac-operands.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/rename-independent-subregs-mac-operands.mir Tue Oct 24 11:04:54 2017
@@ -2,7 +2,7 @@
---
# GCN-LABEL: name: mac_invalid_operands
-# GCN: undef %18.sub0 = V_MAC_F32_e32 undef %3, undef %9, undef %18.sub0, implicit %exec
+# GCN: undef %18.sub0:vreg_128 = V_MAC_F32_e32 undef %3:vgpr_32, undef %9:vgpr_32, undef %18.sub0, implicit %exec
name: mac_invalid_operands
alignment: 0
@@ -73,13 +73,13 @@ body: |
# GCN-LABEL: name: vreg_does_not_dominate
-# GCN: undef %8.sub1 = V_MAC_F32_e32 undef %2, undef %1, undef %8.sub1, implicit %exec
-# GCN: undef %7.sub0 = V_MOV_B32_e32 0, implicit %exec
-# GCN: undef %9.sub2 = COPY %7.sub0
-
-# GCN: undef %6.sub3 = V_ADD_F32_e32 undef %3, undef %3, implicit %exec
-# GCN: undef %7.sub0 = V_ADD_F32_e64 0, 0, 0, 0, 0, 0, implicit %exec
-# GCN: %8.sub1 = V_ADD_F32_e32 %8.sub1, %8.sub1, implicit %exec
+# GCN: undef %8.sub1:vreg_128 = V_MAC_F32_e32 undef %2:vgpr_32, undef %1:vgpr_32, undef %8.sub1, implicit %exec
+# GCN: undef %7.sub0:vreg_128 = V_MOV_B32_e32 0, implicit %exec
+# GCN: undef %9.sub2:vreg_128 = COPY %7.sub0
+
+# GCN: undef %6.sub3:vreg_128 = V_ADD_F32_e32 undef %3:vgpr_32, undef %3:vgpr_32, implicit %exec
+# GCN: undef %7.sub0:vreg_128 = V_ADD_F32_e64 0, 0, 0, 0, 0, 0, implicit %exec
+# GCN: %8.sub1:vreg_128 = V_ADD_F32_e32 %8.sub1, %8.sub1, implicit %exec
# GCN: BUFFER_STORE_DWORD_OFFEN %6.sub3, %0,
# GCN: BUFFER_STORE_DWORD_OFFEN %9.sub2, %0,
@@ -137,8 +137,8 @@ body: |
# GCN-LABEL: name: inf_loop_tied_operand
# GCN: bb.0:
-# GCN-NEXT: undef %2.sub0 = V_MAC_F32_e32 1073741824, undef %0, undef %2.sub0, implicit %exec
-# GCN-NEXT: dead undef %3.sub1 = COPY %2.sub0
+# GCN-NEXT: undef %2.sub0:vreg_128 = V_MAC_F32_e32 1073741824, undef %0:vgpr_32, undef %2.sub0, implicit %exec
+# GCN-NEXT: dead undef %3.sub1:vreg_128 = COPY %2.sub0
name: inf_loop_tied_operand
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/sdwa-gfx9.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/sdwa-gfx9.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/sdwa-gfx9.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/sdwa-gfx9.mir Tue Oct 24 11:04:54 2017
@@ -3,20 +3,20 @@
# RUN: llc -march=amdgcn -mcpu=gfx900 -run-pass=si-peephole-sdwa -o - %s | FileCheck -check-prefix=GFX9 -check-prefix=GCN %s
# GCN-LABEL: {{^}}name: add_shr_i32
-# GCN: [[SMOV:%[0-9]+]] = S_MOV_B32 123
+# GCN: [[SMOV:%[0-9]+]]:sreg_32_xm0 = S_MOV_B32 123
-# CI: [[SHIFT:%[0-9]+]] = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
-# CI: %{{[0-9]+}} = V_ADD_I32_e32 [[SMOV]], killed [[SHIFT]], implicit-def %vcc, implicit %exec
+# CI: [[SHIFT:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
+# CI: %{{[0-9]+}}:vgpr_32 = V_ADD_I32_e32 [[SMOV]], killed [[SHIFT]], implicit-def %vcc, implicit %exec
-# VI: [[VMOV:%[0-9]+]] = V_MOV_B32_e32 [[SMOV]], implicit %exec
-# VI: %{{[0-9]+}} = V_ADD_I32_sdwa 0, [[VMOV]], 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit-def %vcc, implicit %exec
+# VI: [[VMOV:%[0-9]+]]:vgpr_32 = V_MOV_B32_e32 [[SMOV]], implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_ADD_I32_sdwa 0, [[VMOV]], 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit-def %vcc, implicit %exec
-# GFX9: %{{[0-9]+}} = V_ADD_I32_sdwa 0, [[SMOV]], 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit-def %vcc, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_ADD_I32_sdwa 0, [[SMOV]], 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit-def %vcc, implicit %exec
---
name: add_shr_i32
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -33,7 +33,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
@@ -49,18 +49,18 @@ body: |
# GCN-LABEL: {{^}}name: trunc_shr_f32
-# CI: [[SHIFT:%[0-9]+]] = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
-# CI: %{{[0-9]+}} = V_TRUNC_F32_e64 0, killed [[SHIFT]], 1, 2, implicit-def %vcc, implicit %exec
+# CI: [[SHIFT:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
+# CI: %{{[0-9]+}}:vgpr_32 = V_TRUNC_F32_e64 0, killed [[SHIFT]], 1, 2, implicit-def %vcc, implicit %exec
-# VI: [[SHIFT:%[0-9]+]] = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
-# VI: %{{[0-9]+}} = V_TRUNC_F32_e64 0, killed [[SHIFT]], 1, 2, implicit-def %vcc, implicit %exec
+# VI: [[SHIFT:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 16, %{{[0-9]+}}, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_TRUNC_F32_e64 0, killed [[SHIFT]], 1, 2, implicit-def %vcc, implicit %exec
-#GFX9: %{{[0-9]+}} = V_TRUNC_F32_sdwa 0, %{{[0-9]+}}, 1, 2, 6, 0, 5, implicit %exec
+#GFX9: %{{[0-9]+}}:vgpr_32 = V_TRUNC_F32_sdwa 0, %{{[0-9]+}}, 1, 2, 6, 0, 5, implicit %exec
---
name: trunc_shr_f32
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -76,7 +76,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
Modified: llvm/trunk/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir Tue Oct 24 11:04:54 2017
@@ -3,35 +3,35 @@
# GFX89-LABEL: {{^}}name: vop1_instructions
-# GFX89: %{{[0-9]+}} = V_MOV_B32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_FRACT_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
-# GFX89: %{{[0-9]+}} = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_CVT_U32_F32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
-
-
-# GFX89: %{{[0-9]+}} = V_MOV_B32_sdwa 0, %{{[0-9]+}}, 0, 6, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_FRACT_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
-# GFX89: %{{[0-9]+}} = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_CVT_U32_F32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
-# GFX89: %{{[0-9]+}} = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
-
-
-# VI: %{{[0-9]+}} = V_FRACT_F32_sdwa 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
-# VI: %{{[0-9]+}} = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 1, 0, 5, 0, 5, implicit %exec
-# VI: %{{[0-9]+}} = V_CVT_U32_F32_sdwa 1, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
-# VI: %{{[0-9]+}} = V_CVT_F32_I32_e64 %{{[0-9]+}}, 0, 1, implicit %exec
-
-# GFX9: %{{[0-9]+}} = V_FRACT_F32_sdwa 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
-# GFX9: %{{[0-9]+}} = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 1, 0, 5, 0, 5, implicit %exec
-# GFX9: %{{[0-9]+}} = V_CVT_U32_F32_sdwa 1, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
-# GFX9: %{{[0-9]+}} = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 1, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_FRACT_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_CVT_U32_F32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
+
+
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_sdwa 0, %{{[0-9]+}}, 0, 6, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_FRACT_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_CVT_U32_F32_sdwa 0, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, implicit %exec
+
+
+# VI: %{{[0-9]+}}:vgpr_32 = V_FRACT_F32_sdwa 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 1, 0, 5, 0, 5, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_CVT_U32_F32_sdwa 1, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_CVT_F32_I32_e64 %{{[0-9]+}}, 0, 1, implicit %exec
+
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_FRACT_F32_sdwa 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_SIN_F32_sdwa 0, %{{[0-9]+}}, 1, 0, 5, 0, 5, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_CVT_U32_F32_sdwa 1, %{{[0-9]+}}, 0, 5, 0, 5, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_CVT_F32_I32_sdwa 0, %{{[0-9]+}}, 0, 1, 5, 0, 5, implicit %exec
---
name: vop1_instructions
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -85,7 +85,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
@@ -148,45 +148,45 @@ body: |
# GCN-LABEL: {{^}}name: vop2_instructions
-# VI: %{{[0-9]+}} = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit %exec
-# VI: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 6, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
-
-# GFX9: %{{[0-9]+}} = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit %exec
-# GFX9: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F32_e32 %{{[0-9]+}}, %{{[0-9]+}}, %{{[0-9]+}}, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F16_e32 %{{[0-9]+}}, %{{[0-9]+}}, %{{[0-9]+}}, implicit %exec
-
-
-# VI: %{{[0-9]+}} = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 5, 0, 6, 5, implicit %exec
-# VI: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 6, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
-
-# GFX9: %{{[0-9]+}} = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 5, 0, 6, 5, implicit %exec
-# GFX9: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F32_e64 0, 23, 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F16_e64 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, implicit %exec
-
-
-# VI: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_SUB_F16_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F32_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, %{{[0-9]+}}, 1, 0, 6, 0, 6, 1, implicit %exec
-# VI: %{{[0-9]+}} = V_MAC_F16_e64 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 2, implicit %exec
-
-# GFX9: %{{[0-9]+}} = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_SUB_F16_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F32_e64 1, 23, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, 0, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MAC_F16_e64 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 2, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 6, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
+
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 0, 6, 5, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_e32 %{{[0-9]+}}, %{{[0-9]+}}, %{{[0-9]+}}, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_e32 %{{[0-9]+}}, %{{[0-9]+}}, %{{[0-9]+}}, implicit %exec
+
+
+# VI: %{{[0-9]+}}:vgpr_32 = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 5, 0, 6, 5, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 6, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, %{{[0-9]+}}, 0, 0, 6, 0, 5, 1, implicit %exec
+
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_AND_B32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 5, 0, 6, 5, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_e64 0, 23, 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_e64 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 0, implicit %exec
+
+
+# VI: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, %{{[0-9]+}}, 1, 0, 6, 0, 6, 1, implicit %exec
+# VI: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_e64 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 2, implicit %exec
+
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_ADD_F32_sdwa 0, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 5, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_SUB_F16_sdwa 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 0, 5, 0, 6, 1, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F32_e64 1, 23, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, 0, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MAC_F16_e64 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 1, %{{[0-9]+}}, 0, 2, implicit %exec
name: vop2_instructions
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -252,7 +252,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
@@ -324,7 +324,7 @@ body: |
# GCN-LABEL: {{^}}name: vopc_instructions
-# GFX89: %{{[0-9]+}} = V_MOV_B32_e32 123, implicit %exec
+# GFX89: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_e32 123, implicit %exec
# GFX89: %vcc = V_CMP_EQ_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit %exec
# GFX89: %vcc = V_CMPX_GT_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit-def %exec, implicit %exec
# GFX89: %vcc = V_CMP_LT_I32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit %exec
@@ -332,16 +332,16 @@ body: |
# VI: %vcc = V_CMP_EQ_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit %exec
-# VI: %{{[0-9]+}} = V_CMPX_GT_F32_e64 0, 23, 0, killed %{{[0-9]+}}, 0, implicit-def %exec, implicit %exec
+# VI: %{{[0-9]+}}:sreg_64 = V_CMPX_GT_F32_e64 0, 23, 0, killed %{{[0-9]+}}, 0, implicit-def %exec, implicit %exec
# VI: %vcc = V_CMP_LT_I32_sdwa 0, %{{[0-9]+}}, 0, %3, 0, 6, 4, implicit-def %vcc, implicit %exec
-# VI: %{{[0-9]+}} = V_CMPX_EQ_I32_e64 23, killed %{{[0-9]+}}, implicit-def %exec, implicit %exec
+# VI: %{{[0-9]+}}:sreg_64 = V_CMPX_EQ_I32_e64 23, killed %{{[0-9]+}}, implicit-def %exec, implicit %exec
# GFX9: %vcc = V_CMP_EQ_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MOV_B32_e32 23, implicit %exec
-# GFX9: %{{[0-9]+}} = V_CMPX_GT_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit-def %exec, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_e32 23, implicit %exec
+# GFX9: %{{[0-9]+}}:sreg_64 = V_CMPX_GT_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit-def %exec, implicit %exec
# GFX9: %vcc = V_CMP_LT_I32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit %exec
-# GFX9: %{{[0-9]+}} = V_MOV_B32_e32 23, implicit %exec
-# GFX9: %{{[0-9]+}} = V_CMPX_EQ_I32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit-def %exec, implicit %exec
+# GFX9: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_e32 23, implicit %exec
+# GFX9: %{{[0-9]+}}:sreg_64 = V_CMPX_EQ_I32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 0, 6, 4, implicit-def %vcc, implicit-def %exec, implicit %exec
# VI: %vcc = V_CMP_EQ_F32_sdwa 0, %{{[0-9]+}}, 0, %{{[0-9]+}}, 1, 6, 4, implicit-def %vcc, implicit %exec
@@ -364,7 +364,7 @@ body: |
name: vopc_instructions
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -397,7 +397,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
Modified: llvm/trunk/test/CodeGen/AMDGPU/sdwa-vop2-64bit.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/sdwa-vop2-64bit.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/sdwa-vop2-64bit.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/sdwa-vop2-64bit.mir Tue Oct 24 11:04:54 2017
@@ -6,15 +6,15 @@
# GCN-LABEL: {{^}}name: vop2_64bit
-# GCN: %{{[0-9]+}} = V_BCNT_U32_B32_e64 %{{[0-9]+}}, killed %{{[0-9]+}}, implicit-def %vcc, implicit %exec
-# GCN: %{{[0-9]+}} = V_BFM_B32_e64 %{{[0-9]+}}, killed %{{[0-9]+}}, implicit-def %vcc, implicit %exec
-# GCN: %{{[0-9]+}} = V_CVT_PKNORM_I16_F32_e64 0, %{{[0-9]+}}, 0, killed %{{[0-9]+}}, 0, implicit-def %vcc, implicit %exec
-# GCN: %{{[0-9]+}} = V_READLANE_B32 killed %{{[0-9]+}}, 0, implicit-def %vcc, implicit %exec
+# GCN: %{{[0-9]+}}:vgpr_32 = V_BCNT_U32_B32_e64 %{{[0-9]+}}, killed %{{[0-9]+}}, implicit-def %vcc, implicit %exec
+# GCN: %{{[0-9]+}}:vgpr_32 = V_BFM_B32_e64 %{{[0-9]+}}, killed %{{[0-9]+}}, implicit-def %vcc, implicit %exec
+# GCN: %{{[0-9]+}}:vgpr_32 = V_CVT_PKNORM_I16_F32_e64 0, %{{[0-9]+}}, 0, killed %{{[0-9]+}}, 0, implicit-def %vcc, implicit %exec
+# GCN: %{{[0-9]+}}:sgpr_32 = V_READLANE_B32 killed %{{[0-9]+}}, 0, implicit-def %vcc, implicit %exec
---
name: vop2_64bit
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: vreg_64 }
- { id: 1, class: vreg_64 }
- { id: 2, class: sreg_64 }
@@ -37,7 +37,7 @@ registers:
body: |
bb.0:
liveins: %vgpr0_vgpr1, %vgpr2_vgpr3, %sgpr30_sgpr31
-
+
%2 = COPY %sgpr30_sgpr31
%1 = COPY %vgpr2_vgpr3
%0 = COPY %vgpr0_vgpr1
Modified: llvm/trunk/test/CodeGen/AMDGPU/shrink-vop3-carry-out.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/shrink-vop3-carry-out.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/shrink-vop3-carry-out.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/shrink-vop3-carry-out.mir Tue Oct 24 11:04:54 2017
@@ -8,8 +8,8 @@
...
# GCN-LABEL: name: shrink_add_vop3{{$}}
-# GCN: %29, %9 = V_ADD_I32_e64 %19, %17, implicit %exec
-# GCN: %24 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
+# GCN: %29:vgpr_32, %9:sreg_64_xexec = V_ADD_I32_e64 %19, %17, implicit %exec
+# GCN: %24:vgpr_32 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
name: shrink_add_vop3
alignment: 0
exposesReturnsTwice: false
@@ -91,8 +91,8 @@ body: |
...
---
# GCN-LABEL: name: shrink_sub_vop3{{$}}
-# GCN: %29, %9 = V_SUB_I32_e64 %19, %17, implicit %exec
-# GCN: %24 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
+# GCN: %29:vgpr_32, %9:sreg_64_xexec = V_SUB_I32_e64 %19, %17, implicit %exec
+# GCN: %24:vgpr_32 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
name: shrink_sub_vop3
alignment: 0
@@ -175,8 +175,8 @@ body: |
...
---
# GCN-LABEL: name: shrink_subrev_vop3{{$}}
-# GCN: %29, %9 = V_SUBREV_I32_e64 %19, %17, implicit %exec
-# GCN: %24 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
+# GCN: %29:vgpr_32, %9:sreg_64_xexec = V_SUBREV_I32_e64 %19, %17, implicit %exec
+# GCN: %24:vgpr_32 = V_CNDMASK_B32_e64 0, 1, killed %9, implicit %exec
name: shrink_subrev_vop3
alignment: 0
@@ -259,8 +259,8 @@ body: |
...
---
# GCN-LABEL: name: check_addc_src2_vop3{{$}}
-# GCN: %29, %vcc = V_ADDC_U32_e64 %19, %17, %9, implicit %exec
-# GCN: %24 = V_CNDMASK_B32_e64 0, 1, killed %vcc, implicit %exec
+# GCN: %29:vgpr_32, %vcc = V_ADDC_U32_e64 %19, %17, %9, implicit %exec
+# GCN: %24:vgpr_32 = V_CNDMASK_B32_e64 0, 1, killed %vcc, implicit %exec
name: check_addc_src2_vop3
alignment: 0
exposesReturnsTwice: false
@@ -343,7 +343,7 @@ body: |
...
---
# GCN-LABEL: name: shrink_addc_vop3{{$}}
-# GCN: %29 = V_ADDC_U32_e32 %19, %17, implicit-def %vcc, implicit %vcc, implicit %exec
+# GCN: %29:vgpr_32 = V_ADDC_U32_e32 %19, %17, implicit-def %vcc, implicit %vcc, implicit %exec
# GCN %24 = V_CNDMASK_B32_e64 0, 1, killed %vcc, implicit %exec
name: shrink_addc_vop3
@@ -429,8 +429,8 @@ body: |
---
# GCN-LABEL: name: shrink_addc_undef_vcc{{$}}
-# GCN: %29 = V_ADDC_U32_e32 %19, %17, implicit-def %vcc, implicit undef %vcc, implicit %exec
-# GCN: %24 = V_CNDMASK_B32_e64 0, 1, killed %vcc, implicit %exec
+# GCN: %29:vgpr_32 = V_ADDC_U32_e32 %19, %17, implicit-def %vcc, implicit undef %vcc, implicit %exec
+# GCN: %24:vgpr_32 = V_CNDMASK_B32_e64 0, 1, killed %vcc, implicit %exec
name: shrink_addc_undef_vcc
alignment: 0
exposesReturnsTwice: false
Modified: llvm/trunk/test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll Tue Oct 24 11:04:54 2017
@@ -3,7 +3,7 @@
; register operands in the correct order when modifying the opcode of an
; instruction to V_ADD_I32_e32.
-; CHECK: %{{[0-9]+}} = V_ADD_I32_e32 %{{[0-9]+}}, %{{[0-9]+}}, implicit-def %vcc, implicit %exec
+; CHECK: %{{[0-9]+}}:vgpr_32 = V_ADD_I32_e32 %{{[0-9]+}}, %{{[0-9]+}}, implicit-def %vcc, implicit %exec
define amdgpu_kernel void @test(i32 addrspace(1)* %out, i32 addrspace(1)* %in) {
entry:
Modified: llvm/trunk/test/CodeGen/AMDGPU/spill-empty-live-interval.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/spill-empty-live-interval.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/spill-empty-live-interval.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/spill-empty-live-interval.mir Tue Oct 24 11:04:54 2017
@@ -7,13 +7,13 @@
# CHECK-LABEL: name: expecting_non_empty_interval
-# CHECK: undef %7.sub1 = V_MAC_F32_e32 0, undef %1, undef %7.sub1, implicit %exec
+# CHECK: undef %7.sub1:vreg_64 = V_MAC_F32_e32 0, undef %1:vgpr_32, undef %7.sub1, implicit %exec
# CHECK-NEXT: SI_SPILL_V64_SAVE %7, %stack.0, %sgpr0_sgpr1_sgpr2_sgpr3, %sgpr5, 0, implicit %exec :: (store 8 into %stack.0, align 4)
-# CHECK-NEXT: undef %5.sub1 = V_MOV_B32_e32 1786773504, implicit %exec
-# CHECK-NEXT: dead %2 = V_MUL_F32_e32 0, %5.sub1, implicit %exec
+# CHECK-NEXT: undef %5.sub1:vreg_64 = V_MOV_B32_e32 1786773504, implicit %exec
+# CHECK-NEXT: dead %2:vgpr_32 = V_MUL_F32_e32 0, %5.sub1, implicit %exec
# CHECK: S_NOP 0, implicit %6.sub1
-# CHECK-NEXT: %8 = SI_SPILL_V64_RESTORE %stack.0, %sgpr0_sgpr1_sgpr2_sgpr3, %sgpr5, 0, implicit %exec :: (load 8 from %stack.0, align 4)
+# CHECK-NEXT: %8:vreg_64 = SI_SPILL_V64_RESTORE %stack.0, %sgpr0_sgpr1_sgpr2_sgpr3, %sgpr5, 0, implicit %exec :: (load 8 from %stack.0, align 4)
# CHECK-NEXT: S_NOP 0, implicit %8.sub1
# CHECK-NEXT: S_NOP 0, implicit undef %9.sub0
@@ -44,12 +44,12 @@ body: |
# CHECK-LABEL: name: rematerialize_empty_interval_has_reference
# CHECK-NOT: MOV
-# CHECK: undef %3.sub2 = V_MOV_B32_e32 1786773504, implicit %exec
+# CHECK: undef %3.sub2:vreg_128 = V_MOV_B32_e32 1786773504, implicit %exec
# CHECK: bb.1:
# CHECK-NEXT: S_NOP 0, implicit %3.sub2
# CHECK-NEXT: S_NOP 0, implicit undef %6.sub0
-# CHECK-NEXT: undef %4.sub2 = V_MOV_B32_e32 0, implicit %exec
+# CHECK-NEXT: undef %4.sub2:vreg_128 = V_MOV_B32_e32 0, implicit %exec
# CHECK-NEXT: S_NOP 0, implicit %4.sub2
name: rematerialize_empty_interval_has_reference
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/AMDGPU/twoaddr-mad.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/twoaddr-mad.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/twoaddr-mad.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/twoaddr-mad.mir Tue Oct 24 11:04:54 2017
@@ -112,8 +112,8 @@ body: |
# Make sure constant bus restriction isn't violated if src0 is an SGPR.
# GCN-LABEL: name: test_madak_sgpr_src0_f32
-# GCN: %1 = V_MOV_B32_e32 1078523331, implicit %exec
-# GCN: %2 = V_MAD_F32 0, killed %0, 0, %1, 0, %3, 0, 0, implicit %exec
+# GCN: %1:vgpr_32 = V_MOV_B32_e32 1078523331, implicit %exec
+# GCN: %2:vgpr_32 = V_MAD_F32 0, killed %0, 0, %1, 0, %3:vgpr_32, 0, 0, implicit %exec
---
name: test_madak_sgpr_src0_f32
@@ -134,7 +134,7 @@ body: |
# This can still fold if this is an inline immediate.
# GCN-LABEL: name: test_madak_inlineimm_src0_f32
-# GCN: %1 = V_MADMK_F32 1073741824, 1078523331, %2, implicit %exec
+# GCN: %1:vgpr_32 = V_MADMK_F32 1073741824, 1078523331, %2:vgpr_32, implicit %exec
---
name: test_madak_inlineimm_src0_f32
@@ -152,7 +152,7 @@ body: |
# Non-inline immediate uses constant bus already.
# GCN-LABEL: name: test_madak_otherimm_src0_f32
-# GCN: %1 = V_MAC_F32_e32 1120403456, %0, %1, implicit %exec
+# GCN: %1:vgpr_32 = V_MAC_F32_e32 1120403456, %0, %1, implicit %exec
---
name: test_madak_otherimm_src0_f32
@@ -170,7 +170,7 @@ body: |
# Non-inline immediate uses constant bus already.
# GCN-LABEL: name: test_madak_other_constantlike_src0_f32
-# GCN: %1 = V_MAC_F32_e32 %stack.0, %0, %1, implicit %exec
+# GCN: %1:vgpr_32 = V_MAC_F32_e32 %stack.0, %0, %1, implicit %exec
---
name: test_madak_other_constantlike_src0_f32
registers:
Modified: llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-frame-index.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-frame-index.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-frame-index.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-frame-index.mir Tue Oct 24 11:04:54 2017
@@ -33,9 +33,9 @@
...
# GCN-LABEL: name: fold_fi_vgpr{{$}}
-# GCN: %1 = IMPLICIT_DEF
+# GCN: %1:vgpr_32 = IMPLICIT_DEF
-# GCN: %2 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
name: fold_fi_vgpr
tracksRegLiveness: true
registers:
@@ -55,8 +55,8 @@ body: |
...
# GCN-LABEL: name: fold_vgpr_fi{{$}}
-# GCN: %1 = IMPLICIT_DEF
-# GCN: %2 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
+# GCN: %1:vgpr_32 = IMPLICIT_DEF
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
name: fold_vgpr_fi
tracksRegLiveness: true
registers:
@@ -76,9 +76,9 @@ body: |
...
# GCN-LABEL: name: fold_sgpr_fi{{$}}
-# GCN: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
-# GCN: %1 = IMPLICIT_DEF
-# GCN: %2 = V_ADD_I32_e32 %1, %0, implicit-def %vcc, implicit %exec
+# GCN: %0:vgpr_32 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
+# GCN: %1:sgpr_32 = IMPLICIT_DEF
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 %1, %0, implicit-def %vcc, implicit %exec
name: fold_sgpr_fi
tracksRegLiveness: true
registers:
@@ -98,9 +98,9 @@ body: |
...
# GCN-LABEL: name: fold_fi_sgpr{{$}}
-# GCN: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
-# GCN: %1 = IMPLICIT_DEF
-# GCN: %2 = V_ADD_I32_e32 %1, %0, implicit-def %vcc, implicit %exec
+# GCN: %0:vgpr_32 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
+# GCN: %1:sgpr_32 = IMPLICIT_DEF
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 %1, %0, implicit-def %vcc, implicit %exec
name: fold_fi_sgpr
tracksRegLiveness: true
registers:
@@ -120,8 +120,8 @@ body: |
...
# TODO: Should probably prefer folding immediate first
# GCN-LABEL: name: fold_fi_imm{{$}}
-# GCN: %1 = V_MOV_B32_e32 999, implicit %exec
-# GCN: %2 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
+# GCN: %1:vgpr_32 = V_MOV_B32_e32 999, implicit %exec
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 %stack.0.alloca, %1, implicit-def %vcc, implicit %exec
name: fold_fi_imm
tracksRegLiveness: true
registers:
@@ -141,8 +141,8 @@ body: |
...
# GCN-LABEL: name: fold_imm_fi{{$}}
-# GCN: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
-# GCN: %2 = V_ADD_I32_e32 999, %0, implicit-def %vcc, implicit %exec
+# GCN: %0:vgpr_32 = V_MOV_B32_e32 %stack.0.alloca, implicit %exec
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 999, %0, implicit-def %vcc, implicit %exec
name: fold_imm_fi
tracksRegLiveness: true
registers:
Modified: llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-non-ssa.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-non-ssa.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-non-ssa.mir (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/vop-shrink-non-ssa.mir Tue Oct 24 11:04:54 2017
@@ -1,8 +1,8 @@
# RUN: llc -march=amdgcn -verify-machineinstrs -run-pass si-shrink-instructions -o - %s | FileCheck -check-prefix=GCN %s
...
# GCN-LABEL: name: fold_imm_non_ssa{{$}}
-# GCN: %0 = V_MOV_B32_e32 123, implicit %exec
-# GCN: %2 = V_ADD_I32_e32 456, %0, implicit-def %vcc, implicit %exec
+# GCN: %0:vgpr_32 = V_MOV_B32_e32 123, implicit %exec
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 456, %0, implicit-def %vcc, implicit %exec
name: fold_imm_non_ssa
tracksRegLiveness: true
@@ -21,8 +21,8 @@ body: |
...
# GCN-LABEL: name: fold_partially_defined_superreg{{$}}
-# GCN: %1 = V_MOV_B32_e32 456, implicit %exec
-# GCN: %2 = V_ADD_I32_e32 123, %1, implicit-def %vcc, implicit %exec
+# GCN: %1:vgpr_32 = V_MOV_B32_e32 456, implicit %exec
+# GCN: %2:vgpr_32 = V_ADD_I32_e32 123, %1, implicit-def %vcc, implicit %exec
name: fold_partially_defined_superreg
tracksRegLiveness: true
registers:
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir Tue Oct 24 11:04:54 2017
@@ -67,12 +67,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_eq_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 0, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 0, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -97,12 +97,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_ne_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 1, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 1, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -127,12 +127,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_ugt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 8, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 8, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -157,12 +157,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_uge_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 2, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 2, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -187,12 +187,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_ult_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 3, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 3, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -217,12 +217,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_ule_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 9, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 9, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -247,12 +247,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_sgt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 12, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 12, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -277,12 +277,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_sge_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 10, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 10, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -307,12 +307,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_slt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 11, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 11, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -337,12 +337,12 @@ body: |
liveins: %r0, %r1
; CHECK-LABEL: name: test_icmp_sle_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %r0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %r1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: CMPrr [[COPY]], [[COPY1]], 14, _, implicit-def %cpsr
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 13, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 13, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %r0
@@ -367,8 +367,8 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_true_s32
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 1, 14, _, _
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVi]], 1, 14, _, _
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 1, 14, _, _
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -393,8 +393,8 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_false_s32
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVi]], 1, 14, _, _
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -419,13 +419,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_oeq_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 0, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 0, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -450,13 +450,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ogt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 12, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 12, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -481,13 +481,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_oge_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 10, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 10, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -512,13 +512,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_olt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 4, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 4, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -543,13 +543,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ole_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 9, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 9, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -574,13 +574,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ord_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 7, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 7, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -605,13 +605,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ugt_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 8, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 8, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -636,13 +636,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_uge_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 5, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 5, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -667,13 +667,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ult_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 11, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 11, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -698,13 +698,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ule_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 13, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 13, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -729,13 +729,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_une_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 1, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 1, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -760,13 +760,13 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_uno_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 6, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 6, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -791,16 +791,16 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_one_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 12, %cpsr
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 12, %cpsr
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi1:%[0-9]+]] = MOVCCi [[MOVCCi]], 1, 4, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi1]], 1, 14, _, _
+ ; CHECK: [[MOVCCi1:%[0-9]+]]:gpr = MOVCCi [[MOVCCi]], 1, 4, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi1]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -825,16 +825,16 @@ body: |
liveins: %s0, %s1
; CHECK-LABEL: name: test_fcmp_ueq_s32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %s0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %s1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:spr = COPY %s0
+ ; CHECK: [[COPY1:%[0-9]+]]:spr = COPY %s1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 0, %cpsr
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 0, %cpsr
; CHECK: VCMPS [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi1:%[0-9]+]] = MOVCCi [[MOVCCi]], 1, 6, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi1]], 1, 14, _, _
+ ; CHECK: [[MOVCCi1:%[0-9]+]]:gpr = MOVCCi [[MOVCCi]], 1, 6, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi1]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s32) = COPY %s0
@@ -859,8 +859,8 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_true_s64
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 1, 14, _, _
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVi]], 1, 14, _, _
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 1, 14, _, _
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -885,8 +885,8 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_false_s64
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVi]], 1, 14, _, _
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -911,13 +911,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_oeq_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 0, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 0, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -942,13 +942,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ogt_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 12, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 12, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -973,13 +973,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_oge_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 10, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 10, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1004,13 +1004,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_olt_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 4, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 4, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1035,13 +1035,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ole_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 9, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 9, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1066,13 +1066,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ord_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 7, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 7, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1097,13 +1097,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ugt_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 8, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 8, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1128,13 +1128,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_uge_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 5, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 5, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1159,13 +1159,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ult_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 11, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 11, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1190,13 +1190,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ule_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 13, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 13, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1221,13 +1221,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_une_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 1, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 1, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1252,13 +1252,13 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_uno_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 6, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi]], 1, 14, _, _
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 6, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1283,16 +1283,16 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_one_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 12, %cpsr
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 12, %cpsr
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi1:%[0-9]+]] = MOVCCi [[MOVCCi]], 1, 4, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi1]], 1, 14, _, _
+ ; CHECK: [[MOVCCi1:%[0-9]+]]:gpr = MOVCCi [[MOVCCi]], 1, 4, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi1]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
@@ -1317,16 +1317,16 @@ body: |
liveins: %d0, %d1
; CHECK-LABEL: name: test_fcmp_ueq_s64
- ; CHECK: [[COPY:%[0-9]+]] = COPY %d0
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %d1
- ; CHECK: [[MOVi:%[0-9]+]] = MOVi 0, 14, _, _
+ ; CHECK: [[COPY:%[0-9]+]]:dpr = COPY %d0
+ ; CHECK: [[COPY1:%[0-9]+]]:dpr = COPY %d1
+ ; CHECK: [[MOVi:%[0-9]+]]:gpr = MOVi 0, 14, _, _
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi:%[0-9]+]] = MOVCCi [[MOVi]], 1, 0, %cpsr
+ ; CHECK: [[MOVCCi:%[0-9]+]]:gpr = MOVCCi [[MOVi]], 1, 0, %cpsr
; CHECK: VCMPD [[COPY]], [[COPY1]], 14, _, implicit-def %fpscr_nzcv
; CHECK: FMSTAT 14, _, implicit-def %cpsr, implicit %fpscr_nzcv
- ; CHECK: [[MOVCCi1:%[0-9]+]] = MOVCCi [[MOVCCi]], 1, 6, %cpsr
- ; CHECK: [[ANDri:%[0-9]+]] = ANDri [[MOVCCi1]], 1, 14, _, _
+ ; CHECK: [[MOVCCi1:%[0-9]+]]:gpr = MOVCCi [[MOVCCi]], 1, 6, %cpsr
+ ; CHECK: [[ANDri:%[0-9]+]]:gpr = ANDri [[MOVCCi1]], 1, 14, _, _
; CHECK: %r0 = COPY [[ANDri]]
; CHECK: BX_RET 14, _, implicit %r0
%0(s64) = COPY %d0
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir Tue Oct 24 11:04:54 2017
@@ -30,13 +30,13 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
- ; CHECK: [[VREGZ:%[0-9]+]] = COPY %r2
+ ; CHECK: [[VREGX:%[0-9]+]]:gprnopc = COPY %r0
+ ; CHECK: [[VREGY:%[0-9]+]]:gprnopc = COPY %r1
+ ; CHECK: [[VREGZ:%[0-9]+]]:gprnopc = COPY %r2
%3(s32) = G_MUL %0, %1
%4(s32) = G_ADD %3, %2
- ; CHECK: [[VREGR:%[0-9]+]] = MLA [[VREGX]], [[VREGY]], [[VREGZ]], 14, _, _
+ ; CHECK: [[VREGR:%[0-9]+]]:gprnopc = MLA [[VREGX]], [[VREGY]], [[VREGZ]], 14, _, _
%r0 = COPY %4(s32)
; CHECK: %r0 = COPY [[VREGR]]
@@ -64,13 +64,13 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
- ; CHECK: [[VREGZ:%[0-9]+]] = COPY %r2
+ ; CHECK: [[VREGX:%[0-9]+]]:gprnopc = COPY %r0
+ ; CHECK: [[VREGY:%[0-9]+]]:gprnopc = COPY %r1
+ ; CHECK: [[VREGZ:%[0-9]+]]:gprnopc = COPY %r2
%3(s32) = G_MUL %0, %1
%4(s32) = G_ADD %3, %2
- ; CHECK: [[VREGR:%[0-9]+]] = MLAv5 [[VREGX]], [[VREGY]], [[VREGZ]], 14, _, _
+ ; CHECK: [[VREGR:%[0-9]+]]:gprnopc = MLAv5 [[VREGX]], [[VREGY]], [[VREGZ]], 14, _, _
%r0 = COPY %4(s32)
; CHECK: %r0 = COPY [[VREGR]]
@@ -98,13 +98,13 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
- ; CHECK: [[VREGZ:%[0-9]+]] = COPY %r2
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
+ ; CHECK: [[VREGZ:%[0-9]+]]:gpr = COPY %r2
%3(s32) = G_MUL %0, %1
%4(s32) = G_SUB %2, %3
- ; CHECK: [[VREGR:%[0-9]+]] = MLS [[VREGX]], [[VREGY]], [[VREGZ]], 14, _
+ ; CHECK: [[VREGR:%[0-9]+]]:gpr = MLS [[VREGX]], [[VREGY]], [[VREGZ]], 14, _
%r0 = COPY %4(s32)
; CHECK: %r0 = COPY [[VREGR]]
@@ -132,14 +132,14 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
- ; CHECK: [[VREGZ:%[0-9]+]] = COPY %r2
+ ; CHECK: [[VREGX:%[0-9]+]]:gprnopc = COPY %r0
+ ; CHECK: [[VREGY:%[0-9]+]]:gprnopc = COPY %r1
+ ; CHECK: [[VREGZ:%[0-9]+]]:gpr = COPY %r2
%3(s32) = G_MUL %0, %1
%4(s32) = G_SUB %2, %3
- ; CHECK: [[VREGM:%[0-9]+]] = MULv5 [[VREGX]], [[VREGY]], 14, _, _
- ; CHECK: [[VREGR:%[0-9]+]] = SUBrr [[VREGZ]], [[VREGM]], 14, _, _
+ ; CHECK: [[VREGM:%[0-9]+]]:gprnopc = MULv5 [[VREGX]], [[VREGY]], 14, _, _
+ ; CHECK: [[VREGR:%[0-9]+]]:gpr = SUBrr [[VREGZ]], [[VREGM]], 14, _, _
%r0 = COPY %4(s32)
; CHECK: %r0 = COPY [[VREGR]]
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir Tue Oct 24 11:04:54 2017
@@ -65,13 +65,13 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s1) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gpr = COPY [[VREG]]
%2(s32) = G_ZEXT %1(s1)
- ; CHECK: [[VREGEXT:%[0-9]+]] = ANDri [[VREGTRUNC]], 1, 14, _, _
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gpr = ANDri [[VREGTRUNC]], 1, 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -95,14 +95,14 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s1) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gpr = COPY [[VREG]]
%2(s32) = G_SEXT %1(s1)
- ; CHECK: [[VREGAND:%[0-9]+]] = ANDri [[VREGTRUNC]], 1, 14, _, _
- ; CHECK: [[VREGEXT:%[0-9]+]] = RSBri [[VREGAND]], 0, 14, _, _
+ ; CHECK: [[VREGAND:%[0-9]+]]:gpr = ANDri [[VREGTRUNC]], 1, 14, _, _
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gpr = RSBri [[VREGAND]], 0, 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -126,13 +126,13 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s8) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gprnopc = COPY [[VREG]]
%2(s32) = G_SEXT %1(s8)
- ; CHECK: [[VREGEXT:%[0-9]+]] = SXTB [[VREGTRUNC]], 0, 14, _
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gprnopc = SXTB [[VREGTRUNC]], 0, 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -156,13 +156,13 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s16) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gprnopc = COPY [[VREG]]
%2(s32) = G_ZEXT %1(s16)
- ; CHECK: [[VREGEXT:%[0-9]+]] = UXTH [[VREGTRUNC]], 0, 14, _
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gprnopc = UXTH [[VREGTRUNC]], 0, 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -186,13 +186,13 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s8) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gpr = COPY [[VREG]]
%2(s32) = G_ANYEXT %1(s8)
- ; CHECK: [[VREGEXT:%[0-9]+]] = COPY [[VREGTRUNC]]
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gpr = COPY [[VREGTRUNC]]
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -216,13 +216,13 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[VREG:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREG:%[0-9]+]]:gpr = COPY %r0
%1(s16) = G_TRUNC %0(s32)
- ; CHECK: [[VREGTRUNC:%[0-9]+]] = COPY [[VREG]]
+ ; CHECK: [[VREGTRUNC:%[0-9]+]]:gpr = COPY [[VREG]]
%2(s32) = G_ANYEXT %1(s16)
- ; CHECK: [[VREGEXT:%[0-9]+]] = COPY [[VREGTRUNC]]
+ ; CHECK: [[VREGEXT:%[0-9]+]]:gpr = COPY [[VREGTRUNC]]
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGEXT]]
@@ -249,13 +249,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_ADD %0, %1
- ; CHECK: [[VREGSUM:%[0-9]+]] = ADDrr [[VREGX]], [[VREGY]], 14, _, _
+ ; CHECK: [[VREGSUM:%[0-9]+]]:gpr = ADDrr [[VREGX]], [[VREGY]], 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGSUM]]
@@ -282,13 +282,13 @@ body: |
liveins: %s0, %s1
%0(s32) = COPY %s0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %s0
+ ; CHECK: [[VREGX:%[0-9]+]]:spr = COPY %s0
%1(s32) = COPY %s1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %s1
+ ; CHECK: [[VREGY:%[0-9]+]]:spr = COPY %s1
%2(s32) = G_FADD %0, %1
- ; CHECK: [[VREGSUM:%[0-9]+]] = VADDS [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGSUM:%[0-9]+]]:spr = VADDS [[VREGX]], [[VREGY]], 14, _
%s0 = COPY %2(s32)
; CHECK: %s0 = COPY [[VREGSUM]]
@@ -315,13 +315,13 @@ body: |
liveins: %d0, %d1
%0(s64) = COPY %d0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %d0
+ ; CHECK: [[VREGX:%[0-9]+]]:dpr = COPY %d0
%1(s64) = COPY %d1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %d1
+ ; CHECK: [[VREGY:%[0-9]+]]:dpr = COPY %d1
%2(s64) = G_FADD %0, %1
- ; CHECK: [[VREGSUM:%[0-9]+]] = VADDD [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGSUM:%[0-9]+]]:dpr = VADDD [[VREGX]], [[VREGY]], 14, _
%d0 = COPY %2(s64)
; CHECK: %d0 = COPY [[VREGSUM]]
@@ -348,13 +348,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_SUB %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = SUBrr [[VREGX]], [[VREGY]], 14, _, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = SUBrr [[VREGX]], [[VREGY]], 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -381,13 +381,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gprnopc = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gprnopc = COPY %r1
%2(s32) = G_MUL %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = MUL [[VREGX]], [[VREGY]], 14, _, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gprnopc = MUL [[VREGX]], [[VREGY]], 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -414,13 +414,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gprnopc = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gprnopc = COPY %r1
%2(s32) = G_MUL %0, %1
- ; CHECK: early-clobber [[VREGRES:%[0-9]+]] = MULv5 [[VREGX]], [[VREGY]], 14, _, _
+ ; CHECK: early-clobber [[VREGRES:%[0-9]+]]:gprnopc = MULv5 [[VREGX]], [[VREGY]], 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -447,13 +447,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_SDIV %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = SDIV [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = SDIV [[VREGX]], [[VREGY]], 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -480,13 +480,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_UDIV %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = UDIV [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = UDIV [[VREGX]], [[VREGY]], 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -513,13 +513,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_AND %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = ANDrr [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = ANDrr [[VREGX]], [[VREGY]], 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -546,13 +546,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_OR %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = ORRrr [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = ORRrr [[VREGX]], [[VREGY]], 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -579,13 +579,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_XOR %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = EORrr [[VREGX]], [[VREGY]], 14, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gpr = EORrr [[VREGX]], [[VREGY]], 14, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -612,13 +612,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_LSHR %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = MOVsr [[VREGX]], [[VREGY]], 3, 14, _, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gprnopc = MOVsr [[VREGX]], [[VREGY]], 3, 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -645,13 +645,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_ASHR %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = MOVsr [[VREGX]], [[VREGY]], 1, 14, _, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gprnopc = MOVsr [[VREGX]], [[VREGY]], 1, 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -678,13 +678,13 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s32) = G_SHL %0, %1
- ; CHECK: [[VREGRES:%[0-9]+]] = MOVsr [[VREGX]], [[VREGY]], 2, 14, _, _
+ ; CHECK: [[VREGRES:%[0-9]+]]:gprnopc = MOVsr [[VREGX]], [[VREGY]], 2, 14, _, _
%r0 = COPY %2(s32)
; CHECK: %r0 = COPY [[VREGRES]]
@@ -721,22 +721,22 @@ body: |
liveins: %r0, %r1, %r2, %r3
%0(p0) = G_FRAME_INDEX %fixed-stack.2
- ; CHECK: [[FI32VREG:%[0-9]+]] = ADDri %fixed-stack.[[FI32]], 0, 14, _, _
+ ; CHECK: [[FI32VREG:%[0-9]+]]:gpr = ADDri %fixed-stack.[[FI32]], 0, 14, _, _
%1(s32) = G_LOAD %0(p0) :: (load 4)
- ; CHECK: [[LD32VREG:%[0-9]+]] = LDRi12 [[FI32VREG]], 0, 14, _
+ ; CHECK: [[LD32VREG:%[0-9]+]]:gpr = LDRi12 [[FI32VREG]], 0, 14, _
%r0 = COPY %1
; CHECK: %r0 = COPY [[LD32VREG]]
%2(p0) = G_FRAME_INDEX %fixed-stack.0
- ; CHECK: [[FI1VREG:%[0-9]+]] = ADDri %fixed-stack.[[FI1]], 0, 14, _, _
+ ; CHECK: [[FI1VREG:%[0-9]+]]:gpr = ADDri %fixed-stack.[[FI1]], 0, 14, _, _
%3(s1) = G_LOAD %2(p0) :: (load 1)
- ; CHECK: [[LD1VREG:%[0-9]+]] = LDRBi12 [[FI1VREG]], 0, 14, _
+ ; CHECK: [[LD1VREG:%[0-9]+]]:gprnopc = LDRBi12 [[FI1VREG]], 0, 14, _
%4(s32) = G_ANYEXT %3(s1)
- ; CHECK: [[RES:%[0-9]+]] = COPY [[LD1VREG]]
+ ; CHECK: [[RES:%[0-9]+]]:gpr = COPY [[LD1VREG]]
%r0 = COPY %4
; CHECK: %r0 = COPY [[RES]]
@@ -763,7 +763,7 @@ body: |
%0(p0) = COPY %r0
%1(s32) = G_LOAD %0(p0) :: (load 4)
- ; CHECK: %[[V]] = VLDRS %[[P]], 0, 14, _
+ ; CHECK: %[[V]]:spr = VLDRS %[[P]], 0, 14, _
%s0 = COPY %1
; CHECK: %s0 = COPY %[[V]]
@@ -790,7 +790,7 @@ body: |
%0(p0) = COPY %r0
%1(s64) = G_LOAD %0(p0) :: (load 8)
- ; CHECK: %[[V]] = VLDRD %[[P]], 0, 14, _
+ ; CHECK: %[[V]]:dpr = VLDRD %[[P]], 0, 14, _
%d0 = COPY %1
; CHECK: %d0 = COPY %[[V]]
@@ -868,7 +868,7 @@ body: |
%1(s32) = COPY %r1
%2(p0) = G_GEP %0, %1(s32)
- ; CHECK: %[[GEP]] = ADDrr %[[PTR]], %[[OFF]], 14, _, _
+ ; CHECK: %[[GEP]]:gpr = ADDrr %[[PTR]], %[[OFF]], 14, _, _
%r0 = COPY %2(p0)
BX_RET 14, _, implicit %r0
@@ -886,7 +886,7 @@ registers:
body: |
bb.0:
%0(s32) = G_CONSTANT 42
- ; CHECK: %[[C]] = MOVi 42, 14, _, _
+ ; CHECK: %[[C]]:gpr = MOVi 42, 14, _, _
%r0 = COPY %0(s32)
BX_RET 14, _, implicit %r0
@@ -906,7 +906,7 @@ body: |
; Adding a type on G_CONSTANT changes its operand from an Imm into a CImm.
; We still want to see the same thing in the output though.
%0(s32) = G_CONSTANT i32 42
- ; CHECK: %[[C]] = MOVi 42, 14, _, _
+ ; CHECK: %[[C]]:gpr = MOVi 42, 14, _, _
%r0 = COPY %0(s32)
BX_RET 14, _, implicit %r0
@@ -928,17 +928,17 @@ body: |
liveins: %r0, %r1
%0(s32) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s1) = G_TRUNC %1(s32)
- ; CHECK: [[VREGC:%[0-9]+]] = COPY [[VREGY]]
+ ; CHECK: [[VREGC:%[0-9]+]]:gpr = COPY [[VREGY]]
%3(s32) = G_SELECT %2(s1), %0, %1
; CHECK: CMPri [[VREGC]], 0, 14, _, implicit-def %cpsr
- ; CHECK: [[RES:%[0-9]+]] = MOVCCr [[VREGX]], [[VREGY]], 0, %cpsr
+ ; CHECK: [[RES:%[0-9]+]]:gpr = MOVCCr [[VREGX]], [[VREGY]], 0, %cpsr
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[RES]]
@@ -963,17 +963,17 @@ body: |
liveins: %r0, %r1
%0(p0) = COPY %r0
- ; CHECK: [[VREGX:%[0-9]+]] = COPY %r0
+ ; CHECK: [[VREGX:%[0-9]+]]:gpr = COPY %r0
%1(p0) = COPY %r1
- ; CHECK: [[VREGY:%[0-9]+]] = COPY %r1
+ ; CHECK: [[VREGY:%[0-9]+]]:gpr = COPY %r1
%2(s1) = G_TRUNC %1(p0)
- ; CHECK: [[VREGC:%[0-9]+]] = COPY [[VREGY]]
+ ; CHECK: [[VREGC:%[0-9]+]]:gpr = COPY [[VREGY]]
%3(p0) = G_SELECT %2(s1), %0, %1
; CHECK: CMPri [[VREGC]], 0, 14, _, implicit-def %cpsr
- ; CHECK: [[RES:%[0-9]+]] = MOVCCr [[VREGX]], [[VREGY]], 0, %cpsr
+ ; CHECK: [[RES:%[0-9]+]]:gpr = MOVCCr [[VREGX]], [[VREGY]], 0, %cpsr
%r0 = COPY %3(p0)
; CHECK: %r0 = COPY [[RES]]
@@ -998,9 +998,9 @@ body: |
liveins: %r0
%0(s32) = COPY %r0
- ; CHECK: [[COND32:%[0-9]+]] = COPY %r0
+ ; CHECK: [[COND32:%[0-9]+]]:gpr = COPY %r0
%1(s1) = G_TRUNC %0(s32)
- ; CHECK: [[COND:%[0-9]+]] = COPY [[COND32]]
+ ; CHECK: [[COND:%[0-9]+]]:gpr = COPY [[COND32]]
G_BRCOND %1(s1), %bb.1
; CHECK: TSTri [[COND]], 1, 14, _, implicit-def %cpsr
@@ -1044,16 +1044,16 @@ body: |
liveins: %r0, %r1, %r2, %r3
%0(s32) = COPY %r2
- ; CHECK: [[IN1:%[0-9]+]] = COPY %r2
+ ; CHECK: [[IN1:%[0-9]+]]:gpr = COPY %r2
%1(s32) = COPY %r3
- ; CHECK: [[IN2:%[0-9]+]] = COPY %r3
+ ; CHECK: [[IN2:%[0-9]+]]:gpr = COPY %r3
%2(s64) = G_MERGE_VALUES %0(s32), %1(s32)
- ; CHECK: %[[DREG]] = VMOVDRR [[IN1]], [[IN2]]
+ ; CHECK: %[[DREG]]:dpr = VMOVDRR [[IN1]], [[IN2]]
%3(s32), %4(s32) = G_UNMERGE_VALUES %2(s64)
- ; CHECK: [[OUT1:%[0-9]+]], [[OUT2:%[0-9]+]] = VMOVRRD %[[DREG]]
+ ; CHECK: [[OUT1:%[0-9]+]]:gpr, [[OUT2:%[0-9]+]]:gpr = VMOVRRD %[[DREG]]
%r0 = COPY %3
; CHECK: %r0 = COPY [[OUT1]]
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll Tue Oct 24 11:04:54 2017
@@ -11,12 +11,12 @@ entry:
define signext i1 @test_add_i1(i1 %x, i1 %y) {
; CHECK-LABEL: name: test_add_i1
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGX:%[0-9]+]](s1) = G_TRUNC [[VREGR0]]
-; CHECK-DAG: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[VREGY:%[0-9]+]](s1) = G_TRUNC [[VREGR1]]
-; CHECK: [[SUM:%[0-9]+]](s1) = G_ADD [[VREGX]], [[VREGY]]
-; CHECK: [[EXT:%[0-9]+]](s32) = G_SEXT [[SUM]]
+; CHECK-DAG: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s1) = G_TRUNC [[VREGR0]]
+; CHECK-DAG: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s1) = G_TRUNC [[VREGR1]]
+; CHECK: [[SUM:%[0-9]+]]:_(s1) = G_ADD [[VREGX]], [[VREGY]]
+; CHECK: [[EXT:%[0-9]+]]:_(s32) = G_SEXT [[SUM]]
; CHECK: %r0 = COPY [[EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -27,12 +27,12 @@ entry:
define i8 @test_add_i8(i8 %x, i8 %y) {
; CHECK-LABEL: name: test_add_i8
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGX:%[0-9]+]](s8) = G_TRUNC [[VREGR0]]
-; CHECK-DAG: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[VREGY:%[0-9]+]](s8) = G_TRUNC [[VREGR1]]
-; CHECK: [[SUM:%[0-9]+]](s8) = G_ADD [[VREGX]], [[VREGY]]
-; CHECK: [[SUM_EXT:%[0-9]+]](s32) = G_ANYEXT [[SUM]]
+; CHECK-DAG: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR0]]
+; CHECK-DAG: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR1]]
+; CHECK: [[SUM:%[0-9]+]]:_(s8) = G_ADD [[VREGX]], [[VREGY]]
+; CHECK: [[SUM_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[SUM]]
; CHECK: %r0 = COPY [[SUM_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -43,12 +43,12 @@ entry:
define i8 @test_sub_i8(i8 %x, i8 %y) {
; CHECK-LABEL: name: test_sub_i8
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGX:%[0-9]+]](s8) = G_TRUNC [[VREGR0]]
-; CHECK-DAG: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[VREGY:%[0-9]+]](s8) = G_TRUNC [[VREGR1]]
-; CHECK: [[RES:%[0-9]+]](s8) = G_SUB [[VREGX]], [[VREGY]]
-; CHECK: [[RES_EXT:%[0-9]+]](s32) = G_ANYEXT [[RES]]
+; CHECK-DAG: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR0]]
+; CHECK-DAG: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR1]]
+; CHECK: [[RES:%[0-9]+]]:_(s8) = G_SUB [[VREGX]], [[VREGY]]
+; CHECK: [[RES_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[RES]]
; CHECK: %r0 = COPY [[RES_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -59,9 +59,9 @@ entry:
define signext i8 @test_return_sext_i8(i8 %x) {
; CHECK-LABEL: name: test_return_sext_i8
; CHECK: liveins: %r0
-; CHECK: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[VREG:%[0-9]+]](s8) = G_TRUNC [[VREGR0]]
-; CHECK: [[VREGEXT:%[0-9]+]](s32) = G_SEXT [[VREG]]
+; CHECK: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[VREG:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR0]]
+; CHECK: [[VREGEXT:%[0-9]+]]:_(s32) = G_SEXT [[VREG]]
; CHECK: %r0 = COPY [[VREGEXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -71,12 +71,12 @@ entry:
define i16 @test_add_i16(i16 %x, i16 %y) {
; CHECK-LABEL: name: test_add_i16
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGX:%[0-9]+]](s16) = G_TRUNC [[VREGR0]]
-; CHECK-DAG: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[VREGY:%[0-9]+]](s16) = G_TRUNC [[VREGR1]]
-; CHECK: [[SUM:%[0-9]+]](s16) = G_ADD [[VREGX]], [[VREGY]]
-; CHECK: [[SUM_EXT:%[0-9]+]](s32) = G_ANYEXT [[SUM]]
+; CHECK-DAG: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR0]]
+; CHECK-DAG: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR1]]
+; CHECK: [[SUM:%[0-9]+]]:_(s16) = G_ADD [[VREGX]], [[VREGY]]
+; CHECK: [[SUM_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[SUM]]
; CHECK: %r0 = COPY [[SUM_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -87,12 +87,12 @@ entry:
define i16 @test_sub_i16(i16 %x, i16 %y) {
; CHECK-LABEL: name: test_sub_i16
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGX:%[0-9]+]](s16) = G_TRUNC [[VREGR0]]
-; CHECK-DAG: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[VREGY:%[0-9]+]](s16) = G_TRUNC [[VREGR1]]
-; CHECK: [[RES:%[0-9]+]](s16) = G_SUB [[VREGX]], [[VREGY]]
-; CHECK: [[RES_EXT:%[0-9]+]](s32) = G_ANYEXT [[RES]]
+; CHECK-DAG: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR0]]
+; CHECK-DAG: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR1]]
+; CHECK: [[RES:%[0-9]+]]:_(s16) = G_SUB [[VREGX]], [[VREGY]]
+; CHECK: [[RES_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[RES]]
; CHECK: %r0 = COPY [[RES_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -103,9 +103,9 @@ entry:
define zeroext i16 @test_return_zext_i16(i16 %x) {
; CHECK-LABEL: name: test_return_zext_i16
; CHECK: liveins: %r0
-; CHECK: [[VREGR0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[VREG:%[0-9]+]](s16) = G_TRUNC [[VREGR0]]
-; CHECK: [[VREGEXT:%[0-9]+]](s32) = G_ZEXT [[VREG]]
+; CHECK: [[VREGR0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[VREG:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR0]]
+; CHECK: [[VREGEXT:%[0-9]+]]:_(s32) = G_ZEXT [[VREG]]
; CHECK: %r0 = COPY [[VREGEXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -115,9 +115,9 @@ entry:
define i32 @test_add_i32(i32 %x, i32 %y) {
; CHECK-LABEL: name: test_add_i32
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGX:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGY:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[SUM:%[0-9]+]](s32) = G_ADD [[VREGX]], [[VREGY]]
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[SUM:%[0-9]+]]:_(s32) = G_ADD [[VREGX]], [[VREGY]]
; CHECK: %r0 = COPY [[SUM]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -128,9 +128,9 @@ entry:
define i32 @test_sub_i32(i32 %x, i32 %y) {
; CHECK-LABEL: name: test_sub_i32
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[VREGX:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGY:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[RES:%[0-9]+]](s32) = G_SUB [[VREGX]], [[VREGY]]
+; CHECK-DAG: [[VREGX:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGY:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[RES:%[0-9]+]]:_(s32) = G_SUB [[VREGX]], [[VREGY]]
; CHECK: %r0 = COPY [[RES]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -144,10 +144,10 @@ define i32 @test_stack_args(i32 %p0, i32
; CHECK-DAG: id: [[P4:[0-9]]]{{.*}}offset: 0{{.*}}size: 4
; CHECK-DAG: id: [[P5:[0-9]]]{{.*}}offset: 4{{.*}}size: 4
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[VREGP2:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[FIP5:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
-; CHECK: [[VREGP5:%[0-9]+]](s32) = G_LOAD [[FIP5]]{{.*}}load 4
-; CHECK: [[SUM:%[0-9]+]](s32) = G_ADD [[VREGP2]], [[VREGP5]]
+; CHECK: [[VREGP2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[FIP5:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
+; CHECK: [[VREGP5:%[0-9]+]]:_(s32) = G_LOAD [[FIP5]]{{.*}}load 4
+; CHECK: [[SUM:%[0-9]+]]:_(s32) = G_ADD [[VREGP2]], [[VREGP5]]
; CHECK: %r0 = COPY [[SUM]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -162,13 +162,13 @@ define i16 @test_stack_args_signext(i32
; CHECK-DAG: id: [[P4:[0-9]]]{{.*}}offset: 0{{.*}}size: 1
; CHECK-DAG: id: [[P5:[0-9]]]{{.*}}offset: 4{{.*}}size: 2
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[VREGR1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[VREGP1:%[0-9]+]](s16) = G_TRUNC [[VREGR1]]
-; CHECK: [[FIP5:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
-; CHECK: [[VREGP5EXT:%[0-9]+]](s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
-; CHECK: [[VREGP5:%[0-9]+]](s16) = G_TRUNC [[VREGP5EXT]]
-; CHECK: [[SUM:%[0-9]+]](s16) = G_ADD [[VREGP1]], [[VREGP5]]
-; CHECK: [[SUM_EXT:%[0-9]+]](s32) = G_ANYEXT [[SUM]]
+; CHECK: [[VREGR1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[VREGP1:%[0-9]+]]:_(s16) = G_TRUNC [[VREGR1]]
+; CHECK: [[FIP5:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
+; CHECK: [[VREGP5EXT:%[0-9]+]]:_(s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
+; CHECK: [[VREGP5:%[0-9]+]]:_(s16) = G_TRUNC [[VREGP5EXT]]
+; CHECK: [[SUM:%[0-9]+]]:_(s16) = G_ADD [[VREGP1]], [[VREGP5]]
+; CHECK: [[SUM_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[SUM]]
; CHECK: %r0 = COPY [[SUM_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -183,13 +183,13 @@ define i8 @test_stack_args_zeroext(i32 %
; CHECK-DAG: id: [[P4:[0-9]]]{{.*}}offset: 0{{.*}}size: 1
; CHECK-DAG: id: [[P5:[0-9]]]{{.*}}offset: 4{{.*}}size: 2
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[VREGR2:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[VREGP2:%[0-9]+]](s8) = G_TRUNC [[VREGR2]]
-; CHECK: [[FIP4:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P4]]
-; CHECK: [[VREGP4EXT:%[0-9]+]](s32) = G_LOAD [[FIP4]](p0){{.*}}load 4
-; CHECK: [[VREGP4:%[0-9]+]](s8) = G_TRUNC [[VREGP4EXT]]
-; CHECK: [[SUM:%[0-9]+]](s8) = G_ADD [[VREGP2]], [[VREGP4]]
-; CHECK: [[SUM_EXT:%[0-9]+]](s32) = G_ANYEXT [[SUM]]
+; CHECK: [[VREGR2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[VREGP2:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR2]]
+; CHECK: [[FIP4:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P4]]
+; CHECK: [[VREGP4EXT:%[0-9]+]]:_(s32) = G_LOAD [[FIP4]](p0){{.*}}load 4
+; CHECK: [[VREGP4:%[0-9]+]]:_(s8) = G_TRUNC [[VREGP4EXT]]
+; CHECK: [[SUM:%[0-9]+]]:_(s8) = G_ADD [[VREGP2]], [[VREGP4]]
+; CHECK: [[SUM_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[SUM]]
; CHECK: %r0 = COPY [[SUM_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -204,12 +204,12 @@ define i8 @test_stack_args_noext(i32 %p0
; CHECK-DAG: id: [[P4:[0-9]]]{{.*}}offset: 0{{.*}}size: 1
; CHECK-DAG: id: [[P5:[0-9]]]{{.*}}offset: 4{{.*}}size: 2
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[VREGR2:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[VREGP2:%[0-9]+]](s8) = G_TRUNC [[VREGR2]]
-; CHECK: [[FIP4:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P4]]
-; CHECK: [[VREGP4:%[0-9]+]](s8) = G_LOAD [[FIP4]](p0){{.*}}load 1
-; CHECK: [[SUM:%[0-9]+]](s8) = G_ADD [[VREGP2]], [[VREGP4]]
-; CHECK: [[SUM_EXT:%[0-9]+]](s32) = G_ANYEXT [[SUM]]
+; CHECK: [[VREGR2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[VREGP2:%[0-9]+]]:_(s8) = G_TRUNC [[VREGR2]]
+; CHECK: [[FIP4:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P4]]
+; CHECK: [[VREGP4:%[0-9]+]]:_(s8) = G_LOAD [[FIP4]](p0){{.*}}load 1
+; CHECK: [[SUM:%[0-9]+]]:_(s8) = G_ADD [[VREGP2]], [[VREGP4]]
+; CHECK: [[SUM_EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[SUM]]
; CHECK: %r0 = COPY [[SUM_EXT]](s32)
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -224,10 +224,10 @@ define zeroext i16 @test_stack_args_exte
; CHECK-DAG: id: [[P4:[0-9]]]{{.*}}offset: 0{{.*}}size: 1
; CHECK-DAG: id: [[P5:[0-9]]]{{.*}}offset: 4{{.*}}size: 2
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[FIP5:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
-; CHECK: [[VREGP5SEXT:%[0-9]+]](s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
-; CHECK: [[VREGP5:%[0-9]+]](s16) = G_TRUNC [[VREGP5SEXT]]
-; CHECK: [[VREGP5ZEXT:%[0-9]+]](s32) = G_ZEXT [[VREGP5]]
+; CHECK: [[FIP5:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
+; CHECK: [[VREGP5SEXT:%[0-9]+]]:_(s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
+; CHECK: [[VREGP5:%[0-9]+]]:_(s16) = G_TRUNC [[VREGP5SEXT]]
+; CHECK: [[VREGP5ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[VREGP5]]
; CHECK: %r0 = COPY [[VREGP5ZEXT]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -237,8 +237,8 @@ entry:
define i16 @test_ptr_arg(i16* %p) {
; CHECK-LABEL: name: test_ptr_arg
; CHECK: liveins: %r0
-; CHECK: [[VREGP:%[0-9]+]](p0) = COPY %r0
-; CHECK: [[VREGV:%[0-9]+]](s16) = G_LOAD [[VREGP]](p0){{.*}}load 2
+; CHECK: [[VREGP:%[0-9]+]]:_(p0) = COPY %r0
+; CHECK: [[VREGV:%[0-9]+]]:_(s16) = G_LOAD [[VREGP]](p0){{.*}}load 2
entry:
%v = load i16, i16* %p
ret i16 %v
@@ -248,8 +248,8 @@ define i32* @test_ptr_ret(i32** %p) {
; Test pointer returns and pointer-to-pointer arguments
; CHECK-LABEL: name: test_ptr_ret
; CHECK: liveins: %r0
-; CHECK: [[VREGP:%[0-9]+]](p0) = COPY %r0
-; CHECK: [[VREGV:%[0-9]+]](p0) = G_LOAD [[VREGP]](p0){{.*}}load 4
+; CHECK: [[VREGP:%[0-9]+]]:_(p0) = COPY %r0
+; CHECK: [[VREGV:%[0-9]+]]:_(p0) = G_LOAD [[VREGP]](p0){{.*}}load 4
; CHECK: %r0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -262,9 +262,9 @@ define i32 @test_ptr_arg_on_stack(i32 %a
; CHECK: fixedStack:
; CHECK: id: [[P:[0-9]+]]{{.*}}offset: 0{{.*}}size: 4
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[FIP:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P]]
-; CHECK: [[VREGP:%[0-9]+]](p0) = G_LOAD [[FIP]](p0){{.*}}load 4
-; CHECK: [[VREGV:%[0-9]+]](s32) = G_LOAD [[VREGP]](p0){{.*}}load 4
+; CHECK: [[FIP:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P]]
+; CHECK: [[VREGP:%[0-9]+]]:_(p0) = G_LOAD [[FIP]](p0){{.*}}load 4
+; CHECK: [[VREGV:%[0-9]+]]:_(s32) = G_LOAD [[VREGP]](p0){{.*}}load 4
; CHECK: %r0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -279,10 +279,10 @@ define arm_aapcscc float @test_float_aap
; CHECK-DAG: id: [[P4:[0-9]+]]{{.*}}offset: 0{{.*}}size: 4
; CHECK-DAG: id: [[P5:[0-9]+]]{{.*}}offset: 4{{.*}}size: 4
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[VREGP1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[FIP5:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
-; CHECK: [[VREGP5:%[0-9]+]](s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
-; CHECK: [[VREGV:%[0-9]+]](s32) = G_FADD [[VREGP1]], [[VREGP5]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[FIP5:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
+; CHECK: [[VREGP5:%[0-9]+]]:_(s32) = G_LOAD [[FIP5]](p0){{.*}}load 4
+; CHECK: [[VREGV:%[0-9]+]]:_(s32) = G_FADD [[VREGP1]], [[VREGP5]]
; CHECK: %r0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -308,10 +308,10 @@ define arm_aapcs_vfpcc float @test_float
; CHECK-DAG: id: [[Q0:[0-9]+]]{{.*}}offset: 0{{.*}}size: 4
; CHECK-DAG: id: [[Q1:[0-9]+]]{{.*}}offset: 4{{.*}}size: 4
; CHECK: liveins: %s0, %s1, %s2, %s3, %s4, %s5, %s6, %s7, %s8, %s9, %s10, %s11, %s12, %s13, %s14, %s15
-; CHECK: [[VREGP1:%[0-9]+]](s32) = COPY %s1
-; CHECK: [[FIQ1:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
-; CHECK: [[VREGQ1:%[0-9]+]](s32) = G_LOAD [[FIQ1]](p0){{.*}}load 4
-; CHECK: [[VREGV:%[0-9]+]](s32) = G_FADD [[VREGP1]], [[VREGQ1]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK: [[FIQ1:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
+; CHECK: [[VREGQ1:%[0-9]+]]:_(s32) = G_LOAD [[FIQ1]](p0){{.*}}load 4
+; CHECK: [[VREGV:%[0-9]+]]:_(s32) = G_FADD [[VREGP1]], [[VREGQ1]]
; CHECK: %s0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %s0
entry:
@@ -329,10 +329,10 @@ define arm_aapcs_vfpcc double @test_doub
; CHECK-DAG: id: [[Q0:[0-9]+]]{{.*}}offset: 0{{.*}}size: 8
; CHECK-DAG: id: [[Q1:[0-9]+]]{{.*}}offset: 8{{.*}}size: 8
; CHECK: liveins: %d0, %d1, %d2, %d3, %d4, %d5, %d6, %d7
-; CHECK: [[VREGP1:%[0-9]+]](s64) = COPY %d1
-; CHECK: [[FIQ1:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
-; CHECK: [[VREGQ1:%[0-9]+]](s64) = G_LOAD [[FIQ1]](p0){{.*}}load 8
-; CHECK: [[VREGV:%[0-9]+]](s64) = G_FADD [[VREGP1]], [[VREGQ1]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s64) = COPY %d1
+; CHECK: [[FIQ1:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
+; CHECK: [[VREGQ1:%[0-9]+]]:_(s64) = G_LOAD [[FIQ1]](p0){{.*}}load 8
+; CHECK: [[VREGV:%[0-9]+]]:_(s64) = G_FADD [[VREGP1]], [[VREGQ1]]
; CHECK: %d0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %d0
entry:
@@ -349,15 +349,15 @@ define arm_aapcscc double @test_double_a
; CHECK-DAG: id: [[P4:[0-9]+]]{{.*}}offset: 16{{.*}}size: 8
; CHECK-DAG: id: [[P5:[0-9]+]]{{.*}}offset: 24{{.*}}size: 8
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK-DAG: [[VREGP1LO:%[0-9]+]](s32) = COPY %r2
-; CHECK-DAG: [[VREGP1HI:%[0-9]+]](s32) = COPY %r3
-; LITTLE: [[VREGP1:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP1LO]](s32), [[VREGP1HI]](s32)
-; BIG: [[VREGP1:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP1HI]](s32), [[VREGP1LO]](s32)
-; CHECK: [[FIP5:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
-; CHECK: [[VREGP5:%[0-9]+]](s64) = G_LOAD [[FIP5]](p0){{.*}}load 8
-; CHECK: [[VREGV:%[0-9]+]](s64) = G_FADD [[VREGP1]], [[VREGP5]]
-; LITTLE: [[VREGVLO:%[0-9]+]](s32), [[VREGVHI:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
-; BIG: [[VREGVHI:%[0-9]+]](s32), [[VREGVLO:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; CHECK-DAG: [[VREGP1LO:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK-DAG: [[VREGP1HI:%[0-9]+]]:_(s32) = COPY %r3
+; LITTLE: [[VREGP1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP1LO]](s32), [[VREGP1HI]](s32)
+; BIG: [[VREGP1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP1HI]](s32), [[VREGP1LO]](s32)
+; CHECK: [[FIP5:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P5]]
+; CHECK: [[VREGP5:%[0-9]+]]:_(s64) = G_LOAD [[FIP5]](p0){{.*}}load 8
+; CHECK: [[VREGV:%[0-9]+]]:_(s64) = G_FADD [[VREGP1]], [[VREGP5]]
+; LITTLE: [[VREGVLO:%[0-9]+]]:_(s32), [[VREGVHI:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; BIG: [[VREGVHI:%[0-9]+]]:_(s32), [[VREGVLO:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
; CHECK-DAG: %r0 = COPY [[VREGVLO]]
; CHECK-DAG: %r1 = COPY [[VREGVHI]]
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -377,10 +377,10 @@ define arm_aapcs_vfpcc double @test_doub
; CHECK-DAG: id: [[Q0:[0-9]+]]{{.*}}offset: 0{{.*}}size: 8
; CHECK-DAG: id: [[Q1:[0-9]+]]{{.*}}offset: 8{{.*}}size: 8
; CHECK: liveins: %d0, %d2, %d3, %d4, %d5, %d6, %d7, %s2
-; CHECK: [[VREGP1:%[0-9]+]](s64) = COPY %d2
-; CHECK: [[FIQ1:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
-; CHECK: [[VREGQ1:%[0-9]+]](s64) = G_LOAD [[FIQ1]](p0){{.*}}load 8
-; CHECK: [[VREGV:%[0-9]+]](s64) = G_FADD [[VREGP1]], [[VREGQ1]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s64) = COPY %d2
+; CHECK: [[FIQ1:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Q1]]
+; CHECK: [[VREGQ1:%[0-9]+]]:_(s64) = G_LOAD [[FIQ1]](p0){{.*}}load 8
+; CHECK: [[VREGV:%[0-9]+]]:_(s64) = G_FADD [[VREGP1]], [[VREGQ1]]
; CHECK: %d0 = COPY [[VREGV]]
; CHECK: BX_RET 14, _, implicit %d0
entry:
@@ -394,15 +394,15 @@ define arm_aapcscc double @test_double_g
; CHECK: fixedStack:
; CHECK-DAG: id: [[P1:[0-9]+]]{{.*}}offset: 0{{.*}}size: 8
; CHECK: liveins: %r0, %r2, %r3
-; CHECK-DAG: [[VREGP0LO:%[0-9]+]](s32) = COPY %r2
-; CHECK-DAG: [[VREGP0HI:%[0-9]+]](s32) = COPY %r3
-; LITTLE: [[VREGP0:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP0LO]](s32), [[VREGP0HI]](s32)
-; BIG: [[VREGP0:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP0HI]](s32), [[VREGP0LO]](s32)
-; CHECK: [[FIP1:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P1]]
-; CHECK: [[VREGP1:%[0-9]+]](s64) = G_LOAD [[FIP1]](p0){{.*}}load 8
-; CHECK: [[VREGV:%[0-9]+]](s64) = G_FADD [[VREGP0]], [[VREGP1]]
-; LITTLE: [[VREGVLO:%[0-9]+]](s32), [[VREGVHI:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
-; BIG: [[VREGVHI:%[0-9]+]](s32), [[VREGVLO:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; CHECK-DAG: [[VREGP0LO:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK-DAG: [[VREGP0HI:%[0-9]+]]:_(s32) = COPY %r3
+; LITTLE: [[VREGP0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP0LO]](s32), [[VREGP0HI]](s32)
+; BIG: [[VREGP0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP0HI]](s32), [[VREGP0LO]](s32)
+; CHECK: [[FIP1:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P1]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s64) = G_LOAD [[FIP1]](p0){{.*}}load 8
+; CHECK: [[VREGV:%[0-9]+]]:_(s64) = G_FADD [[VREGP0]], [[VREGP1]]
+; LITTLE: [[VREGVLO:%[0-9]+]]:_(s32), [[VREGVHI:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; BIG: [[VREGVHI:%[0-9]+]]:_(s32), [[VREGVLO:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
; CHECK-DAG: %r0 = COPY [[VREGVLO]]
; CHECK-DAG: %r1 = COPY [[VREGVHI]]
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -417,15 +417,15 @@ define arm_aapcscc double @test_double_g
; CHECK: fixedStack:
; CHECK-DAG: id: [[P1:[0-9]+]]{{.*}}offset: 0{{.*}}size: 8
; CHECK: liveins: %r0, %r1, %r2
-; CHECK-DAG: [[VREGP0LO:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[VREGP0HI:%[0-9]+]](s32) = COPY %r1
-; LITTLE: [[VREGP0:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP0LO]](s32), [[VREGP0HI]](s32)
-; BIG: [[VREGP0:%[0-9]+]](s64) = G_MERGE_VALUES [[VREGP0HI]](s32), [[VREGP0LO]](s32)
-; CHECK: [[FIP1:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[P1]]
-; CHECK: [[VREGP1:%[0-9]+]](s64) = G_LOAD [[FIP1]](p0){{.*}}load 8
-; CHECK: [[VREGV:%[0-9]+]](s64) = G_FADD [[VREGP0]], [[VREGP1]]
-; LITTLE: [[VREGVLO:%[0-9]+]](s32), [[VREGVHI:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
-; BIG: [[VREGVHI:%[0-9]+]](s32), [[VREGVLO:%[0-9]+]](s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; CHECK-DAG: [[VREGP0LO:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[VREGP0HI:%[0-9]+]]:_(s32) = COPY %r1
+; LITTLE: [[VREGP0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP0LO]](s32), [[VREGP0HI]](s32)
+; BIG: [[VREGP0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[VREGP0HI]](s32), [[VREGP0LO]](s32)
+; CHECK: [[FIP1:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[P1]]
+; CHECK: [[VREGP1:%[0-9]+]]:_(s64) = G_LOAD [[FIP1]](p0){{.*}}load 8
+; CHECK: [[VREGV:%[0-9]+]]:_(s64) = G_FADD [[VREGP0]], [[VREGP1]]
+; LITTLE: [[VREGVLO:%[0-9]+]]:_(s32), [[VREGVHI:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
+; BIG: [[VREGVHI:%[0-9]+]]:_(s32), [[VREGVLO:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[VREGV]](s64)
; CHECK-DAG: %r0 = COPY [[VREGVLO]]
; CHECK-DAG: %r1 = COPY [[VREGVHI]]
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -438,7 +438,7 @@ define arm_aapcscc void @test_indirect_c
; CHECK-LABEL: name: test_indirect_call
; CHECK: registers:
; CHECK-NEXT: id: [[FPTR:[0-9]+]], class: gpr
-; CHECK: %[[FPTR]](p0) = COPY %r0
+; CHECK: %[[FPTR]]:gpr(p0) = COPY %r0
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: BLX %[[FPTR]](p0), csr_aapcs, implicit-def %lr, implicit %sp
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
@@ -463,13 +463,13 @@ declare arm_aapcscc i32* @simple_reg_par
define arm_aapcscc i32* @test_call_simple_reg_params(i32 *%a, i32 %b) {
; CHECK-LABEL: name: test_call_simple_reg_params
-; CHECK-DAG: [[AVREG:%[0-9]+]](p0) = COPY %r0
-; CHECK-DAG: [[BVREG:%[0-9]+]](s32) = COPY %r1
+; CHECK-DAG: [[AVREG:%[0-9]+]]:_(p0) = COPY %r0
+; CHECK-DAG: [[BVREG:%[0-9]+]]:_(s32) = COPY %r1
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK-DAG: %r0 = COPY [[BVREG]]
; CHECK-DAG: %r1 = COPY [[AVREG]]
; CHECK: BLX @simple_reg_params_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit-def %r0
-; CHECK: [[RVREG:%[0-9]+]](p0) = COPY %r0
+; CHECK: [[RVREG:%[0-9]+]]:_(p0) = COPY %r0
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: %r0 = COPY [[RVREG]]
; CHECK: BX_RET 14, _, implicit %r0
@@ -482,23 +482,23 @@ declare arm_aapcscc i32* @simple_stack_p
define arm_aapcscc i32* @test_call_simple_stack_params(i32 *%a, i32 %b) {
; CHECK-LABEL: name: test_call_simple_stack_params
-; CHECK-DAG: [[AVREG:%[0-9]+]](p0) = COPY %r0
-; CHECK-DAG: [[BVREG:%[0-9]+]](s32) = COPY %r1
+; CHECK-DAG: [[AVREG:%[0-9]+]]:_(p0) = COPY %r0
+; CHECK-DAG: [[BVREG:%[0-9]+]]:_(s32) = COPY %r1
; CHECK: ADJCALLSTACKDOWN 8, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK-DAG: %r0 = COPY [[BVREG]]
; CHECK-DAG: %r1 = COPY [[AVREG]]
; CHECK-DAG: %r2 = COPY [[BVREG]]
; CHECK-DAG: %r3 = COPY [[AVREG]]
-; CHECK: [[SP1:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF1:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[FI1:%[0-9]+]](p0) = G_GEP [[SP1]], [[OFF1]](s32)
+; CHECK: [[SP1:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF1:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[FI1:%[0-9]+]]:_(p0) = G_GEP [[SP1]], [[OFF1]](s32)
; CHECK: G_STORE [[BVREG]](s32), [[FI1]](p0){{.*}}store 4
-; CHECK: [[SP2:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF2:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[FI2:%[0-9]+]](p0) = G_GEP [[SP2]], [[OFF2]](s32)
+; CHECK: [[SP2:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF2:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[FI2:%[0-9]+]]:_(p0) = G_GEP [[SP2]], [[OFF2]](s32)
; CHECK: G_STORE [[AVREG]](p0), [[FI2]](p0){{.*}}store 4
; CHECK: BLX @simple_stack_params_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
-; CHECK: [[RVREG:%[0-9]+]](p0) = COPY %r0
+; CHECK: [[RVREG:%[0-9]+]]:_(p0) = COPY %r0
; CHECK: ADJCALLSTACKUP 8, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: %r0 = COPY [[RVREG]]
; CHECK: BX_RET 14, _, implicit %r0
@@ -511,51 +511,51 @@ declare arm_aapcscc signext i16 @ext_tar
define arm_aapcscc signext i16 @test_call_ext_params(i8 %a, i16 %b, i1 %c) {
; CHECK-LABEL: name: test_call_ext_params
-; CHECK-DAG: [[R0VREG:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[AVREG:%[0-9]+]](s8) = G_TRUNC [[R0VREG]]
-; CHECK-DAG: [[R1VREG:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[BVREG:%[0-9]+]](s16) = G_TRUNC [[R1VREG]]
-; CHECK-DAG: [[R2VREG:%[0-9]+]](s32) = COPY %r2
-; CHECK-DAG: [[CVREG:%[0-9]+]](s1) = G_TRUNC [[R2VREG]]
+; CHECK-DAG: [[R0VREG:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[AVREG:%[0-9]+]]:_(s8) = G_TRUNC [[R0VREG]]
+; CHECK-DAG: [[R1VREG:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[BVREG:%[0-9]+]]:_(s16) = G_TRUNC [[R1VREG]]
+; CHECK-DAG: [[R2VREG:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK-DAG: [[CVREG:%[0-9]+]]:_(s1) = G_TRUNC [[R2VREG]]
; CHECK: ADJCALLSTACKDOWN 20, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[SEXTA:%[0-9]+]](s32) = G_SEXT [[AVREG]](s8)
+; CHECK: [[SEXTA:%[0-9]+]]:_(s32) = G_SEXT [[AVREG]](s8)
; CHECK: %r0 = COPY [[SEXTA]]
-; CHECK: [[ZEXTA:%[0-9]+]](s32) = G_ZEXT [[AVREG]](s8)
+; CHECK: [[ZEXTA:%[0-9]+]]:_(s32) = G_ZEXT [[AVREG]](s8)
; CHECK: %r1 = COPY [[ZEXTA]]
-; CHECK: [[SEXTB:%[0-9]+]](s32) = G_SEXT [[BVREG]](s16)
+; CHECK: [[SEXTB:%[0-9]+]]:_(s32) = G_SEXT [[BVREG]](s16)
; CHECK: %r2 = COPY [[SEXTB]]
-; CHECK: [[ZEXTB:%[0-9]+]](s32) = G_ZEXT [[BVREG]](s16)
+; CHECK: [[ZEXTB:%[0-9]+]]:_(s32) = G_ZEXT [[BVREG]](s16)
; CHECK: %r3 = COPY [[ZEXTB]]
-; CHECK: [[SP1:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF1:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[FI1:%[0-9]+]](p0) = G_GEP [[SP1]], [[OFF1]](s32)
-; CHECK: [[SEXTA2:%[0-9]+]](s32) = G_SEXT [[AVREG]]
+; CHECK: [[SP1:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF1:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[FI1:%[0-9]+]]:_(p0) = G_GEP [[SP1]], [[OFF1]](s32)
+; CHECK: [[SEXTA2:%[0-9]+]]:_(s32) = G_SEXT [[AVREG]]
; CHECK: G_STORE [[SEXTA2]](s32), [[FI1]](p0){{.*}}store 4
-; CHECK: [[SP2:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF2:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[FI2:%[0-9]+]](p0) = G_GEP [[SP2]], [[OFF2]](s32)
-; CHECK: [[ZEXTA2:%[0-9]+]](s32) = G_ZEXT [[AVREG]]
+; CHECK: [[SP2:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF2:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[FI2:%[0-9]+]]:_(p0) = G_GEP [[SP2]], [[OFF2]](s32)
+; CHECK: [[ZEXTA2:%[0-9]+]]:_(s32) = G_ZEXT [[AVREG]]
; CHECK: G_STORE [[ZEXTA2]](s32), [[FI2]](p0){{.*}}store 4
-; CHECK: [[SP3:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF3:%[0-9]+]](s32) = G_CONSTANT i32 8
-; CHECK: [[FI3:%[0-9]+]](p0) = G_GEP [[SP3]], [[OFF3]](s32)
-; CHECK: [[SEXTB2:%[0-9]+]](s32) = G_SEXT [[BVREG]]
+; CHECK: [[SP3:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF3:%[0-9]+]]:_(s32) = G_CONSTANT i32 8
+; CHECK: [[FI3:%[0-9]+]]:_(p0) = G_GEP [[SP3]], [[OFF3]](s32)
+; CHECK: [[SEXTB2:%[0-9]+]]:_(s32) = G_SEXT [[BVREG]]
; CHECK: G_STORE [[SEXTB2]](s32), [[FI3]](p0){{.*}}store 4
-; CHECK: [[SP4:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF4:%[0-9]+]](s32) = G_CONSTANT i32 12
-; CHECK: [[FI4:%[0-9]+]](p0) = G_GEP [[SP4]], [[OFF4]](s32)
-; CHECK: [[ZEXTB2:%[0-9]+]](s32) = G_ZEXT [[BVREG]]
+; CHECK: [[SP4:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF4:%[0-9]+]]:_(s32) = G_CONSTANT i32 12
+; CHECK: [[FI4:%[0-9]+]]:_(p0) = G_GEP [[SP4]], [[OFF4]](s32)
+; CHECK: [[ZEXTB2:%[0-9]+]]:_(s32) = G_ZEXT [[BVREG]]
; CHECK: G_STORE [[ZEXTB2]](s32), [[FI4]](p0){{.*}}store 4
-; CHECK: [[SP5:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF5:%[0-9]+]](s32) = G_CONSTANT i32 16
-; CHECK: [[FI5:%[0-9]+]](p0) = G_GEP [[SP5]], [[OFF5]](s32)
-; CHECK: [[ZEXTC:%[0-9]+]](s32) = G_ZEXT [[CVREG]]
+; CHECK: [[SP5:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF5:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+; CHECK: [[FI5:%[0-9]+]]:_(p0) = G_GEP [[SP5]], [[OFF5]](s32)
+; CHECK: [[ZEXTC:%[0-9]+]]:_(s32) = G_ZEXT [[CVREG]]
; CHECK: G_STORE [[ZEXTC]](s32), [[FI5]](p0){{.*}}store 4
; CHECK: BLX @ext_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
-; CHECK: [[R0VREG:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[RVREG:%[0-9]+]](s16) = G_TRUNC [[R0VREG]]
+; CHECK: [[R0VREG:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[RVREG:%[0-9]+]]:_(s16) = G_TRUNC [[R0VREG]]
; CHECK: ADJCALLSTACKUP 20, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[RExtVREG:%[0-9]+]](s32) = G_SEXT [[RVREG]]
+; CHECK: [[RExtVREG:%[0-9]+]]:_(s32) = G_SEXT [[RVREG]]
; CHECK: %r0 = COPY [[RExtVREG]]
; CHECK: BX_RET 14, _, implicit %r0
entry:
@@ -567,13 +567,13 @@ declare arm_aapcs_vfpcc double @vfpcc_fp
define arm_aapcs_vfpcc double @test_call_vfpcc_fp_params(double %a, float %b) {
; CHECK-LABEL: name: test_call_vfpcc_fp_params
-; CHECK-DAG: [[AVREG:%[0-9]+]](s64) = COPY %d0
-; CHECK-DAG: [[BVREG:%[0-9]+]](s32) = COPY %s2
+; CHECK-DAG: [[AVREG:%[0-9]+]]:_(s64) = COPY %d0
+; CHECK-DAG: [[BVREG:%[0-9]+]]:_(s32) = COPY %s2
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK-DAG: %s0 = COPY [[BVREG]]
; CHECK-DAG: %d1 = COPY [[AVREG]]
; CHECK: BLX @vfpcc_fp_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %s0, implicit %d1, implicit-def %d0
-; CHECK: [[RVREG:%[0-9]+]](s64) = COPY %d0
+; CHECK: [[RVREG:%[0-9]+]]:_(s64) = COPY %d0
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: %d0 = COPY [[RVREG]]
; CHECK: BX_RET 14, _, implicit %d0
@@ -586,33 +586,33 @@ declare arm_aapcscc double @aapcscc_fp_t
define arm_aapcscc double @test_call_aapcs_fp_params(double %a, float %b) {
; CHECK-LABEL: name: test_call_aapcs_fp_params
-; CHECK-DAG: [[A1:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[A2:%[0-9]+]](s32) = COPY %r1
-; LITTLE-DAG: [[AVREG:%[0-9]+]](s64) = G_MERGE_VALUES [[A1]](s32), [[A2]](s32)
-; BIG-DAG: [[AVREG:%[0-9]+]](s64) = G_MERGE_VALUES [[A2]](s32), [[A1]](s32)
-; CHECK-DAG: [[BVREG:%[0-9]+]](s32) = COPY %r2
+; CHECK-DAG: [[A1:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[A2:%[0-9]+]]:_(s32) = COPY %r1
+; LITTLE-DAG: [[AVREG:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[A1]](s32), [[A2]](s32)
+; BIG-DAG: [[AVREG:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[A2]](s32), [[A1]](s32)
+; CHECK-DAG: [[BVREG:%[0-9]+]]:_(s32) = COPY %r2
; CHECK: ADJCALLSTACKDOWN 16, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK-DAG: %r0 = COPY [[BVREG]]
-; CHECK-DAG: [[A1:%[0-9]+]](s32), [[A2:%[0-9]+]](s32) = G_UNMERGE_VALUES [[AVREG]](s64)
+; CHECK-DAG: [[A1:%[0-9]+]]:_(s32), [[A2:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[AVREG]](s64)
; LITTLE-DAG: %r2 = COPY [[A1]]
; LITTLE-DAG: %r3 = COPY [[A2]]
; BIG-DAG: %r2 = COPY [[A2]]
; BIG-DAG: %r3 = COPY [[A1]]
-; CHECK: [[SP1:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF1:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[FI1:%[0-9]+]](p0) = G_GEP [[SP1]], [[OFF1]](s32)
+; CHECK: [[SP1:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF1:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[FI1:%[0-9]+]]:_(p0) = G_GEP [[SP1]], [[OFF1]](s32)
; CHECK: G_STORE [[BVREG]](s32), [[FI1]](p0){{.*}}store 4
-; CHECK: [[SP2:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF2:%[0-9]+]](s32) = G_CONSTANT i32 8
-; CHECK: [[FI2:%[0-9]+]](p0) = G_GEP [[SP2]], [[OFF2]](s32)
+; CHECK: [[SP2:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF2:%[0-9]+]]:_(s32) = G_CONSTANT i32 8
+; CHECK: [[FI2:%[0-9]+]]:_(p0) = G_GEP [[SP2]], [[OFF2]](s32)
; CHECK: G_STORE [[AVREG]](s64), [[FI2]](p0){{.*}}store 8
; CHECK: BLX @aapcscc_fp_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r2, implicit %r3, implicit-def %r0, implicit-def %r1
-; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[R2:%[0-9]+]](s32) = COPY %r1
-; LITTLE: [[RVREG:%[0-9]+]](s64) = G_MERGE_VALUES [[R1]](s32), [[R2]](s32)
-; BIG: [[RVREG:%[0-9]+]](s64) = G_MERGE_VALUES [[R2]](s32), [[R1]](s32)
+; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[R2:%[0-9]+]]:_(s32) = COPY %r1
+; LITTLE: [[RVREG:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R1]](s32), [[R2]](s32)
+; BIG: [[RVREG:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R2]](s32), [[R1]](s32)
; CHECK: ADJCALLSTACKUP 16, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R1:%[0-9]+]](s32), [[R2:%[0-9]+]](s32) = G_UNMERGE_VALUES [[RVREG]](s64)
+; CHECK: [[R1:%[0-9]+]]:_(s32), [[R2:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[RVREG]](s64)
; LITTLE-DAG: %r0 = COPY [[R1]]
; LITTLE-DAG: %r1 = COPY [[R2]]
; BIG-DAG: %r0 = COPY [[R2]]
@@ -627,11 +627,11 @@ declare arm_aapcscc float @different_cal
define arm_aapcs_vfpcc float @test_call_different_call_conv(float %x) {
; CHECK-LABEL: name: test_call_different_call_conv
-; CHECK: [[X:%[0-9]+]](s32) = COPY %s0
+; CHECK: [[X:%[0-9]+]]:_(s32) = COPY %s0
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: %r0 = COPY [[X]]
; CHECK: BLX @different_call_conv_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit-def %r0
-; CHECK: [[R:%[0-9]+]](s32) = COPY %r0
+; CHECK: [[R:%[0-9]+]]:_(s32) = COPY %r0
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
; CHECK: %s0 = COPY [[R]]
; CHECK: BX_RET 14, _, implicit %s0
@@ -645,20 +645,20 @@ declare arm_aapcscc [3 x i32] @tiny_int_
define arm_aapcscc [3 x i32] @test_tiny_int_arrays([2 x i32] %arr) {
; CHECK-LABEL: name: test_tiny_int_arrays
; CHECK: liveins: %r0, %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[ARG_ARR:%[0-9]+]](s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[ARG_ARR:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG_ARR]](s64)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG_ARR]](s64)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: BLX @tiny_int_arrays_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit-def %r0, implicit-def %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[R2:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[RES_ARR:%[0-9]+]](s96) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[R2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[RES_ARR:%[0-9]+]]:_(s96) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32)
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32), [[R2:%[0-9]+]](s32) = G_UNMERGE_VALUES [[RES_ARR]](s96)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32), [[R2:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[RES_ARR]](s96)
; FIXME: This doesn't seem correct with regard to the AAPCS docs (which say
; that composite types larger than 4 bytes should be passed through memory),
; but it's what DAGISel does. We should fix it in the common code for both.
@@ -676,15 +676,15 @@ declare arm_aapcscc void @multiple_int_a
define arm_aapcscc void @test_multiple_int_arrays([2 x i32] %arr0, [2 x i32] %arr1) {
; CHECK-LABEL: name: test_multiple_int_arrays
; CHECK: liveins: %r0, %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[R2:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[R3:%[0-9]+]](s32) = COPY %r3
-; CHECK: [[ARG_ARR0:%[0-9]+]](s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
-; CHECK: [[ARG_ARR1:%[0-9]+]](s64) = G_MERGE_VALUES [[R2]](s32), [[R3]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[R2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[R3:%[0-9]+]]:_(s32) = COPY %r3
+; CHECK: [[ARG_ARR0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
+; CHECK: [[ARG_ARR1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R2]](s32), [[R3]](s32)
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG_ARR0]](s64)
-; CHECK: [[R2:%[0-9]+]](s32), [[R3:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG_ARR1]](s64)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG_ARR0]](s64)
+; CHECK: [[R2:%[0-9]+]]:_(s32), [[R3:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG_ARR1]](s64)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: %r2 = COPY [[R2]]
@@ -707,30 +707,30 @@ define arm_aapcscc void @test_large_int_
; CHECK-DAG: id: [[FIRST_STACK_ID:[0-9]+]], type: default, offset: 0, size: 4,
; CHECK-DAG: id: [[LAST_STACK_ID:[-0]+]], type: default, offset: 60, size: 4
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[R2:%[0-9]+]](s32) = COPY %r2
-; CHECK-DAG: [[R3:%[0-9]+]](s32) = COPY %r3
-; CHECK: [[FIRST_STACK_ELEMENT_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[FIRST_STACK_ID]]
-; CHECK: [[FIRST_STACK_ELEMENT:%[0-9]+]](s32) = G_LOAD [[FIRST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[FIRST_STACK_ID]]
-; CHECK: [[LAST_STACK_ELEMENT_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[LAST_STACK_ID]]
-; CHECK: [[LAST_STACK_ELEMENT:%[0-9]+]](s32) = G_LOAD [[LAST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[LAST_STACK_ID]]
-; CHECK: [[ARG_ARR:%[0-9]+]](s640) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32), [[FIRST_STACK_ELEMENT]](s32), {{.*}}, [[LAST_STACK_ELEMENT]](s32)
+; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[R2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK-DAG: [[R3:%[0-9]+]]:_(s32) = COPY %r3
+; CHECK: [[FIRST_STACK_ELEMENT_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[FIRST_STACK_ID]]
+; CHECK: [[FIRST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_LOAD [[FIRST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[FIRST_STACK_ID]]
+; CHECK: [[LAST_STACK_ELEMENT_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[LAST_STACK_ID]]
+; CHECK: [[LAST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_LOAD [[LAST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[LAST_STACK_ID]]
+; CHECK: [[ARG_ARR:%[0-9]+]]:_(s640) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32), [[FIRST_STACK_ELEMENT]](s32), {{.*}}, [[LAST_STACK_ELEMENT]](s32)
; CHECK: ADJCALLSTACKDOWN 64, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32), [[R2:%[0-9]+]](s32), [[R3:%[0-9]+]](s32), [[FIRST_STACK_ELEMENT:%[0-9]+]](s32), {{.*}}, [[LAST_STACK_ELEMENT:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG_ARR]](s640)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32), [[R2:%[0-9]+]]:_(s32), [[R3:%[0-9]+]]:_(s32), [[FIRST_STACK_ELEMENT:%[0-9]+]]:_(s32), {{.*}}, [[LAST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG_ARR]](s640)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: %r2 = COPY [[R2]]
; CHECK: %r3 = COPY [[R3]]
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF_FIRST_ELEMENT:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[FIRST_STACK_ARG_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF_FIRST_ELEMENT]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF_FIRST_ELEMENT:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[FIRST_STACK_ARG_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF_FIRST_ELEMENT]](s32)
; CHECK: G_STORE [[FIRST_STACK_ELEMENT]](s32), [[FIRST_STACK_ARG_ADDR]]{{.*}}store 4
; Match the second-to-last offset, so we can get the correct SP for the last element
; CHECK: G_CONSTANT i32 56
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF_LAST_ELEMENT:%[0-9]+]](s32) = G_CONSTANT i32 60
-; CHECK: [[LAST_STACK_ARG_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF_LAST_ELEMENT]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF_LAST_ELEMENT:%[0-9]+]]:_(s32) = G_CONSTANT i32 60
+; CHECK: [[LAST_STACK_ARG_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF_LAST_ELEMENT]](s32)
; CHECK: G_STORE [[LAST_STACK_ELEMENT]](s32), [[LAST_STACK_ARG_ADDR]]{{.*}}store 4
; CHECK: BLX @large_int_arrays_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit %r2, implicit %r3
; CHECK: ADJCALLSTACKUP 64, 0, 14, _, implicit-def %sp, implicit %sp
@@ -747,39 +747,39 @@ define arm_aapcscc [2 x float] @test_fp_
; CHECK: fixedStack:
; CHECK: id: [[ARR2_ID:[0-9]+]], type: default, offset: 0, size: 8,
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK: [[ARR0_0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[ARR0_1:%[0-9]+]](s32) = COPY %r1
-; LITTLE: [[ARR0:%[0-9]+]](s64) = G_MERGE_VALUES [[ARR0_0]](s32), [[ARR0_1]](s32)
-; BIG: [[ARR0:%[0-9]+]](s64) = G_MERGE_VALUES [[ARR0_1]](s32), [[ARR0_0]](s32)
-; CHECK: [[ARR1_0:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[ARR1_1:%[0-9]+]](s32) = COPY %r3
-; LITTLE: [[ARR1:%[0-9]+]](s64) = G_MERGE_VALUES [[ARR1_0]](s32), [[ARR1_1]](s32)
-; BIG: [[ARR1:%[0-9]+]](s64) = G_MERGE_VALUES [[ARR1_1]](s32), [[ARR1_0]](s32)
-; CHECK: [[ARR2_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[ARR2_ID]]
-; CHECK: [[ARR2:%[0-9]+]](s64) = G_LOAD [[ARR2_FI]]{{.*}}load 8 from %fixed-stack.[[ARR2_ID]]
-; CHECK: [[ARR_MERGED:%[0-9]+]](s192) = G_MERGE_VALUES [[ARR0]](s64), [[ARR1]](s64), [[ARR2]](s64)
+; CHECK: [[ARR0_0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[ARR0_1:%[0-9]+]]:_(s32) = COPY %r1
+; LITTLE: [[ARR0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARR0_0]](s32), [[ARR0_1]](s32)
+; BIG: [[ARR0:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARR0_1]](s32), [[ARR0_0]](s32)
+; CHECK: [[ARR1_0:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[ARR1_1:%[0-9]+]]:_(s32) = COPY %r3
+; LITTLE: [[ARR1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARR1_0]](s32), [[ARR1_1]](s32)
+; BIG: [[ARR1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARR1_1]](s32), [[ARR1_0]](s32)
+; CHECK: [[ARR2_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[ARR2_ID]]
+; CHECK: [[ARR2:%[0-9]+]]:_(s64) = G_LOAD [[ARR2_FI]]{{.*}}load 8 from %fixed-stack.[[ARR2_ID]]
+; CHECK: [[ARR_MERGED:%[0-9]+]]:_(s192) = G_MERGE_VALUES [[ARR0]](s64), [[ARR1]](s64), [[ARR2]](s64)
; CHECK: ADJCALLSTACKDOWN 8, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[ARR0:%[0-9]+]](s64), [[ARR1:%[0-9]+]](s64), [[ARR2:%[0-9]+]](s64) = G_UNMERGE_VALUES [[ARR_MERGED]](s192)
-; CHECK: [[ARR0_0:%[0-9]+]](s32), [[ARR0_1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARR0]](s64)
+; CHECK: [[ARR0:%[0-9]+]]:_(s64), [[ARR1:%[0-9]+]]:_(s64), [[ARR2:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[ARR_MERGED]](s192)
+; CHECK: [[ARR0_0:%[0-9]+]]:_(s32), [[ARR0_1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARR0]](s64)
; LITTLE: %r0 = COPY [[ARR0_0]](s32)
; LITTLE: %r1 = COPY [[ARR0_1]](s32)
; BIG: %r0 = COPY [[ARR0_1]](s32)
; BIG: %r1 = COPY [[ARR0_0]](s32)
-; CHECK: [[ARR1_0:%[0-9]+]](s32), [[ARR1_1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARR1]](s64)
+; CHECK: [[ARR1_0:%[0-9]+]]:_(s32), [[ARR1_1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARR1]](s64)
; LITTLE: %r2 = COPY [[ARR1_0]](s32)
; LITTLE: %r3 = COPY [[ARR1_1]](s32)
; BIG: %r2 = COPY [[ARR1_1]](s32)
; BIG: %r3 = COPY [[ARR1_0]](s32)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[ARR2_OFFSET:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[ARR2_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[ARR2_OFFSET]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[ARR2_OFFSET:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[ARR2_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[ARR2_OFFSET]](s32)
; CHECK: G_STORE [[ARR2]](s64), [[ARR2_ADDR]](p0){{.*}}store 8
; CHECK: BLX @fp_arrays_aapcs_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0, implicit-def %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[R_MERGED:%[0-9]+]](s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[R_MERGED:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
; CHECK: ADJCALLSTACKUP 8, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[R_MERGED]](s64)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[R_MERGED]](s64)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -798,57 +798,57 @@ define arm_aapcs_vfpcc [4 x float] @test
; CHECK-DAG: id: [[Z2_ID:[0-9]+]], type: default, offset: 16, size: 8,
; CHECK-DAG: id: [[Z3_ID:[0-9]+]], type: default, offset: 24, size: 8,
; CHECK: liveins: %d0, %d1, %d2, %s6, %s7, %s8
-; CHECK: [[X0:%[0-9]+]](s64) = COPY %d0
-; CHECK: [[X1:%[0-9]+]](s64) = COPY %d1
-; CHECK: [[X2:%[0-9]+]](s64) = COPY %d2
-; CHECK: [[Y0:%[0-9]+]](s32) = COPY %s6
-; CHECK: [[Y1:%[0-9]+]](s32) = COPY %s7
-; CHECK: [[Y2:%[0-9]+]](s32) = COPY %s8
-; CHECK: [[Z0_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Z0_ID]]
-; CHECK: [[Z0:%[0-9]+]](s64) = G_LOAD [[Z0_FI]]{{.*}}load 8
-; CHECK: [[Z1_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Z1_ID]]
-; CHECK: [[Z1:%[0-9]+]](s64) = G_LOAD [[Z1_FI]]{{.*}}load 8
-; CHECK: [[Z2_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Z2_ID]]
-; CHECK: [[Z2:%[0-9]+]](s64) = G_LOAD [[Z2_FI]]{{.*}}load 8
-; CHECK: [[Z3_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[Z3_ID]]
-; CHECK: [[Z3:%[0-9]+]](s64) = G_LOAD [[Z3_FI]]{{.*}}load 8
-; CHECK: [[X_ARR:%[0-9]+]](s192) = G_MERGE_VALUES [[X0]](s64), [[X1]](s64), [[X2]](s64)
-; CHECK: [[Y_ARR:%[0-9]+]](s96) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32), [[Y2]](s32)
-; CHECK: [[Z_ARR:%[0-9]+]](s256) = G_MERGE_VALUES [[Z0]](s64), [[Z1]](s64), [[Z2]](s64), [[Z3]](s64)
+; CHECK: [[X0:%[0-9]+]]:_(s64) = COPY %d0
+; CHECK: [[X1:%[0-9]+]]:_(s64) = COPY %d1
+; CHECK: [[X2:%[0-9]+]]:_(s64) = COPY %d2
+; CHECK: [[Y0:%[0-9]+]]:_(s32) = COPY %s6
+; CHECK: [[Y1:%[0-9]+]]:_(s32) = COPY %s7
+; CHECK: [[Y2:%[0-9]+]]:_(s32) = COPY %s8
+; CHECK: [[Z0_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Z0_ID]]
+; CHECK: [[Z0:%[0-9]+]]:_(s64) = G_LOAD [[Z0_FI]]{{.*}}load 8
+; CHECK: [[Z1_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Z1_ID]]
+; CHECK: [[Z1:%[0-9]+]]:_(s64) = G_LOAD [[Z1_FI]]{{.*}}load 8
+; CHECK: [[Z2_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Z2_ID]]
+; CHECK: [[Z2:%[0-9]+]]:_(s64) = G_LOAD [[Z2_FI]]{{.*}}load 8
+; CHECK: [[Z3_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[Z3_ID]]
+; CHECK: [[Z3:%[0-9]+]]:_(s64) = G_LOAD [[Z3_FI]]{{.*}}load 8
+; CHECK: [[X_ARR:%[0-9]+]]:_(s192) = G_MERGE_VALUES [[X0]](s64), [[X1]](s64), [[X2]](s64)
+; CHECK: [[Y_ARR:%[0-9]+]]:_(s96) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32), [[Y2]](s32)
+; CHECK: [[Z_ARR:%[0-9]+]]:_(s256) = G_MERGE_VALUES [[Z0]](s64), [[Z1]](s64), [[Z2]](s64), [[Z3]](s64)
; CHECK: ADJCALLSTACKDOWN 32, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[X0:%[0-9]+]](s64), [[X1:%[0-9]+]](s64), [[X2:%[0-9]+]](s64) = G_UNMERGE_VALUES [[X_ARR]](s192)
-; CHECK: [[Y0:%[0-9]+]](s32), [[Y1:%[0-9]+]](s32), [[Y2:%[0-9]+]](s32) = G_UNMERGE_VALUES [[Y_ARR]](s96)
-; CHECK: [[Z0:%[0-9]+]](s64), [[Z1:%[0-9]+]](s64), [[Z2:%[0-9]+]](s64), [[Z3:%[0-9]+]](s64) = G_UNMERGE_VALUES [[Z_ARR]](s256)
+; CHECK: [[X0:%[0-9]+]]:_(s64), [[X1:%[0-9]+]]:_(s64), [[X2:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[X_ARR]](s192)
+; CHECK: [[Y0:%[0-9]+]]:_(s32), [[Y1:%[0-9]+]]:_(s32), [[Y2:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[Y_ARR]](s96)
+; CHECK: [[Z0:%[0-9]+]]:_(s64), [[Z1:%[0-9]+]]:_(s64), [[Z2:%[0-9]+]]:_(s64), [[Z3:%[0-9]+]]:_(s64) = G_UNMERGE_VALUES [[Z_ARR]](s256)
; CHECK: %d0 = COPY [[X0]](s64)
; CHECK: %d1 = COPY [[X1]](s64)
; CHECK: %d2 = COPY [[X2]](s64)
; CHECK: %s6 = COPY [[Y0]](s32)
; CHECK: %s7 = COPY [[Y1]](s32)
; CHECK: %s8 = COPY [[Y2]](s32)
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[Z0_OFFSET:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[Z0_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[Z0_OFFSET]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[Z0_OFFSET:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[Z0_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[Z0_OFFSET]](s32)
; CHECK: G_STORE [[Z0]](s64), [[Z0_ADDR]](p0){{.*}}store 8
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[Z1_OFFSET:%[0-9]+]](s32) = G_CONSTANT i32 8
-; CHECK: [[Z1_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[Z1_OFFSET]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[Z1_OFFSET:%[0-9]+]]:_(s32) = G_CONSTANT i32 8
+; CHECK: [[Z1_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[Z1_OFFSET]](s32)
; CHECK: G_STORE [[Z1]](s64), [[Z1_ADDR]](p0){{.*}}store 8
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[Z2_OFFSET:%[0-9]+]](s32) = G_CONSTANT i32 16
-; CHECK: [[Z2_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[Z2_OFFSET]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[Z2_OFFSET:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+; CHECK: [[Z2_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[Z2_OFFSET]](s32)
; CHECK: G_STORE [[Z2]](s64), [[Z2_ADDR]](p0){{.*}}store 8
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[Z3_OFFSET:%[0-9]+]](s32) = G_CONSTANT i32 24
-; CHECK: [[Z3_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[Z3_OFFSET]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[Z3_OFFSET:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+; CHECK: [[Z3_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[Z3_OFFSET]](s32)
; CHECK: G_STORE [[Z3]](s64), [[Z3_ADDR]](p0){{.*}}store 8
; CHECK: BLX @fp_arrays_aapcs_vfp_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %d0, implicit %d1, implicit %d2, implicit %s6, implicit %s7, implicit %s8, implicit-def %s0, implicit-def %s1, implicit-def %s2, implicit-def %s3
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %s0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %s1
-; CHECK: [[R2:%[0-9]+]](s32) = COPY %s2
-; CHECK: [[R3:%[0-9]+]](s32) = COPY %s3
-; CHECK: [[R_MERGED:%[0-9]+]](s128) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %s0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %s1
+; CHECK: [[R2:%[0-9]+]]:_(s32) = COPY %s2
+; CHECK: [[R3:%[0-9]+]]:_(s32) = COPY %s3
+; CHECK: [[R_MERGED:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32)
; CHECK: ADJCALLSTACKUP 32, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32), [[R2:%[0-9]+]](s32), [[R3:%[0-9]+]](s32) = G_UNMERGE_VALUES [[R_MERGED]](s128)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32), [[R2:%[0-9]+]]:_(s32), [[R3:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[R_MERGED]](s128)
; CHECK: %s0 = COPY [[R0]]
; CHECK: %s1 = COPY [[R1]]
; CHECK: %s2 = COPY [[R2]]
@@ -869,37 +869,37 @@ define arm_aapcscc [2 x i32*] @test_toug
; CHECK-DAG: id: [[FIRST_STACK_ID:[0-9]+]], type: default, offset: 0, size: 4,
; CHECK-DAG: id: [[LAST_STACK_ID:[-0]+]], type: default, offset: 76, size: 4
; CHECK: liveins: %r0, %r1, %r2, %r3
-; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[R2:%[0-9]+]](s32) = COPY %r2
-; CHECK-DAG: [[R3:%[0-9]+]](s32) = COPY %r3
-; CHECK: [[FIRST_STACK_ELEMENT_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[FIRST_STACK_ID]]
-; CHECK: [[FIRST_STACK_ELEMENT:%[0-9]+]](s32) = G_LOAD [[FIRST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[FIRST_STACK_ID]]
-; CHECK: [[LAST_STACK_ELEMENT_FI:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[LAST_STACK_ID]]
-; CHECK: [[LAST_STACK_ELEMENT:%[0-9]+]](s32) = G_LOAD [[LAST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[LAST_STACK_ID]]
-; CHECK: [[ARG_ARR:%[0-9]+]](s768) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32), [[FIRST_STACK_ELEMENT]](s32), {{.*}}, [[LAST_STACK_ELEMENT]](s32)
+; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[R2:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK-DAG: [[R3:%[0-9]+]]:_(s32) = COPY %r3
+; CHECK: [[FIRST_STACK_ELEMENT_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[FIRST_STACK_ID]]
+; CHECK: [[FIRST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_LOAD [[FIRST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[FIRST_STACK_ID]]
+; CHECK: [[LAST_STACK_ELEMENT_FI:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[LAST_STACK_ID]]
+; CHECK: [[LAST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_LOAD [[LAST_STACK_ELEMENT_FI]]{{.*}}load 4 from %fixed-stack.[[LAST_STACK_ID]]
+; CHECK: [[ARG_ARR:%[0-9]+]]:_(s768) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32), [[R2]](s32), [[R3]](s32), [[FIRST_STACK_ELEMENT]](s32), {{.*}}, [[LAST_STACK_ELEMENT]](s32)
; CHECK: ADJCALLSTACKDOWN 80, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32), [[R2:%[0-9]+]](s32), [[R3:%[0-9]+]](s32), [[FIRST_STACK_ELEMENT:%[0-9]+]](s32), {{.*}}, [[LAST_STACK_ELEMENT:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG_ARR]](s768)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32), [[R2:%[0-9]+]]:_(s32), [[R3:%[0-9]+]]:_(s32), [[FIRST_STACK_ELEMENT:%[0-9]+]]:_(s32), {{.*}}, [[LAST_STACK_ELEMENT:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG_ARR]](s768)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: %r2 = COPY [[R2]]
; CHECK: %r3 = COPY [[R3]]
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF_FIRST_ELEMENT:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK: [[FIRST_STACK_ARG_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF_FIRST_ELEMENT]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF_FIRST_ELEMENT:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK: [[FIRST_STACK_ARG_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF_FIRST_ELEMENT]](s32)
; CHECK: G_STORE [[FIRST_STACK_ELEMENT]](s32), [[FIRST_STACK_ARG_ADDR]]{{.*}}store 4
; Match the second-to-last offset, so we can get the correct SP for the last element
; CHECK: G_CONSTANT i32 72
-; CHECK: [[SP:%[0-9]+]](p0) = COPY %sp
-; CHECK: [[OFF_LAST_ELEMENT:%[0-9]+]](s32) = G_CONSTANT i32 76
-; CHECK: [[LAST_STACK_ARG_ADDR:%[0-9]+]](p0) = G_GEP [[SP]], [[OFF_LAST_ELEMENT]](s32)
+; CHECK: [[SP:%[0-9]+]]:_(p0) = COPY %sp
+; CHECK: [[OFF_LAST_ELEMENT:%[0-9]+]]:_(s32) = G_CONSTANT i32 76
+; CHECK: [[LAST_STACK_ARG_ADDR:%[0-9]+]]:_(p0) = G_GEP [[SP]], [[OFF_LAST_ELEMENT]](s32)
; CHECK: G_STORE [[LAST_STACK_ELEMENT]](s32), [[LAST_STACK_ARG_ADDR]]{{.*}}store 4
; CHECK: BLX @tough_arrays_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0, implicit-def %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[RES_ARR:%[0-9]+]](s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[RES_ARR:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
; CHECK: ADJCALLSTACKUP 80, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[RES_ARR]](s64)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[RES_ARR]](s64)
; CHECK: %r0 = COPY [[R0]]
; CHECK: %r1 = COPY [[R1]]
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -913,19 +913,19 @@ declare arm_aapcscc {i32, i32} @structs_
define arm_aapcscc {i32, i32} @test_structs({i32, i32} %x) {
; CHECK-LABEL: test_structs
; CHECK: liveins: %r0, %r1
-; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
; CHECK: ADJCALLSTACKDOWN 0, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[X0:%[0-9]+]](s32), [[X1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[X]](s64)
+; CHECK: [[X0:%[0-9]+]]:_(s32), [[X1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[X]](s64)
; CHECK-DAG: %r0 = COPY [[X0]](s32)
; CHECK-DAG: %r1 = COPY [[X1]](s32)
; CHECK: BLX @structs_target, csr_aapcs, implicit-def %lr, implicit %sp, implicit %r0, implicit %r1, implicit-def %r0, implicit-def %r1
-; CHECK: [[R0:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[R1:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[R:%[0-9]+]](s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
+; CHECK: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[R:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[R0]](s32), [[R1]](s32)
; CHECK: ADJCALLSTACKUP 0, 0, 14, _, implicit-def %sp, implicit %sp
-; CHECK: [[R0:%[0-9]+]](s32), [[R1:%[0-9]+]](s32) = G_UNMERGE_VALUES [[R]](s64)
+; CHECK: [[R0:%[0-9]+]]:_(s32), [[R1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[R]](s64)
; CHECK: %r0 = COPY [[R0]](s32)
; CHECK: %r1 = COPY [[R1]](s32)
; CHECK: BX_RET 14, _, implicit %r0, implicit %r1
@@ -935,11 +935,11 @@ define arm_aapcscc {i32, i32} @test_stru
define i32 @test_shufflevector_s32_v2s32(i32 %arg) {
; CHECK-LABEL: name: test_shufflevector_s32_v2s32
-; CHECK: [[ARG:%[0-9]+]](s32) = COPY %r0
-; CHECK-DAG: [[UNDEF:%[0-9]+]](s32) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[MASK:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32)
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](s32), [[UNDEF]], [[MASK]](<2 x s32>)
+; CHECK: [[ARG:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(s32) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_SHUFFLE_VECTOR [[ARG]](s32), [[UNDEF]], [[MASK]](<2 x s32>)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<2 x s32>)
%vec = insertelement <1 x i32> undef, i32 %arg, i32 0
%shuffle = shufflevector <1 x i32> %vec, <1 x i32> undef, <2 x i32> zeroinitializer
@@ -949,15 +949,15 @@ define i32 @test_shufflevector_s32_v2s32
define i32 @test_shufflevector_v2s32_v3s32(i32 %arg1, i32 %arg2) {
; CHECK-LABEL: name: test_shufflevector_v2s32_v3s32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[ARG2:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<2 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[MASK:%[0-9]+]](<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32), [[C1]](s32)
-; CHECK-DAG: [[V1:%[0-9]+]](<2 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
-; CHECK-DAG: [[V2:%[0-9]+]](<2 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
-; CHECK: [[VEC:%[0-9]+]](<3 x s32>) = G_SHUFFLE_VECTOR [[V2]](<2 x s32>), [[UNDEF]], [[MASK]](<3 x s32>)
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[ARG2:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<3 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C0]](s32), [[C1]](s32)
+; CHECK-DAG: [[V1:%[0-9]+]]:_(<2 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
+; CHECK-DAG: [[V2:%[0-9]+]]:_(<2 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<3 x s32>) = G_SHUFFLE_VECTOR [[V2]](<2 x s32>), [[UNDEF]], [[MASK]](<3 x s32>)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<3 x s32>)
%v1 = insertelement <2 x i32> undef, i32 %arg1, i32 0
%v2 = insertelement <2 x i32> %v1, i32 %arg2, i32 1
@@ -969,15 +969,15 @@ define i32 @test_shufflevector_v2s32_v3s
define i32 @test_shufflevector_v2s32_v4s32(i32 %arg1, i32 %arg2) {
; CHECK-LABEL: name: test_shufflevector_v2s32_v4s32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[ARG2:%[0-9]+]](s32) = COPY %r1
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<2 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[MASK:%[0-9]+]](<4 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32), [[C0]](s32), [[C0]](s32)
-; CHECK-DAG: [[V1:%[0-9]+]](<2 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
-; CHECK-DAG: [[V2:%[0-9]+]](<2 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
-; CHECK: [[VEC:%[0-9]+]](<4 x s32>) = G_SHUFFLE_VECTOR [[V2]](<2 x s32>), [[UNDEF]], [[MASK]](<4 x s32>)
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[ARG2:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<4 x s32>) = G_MERGE_VALUES [[C0]](s32), [[C0]](s32), [[C0]](s32), [[C0]](s32)
+; CHECK-DAG: [[V1:%[0-9]+]]:_(<2 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
+; CHECK-DAG: [[V2:%[0-9]+]]:_(<2 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<4 x s32>) = G_SHUFFLE_VECTOR [[V2]](<2 x s32>), [[UNDEF]], [[MASK]](<4 x s32>)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<4 x s32>)
%v1 = insertelement <2 x i32> undef, i32 %arg1, i32 0
%v2 = insertelement <2 x i32> %v1, i32 %arg2, i32 1
@@ -988,21 +988,21 @@ define i32 @test_shufflevector_v2s32_v4s
define i32 @test_shufflevector_v4s32_v2s32(i32 %arg1, i32 %arg2, i32 %arg3, i32 %arg4) {
; CHECK-LABEL: name: test_shufflevector_v4s32_v2s32
-; CHECK: [[ARG1:%[0-9]+]](s32) = COPY %r0
-; CHECK: [[ARG2:%[0-9]+]](s32) = COPY %r1
-; CHECK: [[ARG3:%[0-9]+]](s32) = COPY %r2
-; CHECK: [[ARG4:%[0-9]+]](s32) = COPY %r3
-; CHECK-DAG: [[UNDEF:%[0-9]+]](<4 x s32>) = G_IMPLICIT_DEF
-; CHECK-DAG: [[C0:%[0-9]+]](s32) = G_CONSTANT i32 0
-; CHECK-DAG: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK-DAG: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK-DAG: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK-DAG: [[MASK:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C3]](s32)
-; CHECK-DAG: [[V1:%[0-9]+]](<4 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
-; CHECK-DAG: [[V2:%[0-9]+]](<4 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
-; CHECK-DAG: [[V3:%[0-9]+]](<4 x s32>) = G_INSERT_VECTOR_ELT [[V2]], [[ARG3]](s32), [[C2]](s32)
-; CHECK-DAG: [[V4:%[0-9]+]](<4 x s32>) = G_INSERT_VECTOR_ELT [[V3]], [[ARG4]](s32), [[C3]](s32)
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_SHUFFLE_VECTOR [[V4]](<4 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
+; CHECK: [[ARG1:%[0-9]+]]:_(s32) = COPY %r0
+; CHECK: [[ARG2:%[0-9]+]]:_(s32) = COPY %r1
+; CHECK: [[ARG3:%[0-9]+]]:_(s32) = COPY %r2
+; CHECK: [[ARG4:%[0-9]+]]:_(s32) = COPY %r3
+; CHECK-DAG: [[UNDEF:%[0-9]+]]:_(<4 x s32>) = G_IMPLICIT_DEF
+; CHECK-DAG: [[C0:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+; CHECK-DAG: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK-DAG: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK-DAG: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK-DAG: [[MASK:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C3]](s32)
+; CHECK-DAG: [[V1:%[0-9]+]]:_(<4 x s32>) = G_INSERT_VECTOR_ELT [[UNDEF]], [[ARG1]](s32), [[C0]](s32)
+; CHECK-DAG: [[V2:%[0-9]+]]:_(<4 x s32>) = G_INSERT_VECTOR_ELT [[V1]], [[ARG2]](s32), [[C1]](s32)
+; CHECK-DAG: [[V3:%[0-9]+]]:_(<4 x s32>) = G_INSERT_VECTOR_ELT [[V2]], [[ARG3]](s32), [[C2]](s32)
+; CHECK-DAG: [[V4:%[0-9]+]]:_(<4 x s32>) = G_INSERT_VECTOR_ELT [[V3]], [[ARG4]](s32), [[C3]](s32)
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_SHUFFLE_VECTOR [[V4]](<4 x s32>), [[UNDEF]], [[MASK]](<2 x s32>)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<2 x s32>)
%v1 = insertelement <4 x i32> undef, i32 %arg1, i32 0
%v2 = insertelement <4 x i32> %v1, i32 %arg2, i32 1
@@ -1017,9 +1017,9 @@ define i32 @test_shufflevector_v4s32_v2s
define i32 @test_constantstruct_v2s32() {
; CHECK-LABEL: name: test_constantstruct_v2s32
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
; CHECK: G_EXTRACT_VECTOR_ELT [[VEC]](<2 x s32>)
%vec = extractvalue %struct.v2s32 {<2 x i32><i32 1, i32 2>}, 0
%elt = extractelement <2 x i32> %vec, i32 0
@@ -1030,16 +1030,16 @@ define i32 @test_constantstruct_v2s32()
define i32 @test_constantstruct_v2s32_s32_s32() {
; CHECK-LABEL: name: test_constantstruct_v2s32_s32_s32
-; CHECK: [[C1:%[0-9]+]](s32) = G_CONSTANT i32 1
-; CHECK: [[C2:%[0-9]+]](s32) = G_CONSTANT i32 2
-; CHECK: [[VEC:%[0-9]+]](<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
-; CHECK: [[C3:%[0-9]+]](s32) = G_CONSTANT i32 3
-; CHECK: [[C4:%[0-9]+]](s32) = G_CONSTANT i32 4
-; CHECK: [[C5:%[0-9]+]](s128) = G_IMPLICIT_DEF
-; CHECK: [[C6:%[0-9]+]](s128) = G_INSERT [[C5]], [[VEC]](<2 x s32>), 0
-; CHECK: [[C7:%[0-9]+]](s128) = G_INSERT [[C6]], [[C3]](s32), 64
-; CHECK: [[C8:%[0-9]+]](s128) = G_INSERT [[C7]], [[C4]](s32), 96
-; CHECK: [[EXT:%[0-9]+]](<2 x s32>) = G_EXTRACT [[C8]](s128), 0
+; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
+; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
+; CHECK: [[VEC:%[0-9]+]]:_(<2 x s32>) = G_MERGE_VALUES [[C1]](s32), [[C2]](s32)
+; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
+; CHECK: [[C4:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
+; CHECK: [[C5:%[0-9]+]]:_(s128) = G_IMPLICIT_DEF
+; CHECK: [[C6:%[0-9]+]]:_(s128) = G_INSERT [[C5]], [[VEC]](<2 x s32>), 0
+; CHECK: [[C7:%[0-9]+]]:_(s128) = G_INSERT [[C6]], [[C3]](s32), 64
+; CHECK: [[C8:%[0-9]+]]:_(s128) = G_INSERT [[C7]], [[C4]](s32), 96
+; CHECK: [[EXT:%[0-9]+]]:_(<2 x s32>) = G_EXTRACT [[C8]](s128), 0
; CHECK: G_EXTRACT_VECTOR_ELT [[EXT]](<2 x s32>)
%vec = extractvalue %struct.v2s32.s32.s32 {<2 x i32><i32 1, i32 2>, i32 3, i32 4}, 0
%elt = extractelement <2 x i32> %vec, i32 0
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir Tue Oct 24 11:04:54 2017
@@ -37,19 +37,19 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; HWDIV: [[R:%[0-9]+]](s32) = G_SDIV [[X]], [[Y]]
+ ; HWDIV: [[R:%[0-9]+]]:_(s32) = G_SDIV [[X]], [[Y]]
; SOFT-NOT: G_SDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_idiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__divsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SDIV
%2(s32) = G_SDIV %0, %1
@@ -73,19 +73,19 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; HWDIV: [[R:%[0-9]+]](s32) = G_UDIV [[X]], [[Y]]
+ ; HWDIV: [[R:%[0-9]+]]:_(s32) = G_UDIV [[X]], [[Y]]
; SOFT-NOT: G_UDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_uidiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__udivsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UDIV
%2(s32) = G_UDIV %0, %1
@@ -112,35 +112,35 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 16
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[SHIFTEDX:%[0-9]+]](s32) = G_SHL [[X]], [[BITS]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 16
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[SHIFTEDY:%[0-9]+]](s32) = G_SHL [[Y]], [[BITS]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[SHIFTEDX:%[0-9]+]]:_(s32) = G_SHL [[X]], [[BITS]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[SHIFTEDY:%[0-9]+]]:_(s32) = G_SHL [[Y]], [[BITS]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
%0(s32) = COPY %r0
%1(s16) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s16) = G_TRUNC %2(s32)
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SDIV [[X32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SDIV [[X32]], [[Y32]]
; SOFT-NOT: G_SDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_idiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__divsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SDIV
- ; CHECK: [[R16:%[0-9]+]](s16) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_SEXT [[R16]]
+ ; CHECK: [[R16:%[0-9]+]]:_(s16) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_SEXT [[R16]]
; SOFT-NOT: G_SDIV
%4(s16) = G_SDIV %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -167,33 +167,33 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 65535
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_AND [[X]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 65535
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_AND [[Y]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_AND [[X]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_AND [[Y]], [[BITS]]
%0(s32) = COPY %r0
%1(s16) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s16) = G_TRUNC %2(s32)
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_UDIV [[X32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_UDIV [[X32]], [[Y32]]
; SOFT-NOT: G_UDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_uidiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__udivsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UDIV
- ; CHECK: [[R16:%[0-9]+]](s16) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_ZEXT [[R16]]
+ ; CHECK: [[R16:%[0-9]+]]:_(s16) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_ZEXT [[R16]]
; SOFT-NOT: G_UDIV
%4(s16) = G_UDIV %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -220,35 +220,35 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 24
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[SHIFTEDX:%[0-9]+]](s32) = G_SHL [[X]], [[BITS]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 24
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[SHIFTEDY:%[0-9]+]](s32) = G_SHL [[Y]], [[BITS]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[SHIFTEDX:%[0-9]+]]:_(s32) = G_SHL [[X]], [[BITS]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[SHIFTEDY:%[0-9]+]]:_(s32) = G_SHL [[Y]], [[BITS]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
%0(s32) = COPY %r0
%1(s8) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s8) = G_TRUNC %2(s32)
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SDIV [[X32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SDIV [[X32]], [[Y32]]
; SOFT-NOT: G_SDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_idiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__divsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SDIV
- ; CHECK: [[R8:%[0-9]+]](s8) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_SEXT [[R8]]
+ ; CHECK: [[R8:%[0-9]+]]:_(s8) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_SEXT [[R8]]
; SOFT-NOT: G_SDIV
%4(s8) = G_SDIV %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -275,33 +275,33 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_AND [[X]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_AND [[Y]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_AND [[X]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_AND [[Y]], [[BITS]]
%0(s32) = COPY %r0
%1(s8) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s8) = G_TRUNC %2(s32)
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_UDIV [[X32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_UDIV [[X32]], [[Y32]]
; SOFT-NOT: G_UDIV
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_uidiv, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT-DEFAULT: BLX $__udivsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UDIV
- ; CHECK: [[R8:%[0-9]+]](s8) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_ZEXT [[R8]]
+ ; CHECK: [[R8:%[0-9]+]]:_(s8) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_ZEXT [[R8]]
; SOFT-NOT: G_UDIV
%4(s8) = G_UDIV %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -325,21 +325,21 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; HWDIV: [[Q:%[0-9]+]](s32) = G_SDIV [[X]], [[Y]]
- ; HWDIV: [[P:%[0-9]+]](s32) = G_MUL [[Q]], [[Y]]
- ; HWDIV: [[R:%[0-9]+]](s32) = G_SUB [[X]], [[P]]
+ ; HWDIV: [[Q:%[0-9]+]]:_(s32) = G_SDIV [[X]], [[Y]]
+ ; HWDIV: [[P:%[0-9]+]]:_(s32) = G_MUL [[Q]], [[Y]]
+ ; HWDIV: [[R:%[0-9]+]]:_(s32) = G_SUB [[X]], [[P]]
; SOFT-NOT: G_SREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_idivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0, implicit-def %r1
- ; SOFT-AEABI: [[R:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__modsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SREM
%2(s32) = G_SREM %0, %1
@@ -363,21 +363,21 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; HWDIV: [[Q:%[0-9]+]](s32) = G_UDIV [[X]], [[Y]]
- ; HWDIV: [[P:%[0-9]+]](s32) = G_MUL [[Q]], [[Y]]
- ; HWDIV: [[R:%[0-9]+]](s32) = G_SUB [[X]], [[P]]
+ ; HWDIV: [[Q:%[0-9]+]]:_(s32) = G_UDIV [[X]], [[Y]]
+ ; HWDIV: [[P:%[0-9]+]]:_(s32) = G_MUL [[Q]], [[Y]]
+ ; HWDIV: [[R:%[0-9]+]]:_(s32) = G_SUB [[X]], [[P]]
; SOFT-NOT: G_UREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_uidivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0, implicit-def %r1
- ; SOFT-AEABI: [[R:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__umodsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UREM
%2(s32) = G_UREM %0, %1
@@ -404,37 +404,37 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 16
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[SHIFTEDX:%[0-9]+]](s32) = G_SHL [[X]], [[BITS]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 16
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[SHIFTEDY:%[0-9]+]](s32) = G_SHL [[Y]], [[BITS]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[SHIFTEDX:%[0-9]+]]:_(s32) = G_SHL [[X]], [[BITS]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 16
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[SHIFTEDY:%[0-9]+]]:_(s32) = G_SHL [[Y]], [[BITS]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
%0(s32) = COPY %r0
%1(s16) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s16) = G_TRUNC %2(s32)
- ; HWDIV: [[Q32:%[0-9]+]](s32) = G_SDIV [[X32]], [[Y32]]
- ; HWDIV: [[P32:%[0-9]+]](s32) = G_MUL [[Q32]], [[Y32]]
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SUB [[X32]], [[P32]]
+ ; HWDIV: [[Q32:%[0-9]+]]:_(s32) = G_SDIV [[X32]], [[Y32]]
+ ; HWDIV: [[P32:%[0-9]+]]:_(s32) = G_MUL [[Q32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SUB [[X32]], [[P32]]
; SOFT-NOT: G_SREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_idivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__modsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SREM
- ; CHECK: [[R16:%[0-9]+]](s16) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_SEXT [[R16]]
+ ; CHECK: [[R16:%[0-9]+]]:_(s16) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_SEXT [[R16]]
; SOFT-NOT: G_SREM
%4(s16) = G_SREM %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -461,35 +461,35 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 65535
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_AND [[X]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 65535
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_AND [[Y]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_AND [[X]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_AND [[Y]], [[BITS]]
%0(s32) = COPY %r0
%1(s16) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s16) = G_TRUNC %2(s32)
- ; HWDIV: [[Q32:%[0-9]+]](s32) = G_UDIV [[X32]], [[Y32]]
- ; HWDIV: [[P32:%[0-9]+]](s32) = G_MUL [[Q32]], [[Y32]]
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SUB [[X32]], [[P32]]
+ ; HWDIV: [[Q32:%[0-9]+]]:_(s32) = G_UDIV [[X32]], [[Y32]]
+ ; HWDIV: [[P32:%[0-9]+]]:_(s32) = G_MUL [[Q32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SUB [[X32]], [[P32]]
; SOFT-NOT: G_UREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_uidivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__umodsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UREM
- ; CHECK: [[R16:%[0-9]+]](s16) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_ZEXT [[R16]]
+ ; CHECK: [[R16:%[0-9]+]]:_(s16) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_ZEXT [[R16]]
; SOFT-NOT: G_UREM
%4(s16) = G_UREM %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -516,37 +516,37 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 24
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[SHIFTEDX:%[0-9]+]](s32) = G_SHL [[X]], [[BITS]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 24
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[SHIFTEDY:%[0-9]+]](s32) = G_SHL [[Y]], [[BITS]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[SHIFTEDX:%[0-9]+]]:_(s32) = G_SHL [[X]], [[BITS]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDX]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 24
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[SHIFTEDY:%[0-9]+]]:_(s32) = G_SHL [[Y]], [[BITS]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_ASHR [[SHIFTEDY]], [[BITS]]
%0(s32) = COPY %r0
%1(s8) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s8) = G_TRUNC %2(s32)
- ; HWDIV: [[Q32:%[0-9]+]](s32) = G_SDIV [[X32]], [[Y32]]
- ; HWDIV: [[P32:%[0-9]+]](s32) = G_MUL [[Q32]], [[Y32]]
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SUB [[X32]], [[P32]]
+ ; HWDIV: [[Q32:%[0-9]+]]:_(s32) = G_SDIV [[X32]], [[Y32]]
+ ; HWDIV: [[P32:%[0-9]+]]:_(s32) = G_MUL [[Q32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SUB [[X32]], [[P32]]
; SOFT-NOT: G_SREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_idivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__modsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_SREM
- ; CHECK: [[R8:%[0-9]+]](s8) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_SEXT [[R8]]
+ ; CHECK: [[R8:%[0-9]+]]:_(s8) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_SEXT [[R8]]
; SOFT-NOT: G_SREM
%4(s8) = G_SREM %1, %3
; CHECK: %r0 = COPY [[R]]
@@ -573,35 +573,35 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[R0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[R1:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[R0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[R1:%[0-9]+]]:_(s32) = COPY %r1
; The G_TRUNC will combine with the extensions introduced by the legalizer,
; leading to the following complicated sequences.
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[X:%[0-9]+]](s32) = COPY [[R0]]
- ; CHECK: [[X32:%[0-9]+]](s32) = G_AND [[X]], [[BITS]]
- ; CHECK: [[BITS:%[0-9]+]](s32) = G_CONSTANT i32 255
- ; CHECK: [[Y:%[0-9]+]](s32) = COPY [[R1]]
- ; CHECK: [[Y32:%[0-9]+]](s32) = G_AND [[Y]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[X:%[0-9]+]]:_(s32) = COPY [[R0]]
+ ; CHECK: [[X32:%[0-9]+]]:_(s32) = G_AND [[X]], [[BITS]]
+ ; CHECK: [[BITS:%[0-9]+]]:_(s32) = G_CONSTANT i32 255
+ ; CHECK: [[Y:%[0-9]+]]:_(s32) = COPY [[R1]]
+ ; CHECK: [[Y32:%[0-9]+]]:_(s32) = G_AND [[Y]], [[BITS]]
%0(s32) = COPY %r0
%1(s8) = G_TRUNC %0(s32)
%2(s32) = COPY %r1
%3(s8) = G_TRUNC %2(s32)
- ; HWDIV: [[Q32:%[0-9]+]](s32) = G_UDIV [[X32]], [[Y32]]
- ; HWDIV: [[P32:%[0-9]+]](s32) = G_MUL [[Q32]], [[Y32]]
- ; HWDIV: [[R32:%[0-9]+]](s32) = G_SUB [[X32]], [[P32]]
+ ; HWDIV: [[Q32:%[0-9]+]]:_(s32) = G_UDIV [[X32]], [[Y32]]
+ ; HWDIV: [[P32:%[0-9]+]]:_(s32) = G_MUL [[Q32]], [[Y32]]
+ ; HWDIV: [[R32:%[0-9]+]]:_(s32) = G_SUB [[X32]], [[P32]]
; SOFT-NOT: G_UREM
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X32]]
; SOFT-DAG: %r1 = COPY [[Y32]]
; SOFT-AEABI: BLX $__aeabi_uidivmod, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-AEABI: [[R32:%[0-9]+]](s32) = COPY %r1
+ ; SOFT-AEABI: [[R32:%[0-9]+]]:_(s32) = COPY %r1
; SOFT-DEFAULT: BLX $__umodsi3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT-DEFAULT: [[R32:%[0-9]+]](s32) = COPY %r0
+ ; SOFT-DEFAULT: [[R32:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_UREM
- ; CHECK: [[R8:%[0-9]+]](s8) = G_TRUNC [[R32]]
- ; CHECK: [[R:%[0-9]+]](s32) = G_ZEXT [[R8]]
+ ; CHECK: [[R8:%[0-9]+]]:_(s8) = G_TRUNC [[R32]]
+ ; CHECK: [[R:%[0-9]+]]:_(s32) = G_ZEXT [[R8]]
; SOFT-NOT: G_UREM
%4(s8) = G_UREM %1, %3
; CHECK: %r0 = COPY [[R]]
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir Tue Oct 24 11:04:54 2017
@@ -65,8 +65,8 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
; CHECK-NOT: G_FREM
@@ -77,8 +77,8 @@ body: |
; HARD-DAG: %s1 = COPY [[Y]]
; SOFT: BLX $fmodf, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; HARD: BLX $fmodf, {{.*}}, implicit %s0, implicit %s1, implicit-def %s0
- ; SOFT: [[R:%[0-9]+]](s32) = COPY %r0
- ; HARD: [[R:%[0-9]+]](s32) = COPY %s0
+ ; SOFT: [[R:%[0-9]+]]:_(s32) = COPY %r0
+ ; HARD: [[R:%[0-9]+]]:_(s32) = COPY %s0
; CHECK: ADJCALLSTACKUP
; CHECK-NOT: G_FREM
%2(s32) = G_FREM %0, %1
@@ -114,16 +114,16 @@ body: |
; through R0-R1, ends up in R0-R1 or R1-R0, and the second value, received
; through R2-R3, ends up in R2-R3 or R3-R2, when passed to fmod.
; For hard float, the values need to end up in D0 and D1.
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]]
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]]
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]]
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]]
%4(s64) = G_MERGE_VALUES %0(s32), %1(s32)
%5(s64) = G_MERGE_VALUES %2(s32), %3(s32)
; CHECK-NOT: G_FREM
@@ -160,8 +160,8 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
; CHECK-NOT: G_FPOW
@@ -172,8 +172,8 @@ body: |
; HARD-DAG: %s1 = COPY [[Y]]
; SOFT: BLX $powf, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; HARD: BLX $powf, {{.*}}, implicit %s0, implicit %s1, implicit-def %s0
- ; SOFT: [[R:%[0-9]+]](s32) = COPY %r0
- ; HARD: [[R:%[0-9]+]](s32) = COPY %s0
+ ; SOFT: [[R:%[0-9]+]]:_(s32) = COPY %r0
+ ; HARD: [[R:%[0-9]+]]:_(s32) = COPY %s0
; CHECK: ADJCALLSTACKUP
; CHECK-NOT: G_FPOW
%2(s32) = G_FPOW %0, %1
@@ -209,16 +209,16 @@ body: |
; through R0-R1, ends up in R0-R1 or R1-R0, and the second value, received
; through R2-R3, ends up in R2-R3 or R3-R2, when passed to pow.
; For hard float, the values need to end up in D0 and D1.
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]]
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]]
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]]
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]]
%4(s64) = G_MERGE_VALUES %0(s32), %1(s32)
%5(s64) = G_MERGE_VALUES %2(s32), %3(s32)
; CHECK-NOT: G_FPOW
@@ -255,18 +255,18 @@ body: |
bb.0:
liveins: %r0, %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; HARD: [[R:%[0-9]+]](s32) = G_FADD [[X]], [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s32) = G_FADD [[X]], [[Y]]
; SOFT-NOT: G_FADD
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fadd, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__addsf3, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[R:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[R:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
; SOFT-NOT: G_FADD
%2(s32) = G_FADD %0, %1
@@ -296,19 +296,19 @@ body: |
bb.0:
liveins: %r0, %r1, %r2, %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%0(s32) = COPY %r0
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]]
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]]
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]]
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]]
%4(s64) = G_MERGE_VALUES %0(s32), %1(s32)
%5(s64) = G_MERGE_VALUES %2(s32), %3(s32)
- ; HARD: [[R:%[0-9]+]](s64) = G_FADD [[X]], [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s64) = G_FADD [[X]], [[Y]]
; SOFT-NOT: G_FADD
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r{{[0-1]}} = COPY [[X0]]
@@ -345,16 +345,16 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(true), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(true), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(true), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_CONSTANT i32 -1
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]](s32)
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 -1
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]](s32)
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -378,16 +378,16 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(false), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(false), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(false), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]](s32)
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]](s32)
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -411,24 +411,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(oeq), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(oeq), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(oeq), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__eqsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -452,24 +452,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ogt), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ogt), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ogt), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -493,24 +493,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(oge), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(oge), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(oge), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpge, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__gesf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -534,24 +534,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(olt), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(olt), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(olt), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmplt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -575,24 +575,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ole), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ole), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ole), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmple, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__lesf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -616,23 +616,23 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ord), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ord), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ord), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpun, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__unordsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -656,24 +656,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ugt), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ugt), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ugt), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmple, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__lesf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -697,24 +697,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(uge), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(uge), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(uge), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmplt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -738,24 +738,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ult), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ult), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ult), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpge, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__gesf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -779,24 +779,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ule), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ule), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ule), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -820,24 +820,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(une), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(une), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(une), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__nesf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -861,24 +861,24 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(uno), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(uno), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(uno), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpun, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__unordsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -902,39 +902,39 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(one), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(one), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(one), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET1:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET1:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R1:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET1]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R1:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET1]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmplt, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET2:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET2:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R2:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET2]](s32), [[ZERO]]
- ; SOFT-AEABI: [[R1EXT:%[0-9]+]](s32) = COPY [[RET1]]
- ; SOFT-AEABI: [[R2EXT:%[0-9]+]](s32) = COPY [[RET2]]
- ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]](s32) = G_ANYEXT [[R1]]
- ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]](s32) = G_ANYEXT [[R2]]
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_OR [[R1EXT]], [[R2EXT]]
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R2:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET2]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R1EXT:%[0-9]+]]:_(s32) = COPY [[RET1]]
+ ; SOFT-AEABI: [[R2EXT:%[0-9]+]]:_(s32) = COPY [[RET2]]
+ ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R1]]
+ ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R2]]
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_OR [[R1EXT]], [[R2EXT]]
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -958,39 +958,39 @@ body: |
%0(s32) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK-DAG: [[X:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[Y:%[0-9]+]](s32) = COPY %r1
+ ; CHECK-DAG: [[X:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[Y:%[0-9]+]]:_(s32) = COPY %r1
%2(s1) = G_FCMP floatpred(ueq), %0(s32), %1
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ueq), [[X]](s32), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ueq), [[X]](s32), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__eqsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET1:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET1:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R1:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET1]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R1:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET1]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X]]
; SOFT-DAG: %r1 = COPY [[Y]]
; SOFT-AEABI: BLX $__aeabi_fcmpun, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
; SOFT-DEFAULT: BLX $__unordsf2, {{.*}}, implicit %r0, implicit %r1, implicit-def %r0
- ; SOFT: [[RET2:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET2:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R2:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET2]](s32), [[ZERO]]
- ; SOFT-AEABI: [[R1EXT:%[0-9]+]](s32) = COPY [[RET1]]
- ; SOFT-AEABI: [[R2EXT:%[0-9]+]](s32) = COPY [[RET2]]
- ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]](s32) = G_ANYEXT [[R1]]
- ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]](s32) = G_ANYEXT [[R2]]
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_OR [[R1EXT]], [[R2EXT]]
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R2:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET2]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R1EXT:%[0-9]+]]:_(s32) = COPY [[RET1]]
+ ; SOFT-AEABI: [[R2EXT:%[0-9]+]]:_(s32) = COPY [[RET2]]
+ ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R1]]
+ ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R2]]
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_OR [[R1EXT]], [[R2EXT]]
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]]
; SOFT-NOT: G_FCMP
%3(s32) = G_ZEXT %2(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %3(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1020,22 +1020,22 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(true), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(true), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(true), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_CONSTANT i32 -1
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]](s32)
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 -1
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]](s32)
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1065,22 +1065,22 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(false), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(false), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(false), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]](s32)
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]](s32)
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1110,16 +1110,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(oeq), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(oeq), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(oeq), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1128,14 +1128,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__eqdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1165,16 +1165,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ogt), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ogt), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ogt), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1183,14 +1183,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1220,16 +1220,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(oge), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(oge), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(oge), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1238,14 +1238,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpge, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__gedf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1275,16 +1275,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(olt), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(olt), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(olt), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1293,14 +1293,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmplt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1330,16 +1330,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ole), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ole), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ole), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1348,14 +1348,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmple, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__ledf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1385,16 +1385,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ord), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ord), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ord), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1403,13 +1403,13 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpun, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__unorddf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1439,16 +1439,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ugt), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ugt), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ugt), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1457,14 +1457,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmple, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__ledf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1494,16 +1494,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(uge), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(uge), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(uge), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1512,14 +1512,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmplt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sge), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1549,16 +1549,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ult), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ult), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ult), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1567,14 +1567,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpge, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__gedf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1604,16 +1604,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ule), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ule), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ule), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1622,14 +1622,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(sle), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1659,16 +1659,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(une), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(une), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(une), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1677,14 +1677,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__nedf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
+ ; SOFT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1714,16 +1714,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(uno), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(uno), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(uno), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1732,14 +1732,14 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpun, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__unorddf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-AEABI: [[R:%[0-9]+]](s1) = G_TRUNC [[RET]](s32)
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[RET]](s32)
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1769,16 +1769,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(one), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(one), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(one), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1787,10 +1787,10 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpgt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__gtdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET1:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET1:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R1:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[RET1]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R1:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[RET1]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1799,19 +1799,19 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmplt, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__ltdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET2:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET2:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R2:%[0-9]+]](s1) = G_ICMP intpred(slt), [[RET2]](s32), [[ZERO]]
- ; SOFT-AEABI: [[R1EXT:%[0-9]+]](s32) = COPY [[RET1]]
- ; SOFT-AEABI: [[R2EXT:%[0-9]+]](s32) = COPY [[RET2]]
- ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]](s32) = G_ANYEXT [[R1]]
- ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]](s32) = G_ANYEXT [[R2]]
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_OR [[R1EXT]], [[R2EXT]]
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R2:%[0-9]+]]:_(s1) = G_ICMP intpred(slt), [[RET2]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R1EXT:%[0-9]+]]:_(s32) = COPY [[RET1]]
+ ; SOFT-AEABI: [[R2EXT:%[0-9]+]]:_(s32) = COPY [[RET2]]
+ ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R1]]
+ ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R2]]
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_OR [[R1EXT]], [[R2EXT]]
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
@@ -1841,16 +1841,16 @@ body: |
%1(s32) = COPY %r1
%2(s32) = COPY %r2
%3(s32) = COPY %r3
- ; CHECK-DAG: [[X0:%[0-9]+]](s32) = COPY %r0
- ; CHECK-DAG: [[X1:%[0-9]+]](s32) = COPY %r1
- ; CHECK-DAG: [[Y0:%[0-9]+]](s32) = COPY %r2
- ; CHECK-DAG: [[Y1:%[0-9]+]](s32) = COPY %r3
+ ; CHECK-DAG: [[X0:%[0-9]+]]:_(s32) = COPY %r0
+ ; CHECK-DAG: [[X1:%[0-9]+]]:_(s32) = COPY %r1
+ ; CHECK-DAG: [[Y0:%[0-9]+]]:_(s32) = COPY %r2
+ ; CHECK-DAG: [[Y1:%[0-9]+]]:_(s32) = COPY %r3
%4(s64) = G_MERGE_VALUES %0(s32), %1
%5(s64) = G_MERGE_VALUES %2(s32), %3
- ; HARD-DAG: [[X:%[0-9]+]](s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
- ; HARD-DAG: [[Y:%[0-9]+]](s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
+ ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]](s32), [[X1]](s32)
+ ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]](s32), [[Y1]](s32)
%6(s1) = G_FCMP floatpred(ueq), %4(s64), %5
- ; HARD: [[R:%[0-9]+]](s1) = G_FCMP floatpred(ueq), [[X]](s64), [[Y]]
+ ; HARD: [[R:%[0-9]+]]:_(s1) = G_FCMP floatpred(ueq), [[X]](s64), [[Y]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1859,10 +1859,10 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpeq, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__eqdf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET1:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET1:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R1:%[0-9]+]](s1) = G_ICMP intpred(eq), [[RET1]](s32), [[ZERO]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R1:%[0-9]+]]:_(s1) = G_ICMP intpred(eq), [[RET1]](s32), [[ZERO]]
; SOFT-NOT: G_FCMP
; SOFT: ADJCALLSTACKDOWN
; SOFT-DAG: %r0 = COPY [[X0]]
@@ -1871,19 +1871,19 @@ body: |
; SOFT-DAG: %r3 = COPY [[Y1]]
; SOFT-AEABI: BLX $__aeabi_dcmpun, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
; SOFT-DEFAULT: BLX $__unorddf2, {{.*}}, implicit %r0, implicit %r1, implicit %r2, implicit %r3, implicit-def %r0
- ; SOFT: [[RET2:%[0-9]+]](s32) = COPY %r0
+ ; SOFT: [[RET2:%[0-9]+]]:_(s32) = COPY %r0
; SOFT: ADJCALLSTACKUP
- ; SOFT-DEFAULT: [[ZERO:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; SOFT-DEFAULT: [[R2:%[0-9]+]](s1) = G_ICMP intpred(ne), [[RET2]](s32), [[ZERO]]
- ; SOFT-AEABI: [[R1EXT:%[0-9]+]](s32) = COPY [[RET1]]
- ; SOFT-AEABI: [[R2EXT:%[0-9]+]](s32) = COPY [[RET2]]
- ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]](s32) = G_ANYEXT [[R1]]
- ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]](s32) = G_ANYEXT [[R2]]
- ; SOFT: [[REXT:%[0-9]+]](s32) = G_OR [[R1EXT]], [[R2EXT]]
- ; SOFT: [[R:%[0-9]+]](s1) = G_TRUNC [[REXT]]
+ ; SOFT-DEFAULT: [[ZERO:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; SOFT-DEFAULT: [[R2:%[0-9]+]]:_(s1) = G_ICMP intpred(ne), [[RET2]](s32), [[ZERO]]
+ ; SOFT-AEABI: [[R1EXT:%[0-9]+]]:_(s32) = COPY [[RET1]]
+ ; SOFT-AEABI: [[R2EXT:%[0-9]+]]:_(s32) = COPY [[RET2]]
+ ; SOFT-DEFAULT: [[R1EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R1]]
+ ; SOFT-DEFAULT: [[R2EXT:%[0-9]+]]:_(s32) = G_ANYEXT [[R2]]
+ ; SOFT: [[REXT:%[0-9]+]]:_(s32) = G_OR [[R1EXT]], [[R2EXT]]
+ ; SOFT: [[R:%[0-9]+]]:_(s1) = G_TRUNC [[REXT]]
; SOFT-NOT: G_FCMP
%7(s32) = G_ZEXT %6(s1)
- ; CHECK: [[REXT:%[0-9]+]](s32) = G_ZEXT [[R]](s1)
+ ; CHECK: [[REXT:%[0-9]+]]:_(s32) = G_ZEXT [[R]](s1)
%r0 = COPY %7(s32)
; CHECK: %r0 = COPY [[REXT]]
BX_RET 14, _, implicit %r0
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalizer.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalizer.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalizer.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-legalizer.mir Tue Oct 24 11:04:54 2017
@@ -74,7 +74,7 @@ body: |
%0(s8) = G_CONSTANT i8 42
%1(s32) = G_SEXT %0
; G_SEXT with s8 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_SEXT {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SEXT {{%[0-9]+}}
%r0 = COPY %1(s32)
BX_RET 14, _, implicit %r0
...
@@ -96,7 +96,7 @@ body: |
%0(s16) = G_CONSTANT i16 42
%1(s32) = G_ZEXT %0
; G_ZEXT with s16 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_ZEXT {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_ZEXT {{%[0-9]+}}
%r0 = COPY %1(s32)
BX_RET 14, _, implicit %r0
...
@@ -121,9 +121,9 @@ body: |
%1(s8) = G_CONSTANT i8 30
%2(s8) = G_ADD %0, %1
; G_ADD with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_ADD {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_ADD {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -149,9 +149,9 @@ body: |
%1(s16) = G_CONSTANT i16 10
%2(s16) = G_ADD %0, %1
; G_ADD with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_ADD {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_ADD {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -177,7 +177,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_ADD %0, %1
; G_ADD with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_ADD {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -203,9 +203,9 @@ body: |
%1(s8) = G_CONSTANT i8 6
%2(s8) = G_SUB %0, %1
; G_SUB with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_SUB {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_SUB {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -231,9 +231,9 @@ body: |
%1(s16) = G_CONSTANT i16 16
%2(s16) = G_SUB %0, %1
; G_SUB with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_SUB {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_SUB {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -259,7 +259,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_SUB %0, %1
; G_SUB with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SUB {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -285,9 +285,9 @@ body: |
%1(s8) = G_CONSTANT i8 6
%2(s8) = G_MUL %0, %1
; G_MUL with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_MUL {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_MUL {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -313,9 +313,9 @@ body: |
%1(s16) = G_CONSTANT i16 14
%2(s16) = G_MUL %0, %1
; G_MUL with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_MUL {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_MUL {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -341,7 +341,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_MUL %0, %1
; G_MUL with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_MUL {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -367,9 +367,9 @@ body: |
%1(s8) = G_CONSTANT i8 58
%2(s8) = G_AND %0, %1
; G_AND with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_AND {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_AND {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_AND {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -395,9 +395,9 @@ body: |
%1(s16) = G_CONSTANT i16 106
%2(s16) = G_AND %0, %1
; G_AND with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_AND {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_AND {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_AND {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -423,7 +423,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_AND %0, %1
; G_AND with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_AND {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_AND {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -449,9 +449,9 @@ body: |
%1(s8) = G_CONSTANT i8 10
%2(s8) = G_OR %0, %1
; G_OR with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_OR {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_OR {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_OR {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -477,9 +477,9 @@ body: |
%1(s16) = G_CONSTANT i16 10
%2(s16) = G_OR %0, %1
; G_OR with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_OR {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_OR {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_OR {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -505,7 +505,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_OR %0, %1
; G_OR with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_OR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_OR {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -531,9 +531,9 @@ body: |
%1(s8) = G_CONSTANT i8 32
%2(s8) = G_XOR %0, %1
; G_XOR with s8 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_XOR {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s8) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s8) = G_XOR {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s8)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -559,9 +559,9 @@ body: |
%1(s16) = G_CONSTANT i16 2
%2(s16) = G_XOR %0, %1
; G_XOR with s16 should widen
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_XOR {{%[0-9]+, %[0-9]+}}
- ; CHECK: {{%[0-9]+}}(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s16) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s16) = G_XOR {{%[0-9]+, %[0-9]+}}
%3(s32) = G_SEXT %2(s16)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -587,7 +587,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_XOR %0, %1
; G_XOR with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_XOR {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -612,7 +612,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_LSHR %0, %1
; G_LSHR with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_LSHR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_LSHR {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -637,7 +637,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_ASHR %0, %1
; G_ASHR with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_ASHR {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_ASHR {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -662,7 +662,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_SHL %0, %1
; G_SHL with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_SHL {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SHL {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -690,8 +690,8 @@ body: |
liveins: %r0, %r1, %r2, %r3
; This is legal, so we should find it unchanged in the output
- ; CHECK: [[FIVREG:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[FRAME_INDEX]]
- ; CHECK: {{%[0-9]+}}(s32) = G_LOAD [[FIVREG]](p0) :: (load 4)
+ ; CHECK: [[FIVREG:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[FRAME_INDEX]]
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_LOAD [[FIVREG]](p0) :: (load 4)
%0(p0) = G_FRAME_INDEX %fixed-stack.2
%1(s32) = G_LOAD %0(p0) :: (load 4)
BX_RET 14, _
@@ -717,12 +717,12 @@ body: |
liveins: %r0, %r1, %r2, %r3
; These are all legal, so we should find them unchanged in the output
- ; CHECK-DAG: {{%[0-9]+}}(s64) = G_LOAD %0
- ; CHECK-DAG: {{%[0-9]+}}(s32) = G_LOAD %0
- ; CHECK-DAG: {{%[0-9]+}}(s16) = G_LOAD %0
- ; CHECK-DAG: {{%[0-9]+}}(s8) = G_LOAD %0
- ; CHECK-DAG: {{%[0-9]+}}(s1) = G_LOAD %0
- ; CHECK-DAG: {{%[0-9]+}}(p0) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(s64) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(s32) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(s16) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(s8) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(s1) = G_LOAD %0
+ ; CHECK-DAG: {{%[0-9]+}}:_(p0) = G_LOAD %0
%0(p0) = COPY %r0
%1(s32) = G_LOAD %0(p0) :: (load 4)
%2(s16) = G_LOAD %0(p0) :: (load 2)
@@ -793,7 +793,7 @@ body: |
%0(p0) = COPY %r0
%1(s32) = COPY %r1
- ; CHECK: {{%[0-9]+}}(p0) = G_GEP {{%[0-9]+}}, {{%[0-9]+}}(s32)
+ ; CHECK: {{%[0-9]+}}:_(p0) = G_GEP {{%[0-9]+}}, {{%[0-9]+}}(s32)
%2(p0) = G_GEP %0, %1(s32)
%r0 = COPY %2(p0)
@@ -815,24 +815,24 @@ registers:
body: |
bb.0:
%0(s32) = G_CONSTANT 42
- ; CHECK: {{%[0-9]+}}(s32) = G_CONSTANT 42
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_CONSTANT 42
%1(s16) = G_CONSTANT i16 21
; CHECK-NOT: G_CONSTANT i16
- ; CHECK: [[EXT:%[0-9]+]](s32) = G_CONSTANT i32 21
- ; CHECK: {{%[0-9]+}}(s16) = G_TRUNC [[EXT]](s32)
+ ; CHECK: [[EXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 21
+ ; CHECK: {{%[0-9]+}}:_(s16) = G_TRUNC [[EXT]](s32)
; CHECK-NOT: G_CONSTANT i16
%2(s8) = G_CONSTANT i8 10
; CHECK-NOT: G_CONSTANT i8
- ; CHECK: [[EXT:%[0-9]+]](s32) = G_CONSTANT i32 10
- ; CHECK: {{%[0-9]+}}(s8) = G_TRUNC [[EXT]](s32)
+ ; CHECK: [[EXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 10
+ ; CHECK: {{%[0-9]+}}:_(s8) = G_TRUNC [[EXT]](s32)
; CHECK-NOT: G_CONSTANT i8
%3(s1) = G_CONSTANT i1 1
; CHECK-NOT: G_CONSTANT i1
- ; CHECK: [[EXT:%[0-9]+]](s32) = G_CONSTANT i32 -1
- ; CHECK: {{%[0-9]+}}(s1) = G_TRUNC [[EXT]](s32)
+ ; CHECK: [[EXT:%[0-9]+]]:_(s32) = G_CONSTANT i32 -1
+ ; CHECK: {{%[0-9]+}}:_(s1) = G_TRUNC [[EXT]](s32)
; CHECK-NOT: G_CONSTANT i1
%r0 = COPY %0(s32)
@@ -859,8 +859,8 @@ body: |
%1(s8) = G_CONSTANT i8 43
%2(s1) = G_ICMP intpred(ne), %0(s8), %1
; G_ICMP with s8 should widen
- ; CHECK: {{%[0-9]+}}(s1) = G_ICMP intpred(ne), {{%[0-9]+}}(s32), {{%[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s1) = G_ICMP intpred(ne), {{%[0-9]+}}(s8), {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s1) = G_ICMP intpred(ne), {{%[0-9]+}}(s32), {{%[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s1) = G_ICMP intpred(ne), {{%[0-9]+}}(s8), {{%[0-9]+}}
%3(s32) = G_ZEXT %2(s1)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -886,8 +886,8 @@ body: |
%1(s16) = G_CONSTANT i16 46
%2(s1) = G_ICMP intpred(slt), %0(s16), %1
; G_ICMP with s16 should widen
- ; CHECK: {{%[0-9]+}}(s1) = G_ICMP intpred(slt), {{%[0-9]+}}(s32), {{%[0-9]+}}
- ; CHECK-NOT: {{%[0-9]+}}(s1) = G_ICMP intpred(slt), {{%[0-9]+}}(s16), {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s1) = G_ICMP intpred(slt), {{%[0-9]+}}(s32), {{%[0-9]+}}
+ ; CHECK-NOT: {{%[0-9]+}}:_(s1) = G_ICMP intpred(slt), {{%[0-9]+}}(s16), {{%[0-9]+}}
%3(s32) = G_ZEXT %2(s1)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -913,7 +913,7 @@ body: |
%1(s32) = COPY %r1
%2(s1) = G_ICMP intpred(eq), %0(s32), %1
; G_ICMP with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s1) = G_ICMP intpred(eq), {{%[0-9]+}}(s32), {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s1) = G_ICMP intpred(eq), {{%[0-9]+}}(s32), {{%[0-9]+}}
%3(s32) = G_ZEXT %2(s1)
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
@@ -940,7 +940,7 @@ body: |
%2(s1) = G_CONSTANT i1 1
%3(s32) = G_SELECT %2(s1), %0, %1
; G_SELECT with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
%r0 = COPY %3(s32)
BX_RET 14, _, implicit %r0
...
@@ -966,7 +966,7 @@ body: |
%2(s1) = G_CONSTANT i1 0
%3(p0) = G_SELECT %2(s1), %0, %1
; G_SELECT with p0 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(p0) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(p0) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
%r0 = COPY %3(p0)
BX_RET 14, _, implicit %r0
...
@@ -1024,7 +1024,7 @@ body: |
%1(s32) = COPY %r1
%2(s32) = G_FADD %0, %1
; G_FADD with s32 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s32) = G_FADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s32) = G_FADD {{%[0-9]+, %[0-9]+}}
%r0 = COPY %2(s32)
BX_RET 14, _, implicit %r0
@@ -1049,7 +1049,7 @@ body: |
%1(s64) = COPY %d1
%2(s64) = G_FADD %0, %1
; G_FADD with s64 is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(s64) = G_FADD {{%[0-9]+, %[0-9]+}}
+ ; CHECK: {{%[0-9]+}}:_(s64) = G_FADD {{%[0-9]+, %[0-9]+}}
%d0 = COPY %2(s64)
BX_RET 14, _, implicit %d0
@@ -1072,7 +1072,7 @@ body: |
%0(s32) = COPY %r0
%1(p0) = G_GLOBAL_VALUE @a_global
; G_GLOBAL_VALUE is legal, so we should find it unchanged in the output
- ; CHECK: {{%[0-9]+}}(p0) = G_GLOBAL_VALUE @a_global
+ ; CHECK: {{%[0-9]+}}:_(p0) = G_GLOBAL_VALUE @a_global
%r0 = COPY %1(p0)
BX_RET 14, _, implicit %r0
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir Tue Oct 24 11:04:54 2017
@@ -28,12 +28,12 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @internal_global
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel {{.*}}@internal_global
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel {{.*}}@internal_global
- ; ELF: [[G:%[0-9]+]] = LDRLIT_ga_pcrel {{.*}}@internal_global
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel {{.*}}@internal_global
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel {{.*}}@internal_global
+ ; ELF: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel {{.*}}@internal_global
%1(s32) = G_LOAD %0(p0) :: (load 4 from @internal_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_global)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_global)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -54,12 +54,12 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @external_global
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel_ldr {{.*}} @external_global :: (load 4 from got)
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel_ldr {{.*}}@external_global :: (load 4 from got)
- ; ELF: [[G:%[0-9]+]] = LDRLIT_ga_pcrel_ldr @external_global :: (load 4 from got)
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel_ldr {{.*}} @external_global :: (load 4 from got)
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel_ldr {{.*}}@external_global :: (load 4 from got)
+ ; ELF: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel_ldr @external_global :: (load 4 from got)
%1(s32) = G_LOAD %0(p0) :: (load 4 from @external_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_global)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_global)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -80,12 +80,12 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @internal_constant
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel {{.*}}@internal_constant
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel {{.*}}@internal_constant
- ; ELF: [[G:%[0-9]+]] = LDRLIT_ga_pcrel {{.*}}@internal_constant
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel {{.*}}@internal_constant
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel {{.*}}@internal_constant
+ ; ELF: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel {{.*}}@internal_constant
%1(s32) = G_LOAD %0(p0) :: (load 4 from @internal_constant)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_constant)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_constant)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -106,12 +106,12 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @external_constant
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel_ldr {{.*}} @external_constant :: (load 4 from got)
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel_ldr {{.*}}@external_constant :: (load 4 from got)
- ; ELF: [[G:%[0-9]+]] = LDRLIT_ga_pcrel_ldr @external_constant :: (load 4 from got)
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel_ldr {{.*}} @external_constant :: (load 4 from got)
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel_ldr {{.*}}@external_constant :: (load 4 from got)
+ ; ELF: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel_ldr @external_constant :: (load 4 from got)
%1(s32) = G_LOAD %0(p0) :: (load 4 from @external_constant)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_constant)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_constant)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir Tue Oct 24 11:04:54 2017
@@ -36,14 +36,14 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @internal_global
- ; RW-DEFAULT-MOVT: [[G:%[0-9]+]] = MOVi32imm @internal_global
- ; RW-DEFAULT-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; RWPI-MOVT: [[OFF:%[0-9]+]] = MOVi32imm {{.*}} @internal_global
- ; RWPI-NOMOVT: [[OFF:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; RWPI: [[G:%[0-9]+]] = ADDrr %r9, [[OFF]], 14, _, _
+ ; RW-DEFAULT-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @internal_global
+ ; RW-DEFAULT-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; RWPI-MOVT: [[OFF:%[0-9]+]]:gpr = MOVi32imm {{.*}} @internal_global
+ ; RWPI-NOMOVT: [[OFF:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; RWPI: [[G:%[0-9]+]]:gpr = ADDrr %r9, [[OFF]], 14, _, _
%1(s32) = G_LOAD %0(p0) :: (load 4 from @internal_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_global)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_global)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -70,14 +70,14 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @external_global
- ; RW-DEFAULT-MOVT: [[G:%[0-9]+]] = MOVi32imm @external_global
- ; RW-DEFAULT-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; RWPI-MOVT: [[OFF:%[0-9]+]] = MOVi32imm {{.*}} @external_global
- ; RWPI-NOMOVT: [[OFF:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; RWPI: [[G:%[0-9]+]] = ADDrr %r9, [[OFF]], 14, _, _
+ ; RW-DEFAULT-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @external_global
+ ; RW-DEFAULT-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; RWPI-MOVT: [[OFF:%[0-9]+]]:gpr = MOVi32imm {{.*}} @external_global
+ ; RWPI-NOMOVT: [[OFF:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; RWPI: [[G:%[0-9]+]]:gpr = ADDrr %r9, [[OFF]], 14, _, _
%1(s32) = G_LOAD %0(p0) :: (load 4 from @external_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_global)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_global)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -101,13 +101,13 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @internal_constant
- ; ROPI-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel @internal_constant
- ; ROPI-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel @internal_constant
- ; RO-DEFAULT-MOVT: [[G:%[0-9]+]] = MOVi32imm @internal_constant
- ; RO-DEFAULT-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; ROPI-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel @internal_constant
+ ; ROPI-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel @internal_constant
+ ; RO-DEFAULT-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @internal_constant
+ ; RO-DEFAULT-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
%1(s32) = G_LOAD %0(p0) :: (load 4 from @internal_constant)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_constant)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @internal_constant)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -131,13 +131,13 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @external_constant
- ; ROPI-MOVT: [[G:%[0-9]+]] = MOV_ga_pcrel @external_constant
- ; ROPI-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_pcrel @external_constant
- ; RO-DEFAULT-MOVT: [[G:%[0-9]+]] = MOVi32imm @external_constant
- ; RO-DEFAULT-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; ROPI-MOVT: [[G:%[0-9]+]]:gpr = MOV_ga_pcrel @external_constant
+ ; ROPI-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_pcrel @external_constant
+ ; RO-DEFAULT-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @external_constant
+ ; RO-DEFAULT-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
%1(s32) = G_LOAD %0(p0) :: (load 4 from @external_constant)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_constant)
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _ :: (load 4 from @external_constant)
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
Modified: llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir Tue Oct 24 11:04:54 2017
@@ -25,13 +25,13 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @internal_global
- ; ELF-MOVT: [[G:%[0-9]+]] = MOVi32imm @internal_global
- ; ELF-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOVi32imm @internal_global
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_abs @internal_global
+ ; ELF-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @internal_global
+ ; ELF-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @internal_global
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_abs @internal_global
%1(s32) = G_LOAD %0(p0) :: (load 4 from @internal_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
@@ -55,13 +55,13 @@ registers:
body: |
bb.0:
%0(p0) = G_GLOBAL_VALUE @external_global
- ; ELF-MOVT: [[G:%[0-9]+]] = MOVi32imm @external_global
- ; ELF-NOMOVT: [[G:%[0-9]+]] = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
- ; DARWIN-MOVT: [[G:%[0-9]+]] = MOVi32imm @external_global
- ; DARWIN-NOMOVT: [[G:%[0-9]+]] = LDRLIT_ga_abs @external_global
+ ; ELF-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @external_global
+ ; ELF-NOMOVT: [[G:%[0-9]+]]:gpr = LDRi12 %const.0, 0, 14, _ :: (load 4 from constant-pool)
+ ; DARWIN-MOVT: [[G:%[0-9]+]]:gpr = MOVi32imm @external_global
+ ; DARWIN-NOMOVT: [[G:%[0-9]+]]:gpr = LDRLIT_ga_abs @external_global
%1(s32) = G_LOAD %0(p0) :: (load 4 from @external_global)
- ; CHECK: [[V:%[0-9]+]] = LDRi12 [[G]], 0, 14, _
+ ; CHECK: [[V:%[0-9]+]]:gpr = LDRi12 [[G]], 0, 14, _
%r0 = COPY %1(s32)
; CHECK: %r0 = COPY [[V]]
Modified: llvm/trunk/test/CodeGen/ARM/imm-peephole-arm.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/imm-peephole-arm.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/imm-peephole-arm.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/imm-peephole-arm.mir Tue Oct 24 11:04:54 2017
@@ -1,17 +1,17 @@
# RUN: llc -run-pass=peephole-opt %s -o - | FileCheck %s
-# CHECK: [[IN:%.*]] = COPY %r0
-# CHECK: [[SUM1TMP:%.*]] = ADDri [[IN]], 133
-# CHECK: [[SUM1:%.*]] = ADDri killed [[SUM1TMP]], 25600
+# CHECK: [[IN:%.*]]:gprnopc = COPY %r0
+# CHECK: [[SUM1TMP:%.*]]:rgpr = ADDri [[IN]], 133
+# CHECK: [[SUM1:%.*]]:rgpr = ADDri killed [[SUM1TMP]], 25600
-# CHECK: [[SUM2TMP:%.*]] = SUBri [[IN]], 133
-# CHECK: [[SUM2:%.*]] = SUBri killed [[SUM2TMP]], 25600
+# CHECK: [[SUM2TMP:%.*]]:rgpr = SUBri [[IN]], 133
+# CHECK: [[SUM2:%.*]]:rgpr = SUBri killed [[SUM2TMP]], 25600
-# CHECK: [[SUM3TMP:%.*]] = SUBri [[IN]], 133
-# CHECK: [[SUM3:%.*]] = SUBri killed [[SUM3TMP]], 25600
+# CHECK: [[SUM3TMP:%.*]]:rgpr = SUBri [[IN]], 133
+# CHECK: [[SUM3:%.*]]:rgpr = SUBri killed [[SUM3TMP]], 25600
-# CHECK: [[SUM4TMP:%.*]] = ADDri killed [[IN]], 133
-# CHECK: [[SUM4:%.*]] = ADDri killed [[SUM4TMP]], 25600
+# CHECK: [[SUM4TMP:%.*]]:rgpr = ADDri killed [[IN]], 133
+# CHECK: [[SUM4:%.*]]:rgpr = ADDri killed [[SUM4TMP]], 25600
--- |
@@ -57,4 +57,3 @@ body: |
BX_RET 14, _, implicit %r0
...
-
Modified: llvm/trunk/test/CodeGen/ARM/imm-peephole-thumb.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/imm-peephole-thumb.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/imm-peephole-thumb.mir (original)
+++ llvm/trunk/test/CodeGen/ARM/imm-peephole-thumb.mir Tue Oct 24 11:04:54 2017
@@ -1,17 +1,17 @@
# RUN: llc -run-pass=peephole-opt %s -o - | FileCheck %s
-# CHECK: [[IN:%.*]] = COPY %r0
-# CHECK: [[SUM1TMP:%.*]] = t2ADDri [[IN]], 25600
-# CHECK: [[SUM1:%.*]] = t2ADDri killed [[SUM1TMP]], 133
+# CHECK: [[IN:%.*]]:gprnopc = COPY %r0
+# CHECK: [[SUM1TMP:%.*]]:rgpr = t2ADDri [[IN]], 25600
+# CHECK: [[SUM1:%.*]]:rgpr = t2ADDri killed [[SUM1TMP]], 133
-# CHECK: [[SUM2TMP:%.*]] = t2SUBri [[IN]], 25600
-# CHECK: [[SUM2:%.*]] = t2SUBri killed [[SUM2TMP]], 133
+# CHECK: [[SUM2TMP:%.*]]:rgpr = t2SUBri [[IN]], 25600
+# CHECK: [[SUM2:%.*]]:rgpr = t2SUBri killed [[SUM2TMP]], 133
-# CHECK: [[SUM3TMP:%.*]] = t2SUBri [[IN]], 25600
-# CHECK: [[SUM3:%.*]] = t2SUBri killed [[SUM3TMP]], 133
+# CHECK: [[SUM3TMP:%.*]]:rgpr = t2SUBri [[IN]], 25600
+# CHECK: [[SUM3:%.*]]:rgpr = t2SUBri killed [[SUM3TMP]], 133
-# CHECK: [[SUM4TMP:%.*]] = t2ADDri killed [[IN]], 25600
-# CHECK: [[SUM4:%.*]] = t2ADDri killed [[SUM4TMP]], 133
+# CHECK: [[SUM4TMP:%.*]]:rgpr = t2ADDri killed [[IN]], 25600
+# CHECK: [[SUM4:%.*]]:rgpr = t2ADDri killed [[SUM4TMP]], 133
--- |
@@ -56,4 +56,3 @@ body: |
tBX_RET 14, _, implicit %r0
...
-
Modified: llvm/trunk/test/CodeGen/Hexagon/cext-opt-basic.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/cext-opt-basic.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/cext-opt-basic.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/cext-opt-basic.mir Tue Oct 24 11:04:54 2017
@@ -8,7 +8,7 @@
...
# CHECK-LABEL: name: test0
-# CHECK: [[B:%[0-9]+]] = A2_tfrsi @global_address
+# CHECK: [[B:%[0-9]+]]:intregs = A2_tfrsi @global_address
# CHECK: L2_loadri_io [[B]], 0
# CHECK: L2_loadri_io [[B]], 4
# CHECK: L2_loadri_io [[B]], 8
@@ -26,8 +26,8 @@ body: |
...
# CHECK-LABEL: name: test1
-# CHECK: [[C:%[0-9]+]] = COPY %r0
-# CHECK: [[B:%[0-9]+]] = A2_addi [[C]], @global_address
+# CHECK: [[C:%[0-9]+]]:intregs = COPY %r0
+# CHECK: [[B:%[0-9]+]]:intregs = A2_addi [[C]], @global_address
# CHECK: L2_loadri_io [[B]], 0
# CHECK: L2_loadri_io [[B]], 4
# CHECK: L2_loadri_io [[B]], 8
@@ -48,11 +48,11 @@ body: |
...
# CHECK-LABEL: name: test2
-# CHECK: [[C:%[0-9]+]] = COPY %r0
-# CHECK: [[B:%[0-9]+]] = A2_tfrsi @global_address + 4
-# CHECK: [[T0:%[0-9]+]] = A2_addi [[B]], -4
+# CHECK: [[C:%[0-9]+]]:intregs = COPY %r0
+# CHECK: [[B:%[0-9]+]]:intregs = A2_tfrsi @global_address + 4
+# CHECK: [[T0:%[0-9]+]]:intregs = A2_addi [[B]], -4
# CHECK: %r0 = COPY [[T0]]
-# CHECK: [[T1:%[0-9]+]] = A2_addi [[B]], -2
+# CHECK: [[T1:%[0-9]+]]:intregs = A2_addi [[B]], -2
# CHECK: %r1 = COPY [[T1]]
# CHECK: L4_loadri_rr [[B]], [[C]], 0
---
@@ -72,4 +72,3 @@ body: |
%r1 = COPY %2
%3 = L4_loadri_ur %0, 0, @global_address+4
...
-
Modified: llvm/trunk/test/CodeGen/Hexagon/early-if-debug.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/early-if-debug.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/early-if-debug.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/early-if-debug.mir Tue Oct 24 11:04:54 2017
@@ -3,16 +3,16 @@
# if-converted.
# CHECK-LABEL: bb.0:
-# CHECK: %0 = COPY %r0
-# CHECK: %1 = C2_cmpeqi %0, 0
-# CHECK: %2 = A2_tfrsi 123
+# CHECK: %0:intregs = COPY %r0
+# CHECK: %1:predregs = C2_cmpeqi %0, 0
+# CHECK: %2:intregs = A2_tfrsi 123
# CHECK: DBG_VALUE debug-use %0, debug-use _
# CHECK: DBG_VALUE debug-use %0, debug-use _
# CHECK: DBG_VALUE debug-use %0, debug-use _
# CHECK: DBG_VALUE debug-use %0, debug-use _
# CHECK: DBG_VALUE debug-use %0, debug-use _
-# CHECK: %3 = A2_tfrsi 321
-# CHECK: %5 = C2_mux %1, %2, %3
+# CHECK: %3:intregs = A2_tfrsi 321
+# CHECK: %5:intregs = C2_mux %1, %2, %3
--- |
define void @foo() {
Modified: llvm/trunk/test/CodeGen/Hexagon/expand-condsets-def-undef.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/expand-condsets-def-undef.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/expand-condsets-def-undef.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/expand-condsets-def-undef.mir Tue Oct 24 11:04:54 2017
@@ -32,10 +32,9 @@ body: |
%1 = COPY %r0
%2 = COPY %d0
; Check that this instruction is unchanged (remains unpredicated)
- ; CHECK: %3 = A2_addi %2.isub_hi, 1
+ ; CHECK: %3:intregs = A2_addi %2.isub_hi, 1
%3 = A2_addi %2.isub_hi, 1
undef %2.isub_lo = C2_mux %0, %2.isub_lo, %1
%2.isub_hi = C2_muxir %0, %3, 0
...
-
Modified: llvm/trunk/test/CodeGen/Hexagon/expand-condsets-imm.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/expand-condsets-imm.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/expand-condsets-imm.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/expand-condsets-imm.mir Tue Oct 24 11:04:54 2017
@@ -1,6 +1,6 @@
# RUN: llc -march=hexagon -run-pass expand-condsets %s -o - | FileCheck %s
# Check that we can expand a mux with a global as an immediate operand.
-# CHECK: C2_cmoveif undef %0, @G
+# CHECK: C2_cmoveif undef %0:predregs, @G
--- |
@G = global i32 0, align 4
@@ -19,4 +19,3 @@ body: |
%1 = C2_muxir undef %0, %1, @G
%r0 = COPY %1
...
-
Modified: llvm/trunk/test/CodeGen/Hexagon/expand-condsets-impuse.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/expand-condsets-impuse.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/expand-condsets-impuse.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/expand-condsets-impuse.mir Tue Oct 24 11:04:54 2017
@@ -53,7 +53,7 @@ body: |
%7 = L2_loadrb_io %99, 12
%8 = C2_cmpeqi %7, 9
%9 = A2_tfrsi -999
- ; CHECK: %10 = C2_cmoveit killed %8, -999, implicit %10
+ ; CHECK: %10:intregs = C2_cmoveit killed %8, -999, implicit %10
%10 = C2_mux %8, %9, %1
J2_jumpr %10, implicit-def %pc
Modified: llvm/trunk/test/CodeGen/Hexagon/expand-condsets-rm-reg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/expand-condsets-rm-reg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/expand-condsets-rm-reg.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/expand-condsets-rm-reg.mir Tue Oct 24 11:04:54 2017
@@ -39,8 +39,8 @@ body: |
%1 = COPY %r1
%2 = COPY %p0
; Check that %3 was coalesced into %4.
- ; CHECK: %4 = A2_abs %1
- ; CHECK: %4 = A2_tfrt killed %2, killed %0, implicit %4
+ ; CHECK: %4:intregs = A2_abs %1
+ ; CHECK: %4:intregs = A2_tfrt killed %2, killed %0, implicit %4
%3 = A2_abs %1
%4 = C2_mux %2, %0, %3
%r0 = COPY %4
Modified: llvm/trunk/test/CodeGen/Hexagon/hwloop-redef-imm.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/hwloop-redef-imm.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/hwloop-redef-imm.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/hwloop-redef-imm.mir Tue Oct 24 11:04:54 2017
@@ -7,7 +7,7 @@
# possible and legal (since the immediate itself will be used in the
# loop setup in the preheader).
-# CHECK: [[R0:%[0-9]+]] = A2_tfrsi 1920
+# CHECK: [[R0:%[0-9]+]]:intregs = A2_tfrsi 1920
# CHECK: J2_loop0r %bb.1.b1, [[R0]]
#
# CHECK: bb.1.b1 (address-taken):
Modified: llvm/trunk/test/CodeGen/Hexagon/regalloc-liveout-undef.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/regalloc-liveout-undef.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/regalloc-liveout-undef.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/regalloc-liveout-undef.mir Tue Oct 24 11:04:54 2017
@@ -6,7 +6,7 @@
# cover live intervals as well.
#
# Make sure that this compiles successfully.
-# CHECK: undef %1.isub_lo = A2_addi %1.isub_lo, 1
+# CHECK: undef %1.isub_lo:doubleregs = A2_addi %1.isub_lo, 1
---
name: fred
@@ -32,4 +32,3 @@ body: |
undef %1.isub_lo = A2_addi %1.isub_lo, 1
J2_jump %bb.1, implicit-def %pc
...
-
Modified: llvm/trunk/test/CodeGen/Hexagon/unreachable-mbb-phi-subreg.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/unreachable-mbb-phi-subreg.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Hexagon/unreachable-mbb-phi-subreg.mir (original)
+++ llvm/trunk/test/CodeGen/Hexagon/unreachable-mbb-phi-subreg.mir Tue Oct 24 11:04:54 2017
@@ -17,9 +17,8 @@ body: |
bb.2:
; Make sure that the subregister from the PHI operand is preserved.
- ; CHECK: %[[REG:[0-9]+]] = COPY %0.isub_lo
+ ; CHECK: %[[REG:[0-9]+]]:intregs = COPY %0.isub_lo
; CHECK: %r0 = COPY %[[REG]]
%1 : intregs = PHI %0.isub_lo, %bb.0, %0.isub_hi, %bb.1
%r0 = COPY %1
...
-
Modified: llvm/trunk/test/CodeGen/Lanai/peephole-compare.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Lanai/peephole-compare.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/Lanai/peephole-compare.mir (original)
+++ llvm/trunk/test/CodeGen/Lanai/peephole-compare.mir Tue Oct 24 11:04:54 2017
@@ -11,23 +11,23 @@
# been sub.f %r3, 0, %r0 then it would have matched.
# CHECK-LABEL: name: test1a
-# CHECK: [[IN1:%.*]] = COPY %r7
-# CHECK: [[IN2:%.*]] = COPY %r6
+# CHECK: [[IN1:%.*]]:gpr = COPY %r7
+# CHECK: [[IN2:%.*]]:gpr = COPY %r6
# CHECK: SUB_F_R [[IN1]], [[IN2]], 0, implicit-def %sr
# CHECK-LABEL: name: test1b
-# CHECK: [[IN1:%.*]] = COPY %r7
-# CHECK: [[IN2:%.*]] = COPY %r6
+# CHECK: [[IN1:%.*]]:gpr = COPY %r7
+# CHECK: [[IN2:%.*]]:gpr = COPY %r6
# CHECK: SUB_F_R [[IN1]], [[IN2]], 0, implicit-def %sr
# CHECK-LABEL: name: test2a
-# CHECK: [[IN1:%.*]] = COPY %r7
-# CHECK: [[IN2:%.*]] = COPY %r6
+# CHECK: [[IN1:%.*]]:gpr = COPY %r7
+# CHECK: [[IN2:%.*]]:gpr = COPY %r6
# CHECK: SUB_F_R [[IN1]], [[IN2]], 0, implicit-def %sr
# CHECK-LABEL: name: test2b
-# CHECK: [[IN1:%.*]] = COPY %r7
-# CHECK: [[IN2:%.*]] = COPY %r6
+# CHECK: [[IN1:%.*]]:gpr = COPY %r7
+# CHECK: [[IN2:%.*]]:gpr = COPY %r6
# CHECK: SUB_F_R [[IN1]], [[IN2]], 0, implicit-def %sr
# CHECK-LABEL: name: test3
@@ -38,10 +38,10 @@
--- |
target datalayout = "E-m:e-p:32:32-i64:64-a:0:32-n32-S64"
target triple = "lanai-unknown-unknown"
-
+
@a = global i32 -1, align 4
@b = global i32 0, align 4
-
+
define i32 @test0a(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -49,14 +49,14 @@
%cond = select i1 %cmp, i32 %c, i32 %sub
ret i32 %cond
}
-
+
define i32 @test0b(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%cmp = icmp eq i32 %b, %a
%cond = select i1 %cmp, i32 %c, i32 %b
ret i32 %cond
}
-
+
define i32 @test1a(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -64,7 +64,7 @@
%cond = select i1 %cmp, i32 %c, i32 %d
ret i32 %cond
}
-
+
define i32 @test1b(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -72,7 +72,7 @@
%cond = select i1 %cmp, i32 %c, i32 %d
ret i32 %cond
}
-
+
define i32 @test2a(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -80,7 +80,7 @@
%cond = select i1 %cmp, i32 %c, i32 %d
ret i32 %cond
}
-
+
define i32 @test2b(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -88,7 +88,7 @@
%cond = select i1 %cmp, i32 %c, i32 %d
ret i32 %cond
}
-
+
define i32 @test3(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%sub = sub i32 %b, %a
@@ -96,38 +96,38 @@
%cond = select i1 %cmp, i32 %c, i32 %d
ret i32 %cond
}
-
+
define i32 @test4(i32 inreg %a, i32 inreg %b, i32 inreg %c, i32 inreg %d) {
entry:
%cmp = icmp ne i32 %a, 0
%cmp1 = icmp ult i32 %a, %b
%or.cond = and i1 %cmp, %cmp1
br i1 %or.cond, label %return, label %if.end
-
+
if.end: ; preds = %entry
%cmp2 = icmp ne i32 %b, 0
%cmp4 = icmp ult i32 %b, %c
%or.cond29 = and i1 %cmp2, %cmp4
br i1 %or.cond29, label %return, label %if.end6
-
+
if.end6: ; preds = %if.end
%cmp7 = icmp ne i32 %c, 0
%cmp9 = icmp ult i32 %c, %d
%or.cond30 = and i1 %cmp7, %cmp9
br i1 %or.cond30, label %return, label %if.end11
-
+
if.end11: ; preds = %if.end6
%cmp12 = icmp ne i32 %d, 0
%cmp14 = icmp ult i32 %d, %a
%or.cond31 = and i1 %cmp12, %cmp14
%b. = select i1 %or.cond31, i32 %b, i32 21
ret i32 %b.
-
+
return: ; preds = %if.end6, %if.end, %entry
%retval.0 = phi i32 [ %c, %entry ], [ %d, %if.end ], [ %a, %if.end6 ]
ret i32 %retval.0
}
-
+
define void @testBB() {
entry:
%0 = load i32, i32* @a, align 4, !tbaa !0
@@ -135,36 +135,36 @@
%sub.i = sub i32 %1, %0
%tobool = icmp sgt i32 %sub.i, -1
br i1 %tobool, label %if.end, label %if.then
-
+
if.then: ; preds = %entry
%call1 = tail call i32 bitcast (i32 (...)* @g to i32 ()*)()
br label %while.body
-
+
while.body: ; preds = %while.body, %if.then
br label %while.body
-
+
if.end: ; preds = %entry
%cmp.i = icmp slt i32 %sub.i, 1
br i1 %cmp.i, label %if.then4, label %if.end7
-
+
if.then4: ; preds = %if.end
%call5 = tail call i32 bitcast (i32 (...)* @g to i32 ()*)()
br label %while.body6
-
+
while.body6: ; preds = %while.body6, %if.then4
br label %while.body6
-
+
if.end7: ; preds = %if.end
ret void
}
-
+
declare i32 @g(...)
-
+
; Function Attrs: nounwind
declare void @llvm.stackprotector(i8*, i8**) #0
-
+
attributes #0 = { nounwind }
-
+
!0 = !{!1, !1, i64 0}
!1 = !{!"int", !2, i64 0}
!2 = !{!"omnipotent char", !3, i64 0}
@@ -176,18 +176,18 @@ name: test0a
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -204,7 +204,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18
-
+
%2 = COPY %r18
%1 = COPY %r7
%0 = COPY %r6
@@ -220,17 +220,17 @@ name: test0b
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -247,7 +247,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18
-
+
%2 = COPY %r18
%1 = COPY %r7
%0 = COPY %r6
@@ -262,19 +262,19 @@ name: test1a
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
- { reg: '%r19', virtual-reg: '%3' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -291,7 +291,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18, %r19
-
+
%3 = COPY %r19
%2 = COPY %r18
%1 = COPY %r7
@@ -308,19 +308,19 @@ name: test1b
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
- { reg: '%r19', virtual-reg: '%3' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -337,7 +337,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18, %r19
-
+
%3 = COPY %r19
%2 = COPY %r18
%1 = COPY %r7
@@ -354,19 +354,19 @@ name: test2a
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
- { reg: '%r19', virtual-reg: '%3' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -383,7 +383,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18, %r19
-
+
%3 = COPY %r19
%2 = COPY %r18
%1 = COPY %r7
@@ -400,19 +400,19 @@ name: test2b
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
- { reg: '%r19', virtual-reg: '%3' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -429,7 +429,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18, %r19
-
+
%3 = COPY %r19
%2 = COPY %r18
%1 = COPY %r7
@@ -446,19 +446,19 @@ name: test3
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
- { id: 3, class: gpr }
- { id: 4, class: gpr }
- { id: 5, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%0' }
- { reg: '%r7', virtual-reg: '%1' }
- { reg: '%r18', virtual-reg: '%2' }
- { reg: '%r19', virtual-reg: '%3' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -475,7 +475,7 @@ frameInfo:
body: |
bb.0.entry:
liveins: %r6, %r7, %r18, %r19
-
+
%3 = COPY %r19
%2 = COPY %r18
%1 = COPY %r7
@@ -492,7 +492,7 @@ name: test4
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
@@ -516,12 +516,12 @@ registers:
- { id: 20, class: gpr }
- { id: 21, class: gpr }
- { id: 22, class: gpr }
-liveins:
+liveins:
- { reg: '%r6', virtual-reg: '%1' }
- { reg: '%r7', virtual-reg: '%2' }
- { reg: '%r18', virtual-reg: '%3' }
- { reg: '%r19', virtual-reg: '%4' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -539,7 +539,7 @@ body: |
bb.0.entry:
successors: %bb.4.return, %bb.1.if.end
liveins: %r6, %r7, %r18, %r19
-
+
%4 = COPY %r19
%3 = COPY %r18
%2 = COPY %r7
@@ -554,10 +554,10 @@ body: |
SFSUB_F_RI_LO killed %9, 0, implicit-def %sr
BRCC %bb.4.return, 6, implicit %sr
BT %bb.1.if.end
-
+
bb.1.if.end:
successors: %bb.4.return, %bb.2.if.end6
-
+
SFSUB_F_RI_LO %2, 0, implicit-def %sr
%10 = SCC 6, implicit %sr
SFSUB_F_RR %2, %3, implicit-def %sr
@@ -567,10 +567,10 @@ body: |
SFSUB_F_RI_LO killed %14, 0, implicit-def %sr
BRCC %bb.4.return, 6, implicit %sr
BT %bb.2.if.end6
-
+
bb.2.if.end6:
successors: %bb.4.return, %bb.3.if.end11
-
+
SFSUB_F_RI_LO %3, 0, implicit-def %sr
%15 = SCC 6, implicit %sr
SFSUB_F_RR %3, %4, implicit-def %sr
@@ -581,7 +581,7 @@ body: |
SFSUB_F_RI_LO killed %19, 0, implicit-def %sr
BRCC %bb.4.return, 6, implicit %sr
BT %bb.3.if.end11
-
+
bb.3.if.end11:
%20 = SLI 21
SFSUB_F_RR %4, %1, implicit-def %sr
@@ -590,7 +590,7 @@ body: |
%22 = SELECT killed %21, %20, 6, implicit %sr
%rv = COPY %22
RET implicit %rca, implicit %rv
-
+
bb.4.return:
%0 = PHI %3, %bb.0.entry, %4, %bb.1.if.end, %1, %bb.2.if.end6
%rv = COPY %0
@@ -602,7 +602,7 @@ name: testBB
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
@@ -612,7 +612,7 @@ registers:
- { id: 6, class: gpr }
- { id: 7, class: gpr }
- { id: 8, class: gpr }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -629,7 +629,7 @@ frameInfo:
body: |
bb.0.entry:
successors: %bb.3.if.end, %bb.1.if.then
-
+
%1 = MOVHI target-flags(lanai-hi) @a
%2 = OR_I_LO killed %1, target-flags(lanai-lo) @a
%3 = LDW_RI killed %2, 0, 0 :: (load 4 from @a, !tbaa !0)
@@ -640,38 +640,38 @@ body: |
SFSUB_F_RI_LO %0, 0, implicit-def %sr
BRCC %bb.3.if.end, 10, implicit %sr
BT %bb.1.if.then
-
+
bb.1.if.then:
successors: %bb.2.while.body
-
+
ADJCALLSTACKDOWN 0, 0, implicit-def dead %sp, implicit %sp
CALL @g, csr, implicit-def dead %rca, implicit %sp, implicit-def %sp, implicit-def %rv
ADJCALLSTACKUP 0, 0, implicit-def dead %sp, implicit %sp
-
+
bb.2.while.body:
successors: %bb.2.while.body
-
+
BT %bb.2.while.body
-
+
bb.3.if.end:
successors: %bb.4.if.then4, %bb.6.if.end7
liveins: %sr
-
+
BRCC %bb.6.if.end7, 14, implicit %sr
BT %bb.4.if.then4
-
+
bb.4.if.then4:
successors: %bb.5.while.body6
-
+
ADJCALLSTACKDOWN 0, 0, implicit-def dead %sp, implicit %sp
CALL @g, csr, implicit-def dead %rca, implicit %sp, implicit-def %sp, implicit-def %rv
ADJCALLSTACKUP 0, 0, implicit-def dead %sp, implicit %sp
-
+
bb.5.while.body6:
successors: %bb.5.while.body6
-
+
BT %bb.5.while.body6
-
+
bb.6.if.end7:
RET implicit %rca
Modified: llvm/trunk/test/CodeGen/MIR/AArch64/atomic-memoperands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AArch64/atomic-memoperands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AArch64/atomic-memoperands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AArch64/atomic-memoperands.mir Tue Oct 24 11:04:54 2017
@@ -14,10 +14,10 @@ body: |
bb.0:
; CHECK-LABEL: name: atomic_memoperands
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[LOAD:%[0-9]+]](s64) = G_LOAD [[COPY]](p0) :: (load unordered 8)
- ; CHECK: [[LOAD1:%[0-9]+]](s32) = G_LOAD [[COPY]](p0) :: (load monotonic 4)
- ; CHECK: [[LOAD2:%[0-9]+]](s16) = G_LOAD [[COPY]](p0) :: (load acquire 2)
+ ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY %x0
+ ; CHECK: [[LOAD:%[0-9]+]]:_(s64) = G_LOAD [[COPY]](p0) :: (load unordered 8)
+ ; CHECK: [[LOAD1:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load monotonic 4)
+ ; CHECK: [[LOAD2:%[0-9]+]]:_(s16) = G_LOAD [[COPY]](p0) :: (load acquire 2)
; CHECK: G_STORE [[LOAD2]](s16), [[COPY]](p0) :: (store release 2)
; CHECK: G_STORE [[LOAD1]](s32), [[COPY]](p0) :: (store acq_rel 4)
; CHECK: G_STORE [[LOAD]](s64), [[COPY]](p0) :: (store syncscope("singlethread") seq_cst 8)
Modified: llvm/trunk/test/CodeGen/MIR/AArch64/spill-fold.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AArch64/spill-fold.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AArch64/spill-fold.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AArch64/spill-fold.mir Tue Oct 24 11:04:54 2017
@@ -59,7 +59,7 @@ body: |
bb.0:
%0 = COPY %wzr
INLINEASM $nop, 1, 12, implicit-def dead %x0, 12, implicit-def dead %x1, 12, implicit-def dead %x2, 12, implicit-def dead %x3, 12, implicit-def dead %x4, 12, implicit-def dead %x5, 12, implicit-def dead %x6, 12, implicit-def dead %x7, 12, implicit-def dead %x8, 12, implicit-def dead %x9, 12, implicit-def dead %x10, 12, implicit-def dead %x11, 12, implicit-def dead %x12, 12, implicit-def dead %x13, 12, implicit-def dead %x14, 12, implicit-def dead %x15, 12, implicit-def dead %x16, 12, implicit-def dead %x17, 12, implicit-def dead %x18, 12, implicit-def dead %x19, 12, implicit-def dead %x20, 12, implicit-def dead %x21, 12, implicit-def dead %x22, 12, implicit-def dead %x23, 12, implicit-def dead %x24, 12, implicit-def dead %x25, 12, implicit-def dead %x26, 12, implicit-def dead %x27, 12, implicit-def dead %x28, 12, implicit-def dead %fp, 12, implicit-def dead %lr, 12, implicit-def %sp
- ; CHECK: undef %1.sub_32 = LDRWui %stack.0, 0 :: (load 4 from %stack.0)
+ ; CHECK: undef %1.sub_32:gpr64 = LDRWui %stack.0, 0 :: (load 4 from %stack.0)
undef %1.sub_32 = COPY %0
%x0 = COPY %1
RET_ReallyLR implicit %x0
@@ -75,7 +75,7 @@ body: |
bb.0:
%0 = COPY %wzr
INLINEASM $nop, 1, 12, implicit-def dead %x0, 12, implicit-def dead %x1, 12, implicit-def dead %x2, 12, implicit-def dead %x3, 12, implicit-def dead %x4, 12, implicit-def dead %x5, 12, implicit-def dead %x6, 12, implicit-def dead %x7, 12, implicit-def dead %x8, 12, implicit-def dead %x9, 12, implicit-def dead %x10, 12, implicit-def dead %x11, 12, implicit-def dead %x12, 12, implicit-def dead %x13, 12, implicit-def dead %x14, 12, implicit-def dead %x15, 12, implicit-def dead %x16, 12, implicit-def dead %x17, 12, implicit-def dead %x18, 12, implicit-def dead %x19, 12, implicit-def dead %x20, 12, implicit-def dead %x21, 12, implicit-def dead %x22, 12, implicit-def dead %x23, 12, implicit-def dead %x24, 12, implicit-def dead %x25, 12, implicit-def dead %x26, 12, implicit-def dead %x27, 12, implicit-def dead %x28, 12, implicit-def dead %fp, 12, implicit-def dead %lr, 12, implicit-def %sp
- ; CHECK: undef %1.ssub = LDRSui %stack.0, 0 :: (load 4 from %stack.0)
+ ; CHECK: undef %1.ssub:fpr64 = LDRSui %stack.0, 0 :: (load 4 from %stack.0)
undef %1.ssub = COPY %0
%d0 = COPY %1
RET_ReallyLR implicit %d0
Modified: llvm/trunk/test/CodeGen/MIR/AArch64/target-memoperands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AArch64/target-memoperands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AArch64/target-memoperands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AArch64/target-memoperands.mir Tue Oct 24 11:04:54 2017
@@ -14,9 +14,9 @@ body: |
bb.0:
; CHECK-LABEL: name: target_memoperands
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %x0
- ; CHECK: [[LOAD:%[0-9]+]](s64) = G_LOAD [[COPY]](p0) :: ("aarch64-suppress-pair" load 8)
- ; CHECK: [[LOAD1:%[0-9]+]](s32) = G_LOAD [[COPY]](p0) :: ("aarch64-strided-access" load 4)
+ ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY %x0
+ ; CHECK: [[LOAD:%[0-9]+]]:_(s64) = G_LOAD [[COPY]](p0) :: ("aarch64-suppress-pair" load 8)
+ ; CHECK: [[LOAD1:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: ("aarch64-strided-access" load 4)
; CHECK: G_STORE [[LOAD]](s64), [[COPY]](p0) :: ("aarch64-suppress-pair" store 8)
; CHECK: G_STORE [[LOAD1]](s32), [[COPY]](p0) :: ("aarch64-strided-access" store 4)
; CHECK: RET_ReallyLR
Modified: llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-imm-f16-f32.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-imm-f16-f32.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-imm-f16-f32.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-imm-f16-f32.mir Tue Oct 24 11:04:54 2017
@@ -111,7 +111,7 @@
# literal constant.
# CHECK-LABEL: name: add_f32_1.0_one_f16_use
-# CHECK: %13 = V_ADD_F16_e32 1065353216, killed %11, implicit %exec
+# CHECK: %13:vgpr_32 = V_ADD_F16_e32 1065353216, killed %11, implicit %exec
name: add_f32_1.0_one_f16_use
alignment: 0
@@ -170,9 +170,9 @@ body: |
# operands
# CHECK-LABEL: name: add_f32_1.0_multi_f16_use
-# CHECK: %13 = V_MOV_B32_e32 1065353216, implicit %exec
-# CHECK: %14 = V_ADD_F16_e32 killed %11, %13, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 killed %12, killed %13, implicit %exec
+# CHECK: %13:vgpr_32 = V_MOV_B32_e32 1065353216, implicit %exec
+# CHECK: %14:vgpr_32 = V_ADD_F16_e32 killed %11, %13, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 killed %12, killed %13, implicit %exec
name: add_f32_1.0_multi_f16_use
@@ -238,8 +238,8 @@ body: |
# immediate, and folded into the single f16 use as a literal constant
# CHECK-LABEL: name: add_f32_1.0_one_f32_use_one_f16_use
-# CHECK: %15 = V_ADD_F16_e32 1065353216, %11, implicit %exec
-# CHECK: %16 = V_ADD_F32_e32 1065353216, killed %13, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 1065353216, %11, implicit %exec
+# CHECK: %16:vgpr_32 = V_ADD_F32_e32 1065353216, killed %13, implicit %exec
name: add_f32_1.0_one_f32_use_one_f16_use
alignment: 0
@@ -306,10 +306,10 @@ body: |
# constant, and not folded as a multi-use literal for the f16 cases
# CHECK-LABEL: name: add_f32_1.0_one_f32_use_multi_f16_use
-# CHECK: %14 = V_MOV_B32_e32 1065353216, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 %11, %14, implicit %exec
-# CHECK: %16 = V_ADD_F16_e32 %12, %14, implicit %exec
-# CHECK: %17 = V_ADD_F32_e32 1065353216, killed %13, implicit %exec
+# CHECK: %14:vgpr_32 = V_MOV_B32_e32 1065353216, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 %11, %14, implicit %exec
+# CHECK: %16:vgpr_32 = V_ADD_F16_e32 %12, %14, implicit %exec
+# CHECK: %17:vgpr_32 = V_ADD_F32_e32 1065353216, killed %13, implicit %exec
name: add_f32_1.0_one_f32_use_multi_f16_use
alignment: 0
@@ -375,9 +375,9 @@ body: |
...
---
# CHECK-LABEL: name: add_i32_1_multi_f16_use
-# CHECK: %13 = V_MOV_B32_e32 1, implicit %exec
-# CHECK: %14 = V_ADD_F16_e32 1, killed %11, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 1, killed %12, implicit %exec
+# CHECK: %13:vgpr_32 = V_MOV_B32_e32 1, implicit %exec
+# CHECK: %14:vgpr_32 = V_ADD_F16_e32 1, killed %11, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 1, killed %12, implicit %exec
name: add_i32_1_multi_f16_use
@@ -440,10 +440,10 @@ body: |
---
# CHECK-LABEL: name: add_i32_m2_one_f32_use_multi_f16_use
-# CHECK: %14 = V_MOV_B32_e32 -2, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 -2, %11, implicit %exec
-# CHECK: %16 = V_ADD_F16_e32 -2, %12, implicit %exec
-# CHECK: %17 = V_ADD_F32_e32 -2, killed %13, implicit %exec
+# CHECK: %14:vgpr_32 = V_MOV_B32_e32 -2, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 -2, %11, implicit %exec
+# CHECK: %16:vgpr_32 = V_ADD_F16_e32 -2, %12, implicit %exec
+# CHECK: %17:vgpr_32 = V_ADD_F32_e32 -2, killed %13, implicit %exec
name: add_i32_m2_one_f32_use_multi_f16_use
alignment: 0
@@ -513,9 +513,9 @@ body: |
# constant, and not folded as a multi-use literal for the f16 cases
# CHECK-LABEL: name: add_f16_1.0_multi_f32_use
-# CHECK: %13 = V_MOV_B32_e32 15360, implicit %exec
-# CHECK: %14 = V_ADD_F32_e32 %11, %13, implicit %exec
-# CHECK: %15 = V_ADD_F32_e32 %12, %13, implicit %exec
+# CHECK: %13:vgpr_32 = V_MOV_B32_e32 15360, implicit %exec
+# CHECK: %14:vgpr_32 = V_ADD_F32_e32 %11, %13, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F32_e32 %12, %13, implicit %exec
name: add_f16_1.0_multi_f32_use
alignment: 0
@@ -580,9 +580,9 @@ body: |
# FIXME: Should be able to fold this
# CHECK-LABEL: name: add_f16_1.0_other_high_bits_multi_f16_use
-# CHECK: %13 = V_MOV_B32_e32 80886784, implicit %exec
-# CHECK: %14 = V_ADD_F16_e32 %11, %13, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 %12, %13, implicit %exec
+# CHECK: %13:vgpr_32 = V_MOV_B32_e32 80886784, implicit %exec
+# CHECK: %14:vgpr_32 = V_ADD_F16_e32 %11, %13, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 %12, %13, implicit %exec
name: add_f16_1.0_other_high_bits_multi_f16_use
alignment: 0
@@ -647,9 +647,9 @@ body: |
# f32 instruction.
# CHECK-LABEL: name: add_f16_1.0_other_high_bits_use_f16_f32
-# CHECK: %13 = V_MOV_B32_e32 305413120, implicit %exec
-# CHECK: %14 = V_ADD_F32_e32 %11, %13, implicit %exec
-# CHECK: %15 = V_ADD_F16_e32 %12, %13, implicit %exec
+# CHECK: %13:vgpr_32 = V_MOV_B32_e32 305413120, implicit %exec
+# CHECK: %14:vgpr_32 = V_ADD_F32_e32 %11, %13, implicit %exec
+# CHECK: %15:vgpr_32 = V_ADD_F16_e32 %12, %13, implicit %exec
name: add_f16_1.0_other_high_bits_use_f16_f32
alignment: 0
exposesReturnsTwice: false
Modified: llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-multiple.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-multiple.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-multiple.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AMDGPU/fold-multiple.mir Tue Oct 24 11:04:54 2017
@@ -14,8 +14,8 @@
# being processed twice.
# CHECK-LABEL: name: test
-# CHECK: %2 = V_LSHLREV_B32_e32 2, killed %0, implicit %exec
-# CHECK: %4 = V_AND_B32_e32 8, killed %2, implicit %exec
+# CHECK: %2:vgpr_32 = V_LSHLREV_B32_e32 2, killed %0, implicit %exec
+# CHECK: %4:vgpr_32 = V_AND_B32_e32 8, killed %2, implicit %exec
name: test
tracksRegLiveness: true
Modified: llvm/trunk/test/CodeGen/MIR/AMDGPU/intrinsics.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AMDGPU/intrinsics.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AMDGPU/intrinsics.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AMDGPU/intrinsics.mir Tue Oct 24 11:04:54 2017
@@ -16,6 +16,6 @@ registers:
body: |
bb.0:
; CHECK-LABEL: name: use_intrin
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY intrinsic(@llvm.amdgcn.sbfe)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY intrinsic(@llvm.amdgcn.sbfe)
%0(s64) = COPY intrinsic(@llvm.amdgcn.sbfe.i32)
...
Modified: llvm/trunk/test/CodeGen/MIR/AMDGPU/target-flags.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/AMDGPU/target-flags.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/AMDGPU/target-flags.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/AMDGPU/target-flags.mir Tue Oct 24 11:04:54 2017
@@ -22,8 +22,8 @@ body: |
bb.0:
liveins: %sgpr0_sgpr1
; CHECK-LABEL: name: flags
- ; CHECK: [[SI_PC_ADD_REL_OFFSET:%[0-9]+]] = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-rel32-lo) @foo + 4, target-flags(amdgpu-rel32-hi) @foo + 4, implicit-def dead %scc
- ; CHECK: [[S_MOV_B64_:%[0-9]+]] = S_MOV_B64 target-flags(amdgpu-gotprel) @foo
+ ; CHECK: [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-rel32-lo) @foo + 4, target-flags(amdgpu-rel32-hi) @foo + 4, implicit-def dead %scc
+ ; CHECK: [[S_MOV_B64_:%[0-9]+]]:sreg_64 = S_MOV_B64 target-flags(amdgpu-gotprel) @foo
; CHECK: S_ENDPGM
%0 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-rel32-lo) @foo + 4, target-flags(amdgpu-rel32-hi) @foo + 4, implicit-def dead %scc
%1 = S_MOV_B64 target-flags(amdgpu-gotprel) @foo
Modified: llvm/trunk/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/NVPTX/floating-point-immediate-operands.mir Tue Oct 24 11:04:54 2017
@@ -43,11 +43,11 @@ body: |
%0 = LD_f32_avar 0, 4, 1, 2, 32, $test_param_0
%1 = CVT_f64_f32 %0, 0
%2 = LD_i32_avar 0, 4, 1, 0, 32, $test_param_1
- ; CHECK: %3 = FADD_rnf64ri %1, double 3.250000e+00
+ ; CHECK: %3:float64regs = FADD_rnf64ri %1, double 3.250000e+00
%3 = FADD_rnf64ri %1, double 3.250000e+00
%4 = CVT_f32_f64 %3, 5
%5 = CVT_f32_s32 %2, 5
- ; CHECK: %6 = FADD_rnf32ri %5, float 6.250000e+00
+ ; CHECK: %6:float32regs = FADD_rnf32ri %5, float 6.250000e+00
%6 = FADD_rnf32ri %5, float 6.250000e+00
%7 = FMUL_rnf32rr %6, %4
StoreRetvalF32 %7, 0
@@ -69,11 +69,11 @@ body: |
%0 = LD_f32_avar 0, 4, 1, 2, 32, $test2_param_0
%1 = CVT_f64_f32 %0, 0
%2 = LD_i32_avar 0, 4, 1, 0, 32, $test2_param_1
- ; CHECK: %3 = FADD_rnf64ri %1, double 0x7FF8000000000000
+ ; CHECK: %3:float64regs = FADD_rnf64ri %1, double 0x7FF8000000000000
%3 = FADD_rnf64ri %1, double 0x7FF8000000000000
%4 = CVT_f32_f64 %3, 5
%5 = CVT_f32_s32 %2, 5
- ; CHECK: %6 = FADD_rnf32ri %5, float 0x7FF8000000000000
+ ; CHECK: %6:float32regs = FADD_rnf32ri %5, float 0x7FF8000000000000
%6 = FADD_rnf32ri %5, float 0x7FF8000000000000
%7 = FMUL_rnf32rr %6, %4
StoreRetvalF32 %7, 0
Modified: llvm/trunk/test/CodeGen/MIR/X86/generic-instr-type.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/generic-instr-type.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/generic-instr-type.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/generic-instr-type.mir Tue Oct 24 11:04:54 2017
@@ -37,18 +37,18 @@ registers:
body: |
bb.0:
liveins: %edi, %xmm0
- ; CHECK: %1(s32) = G_ADD %0
+ ; CHECK: %1:_(s32) = G_ADD %0
%0(s32) = COPY %edi
%6(<2 x s32>) = COPY %xmm0
%7(s64) = COPY %rdi
%1(s32) = G_ADD %0, %0
- ; CHECK: %2(<2 x s32>) = G_ADD %6, %6
+ ; CHECK: %2:_(<2 x s32>) = G_ADD %6, %6
%2(<2 x s32>) = G_ADD %6, %6
- ; CHECK: %3(s64) = G_ADD %7, %7
+ ; CHECK: %3:_(s64) = G_ADD %7, %7
%3(s64) = G_ADD %7, %7
- ; CHECK: %5(s48) = G_ADD %8, %8
+ ; CHECK: %5:_(s48) = G_ADD %8, %8
%8(s48) = G_TRUNC %7
%5(s48) = G_ADD %8, %8
...
Modified: llvm/trunk/test/CodeGen/MIR/X86/metadata-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/metadata-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/metadata-operands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/metadata-operands.mir Tue Oct 24 11:04:54 2017
@@ -50,7 +50,7 @@ stack:
body: |
bb.0.entry:
liveins: %edi
- ; CHECK: %0 = COPY %edi
+ ; CHECK: %0:gr32 = COPY %edi
; CHECK-NEXT: DBG_VALUE _, 0, !11, !DIExpression()
%0 = COPY %edi
DBG_VALUE _, 0, !12, !DIExpression()
Modified: llvm/trunk/test/CodeGen/MIR/X86/roundtrip.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/roundtrip.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/roundtrip.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/roundtrip.mir Tue Oct 24 11:04:54 2017
@@ -6,8 +6,8 @@
# CHECK: - { id: 1, class: gr32, preferred-register: '' }
# CHECK: body: |
# CHECK: bb.0:
-# CHECK: %0 = MOV32r0 implicit-def %eflags
-# CHECK: dead %1 = COPY %0
+# CHECK: %0:gr32 = MOV32r0 implicit-def %eflags
+# CHECK: dead %1:gr32 = COPY %0
# CHECK: MOV32mr undef %rcx, 1, _, 0, _, killed %0 :: (volatile store 4)
# CHECK: RETQ undef %eax
name: func0
Modified: llvm/trunk/test/CodeGen/MIR/X86/stack-object-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/stack-object-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/stack-object-operands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/stack-object-operands.mir Tue Oct 24 11:04:54 2017
@@ -32,10 +32,10 @@ stack:
body: |
bb.0.entry:
; CHECK-LABEL: name: test
- ; CHECK: [[MOV32rm:%[0-9]+]] = MOV32rm %fixed-stack.0, 1, _, 0, _
+ ; CHECK: [[MOV32rm:%[0-9]+]]:gr32 = MOV32rm %fixed-stack.0, 1, _, 0, _
; CHECK: MOV32mr %stack.0.b, 1, _, 0, _, [[MOV32rm]]
; CHECK: MOV32mi %stack.1, 1, _, 0, _, 2
- ; CHECK: [[MOV32rm1:%[0-9]+]] = MOV32rm %stack.0.b, 1, _, 0, _
+ ; CHECK: [[MOV32rm1:%[0-9]+]]:gr32 = MOV32rm %stack.0.b, 1, _, 0, _
; CHECK: %eax = COPY [[MOV32rm1]]
; CHECK: RETL %eax
%0 = MOV32rm %fixed-stack.0, 1, _, 0, _
Modified: llvm/trunk/test/CodeGen/MIR/X86/subregister-index-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/subregister-index-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/subregister-index-operands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/subregister-index-operands.mir Tue Oct 24 11:04:54 2017
@@ -22,8 +22,8 @@ body: |
liveins: %edi, %eax
; CHECK-LABEL: name: t
; CHECK: liveins: %edi, %eax
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]] = INSERT_SUBREG %edi, %al, 1
- ; CHECK: [[EXTRACT_SUBREG:%[0-9]+]] = EXTRACT_SUBREG %eax, 2
+ ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:gr32 = INSERT_SUBREG %edi, %al, 1
+ ; CHECK: [[EXTRACT_SUBREG:%[0-9]+]]:gr8 = EXTRACT_SUBREG %eax, 2
; CHECK: %ax = REG_SEQUENCE [[EXTRACT_SUBREG]], 1, [[EXTRACT_SUBREG]], 2
; CHECK: RETQ %ax
%0 = INSERT_SUBREG %edi, %al, %subreg.sub_8bit
Modified: llvm/trunk/test/CodeGen/MIR/X86/subregister-operands.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/subregister-operands.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/subregister-operands.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/subregister-operands.mir Tue Oct 24 11:04:54 2017
@@ -23,9 +23,9 @@ body: |
liveins: %edi
; CHECK-LABEL: name: t
; CHECK: liveins: %edi
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY [[COPY]].sub_8bit
- ; CHECK: [[AND8ri:%[0-9]+]] = AND8ri [[COPY1]], 1, implicit-def %eflags
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr8 = COPY [[COPY]].sub_8bit
+ ; CHECK: [[AND8ri:%[0-9]+]]:gr8 = AND8ri [[COPY1]], 1, implicit-def %eflags
; CHECK: %al = COPY [[AND8ri]]
; CHECK: RETQ %al
%0 = COPY %edi
Modified: llvm/trunk/test/CodeGen/MIR/X86/unreachable-mbb-undef-phi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/unreachable-mbb-undef-phi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/unreachable-mbb-undef-phi.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/unreachable-mbb-undef-phi.mir Tue Oct 24 11:04:54 2017
@@ -31,8 +31,8 @@ body: |
# CHECK: bb.1:
# CHECK: successors: %bb.2
-# CHECK: [[TMP1:%[0-9]+]] = COPY undef %{{[0-9]+}}
-# CHECK: %{{[0-9]+}} = ADD32ri8 killed [[TMP1]], 1
+# CHECK: [[TMP1:%[0-9]+]]:gr32 = COPY undef %{{[0-9]+}}
+# CHECK: %{{[0-9]+}}:gr32 = ADD32ri8 killed [[TMP1]], 1
# CHECK: JMP_1 %bb.2
# CHECK: bb.2:
Modified: llvm/trunk/test/CodeGen/MIR/X86/virtual-registers.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/MIR/X86/virtual-registers.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/MIR/X86/virtual-registers.mir (original)
+++ llvm/trunk/test/CodeGen/MIR/X86/virtual-registers.mir Tue Oct 24 11:04:54 2017
@@ -44,15 +44,15 @@ body: |
bb.0.entry:
successors: %bb.2.exit, %bb.1.less
liveins: %edi
- ; CHECK: %0 = COPY %edi
- ; CHECK-NEXT: %1 = SUB32ri8 %0, 10
+ ; CHECK: %0:gr32 = COPY %edi
+ ; CHECK-NEXT: %1:gr32 = SUB32ri8 %0, 10
%0 = COPY %edi
%1 = SUB32ri8 %0, 10, implicit-def %eflags
JG_1 %bb.2.exit, implicit %eflags
JMP_1 %bb.1.less
bb.1.less:
- ; CHECK: %2 = MOV32r0
+ ; CHECK: %2:gr32 = MOV32r0
; CHECK-NEXT: %eax = COPY %2
%2 = MOV32r0 implicit-def %eflags
%eax = COPY %2
@@ -78,15 +78,15 @@ body: |
bb.0.entry:
successors: %bb.2.exit, %bb.1.less
liveins: %edi
- ; CHECK: %0 = COPY %edi
- ; CHECK-NEXT: %1 = SUB32ri8 %0, 10
+ ; CHECK: %0:gr32 = COPY %edi
+ ; CHECK-NEXT: %1:gr32 = SUB32ri8 %0, 10
%2 = COPY %edi
%0 = SUB32ri8 %2, 10, implicit-def %eflags
JG_1 %bb.2.exit, implicit %eflags
JMP_1 %bb.1.less
bb.1.less:
- ; CHECK: %2 = MOV32r0
+ ; CHECK: %2:gr32 = MOV32r0
; CHECK-NEXT: %eax = COPY %2
%10 = MOV32r0 implicit-def %eflags
%eax = COPY %10
Modified: llvm/trunk/test/CodeGen/PowerPC/debuginfo-split-int.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/debuginfo-split-int.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/PowerPC/debuginfo-split-int.ll (original)
+++ llvm/trunk/test/CodeGen/PowerPC/debuginfo-split-int.ll Tue Oct 24 11:04:54 2017
@@ -26,9 +26,9 @@ target triple = "ppc32"
; CHECK: [[DL:![0-9]+]] = !DILocalVariable(name: "result"
;
; High 32 bits in R3, low 32 bits in R4
-; CHECK: %0 = COPY %r3
+; CHECK: %0:gprc = COPY %r3
; CHECK: DBG_VALUE debug-use %0, debug-use _, [[DL]], !DIExpression(DW_OP_LLVM_fragment, 0, 32)
-; CHECK: %1 = COPY %r4
+; CHECK: %1:gprc = COPY %r4
; CHECK: DBG_VALUE debug-use %1, debug-use _, [[DL]], !DIExpression(DW_OP_LLVM_fragment, 32, 32)
define void @bar() local_unnamed_addr #0 !dbg !6 {
%1 = alloca i64, align 8
Modified: llvm/trunk/test/CodeGen/PowerPC/no-rlwimi-trivial-commute.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/no-rlwimi-trivial-commute.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/PowerPC/no-rlwimi-trivial-commute.mir (original)
+++ llvm/trunk/test/CodeGen/PowerPC/no-rlwimi-trivial-commute.mir Tue Oct 24 11:04:54 2017
@@ -3,11 +3,11 @@
--- |
target datalayout = "E-m:e-i64:64-n32:64"
target triple = "powerpc64-unknown-linux-gnu"
-
+
@d = global i32 15, align 4
@b = global i32* @d, align 8
@a = common global i32 0, align 4
-
+
; Function Attrs: nounwind
define signext i32 @main() #0 {
entry:
@@ -31,7 +31,7 @@
store i32 %or.1, i32* %0, align 4
ret i32 %or.1
}
-
+
attributes #0 = { nounwind "target-cpu"="ppc64" }
...
@@ -40,7 +40,7 @@ name: main
alignment: 2
exposesReturnsTwice: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: g8rc_and_g8rc_nox0 }
- { id: 1, class: g8rc_and_g8rc_nox0 }
- { id: 2, class: gprc }
@@ -52,7 +52,7 @@ registers:
- { id: 8, class: gprc }
- { id: 9, class: gprc }
- { id: 10, class: g8rc }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -76,9 +76,9 @@ body: |
%3 = LI 0
%4 = RLWIMI %3, killed %2, 0, 0, 31
; CHECK-LABEL: name: main
- ; CHECK: %[[REG1:[0-9]+]] = LI 0
- ; CHECK: %[[REG2:[0-9]+]] = COPY %[[REG1]]
- ; CHECK: %[[REG2]] = RLWIMI %[[REG2]], killed %2, 0, 0, 31
+ ; CHECK: %[[REG1:[0-9]+]]:gprc = LI 0
+ ; CHECK: %[[REG2:[0-9]+]]:gprc = COPY %[[REG1]]
+ ; CHECK: %[[REG2]]:gprc = RLWIMI %[[REG2]], killed %2, 0, 0, 31
%8 = RLWIMI %3, %4, 0, 0, 31
STW %4, 0, %1 :: (store 4 into %ir.0)
%10 = EXTSW_32_64 %8
Modified: llvm/trunk/test/CodeGen/PowerPC/tls_get_addr_fence1.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/tls_get_addr_fence1.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/PowerPC/tls_get_addr_fence1.mir (original)
+++ llvm/trunk/test/CodeGen/PowerPC/tls_get_addr_fence1.mir Tue Oct 24 11:04:54 2017
@@ -4,9 +4,9 @@
--- |
target datalayout = "e-m:e-i64:64-n32:64"
target triple = "powerpc64le-unknown-linux-gnu"
-
+
@tls_var = external thread_local local_unnamed_addr global i32
-
+
define i32 @tls_func() local_unnamed_addr {
entry:
%0 = load i32, i32* @tls_var
@@ -22,13 +22,13 @@ legalized: false
regBankSelected: false
selected: false
tracksRegLiveness: true
-registers:
+registers:
- { id: 0, class: g8rc_and_g8rc_nox0, preferred-register: '' }
- { id: 1, class: g8rc_and_g8rc_nox0, preferred-register: '' }
- { id: 2, class: g8rc, preferred-register: '' }
-liveins:
+liveins:
- { reg: '%x2' }
-frameInfo:
+frameInfo:
isFrameAddressTaken: false
isReturnAddressTaken: false
hasStackMap: false
@@ -45,9 +45,9 @@ frameInfo:
hasMustTailInVarArgFunc: false
savePoint: ''
restorePoint: ''
-fixedStack:
-stack:
-constants:
+fixedStack:
+stack:
+constants:
body: |
bb.0.entry:
liveins: %x2
@@ -57,7 +57,7 @@ body: |
%x3 = COPY %2
BLR8 implicit %lr8, implicit %rm, implicit %x3
; CHECK-LABEL: bb.0.entry
- ; CHECK: %[[reg1:[0-9]+]] = ADDIStlsgdHA %x2, @tls_var
+ ; CHECK: %[[reg1:[0-9]+]]:g8rc_and_g8rc_nox0 = ADDIStlsgdHA %x2, @tls_var
; CHECK: ADJCALLSTACKDOWN 0, 0
; CHECK: %x3 = ADDItlsgdL %[[reg1]], @tls_var
; CHECK: %x3 = GETtlsADDR %x3, @tls_var
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll Tue Oct 24 11:04:54 2017
@@ -18,22 +18,22 @@ define i8 @test_i8_args_8(i8 %arg1, i8 %
; X64-NEXT: isImmutable: true,
; X64: liveins: %ecx, %edi, %edx, %esi, %r8d, %r9d
-; X64: [[ARG1_TMP:%[0-9]+]](s32) = COPY %edi
-; X64: [[ARG1:%[0-9]+]](s8) = G_TRUNC [[ARG1_TMP]](s32)
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %esi
-; X64-NEXT: %{{[0-9]+}}(s8) = G_TRUNC %{{[0-9]+}}(s32)
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %edx
-; X64-NEXT: %{{[0-9]+}}(s8) = G_TRUNC %{{[0-9]+}}(s32)
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %ecx
-; X64-NEXT: %{{[0-9]+}}(s8) = G_TRUNC %{{[0-9]+}}(s32)
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %r8d
-; X64-NEXT: %{{[0-9]+}}(s8) = G_TRUNC %{{[0-9]+}}(s32)
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %r9d
-; X64-NEXT: %{{[0-9]+}}(s8) = G_TRUNC %{{[0-9]+}}(s32)
-; X64-NEXT: [[ARG7_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X64-NEXT: [[ARG7:%[0-9]+]](s8) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
-; X64-NEXT: [[ARG8_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X64-NEXT: [[ARG8:%[0-9]+]](s8) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
+; X64: [[ARG1_TMP:%[0-9]+]]:_(s32) = COPY %edi
+; X64: [[ARG1:%[0-9]+]]:_(s8) = G_TRUNC [[ARG1_TMP]](s32)
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %esi
+; X64-NEXT: %{{[0-9]+}}:_(s8) = G_TRUNC %{{[0-9]+}}(s32)
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %edx
+; X64-NEXT: %{{[0-9]+}}:_(s8) = G_TRUNC %{{[0-9]+}}(s32)
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %ecx
+; X64-NEXT: %{{[0-9]+}}:_(s8) = G_TRUNC %{{[0-9]+}}(s32)
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %r8d
+; X64-NEXT: %{{[0-9]+}}:_(s8) = G_TRUNC %{{[0-9]+}}(s32)
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %r9d
+; X64-NEXT: %{{[0-9]+}}:_(s8) = G_TRUNC %{{[0-9]+}}(s32)
+; X64-NEXT: [[ARG7_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X64-NEXT: [[ARG7:%[0-9]+]]:_(s8) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
+; X64-NEXT: [[ARG8_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X64-NEXT: [[ARG8:%[0-9]+]]:_(s8) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
; X32: fixedStack:
; X32: id: [[STACK28:[0-9]+]], type: default, offset: 28, size: 1, alignment: 4,
@@ -60,26 +60,26 @@ define i8 @test_i8_args_8(i8 %arg1, i8 %
; X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 1, alignment: 16,
; X32-NEXT: isImmutable: true,
-; X32: [[ARG1_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X32-NEXT: [[ARG1:%[0-9]+]](s8) = G_LOAD [[ARG1_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
-; X32-NEXT: [[ARG2_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
-; X32-NEXT: [[ARG2:%[0-9]+]](s8) = G_LOAD [[ARG2_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK4]], align 0)
-; X32-NEXT: [[ARG3_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X32-NEXT: [[ARG3:%[0-9]+]](s8) = G_LOAD [[ARG3_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
-; X32-NEXT: [[ARG4_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
-; X32-NEXT: [[ARG4:%[0-9]+]](s8) = G_LOAD [[ARG4_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK12]], align 0)
-; X32-NEXT: [[ARG5_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
-; X32-NEXT: [[ARG5:%[0-9]+]](s8) = G_LOAD [[ARG5_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK16]], align 0)
-; X32-NEXT: [[ARG6_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
-; X32-NEXT: [[ARG6:%[0-9]+]](s8) = G_LOAD [[ARG6_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK20]], align 0)
-; X32-NEXT: [[ARG7_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
-; X32-NEXT: [[ARG7:%[0-9]+]](s8) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK24]], align 0)
-; X32-NEXT: [[ARG8_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
-; X32-NEXT: [[ARG8:%[0-9]+]](s8) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK28]], align 0)
-
-; ALL-NEXT: [[GADDR_A1:%[0-9]+]](p0) = G_GLOBAL_VALUE @a1_8bit
-; ALL-NEXT: [[GADDR_A7:%[0-9]+]](p0) = G_GLOBAL_VALUE @a7_8bit
-; ALL-NEXT: [[GADDR_A8:%[0-9]+]](p0) = G_GLOBAL_VALUE @a8_8bit
+; X32: [[ARG1_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X32-NEXT: [[ARG1:%[0-9]+]]:_(s8) = G_LOAD [[ARG1_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK0]], align 0)
+; X32-NEXT: [[ARG2_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
+; X32-NEXT: [[ARG2:%[0-9]+]]:_(s8) = G_LOAD [[ARG2_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK4]], align 0)
+; X32-NEXT: [[ARG3_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X32-NEXT: [[ARG3:%[0-9]+]]:_(s8) = G_LOAD [[ARG3_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK8]], align 0)
+; X32-NEXT: [[ARG4_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
+; X32-NEXT: [[ARG4:%[0-9]+]]:_(s8) = G_LOAD [[ARG4_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK12]], align 0)
+; X32-NEXT: [[ARG5_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
+; X32-NEXT: [[ARG5:%[0-9]+]]:_(s8) = G_LOAD [[ARG5_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK16]], align 0)
+; X32-NEXT: [[ARG6_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
+; X32-NEXT: [[ARG6:%[0-9]+]]:_(s8) = G_LOAD [[ARG6_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK20]], align 0)
+; X32-NEXT: [[ARG7_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
+; X32-NEXT: [[ARG7:%[0-9]+]]:_(s8) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK24]], align 0)
+; X32-NEXT: [[ARG8_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
+; X32-NEXT: [[ARG8:%[0-9]+]]:_(s8) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 1 from %fixed-stack.[[STACK28]], align 0)
+
+; ALL-NEXT: [[GADDR_A1:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a1_8bit
+; ALL-NEXT: [[GADDR_A7:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a7_8bit
+; ALL-NEXT: [[GADDR_A8:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a8_8bit
; ALL-NEXT: G_STORE [[ARG1]](s8), [[GADDR_A1]](p0) :: (store 1 into @a1_8bit)
; ALL-NEXT: G_STORE [[ARG7]](s8), [[GADDR_A7]](p0) :: (store 1 into @a7_8bit)
; ALL-NEXT: G_STORE [[ARG8]](s8), [[GADDR_A8]](p0) :: (store 1 into @a8_8bit)
@@ -108,16 +108,16 @@ define i32 @test_i32_args_8(i32 %arg1, i
; X64: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 4, alignment: 16,
; X64-NEXT: isImmutable: true,
; X64: liveins: %ecx, %edi, %edx, %esi, %r8d, %r9d
-; X64: [[ARG1:%[0-9]+]](s32) = COPY %edi
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %esi
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %edx
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %ecx
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %r8d
-; X64-NEXT: %{{[0-9]+}}(s32) = COPY %r9d
-; X64-NEXT: [[ARG7_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X64-NEXT: [[ARG7:%[0-9]+]](s32) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
-; X64-NEXT: [[ARG8_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X64-NEXT: [[ARG8:%[0-9]+]](s32) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
+; X64: [[ARG1:%[0-9]+]]:_(s32) = COPY %edi
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %esi
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %edx
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %ecx
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %r8d
+; X64-NEXT: %{{[0-9]+}}:_(s32) = COPY %r9d
+; X64-NEXT: [[ARG7_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X64-NEXT: [[ARG7:%[0-9]+]]:_(s32) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
+; X64-NEXT: [[ARG8_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X64-NEXT: [[ARG8:%[0-9]+]]:_(s32) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
; X32: fixedStack:
; X32: id: [[STACK28:[0-9]+]], type: default, offset: 28, size: 4, alignment: 4,
@@ -143,26 +143,26 @@ define i32 @test_i32_args_8(i32 %arg1, i
; X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 4, alignment: 16
; X32-NEXT: isImmutable: true,
-; X32: [[ARG1_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X32-NEXT: [[ARG1:%[0-9]+]](s32) = G_LOAD [[ARG1_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
-; X32-NEXT: [[ARG2_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
-; X32-NEXT: [[ARG2:%[0-9]+]](s32) = G_LOAD [[ARG2_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
-; X32-NEXT: [[ARG3_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X32-NEXT: [[ARG3:%[0-9]+]](s32) = G_LOAD [[ARG3_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
-; X32-NEXT: [[ARG4_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
-; X32-NEXT: [[ARG4:%[0-9]+]](s32) = G_LOAD [[ARG4_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK12]], align 0)
-; X32-NEXT: [[ARG5_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
-; X32-NEXT: [[ARG5:%[0-9]+]](s32) = G_LOAD [[ARG5_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK16]], align 0)
-; X32-NEXT: [[ARG6_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
-; X32-NEXT: [[ARG6:%[0-9]+]](s32) = G_LOAD [[ARG6_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK20]], align 0)
-; X32-NEXT: [[ARG7_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
-; X32-NEXT: [[ARG7:%[0-9]+]](s32) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK24]], align 0)
-; X32-NEXT: [[ARG8_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
-; X32-NEXT: [[ARG8:%[0-9]+]](s32) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK28]], align 0)
-
-; ALL-NEXT: [[GADDR_A1:%[0-9]+]](p0) = G_GLOBAL_VALUE @a1_32bit
-; ALL-NEXT: [[GADDR_A7:%[0-9]+]](p0) = G_GLOBAL_VALUE @a7_32bit
-; ALL-NEXT: [[GADDR_A8:%[0-9]+]](p0) = G_GLOBAL_VALUE @a8_32bit
+; X32: [[ARG1_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X32-NEXT: [[ARG1:%[0-9]+]]:_(s32) = G_LOAD [[ARG1_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
+; X32-NEXT: [[ARG2_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
+; X32-NEXT: [[ARG2:%[0-9]+]]:_(s32) = G_LOAD [[ARG2_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
+; X32-NEXT: [[ARG3_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X32-NEXT: [[ARG3:%[0-9]+]]:_(s32) = G_LOAD [[ARG3_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
+; X32-NEXT: [[ARG4_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
+; X32-NEXT: [[ARG4:%[0-9]+]]:_(s32) = G_LOAD [[ARG4_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK12]], align 0)
+; X32-NEXT: [[ARG5_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
+; X32-NEXT: [[ARG5:%[0-9]+]]:_(s32) = G_LOAD [[ARG5_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK16]], align 0)
+; X32-NEXT: [[ARG6_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
+; X32-NEXT: [[ARG6:%[0-9]+]]:_(s32) = G_LOAD [[ARG6_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK20]], align 0)
+; X32-NEXT: [[ARG7_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
+; X32-NEXT: [[ARG7:%[0-9]+]]:_(s32) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK24]], align 0)
+; X32-NEXT: [[ARG8_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
+; X32-NEXT: [[ARG8:%[0-9]+]]:_(s32) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK28]], align 0)
+
+; ALL-NEXT: [[GADDR_A1:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a1_32bit
+; ALL-NEXT: [[GADDR_A7:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a7_32bit
+; ALL-NEXT: [[GADDR_A8:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a8_32bit
; ALL-NEXT: G_STORE [[ARG1]](s32), [[GADDR_A1]](p0) :: (store 4 into @a1_32bit)
; ALL-NEXT: G_STORE [[ARG7]](s32), [[GADDR_A7]](p0) :: (store 4 into @a7_32bit)
; ALL-NEXT: G_STORE [[ARG8]](s32), [[GADDR_A8]](p0) :: (store 4 into @a8_32bit)
@@ -190,16 +190,16 @@ define i64 @test_i64_args_8(i64 %arg1, i
; X64: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 8, alignment: 16,
; X64-NEXT: isImmutable: true,
; X64: liveins: %rcx, %rdi, %rdx, %rsi, %r8, %r9
-; X64: [[ARG1:%[0-9]+]](s64) = COPY %rdi
-; X64-NEXT: %{{[0-9]+}}(s64) = COPY %rsi
-; X64-NEXT: %{{[0-9]+}}(s64) = COPY %rdx
-; X64-NEXT: %{{[0-9]+}}(s64) = COPY %rcx
-; X64-NEXT: %{{[0-9]+}}(s64) = COPY %r8
-; X64-NEXT: %{{[0-9]+}}(s64) = COPY %r9
-; X64-NEXT: [[ARG7_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X64-NEXT: [[ARG7:%[0-9]+]](s64) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
-; X64-NEXT: [[ARG8_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X64-NEXT: [[ARG8:%[0-9]+]](s64) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK8]], align 0)
+; X64: [[ARG1:%[0-9]+]]:_(s64) = COPY %rdi
+; X64-NEXT: %{{[0-9]+}}:_(s64) = COPY %rsi
+; X64-NEXT: %{{[0-9]+}}:_(s64) = COPY %rdx
+; X64-NEXT: %{{[0-9]+}}:_(s64) = COPY %rcx
+; X64-NEXT: %{{[0-9]+}}:_(s64) = COPY %r8
+; X64-NEXT: %{{[0-9]+}}:_(s64) = COPY %r9
+; X64-NEXT: [[ARG7_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X64-NEXT: [[ARG7:%[0-9]+]]:_(s64) = G_LOAD [[ARG7_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
+; X64-NEXT: [[ARG8_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X64-NEXT: [[ARG8:%[0-9]+]]:_(s64) = G_LOAD [[ARG8_ADDR]](p0) :: (invariant load 8 from %fixed-stack.[[STACK8]], align 0)
; X32: fixedStack:
; X32: id: [[STACK60:[0-9]+]], type: default, offset: 60, size: 4, alignment: 4,
@@ -235,52 +235,52 @@ define i64 @test_i64_args_8(i64 %arg1, i
; X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 4, alignment: 16
; X32-NEXT: isImmutable: true,
-; X32: [[ARG1L_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X32-NEXT: [[ARG1L:%[0-9]+]](s32) = G_LOAD [[ARG1L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
-; X32-NEXT: [[ARG1H_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
-; X32-NEXT: [[ARG1H:%[0-9]+]](s32) = G_LOAD [[ARG1H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK12]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK16]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK20]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK24]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK28]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK32]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK32]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK36]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK36]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK40]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK40]], align 0)
-; X32-NEXT: %{{[0-9]+}}(p0) = G_FRAME_INDEX %fixed-stack.[[STACK44]]
-; X32-NEXT: %{{[0-9]+}}(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK44]], align 0)
-; X32-NEXT: [[ARG7L_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK48]]
-; X32-NEXT: [[ARG7L:%[0-9]+]](s32) = G_LOAD [[ARG7L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK48]], align 0)
-; X32-NEXT: [[ARG7H_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK52]]
-; X32-NEXT: [[ARG7H:%[0-9]+]](s32) = G_LOAD [[ARG7H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK52]], align 0)
-; X32-NEXT: [[ARG8L_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK56]]
-; X32-NEXT: [[ARG8L:%[0-9]+]](s32) = G_LOAD [[ARG8L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK56]], align 0)
-; X32-NEXT: [[ARG8H_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK60]]
-; X32-NEXT: [[ARG8H:%[0-9]+]](s32) = G_LOAD [[ARG8H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK60]], align 0)
+; X32: [[ARG1L_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X32-NEXT: [[ARG1L:%[0-9]+]]:_(s32) = G_LOAD [[ARG1L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
+; X32-NEXT: [[ARG1H_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
+; X32-NEXT: [[ARG1H:%[0-9]+]]:_(s32) = G_LOAD [[ARG1H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK8]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK8]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK12]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK12]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK16]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK16]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK20]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK20]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK24]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK24]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK28]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK28]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK32]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK32]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK36]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK36]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK40]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK40]], align 0)
+; X32-NEXT: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK44]]
+; X32-NEXT: %{{[0-9]+}}:_(s32) = G_LOAD %{{[0-9]+}}(p0) :: (invariant load 4 from %fixed-stack.[[STACK44]], align 0)
+; X32-NEXT: [[ARG7L_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK48]]
+; X32-NEXT: [[ARG7L:%[0-9]+]]:_(s32) = G_LOAD [[ARG7L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK48]], align 0)
+; X32-NEXT: [[ARG7H_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK52]]
+; X32-NEXT: [[ARG7H:%[0-9]+]]:_(s32) = G_LOAD [[ARG7H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK52]], align 0)
+; X32-NEXT: [[ARG8L_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK56]]
+; X32-NEXT: [[ARG8L:%[0-9]+]]:_(s32) = G_LOAD [[ARG8L_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK56]], align 0)
+; X32-NEXT: [[ARG8H_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK60]]
+; X32-NEXT: [[ARG8H:%[0-9]+]]:_(s32) = G_LOAD [[ARG8H_ADDR]](p0) :: (invariant load 4 from %fixed-stack.[[STACK60]], align 0)
-; X32-NEXT: [[ARG1:%[0-9]+]](s64) = G_MERGE_VALUES [[ARG1L]](s32), [[ARG1H]](s32)
+; X32-NEXT: [[ARG1:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARG1L]](s32), [[ARG1H]](s32)
; ... a bunch more that we don't track ...
; X32-NEXT: G_MERGE_VALUES
; X32-NEXT: G_MERGE_VALUES
; X32-NEXT: G_MERGE_VALUES
; X32-NEXT: G_MERGE_VALUES
; X32-NEXT: G_MERGE_VALUES
-; X32-NEXT: [[ARG7:%[0-9]+]](s64) = G_MERGE_VALUES [[ARG7L]](s32), [[ARG7H]](s32)
-; X32-NEXT: [[ARG8:%[0-9]+]](s64) = G_MERGE_VALUES [[ARG8L]](s32), [[ARG8H]](s32)
+; X32-NEXT: [[ARG7:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARG7L]](s32), [[ARG7H]](s32)
+; X32-NEXT: [[ARG8:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[ARG8L]](s32), [[ARG8H]](s32)
-; ALL-NEXT: [[GADDR_A1:%[0-9]+]](p0) = G_GLOBAL_VALUE @a1_64bit
-; ALL-NEXT: [[GADDR_A7:%[0-9]+]](p0) = G_GLOBAL_VALUE @a7_64bit
-; ALL-NEXT: [[GADDR_A8:%[0-9]+]](p0) = G_GLOBAL_VALUE @a8_64bit
+; ALL-NEXT: [[GADDR_A1:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a1_64bit
+; ALL-NEXT: [[GADDR_A7:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a7_64bit
+; ALL-NEXT: [[GADDR_A8:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @a8_64bit
; ALL-NEXT: G_STORE [[ARG1]](s64), [[GADDR_A1]](p0) :: (store 8 into @a1_64bit
; ALL-NEXT: G_STORE [[ARG7]](s64), [[GADDR_A7]](p0) :: (store 8 into @a7_64bit
; ALL-NEXT: G_STORE [[ARG8]](s64), [[GADDR_A8]](p0) :: (store 8 into @a8_64bit
@@ -288,7 +288,7 @@ define i64 @test_i64_args_8(i64 %arg1, i
; X64-NEXT: %rax = COPY [[ARG1]](s64)
; X64-NEXT: RET 0, implicit %rax
-; X32-NEXT: [[RETL:%[0-9]+]](s32), [[RETH:%[0-9]+]](s32) = G_UNMERGE_VALUES [[ARG1:%[0-9]+]](s64)
+; X32-NEXT: [[RETL:%[0-9]+]]:_(s32), [[RETH:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[ARG1:%[0-9]+]](s64)
; X32-NEXT: %eax = COPY [[RETL:%[0-9]+]](s32)
; X32-NEXT: %edx = COPY [[RETH:%[0-9]+]](s32)
; X32-NEXT: RET 0, implicit %eax, implicit %edx
@@ -304,8 +304,8 @@ define float @test_float_args(float %arg
; ALL-LABEL:name: test_float_args
; X64: liveins: %xmm0, %xmm1
-; X64: [[ARG1:%[0-9]+]](s32) = COPY %xmm0
-; X64-NEXT: [[ARG2:%[0-9]+]](s32) = COPY %xmm1
+; X64: [[ARG1:%[0-9]+]]:_(s32) = COPY %xmm0
+; X64-NEXT: [[ARG2:%[0-9]+]]:_(s32) = COPY %xmm1
; X64-NEXT: %xmm0 = COPY [[ARG2:%[0-9]+]](s32)
; X64-NEXT: RET 0, implicit %xmm0
@@ -314,10 +314,10 @@ define float @test_float_args(float %arg
; X32-NEXT: isImmutable: true,
; X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 4, alignment: 16
; X32-NEXT: isImmutable: true,
-; X32: [[ARG1_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X32-NEXT: [[ARG1:%[0-9]+]](s32) = G_LOAD [[ARG1_ADDR:%[0-9]+]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
-; X32-NEXT: [[ARG2_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
-; X32-NEXT: [[ARG2:%[0-9]+]](s32) = G_LOAD [[ARG2_ADDR:%[0-9]+]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
+; X32: [[ARG1_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X32-NEXT: [[ARG1:%[0-9]+]]:_(s32) = G_LOAD [[ARG1_ADDR:%[0-9]+]](p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
+; X32-NEXT: [[ARG2_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
+; X32-NEXT: [[ARG2:%[0-9]+]]:_(s32) = G_LOAD [[ARG2_ADDR:%[0-9]+]](p0) :: (invariant load 4 from %fixed-stack.[[STACK4]], align 0)
; X32-NEXT: %fp0 = COPY [[ARG2:%[0-9]+]](s32)
; X32-NEXT: RET 0, implicit %fp0
@@ -327,8 +327,8 @@ define float @test_float_args(float %arg
define double @test_double_args(double %arg1, double %arg2) {
; ALL-LABEL:name: test_double_args
; X64: liveins: %xmm0, %xmm1
-; X64: [[ARG1:%[0-9]+]](s64) = COPY %xmm0
-; X64-NEXT: [[ARG2:%[0-9]+]](s64) = COPY %xmm1
+; X64: [[ARG1:%[0-9]+]]:_(s64) = COPY %xmm0
+; X64-NEXT: [[ARG2:%[0-9]+]]:_(s64) = COPY %xmm1
; X64-NEXT: %xmm0 = COPY [[ARG2:%[0-9]+]](s64)
; X64-NEXT: RET 0, implicit %xmm0
@@ -339,10 +339,10 @@ define double @test_double_args(double %
; X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 8, alignment: 16,
; X32-NEXT: isImmutable: true,
-; X32: [[ARG1_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-; X32-NEXT: [[ARG1:%[0-9]+]](s64) = G_LOAD [[ARG1_ADDR:%[0-9]+]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
-; X32-NEXT: [[ARG2_ADDR:%[0-9]+]](p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
-; X32-NEXT: [[ARG2:%[0-9]+]](s64) = G_LOAD [[ARG2_ADDR:%[0-9]+]](p0) :: (invariant load 8 from %fixed-stack.[[STACK4]], align 0)
+; X32: [[ARG1_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+; X32-NEXT: [[ARG1:%[0-9]+]]:_(s64) = G_LOAD [[ARG1_ADDR:%[0-9]+]](p0) :: (invariant load 8 from %fixed-stack.[[STACK0]], align 0)
+; X32-NEXT: [[ARG2_ADDR:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK4]]
+; X32-NEXT: [[ARG2:%[0-9]+]]:_(s64) = G_LOAD [[ARG2_ADDR:%[0-9]+]](p0) :: (invariant load 8 from %fixed-stack.[[STACK4]], align 0)
; X32-NEXT: %fp0 = COPY [[ARG2:%[0-9]+]](s64)
; X32-NEXT: RET 0, implicit %fp0
@@ -352,8 +352,8 @@ define double @test_double_args(double %
define <4 x i32> @test_v4i32_args(<4 x i32> %arg1, <4 x i32> %arg2) {
; ALL: name: test_v4i32_args
; ALL: liveins: %xmm0, %xmm1
-; ALL: [[ARG1:%[0-9]+]](<4 x s32>) = COPY %xmm0
-; ALL-NEXT: [[ARG2:%[0-9]+]](<4 x s32>) = COPY %xmm1
+; ALL: [[ARG1:%[0-9]+]]:_(<4 x s32>) = COPY %xmm0
+; ALL-NEXT: [[ARG2:%[0-9]+]]:_(<4 x s32>) = COPY %xmm1
; ALL-NEXT: %xmm0 = COPY [[ARG2:%[0-9]+]](<4 x s32>)
; ALL-NEXT: RET 0, implicit %xmm0
ret <4 x i32> %arg2
@@ -362,10 +362,10 @@ define <4 x i32> @test_v4i32_args(<4 x i
define <8 x i32> @test_v8i32_args(<8 x i32> %arg1) {
; ALL: name: test_v8i32_args
; ALL: liveins: %xmm0, %xmm1
-; ALL: [[ARG1L:%[0-9]+]](<4 x s32>) = COPY %xmm0
-; ALL-NEXT: [[ARG1H:%[0-9]+]](<4 x s32>) = COPY %xmm1
-; ALL-NEXT: [[ARG1:%[0-9]+]](<8 x s32>) = G_MERGE_VALUES [[ARG1L]](<4 x s32>), [[ARG1H]](<4 x s32>)
-; ALL-NEXT: [[RETL:%[0-9]+]](<4 x s32>), [[RETH:%[0-9]+]](<4 x s32>) = G_UNMERGE_VALUES [[ARG1:%[0-9]+]](<8 x s32>)
+; ALL: [[ARG1L:%[0-9]+]]:_(<4 x s32>) = COPY %xmm0
+; ALL-NEXT: [[ARG1H:%[0-9]+]]:_(<4 x s32>) = COPY %xmm1
+; ALL-NEXT: [[ARG1:%[0-9]+]]:_(<8 x s32>) = G_MERGE_VALUES [[ARG1L]](<4 x s32>), [[ARG1H]](<4 x s32>)
+; ALL-NEXT: [[RETL:%[0-9]+]]:_(<4 x s32>), [[RETH:%[0-9]+]]:_(<4 x s32>) = G_UNMERGE_VALUES [[ARG1:%[0-9]+]](<8 x s32>)
; ALL-NEXT: %xmm0 = COPY [[RETL:%[0-9]+]](<4 x s32>)
; ALL-NEXT: %xmm1 = COPY [[RETH:%[0-9]+]](<4 x s32>)
; ALL-NEXT: RET 0, implicit %xmm0, implicit %xmm1
@@ -384,15 +384,15 @@ entry:
define i32 * @test_memop_i32(i32 * %p1) {
; ALL-LABEL:name: test_memop_i32
;X64 liveins: %rdi
-;X64: %0(p0) = COPY %rdi
+;X64: %0:_(p0) = COPY %rdi
;X64-NEXT: %rax = COPY %0(p0)
;X64-NEXT: RET 0, implicit %rax
;X32: fixedStack:
;X32: id: [[STACK0:[0-9]+]], type: default, offset: 0, size: 4, alignment: 16,
;X32-NEXT: isImmutable: true,
-;X32: %1(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
-;X32-NEXT: %0(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
+;X32: %1:_(p0) = G_FRAME_INDEX %fixed-stack.[[STACK0]]
+;X32-NEXT: %0:_(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.[[STACK0]], align 0)
;X32-NEXT: %eax = COPY %0(p0)
;X32-NEXT: RET 0, implicit %eax
@@ -421,32 +421,32 @@ declare void @simple_arg_callee(i32 %in0
define void @test_simple_arg(i32 %in0, i32 %in1) {
; ALL-LABEL: name: test_simple_arg
-; X32: fixedStack:
+; X32: fixedStack:
; X32: - { id: 0, type: default, offset: 4, size: 4, alignment: 4,
; X32-NEXT: isImmutable: true,
; X32: - { id: 1, type: default, offset: 0, size: 4, alignment: 16,
; X32-NEXT: isImmutable: true,
; X32: body: |
; X32-NEXT: bb.1 (%ir-block.0):
-; X32-NEXT: %2(p0) = G_FRAME_INDEX %fixed-stack.1
-; X32-NEXT: %0(s32) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
-; X32-NEXT: %3(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %1(s32) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32-NEXT: %2:_(p0) = G_FRAME_INDEX %fixed-stack.1
+; X32-NEXT: %0:_(s32) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
+; X32-NEXT: %3:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %1:_(s32) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
; X32-NEXT: ADJCALLSTACKDOWN32 8, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %4(p0) = COPY %esp
-; X32-NEXT: %5(s32) = G_CONSTANT i32 0
-; X32-NEXT: %6(p0) = G_GEP %4, %5(s32)
+; X32-NEXT: %4:_(p0) = COPY %esp
+; X32-NEXT: %5:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %6:_(p0) = G_GEP %4, %5(s32)
; X32-NEXT: G_STORE %1(s32), %6(p0) :: (store 4 into stack, align 0)
-; X32-NEXT: %7(p0) = COPY %esp
-; X32-NEXT: %8(s32) = G_CONSTANT i32 4
-; X32-NEXT: %9(p0) = G_GEP %7, %8(s32)
+; X32-NEXT: %7:_(p0) = COPY %esp
+; X32-NEXT: %8:_(s32) = G_CONSTANT i32 4
+; X32-NEXT: %9:_(p0) = G_GEP %7, %8(s32)
; X32-NEXT: G_STORE %0(s32), %9(p0) :: (store 4 into stack + 4, align 0)
; X32-NEXT: CALLpcrel32 @simple_arg_callee, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 8, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-; X64: %0(s32) = COPY %edi
-; X64-NEXT: %1(s32) = COPY %esi
+; X64: %0:_(s32) = COPY %edi
+; X64-NEXT: %1:_(s32) = COPY %esi
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: %edi = COPY %1(s32)
; X64-NEXT: %esi = COPY %0(s32)
@@ -462,51 +462,51 @@ declare void @simple_arg8_callee(i32 %ar
define void @test_simple_arg8_call(i32 %in0) {
; ALL-LABEL: name: test_simple_arg8_call
-; X32: fixedStack:
+; X32: fixedStack:
; X32: - { id: 0, type: default, offset: 0, size: 4, alignment: 16,
-; X32-NEXT: isImmutable: true,
+; X32-NEXT: isImmutable: true,
; X32: body: |
; X32-NEXT: bb.1 (%ir-block.0):
-; X32-NEXT: %1(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %0(s32) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32-NEXT: %1:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %0:_(s32) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
; X32-NEXT: ADJCALLSTACKDOWN32 32, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %2(p0) = COPY %esp
-; X32-NEXT: %3(s32) = G_CONSTANT i32 0
-; X32-NEXT: %4(p0) = G_GEP %2, %3(s32)
+; X32-NEXT: %2:_(p0) = COPY %esp
+; X32-NEXT: %3:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %4:_(p0) = G_GEP %2, %3(s32)
; X32-NEXT: G_STORE %0(s32), %4(p0) :: (store 4 into stack, align 0)
-; X32-NEXT: %5(p0) = COPY %esp
-; X32-NEXT: %6(s32) = G_CONSTANT i32 4
-; X32-NEXT: %7(p0) = G_GEP %5, %6(s32)
+; X32-NEXT: %5:_(p0) = COPY %esp
+; X32-NEXT: %6:_(s32) = G_CONSTANT i32 4
+; X32-NEXT: %7:_(p0) = G_GEP %5, %6(s32)
; X32-NEXT: G_STORE %0(s32), %7(p0) :: (store 4 into stack + 4, align 0)
-; X32-NEXT: %8(p0) = COPY %esp
-; X32-NEXT: %9(s32) = G_CONSTANT i32 8
-; X32-NEXT: %10(p0) = G_GEP %8, %9(s32)
+; X32-NEXT: %8:_(p0) = COPY %esp
+; X32-NEXT: %9:_(s32) = G_CONSTANT i32 8
+; X32-NEXT: %10:_(p0) = G_GEP %8, %9(s32)
; X32-NEXT: G_STORE %0(s32), %10(p0) :: (store 4 into stack + 8, align 0)
-; X32-NEXT: %11(p0) = COPY %esp
-; X32-NEXT: %12(s32) = G_CONSTANT i32 12
-; X32-NEXT: %13(p0) = G_GEP %11, %12(s32)
+; X32-NEXT: %11:_(p0) = COPY %esp
+; X32-NEXT: %12:_(s32) = G_CONSTANT i32 12
+; X32-NEXT: %13:_(p0) = G_GEP %11, %12(s32)
; X32-NEXT: G_STORE %0(s32), %13(p0) :: (store 4 into stack + 12, align 0)
-; X32-NEXT: %14(p0) = COPY %esp
-; X32-NEXT: %15(s32) = G_CONSTANT i32 16
-; X32-NEXT: %16(p0) = G_GEP %14, %15(s32)
+; X32-NEXT: %14:_(p0) = COPY %esp
+; X32-NEXT: %15:_(s32) = G_CONSTANT i32 16
+; X32-NEXT: %16:_(p0) = G_GEP %14, %15(s32)
; X32-NEXT: G_STORE %0(s32), %16(p0) :: (store 4 into stack + 16, align 0)
-; X32-NEXT: %17(p0) = COPY %esp
-; X32-NEXT: %18(s32) = G_CONSTANT i32 20
-; X32-NEXT: %19(p0) = G_GEP %17, %18(s32)
+; X32-NEXT: %17:_(p0) = COPY %esp
+; X32-NEXT: %18:_(s32) = G_CONSTANT i32 20
+; X32-NEXT: %19:_(p0) = G_GEP %17, %18(s32)
; X32-NEXT: G_STORE %0(s32), %19(p0) :: (store 4 into stack + 20, align 0)
-; X32-NEXT: %20(p0) = COPY %esp
-; X32-NEXT: %21(s32) = G_CONSTANT i32 24
-; X32-NEXT: %22(p0) = G_GEP %20, %21(s32)
+; X32-NEXT: %20:_(p0) = COPY %esp
+; X32-NEXT: %21:_(s32) = G_CONSTANT i32 24
+; X32-NEXT: %22:_(p0) = G_GEP %20, %21(s32)
; X32-NEXT: G_STORE %0(s32), %22(p0) :: (store 4 into stack + 24, align 0)
-; X32-NEXT: %23(p0) = COPY %esp
-; X32-NEXT: %24(s32) = G_CONSTANT i32 28
-; X32-NEXT: %25(p0) = G_GEP %23, %24(s32)
+; X32-NEXT: %23:_(p0) = COPY %esp
+; X32-NEXT: %24:_(s32) = G_CONSTANT i32 28
+; X32-NEXT: %25:_(p0) = G_GEP %23, %24(s32)
; X32-NEXT: G_STORE %0(s32), %25(p0) :: (store 4 into stack + 28, align 0)
; X32-NEXT: CALLpcrel32 @simple_arg8_callee, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 32, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-; X64: %0(s32) = COPY %edi
+; X64: %0:_(s32) = COPY %edi
; X64-NEXT: ADJCALLSTACKDOWN64 16, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: %edi = COPY %0(s32)
; X64-NEXT: %esi = COPY %0(s32)
@@ -514,13 +514,13 @@ define void @test_simple_arg8_call(i32 %
; X64-NEXT: %ecx = COPY %0(s32)
; X64-NEXT: %r8d = COPY %0(s32)
; X64-NEXT: %r9d = COPY %0(s32)
-; X64-NEXT: %1(p0) = COPY %rsp
-; X64-NEXT: %2(s64) = G_CONSTANT i64 0
-; X64-NEXT: %3(p0) = G_GEP %1, %2(s64)
+; X64-NEXT: %1:_(p0) = COPY %rsp
+; X64-NEXT: %2:_(s64) = G_CONSTANT i64 0
+; X64-NEXT: %3:_(p0) = G_GEP %1, %2(s64)
; X64-NEXT: G_STORE %0(s32), %3(p0) :: (store 4 into stack, align 0)
-; X64-NEXT: %4(p0) = COPY %rsp
-; X64-NEXT: %5(s64) = G_CONSTANT i64 8
-; X64-NEXT: %6(p0) = G_GEP %4, %5(s64)
+; X64-NEXT: %4:_(p0) = COPY %rsp
+; X64-NEXT: %5:_(s64) = G_CONSTANT i64 8
+; X64-NEXT: %6:_(p0) = G_GEP %4, %5(s64)
; X64-NEXT: G_STORE %0(s32), %6(p0) :: (store 4 into stack + 8, align 0)
; X64-NEXT: CALL64pcrel32 @simple_arg8_callee, csr_64, implicit %rsp, implicit %edi, implicit %esi, implicit %edx, implicit %ecx, implicit %r8d, implicit %r9d
; X64-NEXT: ADJCALLSTACKUP64 16, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
@@ -534,29 +534,29 @@ declare i32 @simple_return_callee(i32 %i
define i32 @test_simple_return_callee() {
; ALL-LABEL: name: test_simple_return_callee
-; X32: %1(s32) = G_CONSTANT i32 5
+; X32: %1:_(s32) = G_CONSTANT i32 5
; X32-NEXT: ADJCALLSTACKDOWN32 4, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %2(p0) = COPY %esp
-; X32-NEXT: %3(s32) = G_CONSTANT i32 0
-; X32-NEXT: %4(p0) = G_GEP %2, %3(s32)
+; X32-NEXT: %2:_(p0) = COPY %esp
+; X32-NEXT: %3:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %4:_(p0) = G_GEP %2, %3(s32)
; X32-NEXT: G_STORE %1(s32), %4(p0) :: (store 4 into stack, align 0)
; X32-NEXT: CALLpcrel32 @simple_return_callee, csr_32, implicit %esp, implicit-def %eax
-; X32-NEXT: %0(s32) = COPY %eax
+; X32-NEXT: %0:_(s32) = COPY %eax
; X32-NEXT: ADJCALLSTACKUP32 4, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %5(s32) = G_ADD %0, %0
+; X32-NEXT: %5:_(s32) = G_ADD %0, %0
; X32-NEXT: %eax = COPY %5(s32)
; X32-NEXT: RET 0, implicit %eax
-; X64: %1(s32) = G_CONSTANT i32 5
-; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %edi = COPY %1(s32)
+; X64: %1:_(s32) = G_CONSTANT i32 5
+; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
+; X64-NEXT: %edi = COPY %1(s32)
; X64-NEXT: CALL64pcrel32 @simple_return_callee, csr_64, implicit %rsp, implicit %edi, implicit-def %eax
-; X64-NEXT: %0(s32) = COPY %eax
-; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %2(s32) = G_ADD %0, %0
-; X64-NEXT: %eax = COPY %2(s32)
+; X64-NEXT: %0:_(s32) = COPY %eax
+; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
+; X64-NEXT: %2:_(s32) = G_ADD %0, %0
+; X64-NEXT: %eax = COPY %2(s32)
; X64-NEXT: RET 0, implicit %eax
-
+
%call = call i32 @simple_return_callee(i32 5)
%r = add i32 %call, %call
ret i32 %r
@@ -566,52 +566,52 @@ declare <8 x i32> @split_return_callee(<
define <8 x i32> @test_split_return_callee(<8 x i32> %arg1, <8 x i32> %arg2) {
; ALL-LABEL: name: test_split_return_callee
-; X32: fixedStack:
+; X32: fixedStack:
; X32-NEXT: - { id: 0, type: default, offset: 0, size: 16, alignment: 16,
-; X32-NEXT: isImmutable: true,
-; X32: %2(<4 x s32>) = COPY %xmm0
-; X32-NEXT: %3(<4 x s32>) = COPY %xmm1
-; X32-NEXT: %4(<4 x s32>) = COPY %xmm2
-; X32-NEXT: %6(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %5(<4 x s32>) = G_LOAD %6(p0) :: (invariant load 16 from %fixed-stack.0, align 0)
-; X32-NEXT: %0(<8 x s32>) = G_MERGE_VALUES %2(<4 x s32>), %3(<4 x s32>)
-; X32-NEXT: %1(<8 x s32>) = G_MERGE_VALUES %4(<4 x s32>), %5(<4 x s32>)
+; X32-NEXT: isImmutable: true,
+; X32: %2:_(<4 x s32>) = COPY %xmm0
+; X32-NEXT: %3:_(<4 x s32>) = COPY %xmm1
+; X32-NEXT: %4:_(<4 x s32>) = COPY %xmm2
+; X32-NEXT: %6:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %5:_(<4 x s32>) = G_LOAD %6(p0) :: (invariant load 16 from %fixed-stack.0, align 0)
+; X32-NEXT: %0:_(<8 x s32>) = G_MERGE_VALUES %2(<4 x s32>), %3(<4 x s32>)
+; X32-NEXT: %1:_(<8 x s32>) = G_MERGE_VALUES %4(<4 x s32>), %5(<4 x s32>)
; X32-NEXT: ADJCALLSTACKDOWN32 0, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %8(<4 x s32>), %9(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
+; X32-NEXT: %8:_(<4 x s32>), %9:_(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
; X32-NEXT: %xmm0 = COPY %8(<4 x s32>)
; X32-NEXT: %xmm1 = COPY %9(<4 x s32>)
; X32-NEXT: CALLpcrel32 @split_return_callee, csr_32, implicit %esp, implicit %xmm0, implicit %xmm1, implicit-def %xmm0, implicit-def %xmm1
-; X32-NEXT: %10(<4 x s32>) = COPY %xmm0
-; X32-NEXT: %11(<4 x s32>) = COPY %xmm1
-; X32-NEXT: %7(<8 x s32>) = G_MERGE_VALUES %10(<4 x s32>), %11(<4 x s32>)
+; X32-NEXT: %10:_(<4 x s32>) = COPY %xmm0
+; X32-NEXT: %11:_(<4 x s32>) = COPY %xmm1
+; X32-NEXT: %7:_(<8 x s32>) = G_MERGE_VALUES %10(<4 x s32>), %11(<4 x s32>)
; X32-NEXT: ADJCALLSTACKUP32 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %12(<8 x s32>) = G_ADD %0, %7
-; X32-NEXT: %13(<4 x s32>), %14(<4 x s32>) = G_UNMERGE_VALUES %12(<8 x s32>)
+; X32-NEXT: %12:_(<8 x s32>) = G_ADD %0, %7
+; X32-NEXT: %13:_(<4 x s32>), %14:_(<4 x s32>) = G_UNMERGE_VALUES %12(<8 x s32>)
; X32-NEXT: %xmm0 = COPY %13(<4 x s32>)
; X32-NEXT: %xmm1 = COPY %14(<4 x s32>)
-; X32-NEXT: RET 0, implicit %xmm0, implicit %xmm1
+; X32-NEXT: RET 0, implicit %xmm0, implicit %xmm1
-; X64: %2(<4 x s32>) = COPY %xmm0
-; X64-NEXT: %3(<4 x s32>) = COPY %xmm1
-; X64-NEXT: %4(<4 x s32>) = COPY %xmm2
-; X64-NEXT: %5(<4 x s32>) = COPY %xmm3
-; X64-NEXT: %0(<8 x s32>) = G_MERGE_VALUES %2(<4 x s32>), %3(<4 x s32>)
-; X64-NEXT: %1(<8 x s32>) = G_MERGE_VALUES %4(<4 x s32>), %5(<4 x s32>)
+; X64: %2:_(<4 x s32>) = COPY %xmm0
+; X64-NEXT: %3:_(<4 x s32>) = COPY %xmm1
+; X64-NEXT: %4:_(<4 x s32>) = COPY %xmm2
+; X64-NEXT: %5:_(<4 x s32>) = COPY %xmm3
+; X64-NEXT: %0:_(<8 x s32>) = G_MERGE_VALUES %2(<4 x s32>), %3(<4 x s32>)
+; X64-NEXT: %1:_(<8 x s32>) = G_MERGE_VALUES %4(<4 x s32>), %5(<4 x s32>)
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %7(<4 x s32>), %8(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
+; X64-NEXT: %7:_(<4 x s32>), %8:_(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
; X64-NEXT: %xmm0 = COPY %7(<4 x s32>)
; X64-NEXT: %xmm1 = COPY %8(<4 x s32>)
; X64-NEXT: CALL64pcrel32 @split_return_callee, csr_64, implicit %rsp, implicit %xmm0, implicit %xmm1, implicit-def %xmm0, implicit-def %xmm1
-; X64-NEXT: %9(<4 x s32>) = COPY %xmm0
-; X64-NEXT: %10(<4 x s32>) = COPY %xmm1
-; X64-NEXT: %6(<8 x s32>) = G_MERGE_VALUES %9(<4 x s32>), %10(<4 x s32>)
+; X64-NEXT: %9:_(<4 x s32>) = COPY %xmm0
+; X64-NEXT: %10:_(<4 x s32>) = COPY %xmm1
+; X64-NEXT: %6:_(<8 x s32>) = G_MERGE_VALUES %9(<4 x s32>), %10(<4 x s32>)
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %11(<8 x s32>) = G_ADD %0, %6
-; X64-NEXT: %12(<4 x s32>), %13(<4 x s32>) = G_UNMERGE_VALUES %11(<8 x s32>)
+; X64-NEXT: %11:_(<8 x s32>) = G_ADD %0, %6
+; X64-NEXT: %12:_(<4 x s32>), %13:_(<4 x s32>) = G_UNMERGE_VALUES %11(<8 x s32>)
; X64-NEXT: %xmm0 = COPY %12(<4 x s32>)
; X64-NEXT: %xmm1 = COPY %13(<4 x s32>)
-; X64-NEXT: RET 0, implicit %xmm0, implicit %xmm1
-
+; X64-NEXT: RET 0, implicit %xmm0, implicit %xmm1
+
%call = call <8 x i32> @split_return_callee(<8 x i32> %arg2)
%r = add <8 x i32> %arg1, %call
ret <8 x i32> %r
@@ -620,19 +620,19 @@ define <8 x i32> @test_split_return_call
define void @test_indirect_call(void()* %func) {
; ALL-LABEL: name: test_indirect_call
-; X32: registers:
+; X32: registers:
; X32-NEXT: - { id: 0, class: gr32, preferred-register: '' }
; X32-NEXT: - { id: 1, class: _, preferred-register: '' }
-; X32: %1(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %0(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32: %1:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %0:gr32(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
; X32-NEXT: ADJCALLSTACKDOWN32 0, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: CALL32r %0(p0), csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-; X64: registers:
+; X64: registers:
; X64-NEXT: - { id: 0, class: gr64, preferred-register: '' }
-; X64: %0(p0) = COPY %rdi
+; X64: %0:gr64(p0) = COPY %rdi
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: CALL64r %0(p0), csr_64, implicit %rsp
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
@@ -647,52 +647,52 @@ declare void @take_char(i8)
define void @test_abi_exts_call(i8* %addr) {
; ALL-LABEL: name: test_abi_exts_call
-; X32: fixedStack:
-; X32-NEXT: - { id: 0, type: default, offset: 0, size: 4, alignment: 16,
-; X32-NEXT: isImmutable: true,
-; X32: %1(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %0(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
-; X32-NEXT: %2(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
+; X32: fixedStack:
+; X32-NEXT: - { id: 0, type: default, offset: 0, size: 4, alignment: 16,
+; X32-NEXT: isImmutable: true,
+; X32: %1:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %0:_(p0) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32-NEXT: %2:_(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
; X32-NEXT: ADJCALLSTACKDOWN32 4, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %3(p0) = COPY %esp
-; X32-NEXT: %4(s32) = G_CONSTANT i32 0
-; X32-NEXT: %5(p0) = G_GEP %3, %4(s32)
-; X32-NEXT: %6(s32) = G_ANYEXT %2(s8)
+; X32-NEXT: %3:_(p0) = COPY %esp
+; X32-NEXT: %4:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %5:_(p0) = G_GEP %3, %4(s32)
+; X32-NEXT: %6:_(s32) = G_ANYEXT %2(s8)
; X32-NEXT: G_STORE %6(s32), %5(p0) :: (store 4 into stack, align 0)
; X32-NEXT: CALLpcrel32 @take_char, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 4, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: ADJCALLSTACKDOWN32 4, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %7(p0) = COPY %esp
-; X32-NEXT: %8(s32) = G_CONSTANT i32 0
-; X32-NEXT: %9(p0) = G_GEP %7, %8(s32)
-; X32-NEXT: %10(s32) = G_SEXT %2(s8)
+; X32-NEXT: %7:_(p0) = COPY %esp
+; X32-NEXT: %8:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %9:_(p0) = G_GEP %7, %8(s32)
+; X32-NEXT: %10:_(s32) = G_SEXT %2(s8)
; X32-NEXT: G_STORE %10(s32), %9(p0) :: (store 4 into stack, align 0)
; X32-NEXT: CALLpcrel32 @take_char, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 4, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: ADJCALLSTACKDOWN32 4, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %11(p0) = COPY %esp
-; X32-NEXT: %12(s32) = G_CONSTANT i32 0
-; X32-NEXT: %13(p0) = G_GEP %11, %12(s32)
-; X32-NEXT: %14(s32) = G_ZEXT %2(s8)
+; X32-NEXT: %11:_(p0) = COPY %esp
+; X32-NEXT: %12:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %13:_(p0) = G_GEP %11, %12(s32)
+; X32-NEXT: %14:_(s32) = G_ZEXT %2(s8)
; X32-NEXT: G_STORE %14(s32), %13(p0) :: (store 4 into stack, align 0)
; X32-NEXT: CALLpcrel32 @take_char, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 4, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-; X64: %0(p0) = COPY %rdi
-; X64-NEXT: %1(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
+; X64: %0:_(p0) = COPY %rdi
+; X64-NEXT: %1:_(s8) = G_LOAD %0(p0) :: (load 1 from %ir.addr)
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %2(s32) = G_ANYEXT %1(s8)
+; X64-NEXT: %2:_(s32) = G_ANYEXT %1(s8)
; X64-NEXT: %edi = COPY %2(s32)
; X64-NEXT: CALL64pcrel32 @take_char, csr_64, implicit %rsp, implicit %edi
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %3(s32) = G_SEXT %1(s8)
+; X64-NEXT: %3:_(s32) = G_SEXT %1(s8)
; X64-NEXT: %edi = COPY %3(s32)
; X64-NEXT: CALL64pcrel32 @take_char, csr_64, implicit %rsp, implicit %edi
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
-; X64-NEXT: %4(s32) = G_ZEXT %1(s8)
+; X64-NEXT: %4:_(s32) = G_ZEXT %1(s8)
; X64-NEXT: %edi = COPY %4(s32)
; X64-NEXT: CALL64pcrel32 @take_char, csr_64, implicit %rsp, implicit %edi
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
@@ -709,34 +709,34 @@ declare void @variadic_callee(i8*, ...)
define void @test_variadic_call_1(i8** %addr_ptr, i32* %val_ptr) {
; ALL-LABEL: name: test_variadic_call_1
-; X32: fixedStack:
-; X32-NEXT: - { id: 0, type: default, offset: 4, size: 4, alignment: 4, stack-id: 0,
+; X32: fixedStack:
+; X32-NEXT: - { id: 0, type: default, offset: 4, size: 4, alignment: 4, stack-id: 0,
; X32-NEXT: isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true }
-; X32-NEXT: - { id: 1, type: default, offset: 0, size: 4, alignment: 16, stack-id: 0,
+; X32-NEXT: - { id: 1, type: default, offset: 0, size: 4, alignment: 16, stack-id: 0,
; X32-NEXT: isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true }
-; X32: %2(p0) = G_FRAME_INDEX %fixed-stack.1
-; X32-NEXT: %0(p0) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
-; X32-NEXT: %3(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %1(p0) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
-; X32-NEXT: %4(p0) = G_LOAD %0(p0) :: (load 4 from %ir.addr_ptr)
-; X32-NEXT: %5(s32) = G_LOAD %1(p0) :: (load 4 from %ir.val_ptr)
+; X32: %2:_(p0) = G_FRAME_INDEX %fixed-stack.1
+; X32-NEXT: %0:_(p0) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
+; X32-NEXT: %3:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %1:_(p0) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32-NEXT: %4:_(p0) = G_LOAD %0(p0) :: (load 4 from %ir.addr_ptr)
+; X32-NEXT: %5:_(s32) = G_LOAD %1(p0) :: (load 4 from %ir.val_ptr)
; X32-NEXT: ADJCALLSTACKDOWN32 8, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %6(p0) = COPY %esp
-; X32-NEXT: %7(s32) = G_CONSTANT i32 0
-; X32-NEXT: %8(p0) = G_GEP %6, %7(s32)
+; X32-NEXT: %6:_(p0) = COPY %esp
+; X32-NEXT: %7:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %8:_(p0) = G_GEP %6, %7(s32)
; X32-NEXT: G_STORE %4(p0), %8(p0) :: (store 4 into stack, align 0)
-; X32-NEXT: %9(p0) = COPY %esp
-; X32-NEXT: %10(s32) = G_CONSTANT i32 4
-; X32-NEXT: %11(p0) = G_GEP %9, %10(s32)
+; X32-NEXT: %9:_(p0) = COPY %esp
+; X32-NEXT: %10:_(s32) = G_CONSTANT i32 4
+; X32-NEXT: %11:_(p0) = G_GEP %9, %10(s32)
; X32-NEXT: G_STORE %5(s32), %11(p0) :: (store 4 into stack + 4, align 0)
; X32-NEXT: CALLpcrel32 @variadic_callee, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 8, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-
-; X64: %0(p0) = COPY %rdi
-; X64-NEXT: %1(p0) = COPY %rsi
-; X64-NEXT: %2(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr_ptr)
-; X64-NEXT: %3(s32) = G_LOAD %1(p0) :: (load 4 from %ir.val_ptr)
+
+; X64: %0:_(p0) = COPY %rdi
+; X64-NEXT: %1:_(p0) = COPY %rsi
+; X64-NEXT: %2:_(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr_ptr)
+; X64-NEXT: %3:_(s32) = G_LOAD %1(p0) :: (load 4 from %ir.val_ptr)
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: %rdi = COPY %2(p0)
; X64-NEXT: %esi = COPY %3(s32)
@@ -744,7 +744,7 @@ define void @test_variadic_call_1(i8** %
; X64-NEXT: CALL64pcrel32 @variadic_callee, csr_64, implicit %rsp, implicit %rdi, implicit %esi, implicit %al
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: RET 0
-
+
%addr = load i8*, i8** %addr_ptr
%val = load i32, i32* %val_ptr
call void (i8*, ...) @variadic_callee(i8* %addr, i32 %val)
@@ -754,33 +754,33 @@ define void @test_variadic_call_1(i8** %
define void @test_variadic_call_2(i8** %addr_ptr, double* %val_ptr) {
; ALL-LABEL: name: test_variadic_call_2
-; X32: fixedStack:
-; X32-NEXT: - { id: 0, type: default, offset: 4, size: 4, alignment: 4, stack-id: 0,
+; X32: fixedStack:
+; X32-NEXT: - { id: 0, type: default, offset: 4, size: 4, alignment: 4, stack-id: 0,
; X32-NEXT: isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true }
-; X32-NEXT: - { id: 1, type: default, offset: 0, size: 4, alignment: 16, stack-id: 0,
+; X32-NEXT: - { id: 1, type: default, offset: 0, size: 4, alignment: 16, stack-id: 0,
; X32-NEXT: isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true }
-; X32: %2(p0) = G_FRAME_INDEX %fixed-stack.1
-; X32-NEXT: %0(p0) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
-; X32-NEXT: %3(p0) = G_FRAME_INDEX %fixed-stack.0
-; X32-NEXT: %1(p0) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
-; X32-NEXT: %4(p0) = G_LOAD %0(p0) :: (load 4 from %ir.addr_ptr)
-; X32-NEXT: %5(s64) = G_LOAD %1(p0) :: (load 8 from %ir.val_ptr, align 4)
+; X32: %2:_(p0) = G_FRAME_INDEX %fixed-stack.1
+; X32-NEXT: %0:_(p0) = G_LOAD %2(p0) :: (invariant load 4 from %fixed-stack.1, align 0)
+; X32-NEXT: %3:_(p0) = G_FRAME_INDEX %fixed-stack.0
+; X32-NEXT: %1:_(p0) = G_LOAD %3(p0) :: (invariant load 4 from %fixed-stack.0, align 0)
+; X32-NEXT: %4:_(p0) = G_LOAD %0(p0) :: (load 4 from %ir.addr_ptr)
+; X32-NEXT: %5:_(s64) = G_LOAD %1(p0) :: (load 8 from %ir.val_ptr, align 4)
; X32-NEXT: ADJCALLSTACKDOWN32 12, 0, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
-; X32-NEXT: %6(p0) = COPY %esp
-; X32-NEXT: %7(s32) = G_CONSTANT i32 0
-; X32-NEXT: %8(p0) = G_GEP %6, %7(s32)
+; X32-NEXT: %6:_(p0) = COPY %esp
+; X32-NEXT: %7:_(s32) = G_CONSTANT i32 0
+; X32-NEXT: %8:_(p0) = G_GEP %6, %7(s32)
; X32-NEXT: G_STORE %4(p0), %8(p0) :: (store 4 into stack, align 0)
-; X32-NEXT: %9(p0) = COPY %esp
-; X32-NEXT: %10(s32) = G_CONSTANT i32 4
-; X32-NEXT: %11(p0) = G_GEP %9, %10(s32)
+; X32-NEXT: %9:_(p0) = COPY %esp
+; X32-NEXT: %10:_(s32) = G_CONSTANT i32 4
+; X32-NEXT: %11:_(p0) = G_GEP %9, %10(s32)
; X32-NEXT: G_STORE %5(s64), %11(p0) :: (store 8 into stack + 4, align 0)
; X32-NEXT: CALLpcrel32 @variadic_callee, csr_32, implicit %esp
; X32-NEXT: ADJCALLSTACKUP32 12, 0, implicit-def %esp, implicit-def %eflags, implicit %esp
; X32-NEXT: RET 0
-
-; X64: %1(p0) = COPY %rsi
-; X64-NEXT: %2(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr_ptr)
-; X64-NEXT: %3(s64) = G_LOAD %1(p0) :: (load 8 from %ir.val_ptr)
+
+; X64: %1:_(p0) = COPY %rsi
+; X64-NEXT: %2:_(p0) = G_LOAD %0(p0) :: (load 8 from %ir.addr_ptr)
+; X64-NEXT: %3:_(s64) = G_LOAD %1(p0) :: (load 8 from %ir.val_ptr)
; X64-NEXT: ADJCALLSTACKDOWN64 0, 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: %rdi = COPY %2(p0)
; X64-NEXT: %xmm0 = COPY %3(s64)
@@ -788,7 +788,7 @@ define void @test_variadic_call_2(i8** %
; X64-NEXT: CALL64pcrel32 @variadic_callee, csr_64, implicit %rsp, implicit %rdi, implicit %xmm0, implicit %al
; X64-NEXT: ADJCALLSTACKUP64 0, 0, implicit-def %rsp, implicit-def %eflags, implicit %rsp
; X64-NEXT: RET 0
-
+
%addr = load i8*, i8** %addr_ptr
%val = load double, double* %val_ptr
call void (i8*, ...) @variadic_callee(i8* %addr, double %val)
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-GV.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-GV.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-GV.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-GV.mir Tue Oct 24 11:04:54 2017
@@ -19,7 +19,7 @@ regBankSelected: false
# ALL-NEXT: - { id: 0, class: _, preferred-register: '' }
registers:
- { id: 0, class: _, preferred-register: '' }
-# ALL: %0(p0) = G_GLOBAL_VALUE @g_int
+# ALL: %0:_(p0) = G_GLOBAL_VALUE @g_int
# ALL-NEXT: %rax = COPY %0(p0)
# ALL-NEXT: RET 0, implicit %rax
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v128.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v128.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v128.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v128.mir Tue Oct 24 11:04:54 2017
@@ -36,9 +36,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_add_v16i8
- ; ALL: [[DEF:%[0-9]+]](<16 x s8>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<16 x s8>) = IMPLICIT_DEF
- ; ALL: [[ADD:%[0-9]+]](<16 x s8>) = G_ADD [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<16 x s8>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<16 x s8>) = IMPLICIT_DEF
+ ; ALL: [[ADD:%[0-9]+]]:_(<16 x s8>) = G_ADD [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<16 x s8>) = IMPLICIT_DEF
%1(<16 x s8>) = IMPLICIT_DEF
@@ -60,9 +60,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_add_v8i16
- ; ALL: [[DEF:%[0-9]+]](<8 x s16>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<8 x s16>) = IMPLICIT_DEF
- ; ALL: [[ADD:%[0-9]+]](<8 x s16>) = G_ADD [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<8 x s16>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<8 x s16>) = IMPLICIT_DEF
+ ; ALL: [[ADD:%[0-9]+]]:_(<8 x s16>) = G_ADD [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<8 x s16>) = IMPLICIT_DEF
%1(<8 x s16>) = IMPLICIT_DEF
@@ -84,9 +84,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_add_v4i32
- ; ALL: [[DEF:%[0-9]+]](<4 x s32>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<4 x s32>) = IMPLICIT_DEF
- ; ALL: [[ADD:%[0-9]+]](<4 x s32>) = G_ADD [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<4 x s32>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<4 x s32>) = IMPLICIT_DEF
+ ; ALL: [[ADD:%[0-9]+]]:_(<4 x s32>) = G_ADD [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<4 x s32>) = IMPLICIT_DEF
%1(<4 x s32>) = IMPLICIT_DEF
@@ -108,9 +108,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_add_v2i64
- ; ALL: [[DEF:%[0-9]+]](<2 x s64>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<2 x s64>) = IMPLICIT_DEF
- ; ALL: [[ADD:%[0-9]+]](<2 x s64>) = G_ADD [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<2 x s64>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<2 x s64>) = IMPLICIT_DEF
+ ; ALL: [[ADD:%[0-9]+]]:_(<2 x s64>) = G_ADD [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<2 x s64>) = IMPLICIT_DEF
%1(<2 x s64>) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v256.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v256.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v256.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v256.mir Tue Oct 24 11:04:54 2017
@@ -34,18 +34,18 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# NOT_AVX2: %0(<32 x s8>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %1(<32 x s8>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %3(<16 x s8>), %4(<16 x s8>) = G_UNMERGE_VALUES %0(<32 x s8>)
-# NOT_AVX2-NEXT: %5(<16 x s8>), %6(<16 x s8>) = G_UNMERGE_VALUES %1(<32 x s8>)
-# NOT_AVX2-NEXT: %7(<16 x s8>) = G_ADD %3, %5
-# NOT_AVX2-NEXT: %8(<16 x s8>) = G_ADD %4, %6
-# NOT_AVX2-NEXT: %2(<32 x s8>) = G_MERGE_VALUES %7(<16 x s8>), %8(<16 x s8>)
+# NOT_AVX2: %0:_(<32 x s8>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %1:_(<32 x s8>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %3:_(<16 x s8>), %4:_(<16 x s8>) = G_UNMERGE_VALUES %0(<32 x s8>)
+# NOT_AVX2-NEXT: %5:_(<16 x s8>), %6:_(<16 x s8>) = G_UNMERGE_VALUES %1(<32 x s8>)
+# NOT_AVX2-NEXT: %7:_(<16 x s8>) = G_ADD %3, %5
+# NOT_AVX2-NEXT: %8:_(<16 x s8>) = G_ADD %4, %6
+# NOT_AVX2-NEXT: %2:_(<32 x s8>) = G_MERGE_VALUES %7(<16 x s8>), %8(<16 x s8>)
# NOT_AVX2-NEXT: RET 0
#
-# AVX2: %0(<32 x s8>) = IMPLICIT_DEF
-# AVX2-NEXT: %1(<32 x s8>) = IMPLICIT_DEF
-# AVX2-NEXT: %2(<32 x s8>) = G_ADD %0, %1
+# AVX2: %0:_(<32 x s8>) = IMPLICIT_DEF
+# AVX2-NEXT: %1:_(<32 x s8>) = IMPLICIT_DEF
+# AVX2-NEXT: %2:_(<32 x s8>) = G_ADD %0, %1
# AVX2-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -67,18 +67,18 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# NOT_AVX2: %0(<16 x s16>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %1(<16 x s16>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %3(<8 x s16>), %4(<8 x s16>) = G_UNMERGE_VALUES %0(<16 x s16>)
-# NOT_AVX2-NEXT: %5(<8 x s16>), %6(<8 x s16>) = G_UNMERGE_VALUES %1(<16 x s16>)
-# NOT_AVX2-NEXT: %7(<8 x s16>) = G_ADD %3, %5
-# NOT_AVX2-NEXT: %8(<8 x s16>) = G_ADD %4, %6
-# NOT_AVX2-NEXT: %2(<16 x s16>) = G_MERGE_VALUES %7(<8 x s16>), %8(<8 x s16>)
+# NOT_AVX2: %0:_(<16 x s16>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %1:_(<16 x s16>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %3:_(<8 x s16>), %4:_(<8 x s16>) = G_UNMERGE_VALUES %0(<16 x s16>)
+# NOT_AVX2-NEXT: %5:_(<8 x s16>), %6:_(<8 x s16>) = G_UNMERGE_VALUES %1(<16 x s16>)
+# NOT_AVX2-NEXT: %7:_(<8 x s16>) = G_ADD %3, %5
+# NOT_AVX2-NEXT: %8:_(<8 x s16>) = G_ADD %4, %6
+# NOT_AVX2-NEXT: %2:_(<16 x s16>) = G_MERGE_VALUES %7(<8 x s16>), %8(<8 x s16>)
# NOT_AVX2-NEXT: RET 0
#
-# AVX2: %0(<16 x s16>) = IMPLICIT_DEF
-# AVX2-NEXT: %1(<16 x s16>) = IMPLICIT_DEF
-# AVX2-NEXT: %2(<16 x s16>) = G_ADD %0, %1
+# AVX2: %0:_(<16 x s16>) = IMPLICIT_DEF
+# AVX2-NEXT: %1:_(<16 x s16>) = IMPLICIT_DEF
+# AVX2-NEXT: %2:_(<16 x s16>) = G_ADD %0, %1
# AVX2-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -100,18 +100,18 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# NOT_AVX2: %0(<8 x s32>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %1(<8 x s32>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %3(<4 x s32>), %4(<4 x s32>) = G_UNMERGE_VALUES %0(<8 x s32>)
-# NOT_AVX2-NEXT: %5(<4 x s32>), %6(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
-# NOT_AVX2-NEXT: %7(<4 x s32>) = G_ADD %3, %5
-# NOT_AVX2-NEXT: %8(<4 x s32>) = G_ADD %4, %6
-# NOT_AVX2-NEXT: %2(<8 x s32>) = G_MERGE_VALUES %7(<4 x s32>), %8(<4 x s32>)
+# NOT_AVX2: %0:_(<8 x s32>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %1:_(<8 x s32>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %3:_(<4 x s32>), %4:_(<4 x s32>) = G_UNMERGE_VALUES %0(<8 x s32>)
+# NOT_AVX2-NEXT: %5:_(<4 x s32>), %6:_(<4 x s32>) = G_UNMERGE_VALUES %1(<8 x s32>)
+# NOT_AVX2-NEXT: %7:_(<4 x s32>) = G_ADD %3, %5
+# NOT_AVX2-NEXT: %8:_(<4 x s32>) = G_ADD %4, %6
+# NOT_AVX2-NEXT: %2:_(<8 x s32>) = G_MERGE_VALUES %7(<4 x s32>), %8(<4 x s32>)
# NOT_AVX2-NEXT: RET 0
#
-# AVX2: %0(<8 x s32>) = IMPLICIT_DEF
-# AVX2-NEXT: %1(<8 x s32>) = IMPLICIT_DEF
-# AVX2-NEXT: %2(<8 x s32>) = G_ADD %0, %1
+# AVX2: %0:_(<8 x s32>) = IMPLICIT_DEF
+# AVX2-NEXT: %1:_(<8 x s32>) = IMPLICIT_DEF
+# AVX2-NEXT: %2:_(<8 x s32>) = G_ADD %0, %1
# AVX2-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -133,18 +133,18 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# NOT_AVX2: %0(<4 x s64>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %1(<4 x s64>) = IMPLICIT_DEF
-# NOT_AVX2-NEXT: %3(<2 x s64>), %4(<2 x s64>) = G_UNMERGE_VALUES %0(<4 x s64>)
-# NOT_AVX2-NEXT: %5(<2 x s64>), %6(<2 x s64>) = G_UNMERGE_VALUES %1(<4 x s64>)
-# NOT_AVX2-NEXT: %7(<2 x s64>) = G_ADD %3, %5
-# NOT_AVX2-NEXT: %8(<2 x s64>) = G_ADD %4, %6
-# NOT_AVX2-NEXT: %2(<4 x s64>) = G_MERGE_VALUES %7(<2 x s64>), %8(<2 x s64>)
+# NOT_AVX2: %0:_(<4 x s64>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %1:_(<4 x s64>) = IMPLICIT_DEF
+# NOT_AVX2-NEXT: %3:_(<2 x s64>), %4:_(<2 x s64>) = G_UNMERGE_VALUES %0(<4 x s64>)
+# NOT_AVX2-NEXT: %5:_(<2 x s64>), %6:_(<2 x s64>) = G_UNMERGE_VALUES %1(<4 x s64>)
+# NOT_AVX2-NEXT: %7:_(<2 x s64>) = G_ADD %3, %5
+# NOT_AVX2-NEXT: %8:_(<2 x s64>) = G_ADD %4, %6
+# NOT_AVX2-NEXT: %2:_(<4 x s64>) = G_MERGE_VALUES %7(<2 x s64>), %8(<2 x s64>)
# NOT_AVX2-NEXT: RET 0
#
-# AVX2: %0(<4 x s64>) = IMPLICIT_DEF
-# AVX2-NEXT: %1(<4 x s64>) = IMPLICIT_DEF
-# AVX2-NEXT: %2(<4 x s64>) = G_ADD %0, %1
+# AVX2: %0:_(<4 x s64>) = IMPLICIT_DEF
+# AVX2-NEXT: %1:_(<4 x s64>) = IMPLICIT_DEF
+# AVX2-NEXT: %2:_(<4 x s64>) = G_ADD %0, %1
# AVX2-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v512.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v512.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v512.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add-v512.mir Tue Oct 24 11:04:54 2017
@@ -38,29 +38,29 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# AVX1: %0(<64 x s8>) = IMPLICIT_DEF
-# AVX1-NEXT: %1(<64 x s8>) = IMPLICIT_DEF
-# AVX1-NEXT: %3(<16 x s8>), %4(<16 x s8>), %5(<16 x s8>), %6(<16 x s8>) = G_UNMERGE_VALUES %0(<64 x s8>)
-# AVX1-NEXT: %7(<16 x s8>), %8(<16 x s8>), %9(<16 x s8>), %10(<16 x s8>) = G_UNMERGE_VALUES %1(<64 x s8>)
-# AVX1-NEXT: %11(<16 x s8>) = G_ADD %3, %7
-# AVX1-NEXT: %12(<16 x s8>) = G_ADD %4, %8
-# AVX1-NEXT: %13(<16 x s8>) = G_ADD %5, %9
-# AVX1-NEXT: %14(<16 x s8>) = G_ADD %6, %10
-# AVX1-NEXT: %2(<64 x s8>) = G_MERGE_VALUES %11(<16 x s8>), %12(<16 x s8>), %13(<16 x s8>), %14(<16 x s8>)
+# AVX1: %0:_(<64 x s8>) = IMPLICIT_DEF
+# AVX1-NEXT: %1:_(<64 x s8>) = IMPLICIT_DEF
+# AVX1-NEXT: %3:_(<16 x s8>), %4:_(<16 x s8>), %5:_(<16 x s8>), %6:_(<16 x s8>) = G_UNMERGE_VALUES %0(<64 x s8>)
+# AVX1-NEXT: %7:_(<16 x s8>), %8:_(<16 x s8>), %9:_(<16 x s8>), %10:_(<16 x s8>) = G_UNMERGE_VALUES %1(<64 x s8>)
+# AVX1-NEXT: %11:_(<16 x s8>) = G_ADD %3, %7
+# AVX1-NEXT: %12:_(<16 x s8>) = G_ADD %4, %8
+# AVX1-NEXT: %13:_(<16 x s8>) = G_ADD %5, %9
+# AVX1-NEXT: %14:_(<16 x s8>) = G_ADD %6, %10
+# AVX1-NEXT: %2:_(<64 x s8>) = G_MERGE_VALUES %11(<16 x s8>), %12(<16 x s8>), %13(<16 x s8>), %14(<16 x s8>)
# AVX1-NEXT: RET 0
#
-# AVX512F: %0(<64 x s8>) = IMPLICIT_DEF
-# AVX512F-NEXT: %1(<64 x s8>) = IMPLICIT_DEF
-# AVX512F-NEXT: %3(<32 x s8>), %4(<32 x s8>) = G_UNMERGE_VALUES %0(<64 x s8>)
-# AVX512F-NEXT: %5(<32 x s8>), %6(<32 x s8>) = G_UNMERGE_VALUES %1(<64 x s8>)
-# AVX512F-NEXT: %7(<32 x s8>) = G_ADD %3, %5
-# AVX512F-NEXT: %8(<32 x s8>) = G_ADD %4, %6
-# AVX512F-NEXT: %2(<64 x s8>) = G_MERGE_VALUES %7(<32 x s8>), %8(<32 x s8>)
+# AVX512F: %0:_(<64 x s8>) = IMPLICIT_DEF
+# AVX512F-NEXT: %1:_(<64 x s8>) = IMPLICIT_DEF
+# AVX512F-NEXT: %3:_(<32 x s8>), %4:_(<32 x s8>) = G_UNMERGE_VALUES %0(<64 x s8>)
+# AVX512F-NEXT: %5:_(<32 x s8>), %6:_(<32 x s8>) = G_UNMERGE_VALUES %1(<64 x s8>)
+# AVX512F-NEXT: %7:_(<32 x s8>) = G_ADD %3, %5
+# AVX512F-NEXT: %8:_(<32 x s8>) = G_ADD %4, %6
+# AVX512F-NEXT: %2:_(<64 x s8>) = G_MERGE_VALUES %7(<32 x s8>), %8(<32 x s8>)
# AVX512F-NEXT: RET 0
#
-# AVX512BW: %0(<64 x s8>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %1(<64 x s8>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %2(<64 x s8>) = G_ADD %0, %1
+# AVX512BW: %0:_(<64 x s8>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %1:_(<64 x s8>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %2:_(<64 x s8>) = G_ADD %0, %1
# AVX512BW-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -82,29 +82,29 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# AVX1: %0(<32 x s16>) = IMPLICIT_DEF
-# AVX1-NEXT: %1(<32 x s16>) = IMPLICIT_DEF
-# AVX1-NEXT: %3(<8 x s16>), %4(<8 x s16>), %5(<8 x s16>), %6(<8 x s16>) = G_UNMERGE_VALUES %0(<32 x s16>)
-# AVX1-NEXT: %7(<8 x s16>), %8(<8 x s16>), %9(<8 x s16>), %10(<8 x s16>) = G_UNMERGE_VALUES %1(<32 x s16>)
-# AVX1-NEXT: %11(<8 x s16>) = G_ADD %3, %7
-# AVX1-NEXT: %12(<8 x s16>) = G_ADD %4, %8
-# AVX1-NEXT: %13(<8 x s16>) = G_ADD %5, %9
-# AVX1-NEXT: %14(<8 x s16>) = G_ADD %6, %10
-# AVX1-NEXT: %2(<32 x s16>) = G_MERGE_VALUES %11(<8 x s16>), %12(<8 x s16>), %13(<8 x s16>), %14(<8 x s16>)
+# AVX1: %0:_(<32 x s16>) = IMPLICIT_DEF
+# AVX1-NEXT: %1:_(<32 x s16>) = IMPLICIT_DEF
+# AVX1-NEXT: %3:_(<8 x s16>), %4:_(<8 x s16>), %5:_(<8 x s16>), %6:_(<8 x s16>) = G_UNMERGE_VALUES %0(<32 x s16>)
+# AVX1-NEXT: %7:_(<8 x s16>), %8:_(<8 x s16>), %9:_(<8 x s16>), %10:_(<8 x s16>) = G_UNMERGE_VALUES %1(<32 x s16>)
+# AVX1-NEXT: %11:_(<8 x s16>) = G_ADD %3, %7
+# AVX1-NEXT: %12:_(<8 x s16>) = G_ADD %4, %8
+# AVX1-NEXT: %13:_(<8 x s16>) = G_ADD %5, %9
+# AVX1-NEXT: %14:_(<8 x s16>) = G_ADD %6, %10
+# AVX1-NEXT: %2:_(<32 x s16>) = G_MERGE_VALUES %11(<8 x s16>), %12(<8 x s16>), %13(<8 x s16>), %14(<8 x s16>)
# AVX1-NEXT: RET 0
#
-# AVX512F: %0(<32 x s16>) = IMPLICIT_DEF
-# AVX512F-NEXT: %1(<32 x s16>) = IMPLICIT_DEF
-# AVX512F-NEXT: %3(<16 x s16>), %4(<16 x s16>) = G_UNMERGE_VALUES %0(<32 x s16>)
-# AVX512F-NEXT: %5(<16 x s16>), %6(<16 x s16>) = G_UNMERGE_VALUES %1(<32 x s16>)
-# AVX512F-NEXT: %7(<16 x s16>) = G_ADD %3, %5
-# AVX512F-NEXT: %8(<16 x s16>) = G_ADD %4, %6
-# AVX512F-NEXT: %2(<32 x s16>) = G_MERGE_VALUES %7(<16 x s16>), %8(<16 x s16>)
+# AVX512F: %0:_(<32 x s16>) = IMPLICIT_DEF
+# AVX512F-NEXT: %1:_(<32 x s16>) = IMPLICIT_DEF
+# AVX512F-NEXT: %3:_(<16 x s16>), %4:_(<16 x s16>) = G_UNMERGE_VALUES %0(<32 x s16>)
+# AVX512F-NEXT: %5:_(<16 x s16>), %6:_(<16 x s16>) = G_UNMERGE_VALUES %1(<32 x s16>)
+# AVX512F-NEXT: %7:_(<16 x s16>) = G_ADD %3, %5
+# AVX512F-NEXT: %8:_(<16 x s16>) = G_ADD %4, %6
+# AVX512F-NEXT: %2:_(<32 x s16>) = G_MERGE_VALUES %7(<16 x s16>), %8(<16 x s16>)
# AVX512F-NEXT: RET 0
#
-# AVX512BW: %0(<32 x s16>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %1(<32 x s16>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %2(<32 x s16>) = G_ADD %0, %1
+# AVX512BW: %0:_(<32 x s16>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %1:_(<32 x s16>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %2:_(<32 x s16>) = G_ADD %0, %1
# AVX512BW-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -126,25 +126,25 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# AVX1: %0(<16 x s32>) = IMPLICIT_DEF
-# AVX1-NEXT: %1(<16 x s32>) = IMPLICIT_DEF
-# AVX1-NEXT: %3(<4 x s32>), %4(<4 x s32>), %5(<4 x s32>), %6(<4 x s32>) = G_UNMERGE_VALUES %0(<16 x s32>)
-# AVX1-NEXT: %7(<4 x s32>), %8(<4 x s32>), %9(<4 x s32>), %10(<4 x s32>) = G_UNMERGE_VALUES %1(<16 x s32>)
-# AVX1-NEXT: %11(<4 x s32>) = G_ADD %3, %7
-# AVX1-NEXT: %12(<4 x s32>) = G_ADD %4, %8
-# AVX1-NEXT: %13(<4 x s32>) = G_ADD %5, %9
-# AVX1-NEXT: %14(<4 x s32>) = G_ADD %6, %10
-# AVX1-NEXT: %2(<16 x s32>) = G_MERGE_VALUES %11(<4 x s32>), %12(<4 x s32>), %13(<4 x s32>), %14(<4 x s32>)
+# AVX1: %0:_(<16 x s32>) = IMPLICIT_DEF
+# AVX1-NEXT: %1:_(<16 x s32>) = IMPLICIT_DEF
+# AVX1-NEXT: %3:_(<4 x s32>), %4:_(<4 x s32>), %5:_(<4 x s32>), %6:_(<4 x s32>) = G_UNMERGE_VALUES %0(<16 x s32>)
+# AVX1-NEXT: %7:_(<4 x s32>), %8:_(<4 x s32>), %9:_(<4 x s32>), %10:_(<4 x s32>) = G_UNMERGE_VALUES %1(<16 x s32>)
+# AVX1-NEXT: %11:_(<4 x s32>) = G_ADD %3, %7
+# AVX1-NEXT: %12:_(<4 x s32>) = G_ADD %4, %8
+# AVX1-NEXT: %13:_(<4 x s32>) = G_ADD %5, %9
+# AVX1-NEXT: %14:_(<4 x s32>) = G_ADD %6, %10
+# AVX1-NEXT: %2:_(<16 x s32>) = G_MERGE_VALUES %11(<4 x s32>), %12(<4 x s32>), %13(<4 x s32>), %14(<4 x s32>)
# AVX1-NEXT: RET 0
#
-# AVX512F: %0(<16 x s32>) = IMPLICIT_DEF
-# AVX512F-NEXT: %1(<16 x s32>) = IMPLICIT_DEF
-# AVX512F-NEXT: %2(<16 x s32>) = G_ADD %0, %1
+# AVX512F: %0:_(<16 x s32>) = IMPLICIT_DEF
+# AVX512F-NEXT: %1:_(<16 x s32>) = IMPLICIT_DEF
+# AVX512F-NEXT: %2:_(<16 x s32>) = G_ADD %0, %1
# AVX512F-NEXT: RET 0
#
-# AVX512BW: %0(<16 x s32>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %1(<16 x s32>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %2(<16 x s32>) = G_ADD %0, %1
+# AVX512BW: %0:_(<16 x s32>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %1:_(<16 x s32>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %2:_(<16 x s32>) = G_ADD %0, %1
# AVX512BW-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -166,25 +166,25 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# AVX1: %0(<8 x s64>) = IMPLICIT_DEF
-# AVX1-NEXT: %1(<8 x s64>) = IMPLICIT_DEF
-# AVX1-NEXT: %3(<2 x s64>), %4(<2 x s64>), %5(<2 x s64>), %6(<2 x s64>) = G_UNMERGE_VALUES %0(<8 x s64>)
-# AVX1-NEXT: %7(<2 x s64>), %8(<2 x s64>), %9(<2 x s64>), %10(<2 x s64>) = G_UNMERGE_VALUES %1(<8 x s64>)
-# AVX1-NEXT: %11(<2 x s64>) = G_ADD %3, %7
-# AVX1-NEXT: %12(<2 x s64>) = G_ADD %4, %8
-# AVX1-NEXT: %13(<2 x s64>) = G_ADD %5, %9
-# AVX1-NEXT: %14(<2 x s64>) = G_ADD %6, %10
-# AVX1-NEXT: %2(<8 x s64>) = G_MERGE_VALUES %11(<2 x s64>), %12(<2 x s64>), %13(<2 x s64>), %14(<2 x s64>)
+# AVX1: %0:_(<8 x s64>) = IMPLICIT_DEF
+# AVX1-NEXT: %1:_(<8 x s64>) = IMPLICIT_DEF
+# AVX1-NEXT: %3:_(<2 x s64>), %4:_(<2 x s64>), %5:_(<2 x s64>), %6:_(<2 x s64>) = G_UNMERGE_VALUES %0(<8 x s64>)
+# AVX1-NEXT: %7:_(<2 x s64>), %8:_(<2 x s64>), %9:_(<2 x s64>), %10:_(<2 x s64>) = G_UNMERGE_VALUES %1(<8 x s64>)
+# AVX1-NEXT: %11:_(<2 x s64>) = G_ADD %3, %7
+# AVX1-NEXT: %12:_(<2 x s64>) = G_ADD %4, %8
+# AVX1-NEXT: %13:_(<2 x s64>) = G_ADD %5, %9
+# AVX1-NEXT: %14:_(<2 x s64>) = G_ADD %6, %10
+# AVX1-NEXT: %2:_(<8 x s64>) = G_MERGE_VALUES %11(<2 x s64>), %12(<2 x s64>), %13(<2 x s64>), %14(<2 x s64>)
# AVX1-NEXT: RET 0
#
-# AVX512F: %0(<8 x s64>) = IMPLICIT_DEF
-# AVX512F-NEXT: %1(<8 x s64>) = IMPLICIT_DEF
-# AVX512F-NEXT: %2(<8 x s64>) = G_ADD %0, %1
+# AVX512F: %0:_(<8 x s64>) = IMPLICIT_DEF
+# AVX512F-NEXT: %1:_(<8 x s64>) = IMPLICIT_DEF
+# AVX512F-NEXT: %2:_(<8 x s64>) = G_ADD %0, %1
# AVX512F-NEXT: RET 0
#
-# AVX512BW: %0(<8 x s64>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %1(<8 x s64>) = IMPLICIT_DEF
-# AVX512BW-NEXT: %2(<8 x s64>) = G_ADD %0, %1
+# AVX512BW: %0:_(<8 x s64>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %1:_(<8 x s64>) = IMPLICIT_DEF
+# AVX512BW-NEXT: %2:_(<8 x s64>) = G_ADD %0, %1
# AVX512BW-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -212,42 +212,42 @@ registers:
- { id: 6, class: _ }
- { id: 7, class: _ }
- { id: 8, class: _ }
-# AVX1: %2(<32 x s8>) = COPY %ymm0
-# AVX1-NEXT: %3(<32 x s8>) = COPY %ymm1
-# AVX1-NEXT: %4(<32 x s8>) = COPY %ymm2
-# AVX1-NEXT: %5(<32 x s8>) = COPY %ymm3
-# AVX1-NEXT: %9(<16 x s8>), %10(<16 x s8>) = G_UNMERGE_VALUES %2(<32 x s8>)
-# AVX1-NEXT: %11(<16 x s8>), %12(<16 x s8>) = G_UNMERGE_VALUES %3(<32 x s8>)
-# AVX1-NEXT: %13(<16 x s8>), %14(<16 x s8>) = G_UNMERGE_VALUES %4(<32 x s8>)
-# AVX1-NEXT: %15(<16 x s8>), %16(<16 x s8>) = G_UNMERGE_VALUES %5(<32 x s8>)
-# AVX1-NEXT: %17(<16 x s8>) = G_ADD %9, %13
-# AVX1-NEXT: %18(<16 x s8>) = G_ADD %10, %14
-# AVX1-NEXT: %19(<16 x s8>) = G_ADD %11, %15
-# AVX1-NEXT: %20(<16 x s8>) = G_ADD %12, %16
-# AVX1-NEXT: %7(<32 x s8>) = G_MERGE_VALUES %17(<16 x s8>), %18(<16 x s8>)
-# AVX1-NEXT: %8(<32 x s8>) = G_MERGE_VALUES %19(<16 x s8>), %20(<16 x s8>)
+# AVX1: %2:_(<32 x s8>) = COPY %ymm0
+# AVX1-NEXT: %3:_(<32 x s8>) = COPY %ymm1
+# AVX1-NEXT: %4:_(<32 x s8>) = COPY %ymm2
+# AVX1-NEXT: %5:_(<32 x s8>) = COPY %ymm3
+# AVX1-NEXT: %9:_(<16 x s8>), %10:_(<16 x s8>) = G_UNMERGE_VALUES %2(<32 x s8>)
+# AVX1-NEXT: %11:_(<16 x s8>), %12:_(<16 x s8>) = G_UNMERGE_VALUES %3(<32 x s8>)
+# AVX1-NEXT: %13:_(<16 x s8>), %14:_(<16 x s8>) = G_UNMERGE_VALUES %4(<32 x s8>)
+# AVX1-NEXT: %15:_(<16 x s8>), %16:_(<16 x s8>) = G_UNMERGE_VALUES %5(<32 x s8>)
+# AVX1-NEXT: %17:_(<16 x s8>) = G_ADD %9, %13
+# AVX1-NEXT: %18:_(<16 x s8>) = G_ADD %10, %14
+# AVX1-NEXT: %19:_(<16 x s8>) = G_ADD %11, %15
+# AVX1-NEXT: %20:_(<16 x s8>) = G_ADD %12, %16
+# AVX1-NEXT: %7:_(<32 x s8>) = G_MERGE_VALUES %17(<16 x s8>), %18(<16 x s8>)
+# AVX1-NEXT: %8:_(<32 x s8>) = G_MERGE_VALUES %19(<16 x s8>), %20(<16 x s8>)
# AVX1-NEXT: %ymm0 = COPY %7(<32 x s8>)
# AVX1-NEXT: %ymm1 = COPY %8(<32 x s8>)
# AVX1-NEXT: RET 0, implicit %ymm0, implicit %ymm1
#
-# AVX512F: %2(<32 x s8>) = COPY %ymm0
-# AVX512F-NEXT: %3(<32 x s8>) = COPY %ymm1
-# AVX512F-NEXT: %4(<32 x s8>) = COPY %ymm2
-# AVX512F-NEXT: %5(<32 x s8>) = COPY %ymm3
-# AVX512F-NEXT: %13(<32 x s8>) = G_ADD %2, %4
-# AVX512F-NEXT: %14(<32 x s8>) = G_ADD %3, %5
+# AVX512F: %2:_(<32 x s8>) = COPY %ymm0
+# AVX512F-NEXT: %3:_(<32 x s8>) = COPY %ymm1
+# AVX512F-NEXT: %4:_(<32 x s8>) = COPY %ymm2
+# AVX512F-NEXT: %5:_(<32 x s8>) = COPY %ymm3
+# AVX512F-NEXT: %13:_(<32 x s8>) = G_ADD %2, %4
+# AVX512F-NEXT: %14:_(<32 x s8>) = G_ADD %3, %5
# AVX512F-NEXT: %ymm0 = COPY %13(<32 x s8>)
# AVX512F-NEXT: %ymm1 = COPY %14(<32 x s8>)
# AVX512F-NEXT: RET 0, implicit %ymm0, implicit %ymm1
#
-# AVX512BW: %2(<32 x s8>) = COPY %ymm0
-# AVX512BW-NEXT: %3(<32 x s8>) = COPY %ymm1
-# AVX512BW-NEXT: %4(<32 x s8>) = COPY %ymm2
-# AVX512BW-NEXT: %5(<32 x s8>) = COPY %ymm3
-# AVX512BW-NEXT: %0(<64 x s8>) = G_MERGE_VALUES %2(<32 x s8>), %3(<32 x s8>)
-# AVX512BW-NEXT: %1(<64 x s8>) = G_MERGE_VALUES %4(<32 x s8>), %5(<32 x s8>)
-# AVX512BW-NEXT: %6(<64 x s8>) = G_ADD %0, %1
-# AVX512BW-NEXT: %7(<32 x s8>), %8(<32 x s8>) = G_UNMERGE_VALUES %6(<64 x s8>)
+# AVX512BW: %2:_(<32 x s8>) = COPY %ymm0
+# AVX512BW-NEXT: %3:_(<32 x s8>) = COPY %ymm1
+# AVX512BW-NEXT: %4:_(<32 x s8>) = COPY %ymm2
+# AVX512BW-NEXT: %5:_(<32 x s8>) = COPY %ymm3
+# AVX512BW-NEXT: %0:_(<64 x s8>) = G_MERGE_VALUES %2(<32 x s8>), %3(<32 x s8>)
+# AVX512BW-NEXT: %1:_(<64 x s8>) = G_MERGE_VALUES %4(<32 x s8>), %5(<32 x s8>)
+# AVX512BW-NEXT: %6:_(<64 x s8>) = G_ADD %0, %1
+# AVX512BW-NEXT: %7:_(<32 x s8>), %8:_(<32 x s8>) = G_UNMERGE_VALUES %6(<64 x s8>)
# AVX512BW-NEXT: %ymm0 = COPY %7(<32 x s8>)
# AVX512BW-NEXT: %ymm1 = COPY %8(<32 x s8>)
# AVX512BW-NEXT: RET 0, implicit %ymm0, implicit %ymm1
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-add.mir Tue Oct 24 11:04:54 2017
@@ -41,9 +41,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(s32) = IMPLICIT_DEF
-# ALL-NEXT: %1(s32) = IMPLICIT_DEF
-# ALL-NEXT: %2(s32) = G_ADD %0, %1
+# ALL: %0:_(s32) = IMPLICIT_DEF
+# ALL-NEXT: %1:_(s32) = IMPLICIT_DEF
+# ALL-NEXT: %2:_(s32) = G_ADD %0, %1
# ALL-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -63,20 +63,20 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# X64: %0(s64) = IMPLICIT_DEF
-# X64-NEXT: %1(s64) = IMPLICIT_DEF
-# X64-NEXT: %2(s64) = G_ADD %0, %1
+# X64: %0:_(s64) = IMPLICIT_DEF
+# X64-NEXT: %1:_(s64) = IMPLICIT_DEF
+# X64-NEXT: %2:_(s64) = G_ADD %0, %1
# X64-NEXT: RET 0
#
-# X32: %0(s64) = IMPLICIT_DEF
-# X32-NEXT: %1(s64) = IMPLICIT_DEF
-# X32-NEXT: %3(s32), %4(s32) = G_UNMERGE_VALUES %0(s64)
-# X32-NEXT: %5(s32), %6(s32) = G_UNMERGE_VALUES %1(s64)
-# X32-NEXT: %12(s8) = G_CONSTANT i8 0
-# X32-NEXT: %7(s1) = G_TRUNC %12(s8)
-# X32-NEXT: %8(s32), %9(s1) = G_UADDE %3, %5, %7
-# X32-NEXT: %10(s32), %11(s1) = G_UADDE %4, %6, %9
-# X32-NEXT: %2(s64) = G_MERGE_VALUES %8(s32), %10(s32)
+# X32: %0:_(s64) = IMPLICIT_DEF
+# X32-NEXT: %1:_(s64) = IMPLICIT_DEF
+# X32-NEXT: %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %0(s64)
+# X32-NEXT: %5:_(s32), %6:_(s32) = G_UNMERGE_VALUES %1(s64)
+# X32-NEXT: %12:_(s8) = G_CONSTANT i8 0
+# X32-NEXT: %7:_(s1) = G_TRUNC %12(s8)
+# X32-NEXT: %8:_(s32), %9:_(s1) = G_UADDE %3, %5, %7
+# X32-NEXT: %10:_(s32), %11:_(s1) = G_UADDE %4, %6, %9
+# X32-NEXT: %2:_(s64) = G_MERGE_VALUES %8(s32), %10(s32)
# X32-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir Tue Oct 24 11:04:54 2017
@@ -41,11 +41,11 @@ body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_and_i1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edx
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[TRUNC1:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[AND:%[0-9]+]](s8) = G_AND [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s1) = G_TRUNC [[AND]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edx
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[AND:%[0-9]+]]:_(s8) = G_AND [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[AND]](s8)
; CHECK: RET 0
%0(s32) = COPY %edx
%1(s1) = G_TRUNC %0(s32)
@@ -67,8 +67,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_and_i8
- ; CHECK: [[DEF:%[0-9]+]](s8) = IMPLICIT_DEF
- ; CHECK: [[AND:%[0-9]+]](s8) = G_AND [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s8) = IMPLICIT_DEF
+ ; CHECK: [[AND:%[0-9]+]]:_(s8) = G_AND [[DEF]], [[DEF]]
; CHECK: %al = COPY [[AND]](s8)
; CHECK: RET 0, implicit %al
%0(s8) = IMPLICIT_DEF
@@ -92,8 +92,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_and_i16
- ; CHECK: [[DEF:%[0-9]+]](s16) = IMPLICIT_DEF
- ; CHECK: [[AND:%[0-9]+]](s16) = G_AND [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s16) = IMPLICIT_DEF
+ ; CHECK: [[AND:%[0-9]+]]:_(s16) = G_AND [[DEF]], [[DEF]]
; CHECK: %ax = COPY [[AND]](s16)
; CHECK: RET 0, implicit %ax
%0(s16) = IMPLICIT_DEF
@@ -117,8 +117,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_and_i32
- ; CHECK: [[DEF:%[0-9]+]](s32) = IMPLICIT_DEF
- ; CHECK: [[AND:%[0-9]+]](s32) = G_AND [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s32) = IMPLICIT_DEF
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[DEF]], [[DEF]]
; CHECK: %eax = COPY [[AND]](s32)
; CHECK: RET 0, implicit %eax
%0(s32) = IMPLICIT_DEF
@@ -142,8 +142,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_and_i64
- ; CHECK: [[DEF:%[0-9]+]](s64) = IMPLICIT_DEF
- ; CHECK: [[AND:%[0-9]+]](s64) = G_AND [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s64) = IMPLICIT_DEF
+ ; CHECK: [[AND:%[0-9]+]]:_(s64) = G_AND [[DEF]], [[DEF]]
; CHECK: %rax = COPY [[AND]](s64)
; CHECK: RET 0, implicit %rax
%0(s64) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-brcond.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-brcond.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-brcond.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-brcond.mir Tue Oct 24 11:04:54 2017
@@ -26,7 +26,7 @@ registers:
- { id: 1, class: _, preferred-register: '' }
- { id: 2, class: _, preferred-register: '' }
- { id: 3, class: _, preferred-register: '' }
-# ALL: %1(s1) = G_TRUNC %0(s32)
+# ALL: %1:_(s1) = G_TRUNC %0(s32)
# ALL-NEXT: G_BRCOND %1(s1), %[[TRUE:bb.[0-9]+.if.then]]
# ALL-NEXT: G_BR %[[FALSE:bb.[0-9]+.if.else]]
# ALL: [[TRUE]]:
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-cmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-cmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-cmp.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-cmp.mir Tue Oct 24 11:04:54 2017
@@ -48,10 +48,10 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_cmp_i8
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[COPY1:%[0-9]+]](s8) = COPY %sil
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ult), [[COPY]](s8), [[COPY1]]
- ; CHECK: [[ZEXT:%[0-9]+]](s32) = G_ZEXT [[ICMP]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s8) = COPY %sil
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ult), [[COPY]](s8), [[COPY1]]
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[ICMP]](s1)
; CHECK: %eax = COPY [[ZEXT]](s32)
; CHECK: RET 0, implicit %eax
%0(s8) = COPY %dil
@@ -77,10 +77,10 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_cmp_i16
- ; CHECK: [[COPY:%[0-9]+]](s16) = COPY %di
- ; CHECK: [[COPY1:%[0-9]+]](s16) = COPY %si
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ult), [[COPY]](s16), [[COPY1]]
- ; CHECK: [[ZEXT:%[0-9]+]](s32) = G_ZEXT [[ICMP]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s16) = COPY %di
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s16) = COPY %si
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ult), [[COPY]](s16), [[COPY1]]
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[ICMP]](s1)
; CHECK: %eax = COPY [[ZEXT]](s32)
; CHECK: RET 0, implicit %eax
%0(s16) = COPY %di
@@ -106,10 +106,10 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_cmp_i32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %esi
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ult), [[COPY]](s32), [[COPY1]]
- ; CHECK: [[ZEXT:%[0-9]+]](s32) = G_ZEXT [[ICMP]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %esi
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ult), [[COPY]](s32), [[COPY1]]
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[ICMP]](s1)
; CHECK: %eax = COPY [[ZEXT]](s32)
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -135,10 +135,10 @@ body: |
liveins: %rdi, %rsi
; CHECK-LABEL: name: test_cmp_i64
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %rdi
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %rsi
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ult), [[COPY]](s64), [[COPY1]]
- ; CHECK: [[ZEXT:%[0-9]+]](s32) = G_ZEXT [[ICMP]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %rdi
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %rsi
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ult), [[COPY]](s64), [[COPY1]]
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[ICMP]](s1)
; CHECK: %eax = COPY [[ZEXT]](s32)
; CHECK: RET 0, implicit %eax
%0(s64) = COPY %rdi
@@ -164,10 +164,10 @@ body: |
liveins: %rdi, %rsi
; CHECK-LABEL: name: test_cmp_p0
- ; CHECK: [[COPY:%[0-9]+]](p0) = COPY %rdi
- ; CHECK: [[COPY1:%[0-9]+]](p0) = COPY %rsi
- ; CHECK: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(ult), [[COPY]](p0), [[COPY1]]
- ; CHECK: [[ZEXT:%[0-9]+]](s32) = G_ZEXT [[ICMP]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY %rdi
+ ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY %rsi
+ ; CHECK: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(ult), [[COPY]](p0), [[COPY1]]
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s32) = G_ZEXT [[ICMP]](s1)
; CHECK: %eax = COPY [[ZEXT]](s32)
; CHECK: RET 0, implicit %eax
%0(p0) = COPY %rdi
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-constant.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-constant.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-constant.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-constant.mir Tue Oct 24 11:04:54 2017
@@ -1,7 +1,7 @@
# RUN: llc -mtriple=i386-linux-gnu -mattr=+sse2 -global-isel -run-pass=legalizer %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=X32
# RUN: llc -mtriple=x86_64-linux-gnu -global-isel -run-pass=legalizer %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=X64
---- |
+--- |
define void @test_constant() { ret void }
define void @test_fconstant() { ret void }
@@ -9,7 +9,7 @@
---
name: test_constant
# ALL-LABEL: name: test_constant
-registers:
+registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
@@ -17,24 +17,24 @@ registers:
- { id: 4, class: _ }
body: |
bb.1 (%ir-block.0):
- ; ALL: %5(s8) = G_CONSTANT i8 -1
- ; ALL: %0(s1) = G_TRUNC %5(s8)
+ ; ALL: %5:_(s8) = G_CONSTANT i8 -1
+ ; ALL: %0:_(s1) = G_TRUNC %5(s8)
%0(s1) = G_CONSTANT i1 1
- ; ALL: %1(s8) = G_CONSTANT i8 8
- %1(s8) = G_CONSTANT i8 8
+ ; ALL: %1:_(s8) = G_CONSTANT i8 8
+ %1(s8) = G_CONSTANT i8 8
- ; ALL: %2(s16) = G_CONSTANT i16 16
+ ; ALL: %2:_(s16) = G_CONSTANT i16 16
%2(s16) = G_CONSTANT i16 16
- ; ALL: %3(s32) = G_CONSTANT i32 32
+ ; ALL: %3:_(s32) = G_CONSTANT i32 32
%3(s32) = G_CONSTANT i32 32
- ; X64: %4(s64) = G_CONSTANT i64 64
-
- ; X32: %6(s32) = G_CONSTANT i32 64
- ; X32: %7(s32) = G_CONSTANT i32 0
- ; X32: %4(s64) = G_MERGE_VALUES %6(s32), %7(s32)
+ ; X64: %4:_(s64) = G_CONSTANT i64 64
+
+ ; X32: %6:_(s32) = G_CONSTANT i32 64
+ ; X32: %7:_(s32) = G_CONSTANT i32 0
+ ; X32: %4:_(s64) = G_MERGE_VALUES %6(s32), %7(s32)
%4(s64) = G_CONSTANT i64 64
RET 0
@@ -47,8 +47,8 @@ registers:
- { id: 1, class: _ }
body: |
bb.0:
- ; ALL: %0(s32) = G_FCONSTANT float 1.000000e+00
- ; ALL: %1(s64) = G_FCONSTANT double 2.000000e+00
+ ; ALL: %0:_(s32) = G_FCONSTANT float 1.000000e+00
+ ; ALL: %1:_(s64) = G_FCONSTANT double 2.000000e+00
%0(s32) = G_FCONSTANT float 1.0
%1(s64) = G_FCONSTANT double 2.0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext-x86-64.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext-x86-64.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext-x86-64.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext-x86-64.mir Tue Oct 24 11:04:54 2017
@@ -76,9 +76,9 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_sext_i1
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[COPY]](s8)
- ; CHECK: [[SEXT:%[0-9]+]](s64) = G_SEXT [[TRUNC]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[COPY]](s8)
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[TRUNC]](s1)
; CHECK: %rax = COPY [[SEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -101,8 +101,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_sext_i8
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[SEXT:%[0-9]+]](s64) = G_SEXT [[COPY]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[COPY]](s8)
; CHECK: %rax = COPY [[SEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -124,8 +124,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_sext_i16
- ; CHECK: [[COPY:%[0-9]+]](s16) = COPY %di
- ; CHECK: [[SEXT:%[0-9]+]](s64) = G_SEXT [[COPY]](s16)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s16) = COPY %di
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[COPY]](s16)
; CHECK: %rax = COPY [[SEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s16) = COPY %di
@@ -147,8 +147,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_sext_i32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; CHECK: [[SEXT:%[0-9]+]](s64) = G_SEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[COPY]](s32)
; CHECK: %rax = COPY [[SEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s32) = COPY %edi
@@ -171,9 +171,9 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_zext_i1
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[COPY]](s8)
- ; CHECK: [[ZEXT:%[0-9]+]](s64) = G_ZEXT [[TRUNC]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[COPY]](s8)
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[TRUNC]](s1)
; CHECK: %rax = COPY [[ZEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -196,8 +196,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_zext_i8
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[ZEXT:%[0-9]+]](s64) = G_ZEXT [[COPY]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY]](s8)
; CHECK: %rax = COPY [[ZEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -219,8 +219,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_zext_i16
- ; CHECK: [[COPY:%[0-9]+]](s16) = COPY %di
- ; CHECK: [[ZEXT:%[0-9]+]](s64) = G_ZEXT [[COPY]](s16)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s16) = COPY %di
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY]](s16)
; CHECK: %rax = COPY [[ZEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s16) = COPY %di
@@ -242,8 +242,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_zext_i32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; CHECK: [[ZEXT:%[0-9]+]](s64) = G_ZEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY]](s32)
; CHECK: %rax = COPY [[ZEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s32) = COPY %edi
@@ -266,9 +266,9 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_anyext_i1
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[COPY]](s8)
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[TRUNC]](s1)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[COPY]](s8)
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[TRUNC]](s1)
; CHECK: %rax = COPY [[ANYEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -291,8 +291,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_anyext_i8
- ; CHECK: [[COPY:%[0-9]+]](s8) = COPY %dil
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[COPY]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s8) = COPY %dil
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[COPY]](s8)
; CHECK: %rax = COPY [[ANYEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s8) = COPY %dil
@@ -314,8 +314,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_anyext_i16
- ; CHECK: [[COPY:%[0-9]+]](s16) = COPY %di
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[COPY]](s16)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s16) = COPY %di
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[COPY]](s16)
; CHECK: %rax = COPY [[ANYEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s16) = COPY %di
@@ -337,8 +337,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_anyext_i32
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; CHECK: [[ANYEXT:%[0-9]+]](s64) = G_ANYEXT [[COPY]](s32)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[COPY]](s32)
; CHECK: %rax = COPY [[ANYEXT]](s64)
; CHECK: RET 0, implicit %rax
%0(s32) = COPY %edi
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-ext.mir Tue Oct 24 11:04:54 2017
@@ -98,8 +98,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s8) = G_ZEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s8) = G_ZEXT %0(s1)
# ALL-NEXT: %al = COPY %1(s8)
# ALL-NEXT: RET 0, implicit %al
body: |
@@ -121,8 +121,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s16) = G_ZEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s16) = G_ZEXT %0(s1)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -145,9 +145,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s1) = G_TRUNC %0(s8)
-# ALL-NEXT: %2(s32) = G_ZEXT %1(s1)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s1) = G_TRUNC %0(s8)
+# ALL-NEXT: %2:_(s32) = G_ZEXT %1(s1)
# ALL-NEXT: %eax = COPY %2(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -170,8 +170,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s16) = G_ZEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s16) = G_ZEXT %0(s8)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -193,8 +193,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s32) = G_ZEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s32) = G_ZEXT %0(s8)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -216,8 +216,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s16) = COPY %di
-# ALL-NEXT: %1(s32) = G_ZEXT %0(s16)
+# ALL: %0:_(s16) = COPY %di
+# ALL-NEXT: %1:_(s32) = G_ZEXT %0(s16)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -239,8 +239,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s8) = G_SEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s8) = G_SEXT %0(s1)
# ALL-NEXT: %al = COPY %1(s8)
# ALL-NEXT: RET 0, implicit %al
body: |
@@ -262,8 +262,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s16) = G_SEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s16) = G_SEXT %0(s1)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -286,9 +286,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s1) = G_TRUNC %0(s8)
-# ALL-NEXT: %2(s32) = G_SEXT %1(s1)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s1) = G_TRUNC %0(s8)
+# ALL-NEXT: %2:_(s32) = G_SEXT %1(s1)
# ALL-NEXT: %eax = COPY %2(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -311,8 +311,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s16) = G_SEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s16) = G_SEXT %0(s8)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -334,8 +334,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s32) = G_SEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s32) = G_SEXT %0(s8)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -357,8 +357,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s16) = COPY %di
-# ALL-NEXT: %1(s32) = G_SEXT %0(s16)
+# ALL: %0:_(s16) = COPY %di
+# ALL-NEXT: %1:_(s32) = G_SEXT %0(s16)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -380,8 +380,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s8) = G_ANYEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s8) = G_ANYEXT %0(s1)
# ALL-NEXT: %al = COPY %1(s8)
# ALL-NEXT: RET 0, implicit %al
body: |
@@ -403,8 +403,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s1) = COPY %edi
-# ALL-NEXT: %1(s16) = G_ANYEXT %0(s1)
+# ALL: %0:_(s1) = COPY %edi
+# ALL-NEXT: %1:_(s16) = G_ANYEXT %0(s1)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -427,9 +427,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s1) = G_TRUNC %0(s8)
-# ALL-NEXT: %2(s32) = G_ANYEXT %1(s1)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s1) = G_TRUNC %0(s8)
+# ALL-NEXT: %2:_(s32) = G_ANYEXT %1(s1)
# ALL-NEXT: %eax = COPY %2(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -452,8 +452,8 @@ regBankSelected: false
registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s16) = G_ANYEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s16) = G_ANYEXT %0(s8)
# ALL-NEXT: %ax = COPY %1(s16)
# ALL-NEXT: RET 0, implicit %ax
body: |
@@ -475,8 +475,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s8) = COPY %dil
-# ALL-NEXT: %1(s32) = G_ANYEXT %0(s8)
+# ALL: %0:_(s8) = COPY %dil
+# ALL-NEXT: %1:_(s32) = G_ANYEXT %0(s8)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
@@ -498,8 +498,8 @@ regBankSelected: false
registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
-# ALL: %0(s16) = COPY %di
-# ALL-NEXT: %1(s32) = G_ANYEXT %0(s16)
+# ALL: %0:_(s16) = COPY %di
+# ALL-NEXT: %1:_(s32) = G_ANYEXT %0(s16)
# ALL-NEXT: %eax = COPY %1(s32)
# ALL-NEXT: RET 0, implicit %eax
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fadd-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fadd-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fadd-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fadd-scalar.mir Tue Oct 24 11:04:54 2017
@@ -31,9 +31,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fadd_float
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %xmm1
- ; CHECK: [[FADD:%[0-9]+]](s32) = G_FADD [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %xmm1
+ ; CHECK: [[FADD:%[0-9]+]]:_(s32) = G_FADD [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FADD]](s32)
; CHECK: RET 0, implicit %xmm0
%0(s32) = COPY %xmm0
@@ -61,9 +61,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fadd_double
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %xmm1
- ; CHECK: [[FADD:%[0-9]+]](s64) = G_FADD [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %xmm1
+ ; CHECK: [[FADD:%[0-9]+]]:_(s64) = G_FADD [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FADD]](s64)
; CHECK: RET 0, implicit %xmm0
%0(s64) = COPY %xmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fdiv-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fdiv-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fdiv-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fdiv-scalar.mir Tue Oct 24 11:04:54 2017
@@ -31,9 +31,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fdiv_float
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %xmm1
- ; CHECK: [[FDIV:%[0-9]+]](s32) = G_FDIV [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %xmm1
+ ; CHECK: [[FDIV:%[0-9]+]]:_(s32) = G_FDIV [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FDIV]](s32)
; CHECK: RET 0, implicit %xmm0
%0(s32) = COPY %xmm0
@@ -61,9 +61,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fdiv_double
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %xmm1
- ; CHECK: [[FDIV:%[0-9]+]](s64) = G_FDIV [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %xmm1
+ ; CHECK: [[FDIV:%[0-9]+]]:_(s64) = G_FDIV [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FDIV]](s64)
; CHECK: RET 0, implicit %xmm0
%0(s64) = COPY %xmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fmul-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fmul-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fmul-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fmul-scalar.mir Tue Oct 24 11:04:54 2017
@@ -31,9 +31,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fmul_float
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %xmm1
- ; CHECK: [[FMUL:%[0-9]+]](s32) = G_FMUL [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %xmm1
+ ; CHECK: [[FMUL:%[0-9]+]]:_(s32) = G_FMUL [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FMUL]](s32)
; CHECK: RET 0, implicit %xmm0
%0(s32) = COPY %xmm0
@@ -61,9 +61,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fmul_double
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %xmm1
- ; CHECK: [[FMUL:%[0-9]+]](s64) = G_FMUL [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %xmm1
+ ; CHECK: [[FMUL:%[0-9]+]]:_(s64) = G_FMUL [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FMUL]](s64)
; CHECK: RET 0, implicit %xmm0
%0(s64) = COPY %xmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fpext-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fpext-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fpext-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fpext-scalar.mir Tue Oct 24 11:04:54 2017
@@ -22,8 +22,8 @@ body: |
liveins: %xmm0
; ALL-LABEL: name: test
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %xmm0
- ; ALL: [[FPEXT:%[0-9]+]](s64) = G_FPEXT [[COPY]](s32)
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; ALL: [[FPEXT:%[0-9]+]]:_(s64) = G_FPEXT [[COPY]](s32)
; ALL: %xmm0 = COPY [[FPEXT]](s64)
; ALL: RET 0, implicit %xmm0
%0(s32) = COPY %xmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fsub-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fsub-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fsub-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-fsub-scalar.mir Tue Oct 24 11:04:54 2017
@@ -31,9 +31,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fsub_float
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %xmm1
- ; CHECK: [[FSUB:%[0-9]+]](s32) = G_FSUB [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %xmm1
+ ; CHECK: [[FSUB:%[0-9]+]]:_(s32) = G_FSUB [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FSUB]](s32)
; CHECK: RET 0, implicit %xmm0
%0(s32) = COPY %xmm0
@@ -61,9 +61,9 @@ body: |
liveins: %xmm0, %xmm1
; CHECK-LABEL: name: test_fsub_double
- ; CHECK: [[COPY:%[0-9]+]](s64) = COPY %xmm0
- ; CHECK: [[COPY1:%[0-9]+]](s64) = COPY %xmm1
- ; CHECK: [[FSUB:%[0-9]+]](s64) = G_FSUB [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY %xmm0
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY %xmm1
+ ; CHECK: [[FSUB:%[0-9]+]]:_(s64) = G_FSUB [[COPY]], [[COPY1]]
; CHECK: %xmm0 = COPY [[FSUB]](s64)
; CHECK: RET 0, implicit %xmm0
%0(s64) = COPY %xmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-gep.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-gep.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-gep.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-gep.mir Tue Oct 24 11:04:54 2017
@@ -32,10 +32,10 @@ registers:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_gep_i8
- ; CHECK: [[DEF:%[0-9]+]](p0) = IMPLICIT_DEF
- ; CHECK: [[C:%[0-9]+]](s8) = G_CONSTANT i8 20
- ; CHECK: [[SEXT:%[0-9]+]](s32) = G_SEXT [[C]](s8)
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[DEF]], [[SEXT]](s32)
+ ; CHECK: [[DEF:%[0-9]+]]:_(p0) = IMPLICIT_DEF
+ ; CHECK: [[C:%[0-9]+]]:_(s8) = G_CONSTANT i8 20
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s32) = G_SEXT [[C]](s8)
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[DEF]], [[SEXT]](s32)
; CHECK: RET 0
%0(p0) = IMPLICIT_DEF
%1(s8) = G_CONSTANT i8 20
@@ -52,10 +52,10 @@ registers:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_gep_i16
- ; CHECK: [[DEF:%[0-9]+]](p0) = IMPLICIT_DEF
- ; CHECK: [[C:%[0-9]+]](s16) = G_CONSTANT i16 20
- ; CHECK: [[SEXT:%[0-9]+]](s32) = G_SEXT [[C]](s16)
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[DEF]], [[SEXT]](s32)
+ ; CHECK: [[DEF:%[0-9]+]]:_(p0) = IMPLICIT_DEF
+ ; CHECK: [[C:%[0-9]+]]:_(s16) = G_CONSTANT i16 20
+ ; CHECK: [[SEXT:%[0-9]+]]:_(s32) = G_SEXT [[C]](s16)
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[DEF]], [[SEXT]](s32)
; CHECK: RET 0
%0(p0) = IMPLICIT_DEF
%1(s16) = G_CONSTANT i16 20
@@ -72,9 +72,9 @@ registers:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_gep_i32
- ; CHECK: [[DEF:%[0-9]+]](p0) = IMPLICIT_DEF
- ; CHECK: [[C:%[0-9]+]](s32) = G_CONSTANT i32 20
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[DEF]], [[C]](s32)
+ ; CHECK: [[DEF:%[0-9]+]]:_(p0) = IMPLICIT_DEF
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 20
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[DEF]], [[C]](s32)
; CHECK: RET 0
%0(p0) = IMPLICIT_DEF
%1(s32) = G_CONSTANT i32 20
@@ -91,9 +91,9 @@ registers:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_gep_i64
- ; CHECK: [[DEF:%[0-9]+]](p0) = IMPLICIT_DEF
- ; CHECK: [[C:%[0-9]+]](s64) = G_CONSTANT i64 20
- ; CHECK: [[GEP:%[0-9]+]](p0) = G_GEP [[DEF]], [[C]](s64)
+ ; CHECK: [[DEF:%[0-9]+]]:_(p0) = IMPLICIT_DEF
+ ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 20
+ ; CHECK: [[GEP:%[0-9]+]]:_(p0) = G_GEP [[DEF]], [[C]](s64)
; CHECK: RET 0
%0(p0) = IMPLICIT_DEF
%1(s64) = G_CONSTANT i64 20
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec256.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec256.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec256.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec256.mir Tue Oct 24 11:04:54 2017
@@ -15,9 +15,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<8 x s32>) = COPY %ymm0
-# ALL-NEXT: %1(<4 x s32>) = COPY %xmm1
-# ALL-NEXT: %2(<8 x s32>) = G_INSERT %0, %1(<4 x s32>), 0
+# ALL: %0:_(<8 x s32>) = COPY %ymm0
+# ALL-NEXT: %1:_(<4 x s32>) = COPY %xmm1
+# ALL-NEXT: %2:_(<8 x s32>) = G_INSERT %0, %1(<4 x s32>), 0
# ALL-NEXT: %ymm0 = COPY %2(<8 x s32>)
# ALL-NEXT: RET 0, implicit %ymm0
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec512.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec512.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec512.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-insert-vec512.mir Tue Oct 24 11:04:54 2017
@@ -24,9 +24,9 @@ body: |
liveins: %zmm0, %ymm1
; ALL-LABEL: name: test_insert_128
- ; ALL: [[COPY:%[0-9]+]](<16 x s32>) = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]](<4 x s32>) = COPY %xmm1
- ; ALL: [[INSERT:%[0-9]+]](<16 x s32>) = G_INSERT [[COPY]], [[COPY1]](<4 x s32>), 0
+ ; ALL: [[COPY:%[0-9]+]]:_(<16 x s32>) = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:_(<4 x s32>) = COPY %xmm1
+ ; ALL: [[INSERT:%[0-9]+]]:_(<16 x s32>) = G_INSERT [[COPY]], [[COPY1]](<4 x s32>), 0
; ALL: %zmm0 = COPY [[INSERT]](<16 x s32>)
; ALL: RET 0, implicit %ymm0
%0(<16 x s32>) = COPY %zmm0
@@ -50,9 +50,9 @@ body: |
liveins: %zmm0, %ymm1
; ALL-LABEL: name: test_insert_256
- ; ALL: [[COPY:%[0-9]+]](<16 x s32>) = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]](<8 x s32>) = COPY %ymm1
- ; ALL: [[INSERT:%[0-9]+]](<16 x s32>) = G_INSERT [[COPY]], [[COPY1]](<8 x s32>), 0
+ ; ALL: [[COPY:%[0-9]+]]:_(<16 x s32>) = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:_(<8 x s32>) = COPY %ymm1
+ ; ALL: [[INSERT:%[0-9]+]]:_(<16 x s32>) = G_INSERT [[COPY]], [[COPY1]](<8 x s32>), 0
; ALL: %zmm0 = COPY [[INSERT]](<16 x s32>)
; ALL: RET 0, implicit %ymm0
%0(<16 x s32>) = COPY %zmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir Tue Oct 24 11:04:54 2017
@@ -28,23 +28,23 @@ registers:
- { id: 8, class: _, preferred-register: '' }
- { id: 9, class: _, preferred-register: '' }
- { id: 10, class: _, preferred-register: '' }
-# ALL: %0(p0) = IMPLICIT_DEF
-# ALL-NEXT: %11(s8) = G_LOAD %0(p0) :: (load 1)
-# ALL-NEXT: %9(s1) = G_TRUNC %11(s8)
-# ALL-NEXT: %1(s8) = G_LOAD %0(p0) :: (load 1)
-# ALL-NEXT: %2(s16) = G_LOAD %0(p0) :: (load 2)
-# ALL-NEXT: %3(s32) = G_LOAD %0(p0) :: (load 4)
-# ALL-NEXT: %4(p0) = G_LOAD %0(p0) :: (load 8)
-# ALL-NEXT: %10(s1) = IMPLICIT_DEF
-# ALL-NEXT: %12(s8) = G_ZEXT %10(s1)
+# ALL: %0:_(p0) = IMPLICIT_DEF
+# ALL-NEXT: %11:_(s8) = G_LOAD %0(p0) :: (load 1)
+# ALL-NEXT: %9:_(s1) = G_TRUNC %11(s8)
+# ALL-NEXT: %1:_(s8) = G_LOAD %0(p0) :: (load 1)
+# ALL-NEXT: %2:_(s16) = G_LOAD %0(p0) :: (load 2)
+# ALL-NEXT: %3:_(s32) = G_LOAD %0(p0) :: (load 4)
+# ALL-NEXT: %4:_(p0) = G_LOAD %0(p0) :: (load 8)
+# ALL-NEXT: %10:_(s1) = IMPLICIT_DEF
+# ALL-NEXT: %12:_(s8) = G_ZEXT %10(s1)
# ALL-NEXT: G_STORE %12(s8), %0(p0) :: (store 1)
-# ALL-NEXT: %5(s8) = IMPLICIT_DEF
+# ALL-NEXT: %5:_(s8) = IMPLICIT_DEF
# ALL-NEXT: G_STORE %5(s8), %0(p0) :: (store 1)
-# ALL-NEXT: %6(s16) = IMPLICIT_DEF
+# ALL-NEXT: %6:_(s16) = IMPLICIT_DEF
# ALL-NEXT: G_STORE %6(s16), %0(p0) :: (store 2)
-# ALL-NEXT: %7(s32) = IMPLICIT_DEF
+# ALL-NEXT: %7:_(s32) = IMPLICIT_DEF
# ALL-NEXT: G_STORE %7(s32), %0(p0) :: (store 4)
-# ALL-NEXT: %8(p0) = IMPLICIT_DEF
+# ALL-NEXT: %8:_(p0) = IMPLICIT_DEF
# ALL-NEXT: G_STORE %8(p0), %0(p0) :: (store 8)
body: |
bb.1 (%ir-block.0):
@@ -79,22 +79,22 @@ registers:
- { id: 1, class: _, preferred-register: '' }
- { id: 2, class: _, preferred-register: '' }
liveins:
-# X64: %0(p0) = IMPLICIT_DEF
-# X64-NEXT: %1(s64) = G_LOAD %0(p0) :: (load 8)
-# X64-NEXT: %2(s64) = IMPLICIT_DEF
+# X64: %0:_(p0) = IMPLICIT_DEF
+# X64-NEXT: %1:_(s64) = G_LOAD %0(p0) :: (load 8)
+# X64-NEXT: %2:_(s64) = IMPLICIT_DEF
# X64-NEXT: G_STORE %2(s64), %0(p0) :: (store 8)
#
-# X32: %0(p0) = IMPLICIT_DEF
-# X32-NEXT: %3(s32) = G_LOAD %0(p0) :: (load 8)
-# X32-NEXT: %6(s32) = G_CONSTANT i32 4
-# X32-NEXT: %5(p0) = G_GEP %0, %6(s32)
-# X32-NEXT: %4(s32) = G_LOAD %5(p0) :: (load 8)
-# X32-NEXT: %1(s64) = G_MERGE_VALUES %3(s32), %4(s32)
-# X32-NEXT: %2(s64) = IMPLICIT_DEF
-# X32-NEXT: %7(s32), %8(s32) = G_UNMERGE_VALUES %2(s64)
+# X32: %0:_(p0) = IMPLICIT_DEF
+# X32-NEXT: %3:_(s32) = G_LOAD %0(p0) :: (load 8)
+# X32-NEXT: %6:_(s32) = G_CONSTANT i32 4
+# X32-NEXT: %5:_(p0) = G_GEP %0, %6(s32)
+# X32-NEXT: %4:_(s32) = G_LOAD %5(p0) :: (load 8)
+# X32-NEXT: %1:_(s64) = G_MERGE_VALUES %3(s32), %4(s32)
+# X32-NEXT: %2:_(s64) = IMPLICIT_DEF
+# X32-NEXT: %7:_(s32), %8:_(s32) = G_UNMERGE_VALUES %2(s64)
# X32-NEXT: G_STORE %7(s32), %0(p0) :: (store 8)
-# X32-NEXT: %10(s32) = G_CONSTANT i32 4
-# X32-NEXT: %9(p0) = G_GEP %0, %10(s32)
+# X32-NEXT: %10:_(s32) = G_CONSTANT i32 4
+# X32-NEXT: %9:_(p0) = G_GEP %0, %10(s32)
# X32-NEXT: G_STORE %8(s32), %9(p0) :: (store 8)
body: |
bb.1 (%ir-block.0):
@@ -107,4 +107,3 @@ body: |
G_STORE %2, %0 :: (store 8)
...
-
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir Tue Oct 24 11:04:54 2017
@@ -2,7 +2,7 @@
--- |
define void @test_mul_i1() { ret void}
-
+
define i16 @test_mul_i16(i16 %arg1, i16 %arg2) {
%ret = mul i16 %arg1, %arg2
ret i16 %ret
@@ -29,11 +29,11 @@ registers:
- { id: 0, class: _, preferred-register: '' }
- { id: 1, class: _, preferred-register: '' }
- { id: 2, class: _, preferred-register: '' }
-# CHECK: %0(s32) = COPY %edx
-# CHECK-NEXT: %3(s8) = G_TRUNC %0(s32)
-# CHECK-NEXT: %4(s8) = G_TRUNC %0(s32)
-# CHECK-NEXT: %5(s8) = G_MUL %3, %4
-# CHECK-NEXT: %2(s1) = G_TRUNC %5(s8)
+# CHECK: %0:_(s32) = COPY %edx
+# CHECK-NEXT: %3:_(s8) = G_TRUNC %0(s32)
+# CHECK-NEXT: %4:_(s8) = G_TRUNC %0(s32)
+# CHECK-NEXT: %5:_(s8) = G_MUL %3, %4
+# CHECK-NEXT: %2:_(s1) = G_TRUNC %5(s8)
# CHECK-NEXT: RET 0
body: |
bb.1 (%ir-block.0):
@@ -59,9 +59,9 @@ registers:
- { id: 2, class: _ }
# CHECK: body: |
# CHECK-NEXT: bb.0 (%ir-block.0):
-# CHECK-NEXT: %0(s16) = COPY %di
-# CHECK-NEXT: %1(s16) = COPY %si
-# CHECK-NEXT: %2(s16) = G_MUL %0, %1
+# CHECK-NEXT: %0:_(s16) = COPY %di
+# CHECK-NEXT: %1:_(s16) = COPY %si
+# CHECK-NEXT: %2:_(s16) = G_MUL %0, %1
# CHECK-NEXT: %ax = COPY %2(s16)
# CHECK-NEXT: RET 0, implicit %ax
body: |
@@ -91,9 +91,9 @@ registers:
- { id: 2, class: _ }
# CHECK: body: |
# CHECK-NEXT: bb.0 (%ir-block.0):
-# CHECK-NEXT: %0(s32) = COPY %edi
-# CHECK-NEXT: %1(s32) = COPY %esi
-# CHECK-NEXT: %2(s32) = G_MUL %0, %1
+# CHECK-NEXT: %0:_(s32) = COPY %edi
+# CHECK-NEXT: %1:_(s32) = COPY %esi
+# CHECK-NEXT: %2:_(s32) = G_MUL %0, %1
# CHECK-NEXT: %eax = COPY %2(s32)
# CHECK-NEXT: RET 0, implicit %eax
body: |
@@ -123,9 +123,9 @@ registers:
- { id: 2, class: _ }
# CHECK: body: |
# CHECK-NEXT: bb.0 (%ir-block.0):
-# CHECK-NEXT: %0(s64) = COPY %rdi
-# CHECK-NEXT: %1(s64) = COPY %rsi
-# CHECK-NEXT: %2(s64) = G_MUL %0, %1
+# CHECK-NEXT: %0:_(s64) = COPY %rdi
+# CHECK-NEXT: %1:_(s64) = COPY %rsi
+# CHECK-NEXT: %2:_(s64) = G_MUL %0, %1
# CHECK-NEXT: %rax = COPY %2(s64)
# CHECK-NEXT: RET 0, implicit %rax
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v128.mir Tue Oct 24 11:04:54 2017
@@ -33,9 +33,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<8 x s16>) = COPY %xmm0
-# ALL-NEXT: %1(<8 x s16>) = COPY %xmm1
-# ALL-NEXT: %2(<8 x s16>) = G_MUL %0, %1
+# ALL: %0:_(<8 x s16>) = COPY %xmm0
+# ALL-NEXT: %1:_(<8 x s16>) = COPY %xmm1
+# ALL-NEXT: %2:_(<8 x s16>) = G_MUL %0, %1
# ALL-NEXT: %xmm0 = COPY %2(<8 x s16>)
# ALL-NEXT: RET 0, implicit %xmm0
body: |
@@ -63,9 +63,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<4 x s32>) = COPY %xmm0
-# ALL-NEXT: %1(<4 x s32>) = COPY %xmm1
-# ALL-NEXT: %2(<4 x s32>) = G_MUL %0, %1
+# ALL: %0:_(<4 x s32>) = COPY %xmm0
+# ALL-NEXT: %1:_(<4 x s32>) = COPY %xmm1
+# ALL-NEXT: %2:_(<4 x s32>) = G_MUL %0, %1
# ALL-NEXT: %xmm0 = COPY %2(<4 x s32>)
# ALL-NEXT: RET 0, implicit %xmm0
body: |
@@ -93,9 +93,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<2 x s64>) = COPY %xmm0
-# ALL-NEXT: %1(<2 x s64>) = COPY %xmm1
-# ALL-NEXT: %2(<2 x s64>) = G_MUL %0, %1
+# ALL: %0:_(<2 x s64>) = COPY %xmm0
+# ALL-NEXT: %1:_(<2 x s64>) = COPY %xmm1
+# ALL-NEXT: %2:_(<2 x s64>) = G_MUL %0, %1
# ALL-NEXT: %xmm0 = COPY %2(<2 x s64>)
# ALL-NEXT: RET 0, implicit %xmm0
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v256.mir Tue Oct 24 11:04:54 2017
@@ -33,9 +33,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<16 x s16>) = COPY %ymm0
-# ALL-NEXT: %1(<16 x s16>) = COPY %ymm1
-# ALL-NEXT: %2(<16 x s16>) = G_MUL %0, %1
+# ALL: %0:_(<16 x s16>) = COPY %ymm0
+# ALL-NEXT: %1:_(<16 x s16>) = COPY %ymm1
+# ALL-NEXT: %2:_(<16 x s16>) = G_MUL %0, %1
# ALL-NEXT: %ymm0 = COPY %2(<16 x s16>)
# ALL-NEXT: RET 0, implicit %ymm0
body: |
@@ -63,9 +63,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<8 x s32>) = COPY %ymm0
-# ALL-NEXT: %1(<8 x s32>) = COPY %ymm1
-# ALL-NEXT: %2(<8 x s32>) = G_MUL %0, %1
+# ALL: %0:_(<8 x s32>) = COPY %ymm0
+# ALL-NEXT: %1:_(<8 x s32>) = COPY %ymm1
+# ALL-NEXT: %2:_(<8 x s32>) = G_MUL %0, %1
# ALL-NEXT: %ymm0 = COPY %2(<8 x s32>)
# ALL-NEXT: RET 0, implicit %ymm0
body: |
@@ -93,9 +93,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<4 x s64>) = COPY %ymm0
-# ALL-NEXT: %1(<4 x s64>) = COPY %ymm1
-# ALL-NEXT: %2(<4 x s64>) = G_MUL %0, %1
+# ALL: %0:_(<4 x s64>) = COPY %ymm0
+# ALL-NEXT: %1:_(<4 x s64>) = COPY %ymm1
+# ALL-NEXT: %2:_(<4 x s64>) = G_MUL %0, %1
# ALL-NEXT: %ymm0 = COPY %2(<4 x s64>)
# ALL-NEXT: RET 0, implicit %ymm0
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-mul-v512.mir Tue Oct 24 11:04:54 2017
@@ -35,9 +35,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<32 x s16>) = COPY %zmm0
-# ALL-NEXT: %1(<32 x s16>) = COPY %zmm1
-# ALL-NEXT: %2(<32 x s16>) = G_MUL %0, %1
+# ALL: %0:_(<32 x s16>) = COPY %zmm0
+# ALL-NEXT: %1:_(<32 x s16>) = COPY %zmm1
+# ALL-NEXT: %2:_(<32 x s16>) = G_MUL %0, %1
# ALL-NEXT: %zmm0 = COPY %2(<32 x s16>)
# ALL-NEXT: RET 0, implicit %zmm0
body: |
@@ -65,9 +65,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<16 x s32>) = COPY %zmm0
-# ALL-NEXT: %1(<16 x s32>) = COPY %zmm1
-# ALL-NEXT: %2(<16 x s32>) = G_MUL %0, %1
+# ALL: %0:_(<16 x s32>) = COPY %zmm0
+# ALL-NEXT: %1:_(<16 x s32>) = COPY %zmm1
+# ALL-NEXT: %2:_(<16 x s32>) = G_MUL %0, %1
# ALL-NEXT: %zmm0 = COPY %2(<16 x s32>)
# ALL-NEXT: RET 0, implicit %zmm0
body: |
@@ -95,9 +95,9 @@ registers:
- { id: 0, class: _ }
- { id: 1, class: _ }
- { id: 2, class: _ }
-# ALL: %0(<8 x s64>) = COPY %zmm0
-# ALL-NEXT: %1(<8 x s64>) = COPY %zmm1
-# ALL-NEXT: %2(<8 x s64>) = G_MUL %0, %1
+# ALL: %0:_(<8 x s64>) = COPY %zmm0
+# ALL-NEXT: %1:_(<8 x s64>) = COPY %zmm1
+# ALL-NEXT: %2:_(<8 x s64>) = G_MUL %0, %1
# ALL-NEXT: %zmm0 = COPY %2(<8 x s64>)
# ALL-NEXT: RET 0, implicit %zmm0
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir Tue Oct 24 11:04:54 2017
@@ -41,11 +41,11 @@ body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_or_i1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edx
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[TRUNC1:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[OR:%[0-9]+]](s8) = G_OR [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s1) = G_TRUNC [[OR]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edx
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[OR:%[0-9]+]]:_(s8) = G_OR [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[OR]](s8)
; CHECK: RET 0
%0(s32) = COPY %edx
%1(s1) = G_TRUNC %0(s32)
@@ -67,8 +67,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_or_i8
- ; CHECK: [[DEF:%[0-9]+]](s8) = IMPLICIT_DEF
- ; CHECK: [[OR:%[0-9]+]](s8) = G_OR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s8) = IMPLICIT_DEF
+ ; CHECK: [[OR:%[0-9]+]]:_(s8) = G_OR [[DEF]], [[DEF]]
; CHECK: %al = COPY [[OR]](s8)
; CHECK: RET 0, implicit %al
%0(s8) = IMPLICIT_DEF
@@ -92,8 +92,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_or_i16
- ; CHECK: [[DEF:%[0-9]+]](s16) = IMPLICIT_DEF
- ; CHECK: [[OR:%[0-9]+]](s16) = G_OR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s16) = IMPLICIT_DEF
+ ; CHECK: [[OR:%[0-9]+]]:_(s16) = G_OR [[DEF]], [[DEF]]
; CHECK: %ax = COPY [[OR]](s16)
; CHECK: RET 0, implicit %ax
%0(s16) = IMPLICIT_DEF
@@ -117,8 +117,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_or_i32
- ; CHECK: [[DEF:%[0-9]+]](s32) = IMPLICIT_DEF
- ; CHECK: [[OR:%[0-9]+]](s32) = G_OR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s32) = IMPLICIT_DEF
+ ; CHECK: [[OR:%[0-9]+]]:_(s32) = G_OR [[DEF]], [[DEF]]
; CHECK: %eax = COPY [[OR]](s32)
; CHECK: RET 0, implicit %eax
%0(s32) = IMPLICIT_DEF
@@ -142,8 +142,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_or_i64
- ; CHECK: [[DEF:%[0-9]+]](s64) = IMPLICIT_DEF
- ; CHECK: [[OR:%[0-9]+]](s64) = G_OR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s64) = IMPLICIT_DEF
+ ; CHECK: [[OR:%[0-9]+]]:_(s64) = G_OR [[DEF]], [[DEF]]
; CHECK: %rax = COPY [[OR]](s64)
; CHECK: RET 0, implicit %rax
%0(s64) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-phi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-phi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-phi.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-phi.mir Tue Oct 24 11:04:54 2017
@@ -143,24 +143,24 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %edx, %esi
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s1) = COPY %esi
- ; ALL: [[COPY2:%[0-9]+]](s1) = COPY %edx
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s1) = COPY %esi
+ ; ALL: [[COPY2:%[0-9]+]]:_(s1) = COPY %edx
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
; ALL: successors: %bb.3.cond.end(0x80000000)
- ; ALL: [[ANYEXT:%[0-9]+]](s8) = G_ANYEXT [[COPY1]](s1)
+ ; ALL: [[ANYEXT:%[0-9]+]]:_(s8) = G_ANYEXT [[COPY1]](s1)
; ALL: G_BR %bb.3.cond.end
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
- ; ALL: [[ANYEXT1:%[0-9]+]](s8) = G_ANYEXT [[COPY2]](s1)
+ ; ALL: [[ANYEXT1:%[0-9]+]]:_(s8) = G_ANYEXT [[COPY2]](s1)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s8) = G_PHI [[ANYEXT]](s8), %bb.1.cond.true, [[ANYEXT1]](s8), %bb.2.cond.false
- ; ALL: [[TRUNC:%[0-9]+]](s1) = G_TRUNC [[PHI]](s8)
- ; ALL: [[ZEXT:%[0-9]+]](s8) = G_ZEXT [[TRUNC]](s1)
+ ; ALL: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[ANYEXT]](s8), %bb.1.cond.true, [[ANYEXT1]](s8), %bb.2.cond.false
+ ; ALL: [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[PHI]](s8)
+ ; ALL: [[ZEXT:%[0-9]+]]:_(s8) = G_ZEXT [[TRUNC]](s1)
; ALL: %al = COPY [[ZEXT]](s8)
; ALL: RET 0, implicit %al
bb.1.entry:
@@ -216,11 +216,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %edx, %esi
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s8) = COPY %sil
- ; ALL: [[COPY2:%[0-9]+]](s8) = COPY %edx
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s8) = COPY %sil
+ ; ALL: [[COPY2:%[0-9]+]]:_(s8) = COPY %edx
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -229,7 +229,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s8) = G_PHI [[COPY1]](s8), %bb.1.cond.true, [[COPY2]](s8), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s8) = G_PHI [[COPY1]](s8), %bb.1.cond.true, [[COPY2]](s8), %bb.2.cond.false
; ALL: %al = COPY [[PHI]](s8)
; ALL: RET 0, implicit %al
bb.1.entry:
@@ -284,11 +284,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %edx, %esi
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s16) = COPY %si
- ; ALL: [[COPY2:%[0-9]+]](s16) = COPY %edx
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s16) = COPY %si
+ ; ALL: [[COPY2:%[0-9]+]]:_(s16) = COPY %edx
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -297,7 +297,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s16) = G_PHI [[COPY1]](s16), %bb.1.cond.true, [[COPY2]](s16), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s16) = G_PHI [[COPY1]](s16), %bb.1.cond.true, [[COPY2]](s16), %bb.2.cond.false
; ALL: %ax = COPY [[PHI]](s16)
; ALL: RET 0, implicit %ax
bb.1.entry:
@@ -352,11 +352,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %edx, %esi
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s32) = COPY %esi
- ; ALL: [[COPY2:%[0-9]+]](s32) = COPY %edx
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY %esi
+ ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY %edx
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -365,7 +365,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s32) = G_PHI [[COPY1]](s32), %bb.1.cond.true, [[COPY2]](s32), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[COPY1]](s32), %bb.1.cond.true, [[COPY2]](s32), %bb.2.cond.false
; ALL: %eax = COPY [[PHI]](s32)
; ALL: RET 0, implicit %eax
bb.1.entry:
@@ -420,11 +420,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %rdx, %rsi
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s64) = COPY %rsi
- ; ALL: [[COPY2:%[0-9]+]](s64) = COPY %rdx
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s64) = COPY %rsi
+ ; ALL: [[COPY2:%[0-9]+]]:_(s64) = COPY %rdx
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -433,7 +433,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s64) = G_PHI [[COPY1]](s64), %bb.1.cond.true, [[COPY2]](s64), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[COPY1]](s64), %bb.1.cond.true, [[COPY2]](s64), %bb.2.cond.false
; ALL: %rax = COPY [[PHI]](s64)
; ALL: RET 0, implicit %rax
bb.1.entry:
@@ -488,11 +488,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %xmm0, %xmm1
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s32) = COPY %xmm0
- ; ALL: [[COPY2:%[0-9]+]](s32) = COPY %xmm1
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s32) = COPY %xmm0
+ ; ALL: [[COPY2:%[0-9]+]]:_(s32) = COPY %xmm1
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -501,7 +501,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s32) = G_PHI [[COPY1]](s32), %bb.1.cond.true, [[COPY2]](s32), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s32) = G_PHI [[COPY1]](s32), %bb.1.cond.true, [[COPY2]](s32), %bb.2.cond.false
; ALL: %xmm0 = COPY [[PHI]](s32)
; ALL: RET 0, implicit %xmm0
bb.1.entry:
@@ -556,11 +556,11 @@ body: |
; ALL: bb.0.entry:
; ALL: successors: %bb.1.cond.true(0x40000000), %bb.2.cond.false(0x40000000)
; ALL: liveins: %edi, %xmm0, %xmm1
- ; ALL: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]](s64) = COPY %xmm0
- ; ALL: [[COPY2:%[0-9]+]](s64) = COPY %xmm1
- ; ALL: [[C:%[0-9]+]](s32) = G_CONSTANT i32 0
- ; ALL: [[ICMP:%[0-9]+]](s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
+ ; ALL: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:_(s64) = COPY %xmm0
+ ; ALL: [[COPY2:%[0-9]+]]:_(s64) = COPY %xmm1
+ ; ALL: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
+ ; ALL: [[ICMP:%[0-9]+]]:_(s1) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]
; ALL: G_BRCOND [[ICMP]](s1), %bb.1.cond.true
; ALL: G_BR %bb.2.cond.false
; ALL: bb.1.cond.true:
@@ -569,7 +569,7 @@ body: |
; ALL: bb.2.cond.false:
; ALL: successors: %bb.3.cond.end(0x80000000)
; ALL: bb.3.cond.end:
- ; ALL: [[PHI:%[0-9]+]](s64) = G_PHI [[COPY1]](s64), %bb.1.cond.true, [[COPY2]](s64), %bb.2.cond.false
+ ; ALL: [[PHI:%[0-9]+]]:_(s64) = G_PHI [[COPY1]](s64), %bb.1.cond.true, [[COPY2]](s64), %bb.2.cond.false
; ALL: %xmm0 = COPY [[PHI]](s64)
; ALL: RET 0, implicit %xmm0
bb.1.entry:
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v128.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v128.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v128.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v128.mir Tue Oct 24 11:04:54 2017
@@ -36,9 +36,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_sub_v16i8
- ; ALL: [[DEF:%[0-9]+]](<16 x s8>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<16 x s8>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<16 x s8>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<16 x s8>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<16 x s8>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<16 x s8>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<16 x s8>) = IMPLICIT_DEF
%1(<16 x s8>) = IMPLICIT_DEF
@@ -60,9 +60,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_sub_v8i16
- ; ALL: [[DEF:%[0-9]+]](<8 x s16>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<8 x s16>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<8 x s16>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<8 x s16>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<8 x s16>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<8 x s16>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<8 x s16>) = IMPLICIT_DEF
%1(<8 x s16>) = IMPLICIT_DEF
@@ -84,9 +84,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_sub_v4i32
- ; ALL: [[DEF:%[0-9]+]](<4 x s32>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<4 x s32>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<4 x s32>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<4 x s32>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<4 x s32>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<4 x s32>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<4 x s32>) = IMPLICIT_DEF
%1(<4 x s32>) = IMPLICIT_DEF
@@ -108,9 +108,9 @@ body: |
liveins: %xmm0, %xmm1
; ALL-LABEL: name: test_sub_v2i64
- ; ALL: [[DEF:%[0-9]+]](<2 x s64>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<2 x s64>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<2 x s64>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<2 x s64>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<2 x s64>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<2 x s64>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<2 x s64>) = IMPLICIT_DEF
%1(<2 x s64>) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v256.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v256.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v256.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v256.mir Tue Oct 24 11:04:54 2017
@@ -37,9 +37,9 @@ body: |
liveins: %ymm0, %ymm1
; ALL-LABEL: name: test_sub_v32i8
- ; ALL: [[DEF:%[0-9]+]](<32 x s8>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<32 x s8>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<32 x s8>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<32 x s8>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<32 x s8>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<32 x s8>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<32 x s8>) = IMPLICIT_DEF
%1(<32 x s8>) = IMPLICIT_DEF
@@ -61,9 +61,9 @@ body: |
liveins: %ymm0, %ymm1
; ALL-LABEL: name: test_sub_v16i16
- ; ALL: [[DEF:%[0-9]+]](<16 x s16>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<16 x s16>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<16 x s16>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<16 x s16>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<16 x s16>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<16 x s16>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<16 x s16>) = IMPLICIT_DEF
%1(<16 x s16>) = IMPLICIT_DEF
@@ -85,9 +85,9 @@ body: |
liveins: %ymm0, %ymm1
; ALL-LABEL: name: test_sub_v8i32
- ; ALL: [[DEF:%[0-9]+]](<8 x s32>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<8 x s32>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<8 x s32>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<8 x s32>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<8 x s32>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<8 x s32>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<8 x s32>) = IMPLICIT_DEF
%1(<8 x s32>) = IMPLICIT_DEF
@@ -109,9 +109,9 @@ body: |
liveins: %ymm0, %ymm1
; ALL-LABEL: name: test_sub_v4i64
- ; ALL: [[DEF:%[0-9]+]](<4 x s64>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<4 x s64>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<4 x s64>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<4 x s64>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<4 x s64>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<4 x s64>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<4 x s64>) = IMPLICIT_DEF
%1(<4 x s64>) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v512.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v512.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v512.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub-v512.mir Tue Oct 24 11:04:54 2017
@@ -37,9 +37,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_sub_v64i8
- ; ALL: [[DEF:%[0-9]+]](<64 x s8>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<64 x s8>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<64 x s8>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<64 x s8>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<64 x s8>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<64 x s8>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<64 x s8>) = IMPLICIT_DEF
%1(<64 x s8>) = IMPLICIT_DEF
@@ -61,9 +61,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_sub_v32i16
- ; ALL: [[DEF:%[0-9]+]](<32 x s16>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<32 x s16>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<32 x s16>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<32 x s16>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<32 x s16>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<32 x s16>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<32 x s16>) = IMPLICIT_DEF
%1(<32 x s16>) = IMPLICIT_DEF
@@ -85,9 +85,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_sub_v16i32
- ; ALL: [[DEF:%[0-9]+]](<16 x s32>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<16 x s32>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<16 x s32>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<16 x s32>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<16 x s32>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<16 x s32>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<16 x s32>) = IMPLICIT_DEF
%1(<16 x s32>) = IMPLICIT_DEF
@@ -109,9 +109,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_sub_v8i64
- ; ALL: [[DEF:%[0-9]+]](<8 x s64>) = IMPLICIT_DEF
- ; ALL: [[DEF1:%[0-9]+]](<8 x s64>) = IMPLICIT_DEF
- ; ALL: [[SUB:%[0-9]+]](<8 x s64>) = G_SUB [[DEF]], [[DEF1]]
+ ; ALL: [[DEF:%[0-9]+]]:_(<8 x s64>) = IMPLICIT_DEF
+ ; ALL: [[DEF1:%[0-9]+]]:_(<8 x s64>) = IMPLICIT_DEF
+ ; ALL: [[SUB:%[0-9]+]]:_(<8 x s64>) = G_SUB [[DEF]], [[DEF1]]
; ALL: RET 0
%0(<8 x s64>) = IMPLICIT_DEF
%1(<8 x s64>) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-sub.mir Tue Oct 24 11:04:54 2017
@@ -24,11 +24,11 @@ body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_sub_i1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edx
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[TRUNC1:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[SUB:%[0-9]+]](s8) = G_SUB [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s1) = G_TRUNC [[SUB]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edx
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[SUB:%[0-9]+]]:_(s8) = G_SUB [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[SUB]](s8)
; CHECK: RET 0
%0(s32) = COPY %edx
%1(s1) = G_TRUNC %0(s32)
@@ -51,9 +51,9 @@ body: |
; CHECK-LABEL: name: test_sub_i32
; CHECK: liveins: %edi, %esi
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]](s32) = COPY %esi
- ; CHECK: [[SUB:%[0-9]+]](s32) = G_SUB [[COPY]], [[COPY1]]
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY %esi
+ ; CHECK: [[SUB:%[0-9]+]]:_(s32) = G_SUB [[COPY]], [[COPY1]]
; CHECK: %eax = COPY [[SUB]](s32)
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-trunc.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-trunc.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-trunc.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-trunc.mir Tue Oct 24 11:04:54 2017
@@ -17,15 +17,14 @@ registers:
body: |
bb.1 (%ir-block.0):
%0(s32) = IMPLICIT_DEF
- ; ALL: %1(s1) = G_TRUNC %0(s32)
+ ; ALL: %1:_(s1) = G_TRUNC %0(s32)
%1(s1) = G_TRUNC %0(s32)
- ; ALL: %2(s8) = G_TRUNC %0(s32)
+ ; ALL: %2:_(s8) = G_TRUNC %0(s32)
%2(s8) = G_TRUNC %0(s32)
- ; ALL: %3(s16) = G_TRUNC %0(s32)
+ ; ALL: %3:_(s16) = G_TRUNC %0(s32)
%3(s16) = G_TRUNC %0(s32)
RET 0
...
-
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-undef.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-undef.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-undef.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-undef.mir Tue Oct 24 11:04:54 2017
@@ -5,19 +5,19 @@
name: test_implicit_def
# ALL-LABEL: name: test_implicit_def
registers:
-# X64: %0(s1) = G_IMPLICIT_DEF
-# X64-NEXT: %1(s8) = G_IMPLICIT_DEF
-# X64-NEXT: %2(s16) = G_IMPLICIT_DEF
-# X64-NEXT: %3(s32) = G_IMPLICIT_DEF
-# X64-NEXT: %4(s64) = G_IMPLICIT_DEF
+# X64: %0:_(s1) = G_IMPLICIT_DEF
+# X64-NEXT: %1:_(s8) = G_IMPLICIT_DEF
+# X64-NEXT: %2:_(s16) = G_IMPLICIT_DEF
+# X64-NEXT: %3:_(s32) = G_IMPLICIT_DEF
+# X64-NEXT: %4:_(s64) = G_IMPLICIT_DEF
#
-# X32: %0(s1) = G_IMPLICIT_DEF
-# X32-NEXT: %1(s8) = G_IMPLICIT_DEF
-# X32-NEXT: %2(s16) = G_IMPLICIT_DEF
-# X32-NEXT: %3(s32) = G_IMPLICIT_DEF
-# X32-NEXT: %5(s32) = G_IMPLICIT_DEF
-# X32-NEXT: %6(s32) = G_IMPLICIT_DEF
-# X32-NEXT: %4(s64) = G_MERGE_VALUES %5(s32), %6(s32)
+# X32: %0:_(s1) = G_IMPLICIT_DEF
+# X32-NEXT: %1:_(s8) = G_IMPLICIT_DEF
+# X32-NEXT: %2:_(s16) = G_IMPLICIT_DEF
+# X32-NEXT: %3:_(s32) = G_IMPLICIT_DEF
+# X32-NEXT: %5:_(s32) = G_IMPLICIT_DEF
+# X32-NEXT: %6:_(s32) = G_IMPLICIT_DEF
+# X32-NEXT: %4:_(s64) = G_MERGE_VALUES %5(s32), %6(s32)
body: |
bb.0.entry:
liveins:
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir Tue Oct 24 11:04:54 2017
@@ -41,11 +41,11 @@ body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_xor_i1
- ; CHECK: [[COPY:%[0-9]+]](s32) = COPY %edx
- ; CHECK: [[TRUNC:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[TRUNC1:%[0-9]+]](s8) = G_TRUNC [[COPY]](s32)
- ; CHECK: [[XOR:%[0-9]+]](s8) = G_XOR [[TRUNC]], [[TRUNC1]]
- ; CHECK: [[TRUNC2:%[0-9]+]](s1) = G_TRUNC [[XOR]](s8)
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY %edx
+ ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[TRUNC1:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
+ ; CHECK: [[XOR:%[0-9]+]]:_(s8) = G_XOR [[TRUNC]], [[TRUNC1]]
+ ; CHECK: [[TRUNC2:%[0-9]+]]:_(s1) = G_TRUNC [[XOR]](s8)
; CHECK: RET 0
%0(s32) = COPY %edx
%1(s1) = G_TRUNC %0(s32)
@@ -67,8 +67,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_xor_i8
- ; CHECK: [[DEF:%[0-9]+]](s8) = IMPLICIT_DEF
- ; CHECK: [[XOR:%[0-9]+]](s8) = G_XOR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s8) = IMPLICIT_DEF
+ ; CHECK: [[XOR:%[0-9]+]]:_(s8) = G_XOR [[DEF]], [[DEF]]
; CHECK: %al = COPY [[XOR]](s8)
; CHECK: RET 0, implicit %al
%0(s8) = IMPLICIT_DEF
@@ -92,8 +92,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_xor_i16
- ; CHECK: [[DEF:%[0-9]+]](s16) = IMPLICIT_DEF
- ; CHECK: [[XOR:%[0-9]+]](s16) = G_XOR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s16) = IMPLICIT_DEF
+ ; CHECK: [[XOR:%[0-9]+]]:_(s16) = G_XOR [[DEF]], [[DEF]]
; CHECK: %ax = COPY [[XOR]](s16)
; CHECK: RET 0, implicit %ax
%0(s16) = IMPLICIT_DEF
@@ -117,8 +117,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_xor_i32
- ; CHECK: [[DEF:%[0-9]+]](s32) = IMPLICIT_DEF
- ; CHECK: [[XOR:%[0-9]+]](s32) = G_XOR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s32) = IMPLICIT_DEF
+ ; CHECK: [[XOR:%[0-9]+]]:_(s32) = G_XOR [[DEF]], [[DEF]]
; CHECK: %eax = COPY [[XOR]](s32)
; CHECK: RET 0, implicit %eax
%0(s32) = IMPLICIT_DEF
@@ -142,8 +142,8 @@ constants:
body: |
bb.1 (%ir-block.0):
; CHECK-LABEL: name: test_xor_i64
- ; CHECK: [[DEF:%[0-9]+]](s64) = IMPLICIT_DEF
- ; CHECK: [[XOR:%[0-9]+]](s64) = G_XOR [[DEF]], [[DEF]]
+ ; CHECK: [[DEF:%[0-9]+]]:_(s64) = IMPLICIT_DEF
+ ; CHECK: [[XOR:%[0-9]+]]:_(s64) = G_XOR [[DEF]], [[DEF]]
; CHECK: %rax = COPY [[XOR]](s64)
; CHECK: RET 0, implicit %rax
%0(s64) = IMPLICIT_DEF
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir Tue Oct 24 11:04:54 2017
@@ -35,7 +35,7 @@
%ret = fadd double %arg1, %arg2
ret double %ret
}
-
+
define void @test_fsub_float() {
%ret1 = fsub float undef, undef
%ret2 = fsub double undef, undef
@@ -53,7 +53,7 @@
%ret2 = fdiv double undef, undef
ret void
}
-
+
define <4 x i32> @test_add_v4i32(<4 x i32> %arg1, <4 x i32> %arg2) {
%ret = add <4 x i32> %arg1, %arg2
@@ -180,7 +180,7 @@
entry:
ret i32* @g_int
}
-
+
define i8 @test_undef() {
ret i8 undef
}
@@ -198,7 +198,7 @@
%r = fadd float %a, undef
ret float %r
}
-
+
define i32 @test_i32(i32 %a, i32 %f, i32 %t) {
entry:
%cmp = icmp sgt i32 %a, 0
@@ -236,9 +236,9 @@
%conv = fpext float %a to double
ret double %conv
}
-
- define void @test_fconstant() {
- ret void
+
+ define void @test_fconstant() {
+ ret void
}
...
@@ -375,10 +375,10 @@ registers:
- { id: 4, class: _ }
- { id: 5, class: _ }
- { id: 6, class: _ }
- - { id: 7, class: _ }
+ - { id: 7, class: _ }
body: |
bb.1 (%ir-block.0):
-
+
%0(s64) = IMPLICIT_DEF
%1(s32) = IMPLICIT_DEF
%2(s16) = IMPLICIT_DEF
@@ -831,9 +831,9 @@ body: |
%0(s32) = COPY %xmm0
%1(p0) = COPY %rdi
- ; CHECK: %1(p0) = COPY %rdi
+ ; CHECK: %1:gpr(p0) = COPY %rdi
- ; FAST-NEXT: %2(s32) = COPY %0(s32)
+ ; FAST-NEXT: %2:gpr(s32) = COPY %0(s32)
; FAST-NEXT: G_STORE %2(s32), %1(p0) :: (store 4 into %ir.p1)
; GREEDY-NEXT: G_STORE %0(s32), %1(p0) :: (store 4 into %ir.p1)
@@ -869,9 +869,9 @@ body: |
%0(s64) = COPY %xmm0
%1(p0) = COPY %rdi
- ; CHECK: %1(p0) = COPY %rdi
+ ; CHECK: %1:gpr(p0) = COPY %rdi
- ; FAST-NEXT: %2(s64) = COPY %0(s64)
+ ; FAST-NEXT: %2:gpr(s64) = COPY %0(s64)
; FAST-NEXT: G_STORE %2(s64), %1(p0) :: (store 8 into %ir.p1)
; GREEDY-NEXT: G_STORE %0(s64), %1(p0) :: (store 8 into %ir.p1)
@@ -1161,7 +1161,7 @@ regBankSelected: false
# CHECK-NEXT: - { id: 0, class: gpr, preferred-register: '' }
registers:
- { id: 0, class: _, preferred-register: '' }
-# CHECK: %0(p0) = G_GLOBAL_VALUE @g_int
+# CHECK: %0:gpr(p0) = G_GLOBAL_VALUE @g_int
# CHECK-NEXT: %rax = COPY %0(p0)
# CHECK-NEXT: RET 0, implicit %rax
body: |
@@ -1185,7 +1185,7 @@ liveins:
fixedStack:
stack:
constants:
-# CHECK: %0(s8) = G_IMPLICIT_DEF
+# CHECK: %0:gpr(s8) = G_IMPLICIT_DEF
# CHECK-NEXT: %al = COPY %0(s8)
# CHECK-NEXT: RET 0, implicit %al
body: |
@@ -1213,9 +1213,9 @@ liveins:
fixedStack:
stack:
constants:
-# CHECK: %0(s8) = COPY %dil
-# CHECK-NEXT: %1(s8) = G_IMPLICIT_DEF
-# CHECK-NEXT: %2(s8) = G_ADD %0, %1
+# CHECK: %0:gpr(s8) = COPY %dil
+# CHECK-NEXT: %1:gpr(s8) = G_IMPLICIT_DEF
+# CHECK-NEXT: %2:gpr(s8) = G_ADD %0, %1
# CHECK-NEXT: %al = COPY %2(s8)
# CHECK-NEXT: RET 0, implicit %al
body: |
@@ -1243,7 +1243,7 @@ liveins:
fixedStack:
stack:
constants:
-# CHECK: %0(s32) = G_IMPLICIT_DEF
+# CHECK: %0:gpr(s32) = G_IMPLICIT_DEF
# CHECK-NEXT: %xmm0 = COPY %0(s32)
# CHECK-NEXT: RET 0, implicit %xmm0
body: |
@@ -1272,10 +1272,10 @@ liveins:
fixedStack:
stack:
constants:
-# CHECK: %0(s32) = COPY %xmm0
-# CHECK-NEXT: %1(s32) = G_IMPLICIT_DEF
-# CHECK-NEXT: %3(s32) = COPY %1(s32)
-# CHECK-NEXT: %2(s32) = G_FADD %0, %3
+# CHECK: %0:vecr(s32) = COPY %xmm0
+# CHECK-NEXT: %1:gpr(s32) = G_IMPLICIT_DEF
+# CHECK-NEXT: %3:vecr(s32) = COPY %1(s32)
+# CHECK-NEXT: %2:vecr(s32) = G_FADD %0, %3
# CHECK-NEXT: %xmm0 = COPY %2(s32)
# CHECK-NEXT: RET 0, implicit %xmm0
body: |
@@ -1311,7 +1311,7 @@ registers:
- { id: 4, class: _, preferred-register: '' }
- { id: 5, class: _, preferred-register: '' }
# CHECK: bb.3.cond.end:
-# CHECK-NEXT: %5(s32) = G_PHI %1(s32), %bb.1.cond.true, %2(s32), %bb.2.cond.false
+# CHECK-NEXT: %5:gpr(s32) = G_PHI %1(s32), %bb.1.cond.true, %2(s32), %bb.2.cond.false
# CHECK-NEXT: %eax = COPY %5(s32)
# CHECK-NEXT: RET 0, implicit %eax
body: |
@@ -1363,7 +1363,7 @@ registers:
- { id: 4, class: _, preferred-register: '' }
- { id: 5, class: _, preferred-register: '' }
# CHECK: bb.3.cond.end:
-# CHECK-NEXT: %5(s32) = G_PHI %1(s32), %bb.1.cond.true, %2(s32), %bb.2.cond.false
+# CHECK-NEXT: %5:vecr(s32) = G_PHI %1(s32), %bb.1.cond.true, %2(s32), %bb.2.cond.false
# CHECK-NEXT: %xmm0 = COPY %5(s32)
# CHECK-NEXT: RET 0, implicit %xmm0
body: |
@@ -1430,4 +1430,3 @@ body: |
%0(s32) = G_FCONSTANT float 1.0
%1(s64) = G_FCONSTANT double 2.0
...
-
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-GV.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-GV.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-GV.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-GV.mir Tue Oct 24 11:04:54 2017
@@ -40,23 +40,23 @@ regBankSelected: true
registers:
- { id: 0, class: gpr, preferred-register: '' }
- { id: 1, class: gpr, preferred-register: '' }
-# X64: %0 = IMPLICIT_DEF
-# X64-NEXT: %1 = LEA64r _, 1, _, @g_int, _
+# X64: %0:gr64 = IMPLICIT_DEF
+# X64-NEXT: %1:gr64 = LEA64r _, 1, _, @g_int, _
# X64-NEXT: MOV64mr %0, 1, _, 0, _, %1 :: (store 8 into `i32** undef`)
# X64-NEXT: RET 0
#
-# X64_DARWIN_PIC: %0 = IMPLICIT_DEF
-# X64_DARWIN_PIC-NEXT: %1 = LEA64r %rip, 1, _, @g_int, _
+# X64_DARWIN_PIC: %0:gr64 = IMPLICIT_DEF
+# X64_DARWIN_PIC-NEXT: %1:gr64 = LEA64r %rip, 1, _, @g_int, _
# X64_DARWIN_PIC-NEXT: MOV64mr %0, 1, _, 0, _, %1 :: (store 8 into `i32** undef`)
# X64_DARWIN_PIC-NEXT: RET 0
#
-# X32: %0 = IMPLICIT_DEF
-# X32-NEXT: %1 = LEA32r _, 1, _, @g_int, _
+# X32: %0:gr32 = IMPLICIT_DEF
+# X32-NEXT: %1:gr32 = LEA32r _, 1, _, @g_int, _
# X32-NEXT: MOV32mr %0, 1, _, 0, _, %1 :: (store 8 into `i32** undef`)
# X32-NEXT: RET 0
#
-# X32ABI: %0 = IMPLICIT_DEF
-# X32ABI-NEXT: %1 = LEA64_32r _, 1, _, @g_int, _
+# X32ABI: %0:low32_addr_access = IMPLICIT_DEF
+# X32ABI-NEXT: %1:gr32 = LEA64_32r _, 1, _, @g_int, _
# X32ABI-NEXT: MOV32mr %0, 1, _, 0, _, %1 :: (store 8 into `i32** undef`)
# X32ABI-NEXT: RET 0
body: |
@@ -85,23 +85,23 @@ regBankSelected: true
registers:
- { id: 0, class: gpr, preferred-register: '' }
- { id: 1, class: gpr, preferred-register: '' }
-# X64: %1 = LEA64r _, 1, _, @g_int, _
-# X64-NEXT: %0 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
+# X64: %1:gr64 = LEA64r _, 1, _, @g_int, _
+# X64-NEXT: %0:gr32 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
# X64-NEXT: %eax = COPY %0
# X64-NEXT: RET 0, implicit %eax
#
-# X64_DARWIN_PIC: %1 = LEA64r %rip, 1, _, @g_int, _
-# X64_DARWIN_PIC-NEXT: %0 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
+# X64_DARWIN_PIC: %1:gr64 = LEA64r %rip, 1, _, @g_int, _
+# X64_DARWIN_PIC-NEXT: %0:gr32 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
# X64_DARWIN_PIC-NEXT: %eax = COPY %0
# X64_DARWIN_PIC-NEXT: RET 0, implicit %eax
#
-# X32: %1 = LEA32r _, 1, _, @g_int, _
-# X32-NEXT: %0 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
+# X32: %1:gr32 = LEA32r _, 1, _, @g_int, _
+# X32-NEXT: %0:gr32 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
# X32-NEXT: %eax = COPY %0
# X32-NEXT: RET 0, implicit %eax
#
-# X32ABI: %1 = LEA64_32r _, 1, _, @g_int, _
-# X32ABI-NEXT: %0 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
+# X32ABI: %1:gr32 = LEA64_32r _, 1, _, @g_int, _
+# X32ABI-NEXT: %0:gr32 = MOV32rm %1, 1, _, 0, _ :: (load 4 from @g_int)
# X32ABI-NEXT: %eax = COPY %0
# X32ABI-NEXT: RET 0, implicit %eax
body: |
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v128.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v128.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v128.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v128.mir Tue Oct 24 11:04:54 2017
@@ -49,13 +49,13 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# SSE2: %2 = PADDBrr %0, %1
+# SSE2: %2:vr128 = PADDBrr %0, %1
#
-# AVX1: %2 = VPADDBrr %0, %1
+# AVX1: %2:vr128 = VPADDBrr %0, %1
#
-# AVX512VL: %2 = VPADDBrr %0, %1
+# AVX512VL: %2:vr128 = VPADDBrr %0, %1
#
-# AVX512BWVL: %2 = VPADDBZ128rr %0, %1
+# AVX512BWVL: %2:vr128x = VPADDBZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
@@ -91,13 +91,13 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# SSE2: %2 = PADDWrr %0, %1
+# SSE2: %2:vr128 = PADDWrr %0, %1
#
-# AVX1: %2 = VPADDWrr %0, %1
+# AVX1: %2:vr128 = VPADDWrr %0, %1
#
-# AVX512VL: %2 = VPADDWrr %0, %1
+# AVX512VL: %2:vr128 = VPADDWrr %0, %1
#
-# AVX512BWVL: %2 = VPADDWZ128rr %0, %1
+# AVX512BWVL: %2:vr128x = VPADDWZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
@@ -133,13 +133,13 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# SSE2: %2 = PADDDrr %0, %1
+# SSE2: %2:vr128 = PADDDrr %0, %1
#
-# AVX1: %2 = VPADDDrr %0, %1
+# AVX1: %2:vr128 = VPADDDrr %0, %1
#
-# AVX512VL: %2 = VPADDDZ128rr %0, %1
+# AVX512VL: %2:vr128x = VPADDDZ128rr %0, %1
#
-# AVX512BWVL: %2 = VPADDDZ128rr %0, %1
+# AVX512BWVL: %2:vr128x = VPADDDZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
@@ -175,13 +175,13 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# SSE2: %2 = PADDQrr %0, %1
+# SSE2: %2:vr128 = PADDQrr %0, %1
#
-# AVX1: %2 = VPADDQrr %0, %1
+# AVX1: %2:vr128 = VPADDQrr %0, %1
#
-# AVX512VL: %2 = VPADDQZ128rr %0, %1
+# AVX512VL: %2:vr128x = VPADDQZ128rr %0, %1
#
-# AVX512BWVL: %2 = VPADDQZ128rr %0, %1
+# AVX512BWVL: %2:vr128x = VPADDQZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v256.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v256.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v256.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v256.mir Tue Oct 24 11:04:54 2017
@@ -47,11 +47,11 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# AVX2: %2 = VPADDBYrr %0, %1
+# AVX2: %2:vr256 = VPADDBYrr %0, %1
#
-# AVX512VL: %2 = VPADDBYrr %0, %1
+# AVX512VL: %2:vr256 = VPADDBYrr %0, %1
#
-# AVX512BWVL: %2 = VPADDBZ256rr %0, %1
+# AVX512BWVL: %2:vr256x = VPADDBZ256rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %ymm0, %ymm1
@@ -87,11 +87,11 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# AVX2: %2 = VPADDWYrr %0, %1
+# AVX2: %2:vr256 = VPADDWYrr %0, %1
#
-# AVX512VL: %2 = VPADDWYrr %0, %1
+# AVX512VL: %2:vr256 = VPADDWYrr %0, %1
#
-# AVX512BWVL: %2 = VPADDWZ256rr %0, %1
+# AVX512BWVL: %2:vr256x = VPADDWZ256rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %ymm0, %ymm1
@@ -127,11 +127,11 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# AVX2: %2 = VPADDDYrr %0, %1
+# AVX2: %2:vr256 = VPADDDYrr %0, %1
#
-# AVX512VL: %2 = VPADDDZ256rr %0, %1
+# AVX512VL: %2:vr256x = VPADDDZ256rr %0, %1
#
-# AVX512BWVL: %2 = VPADDDZ256rr %0, %1
+# AVX512BWVL: %2:vr256x = VPADDDZ256rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %ymm0, %ymm1
@@ -167,11 +167,11 @@ registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# AVX2: %2 = VPADDQYrr %0, %1
+# AVX2: %2:vr256 = VPADDQYrr %0, %1
#
-# AVX512VL: %2 = VPADDQZ256rr %0, %1
+# AVX512VL: %2:vr256x = VPADDQZ256rr %0, %1
#
-# AVX512BWVL: %2 = VPADDQZ256rr %0, %1
+# AVX512BWVL: %2:vr256x = VPADDQZ256rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %ymm0, %ymm1
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v512.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v512.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v512.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-v512.mir Tue Oct 24 11:04:54 2017
@@ -39,13 +39,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_add_v64i8
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: vr512
- ; ALL-NEXT: id: 1, class: vr512
- ; ALL-NEXT: id: 2, class: vr512
- ; ALL: [[COPY:%[0-9]+]] = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]] = COPY %zmm1
- ; ALL: [[VPADDBZrr:%[0-9]+]] = VPADDBZrr [[COPY]], [[COPY1]]
+ ; ALL: [[COPY:%[0-9]+]]:vr512 = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:vr512 = COPY %zmm1
+ ; ALL: [[VPADDBZrr:%[0-9]+]]:vr512 = VPADDBZrr [[COPY]], [[COPY1]]
; ALL: %zmm0 = COPY [[VPADDBZrr]]
; ALL: RET 0, implicit %zmm0
%0(<64 x s8>) = COPY %zmm0
@@ -69,13 +65,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_add_v32i16
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: vr512
- ; ALL-NEXT: id: 1, class: vr512
- ; ALL-NEXT: id: 2, class: vr512
- ; ALL: [[COPY:%[0-9]+]] = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]] = COPY %zmm1
- ; ALL: [[VPADDWZrr:%[0-9]+]] = VPADDWZrr [[COPY]], [[COPY1]]
+ ; ALL: [[COPY:%[0-9]+]]:vr512 = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:vr512 = COPY %zmm1
+ ; ALL: [[VPADDWZrr:%[0-9]+]]:vr512 = VPADDWZrr [[COPY]], [[COPY1]]
; ALL: %zmm0 = COPY [[VPADDWZrr]]
; ALL: RET 0, implicit %zmm0
%0(<32 x s16>) = COPY %zmm0
@@ -99,13 +91,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_add_v16i32
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: vr512
- ; ALL-NEXT: id: 1, class: vr512
- ; ALL-NEXT: id: 2, class: vr512
- ; ALL: [[COPY:%[0-9]+]] = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]] = COPY %zmm1
- ; ALL: [[VPADDDZrr:%[0-9]+]] = VPADDDZrr [[COPY]], [[COPY1]]
+ ; ALL: [[COPY:%[0-9]+]]:vr512 = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:vr512 = COPY %zmm1
+ ; ALL: [[VPADDDZrr:%[0-9]+]]:vr512 = VPADDDZrr [[COPY]], [[COPY1]]
; ALL: %zmm0 = COPY [[VPADDDZrr]]
; ALL: RET 0, implicit %zmm0
%0(<16 x s32>) = COPY %zmm0
@@ -129,13 +117,9 @@ body: |
liveins: %zmm0, %zmm1
; ALL-LABEL: name: test_add_v8i64
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: vr512
- ; ALL-NEXT: id: 1, class: vr512
- ; ALL-NEXT: id: 2, class: vr512
- ; ALL: [[COPY:%[0-9]+]] = COPY %zmm0
- ; ALL: [[COPY1:%[0-9]+]] = COPY %zmm1
- ; ALL: [[VPADDQZrr:%[0-9]+]] = VPADDQZrr [[COPY]], [[COPY1]]
+ ; ALL: [[COPY:%[0-9]+]]:vr512 = COPY %zmm0
+ ; ALL: [[COPY1:%[0-9]+]]:vr512 = COPY %zmm1
+ ; ALL: [[VPADDQZrr:%[0-9]+]]:vr512 = VPADDQZrr [[COPY]], [[COPY1]]
; ALL: %zmm0 = COPY [[VPADDQZrr]]
; ALL: RET 0, implicit %zmm0
%0(<8 x s64>) = COPY %zmm0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-x32.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-x32.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-x32.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-add-x32.mir Tue Oct 24 11:04:54 2017
@@ -26,26 +26,15 @@ registers:
body: |
bb.0 (%ir-block.0):
; X32-LABEL: name: test_add_i64
- ; X32: registers:
- ; X32-NEXT: id: 0, class: gr32
- ; X32-NEXT: id: 1, class: gr32
- ; X32-NEXT: id: 2, class: gr32
- ; X32-NEXT: id: 3, class: gr32
- ; X32-NEXT: id: 4, class: gpr
- ; X32-NEXT: id: 5, class: gr32
- ; X32-NEXT: id: 6, class: gr32
- ; X32-NEXT: id: 7, class: gr32
- ; X32-NEXT: id: 8, class: gr32
- ; X32-NEXT: id: 9, class: gpr
- ; X32: [[DEF:%[0-9]+]] = IMPLICIT_DEF
- ; X32: [[DEF1:%[0-9]+]] = IMPLICIT_DEF
- ; X32: [[DEF2:%[0-9]+]] = IMPLICIT_DEF
- ; X32: [[DEF3:%[0-9]+]] = IMPLICIT_DEF
- ; X32: [[ADD32rr:%[0-9]+]] = ADD32rr [[DEF]], [[DEF2]], implicit-def %eflags
- ; X32: [[COPY:%[0-9]+]] = COPY %eflags
+ ; X32: [[DEF:%[0-9]+]]:gr32 = IMPLICIT_DEF
+ ; X32: [[DEF1:%[0-9]+]]:gr32 = IMPLICIT_DEF
+ ; X32: [[DEF2:%[0-9]+]]:gr32 = IMPLICIT_DEF
+ ; X32: [[DEF3:%[0-9]+]]:gr32 = IMPLICIT_DEF
+ ; X32: [[ADD32rr:%[0-9]+]]:gr32 = ADD32rr [[DEF]], [[DEF2]], implicit-def %eflags
+ ; X32: [[COPY:%[0-9]+]]:gr32 = COPY %eflags
; X32: %eflags = COPY [[COPY]]
- ; X32: [[ADC32rr:%[0-9]+]] = ADC32rr [[DEF1]], [[DEF3]], implicit-def %eflags, implicit %eflags
- ; X32: [[COPY1:%[0-9]+]] = COPY %eflags
+ ; X32: [[ADC32rr:%[0-9]+]]:gr32 = ADC32rr [[DEF1]], [[DEF3]], implicit-def %eflags, implicit %eflags
+ ; X32: [[COPY1:%[0-9]+]]:gr32 = COPY %eflags
; X32: %eax = COPY [[ADD32rr]]
; X32: %edx = COPY [[ADC32rr]]
; X32: RET 0, implicit %eax, implicit %edx
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-add.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-add.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-add.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-add.mir Tue Oct 24 11:04:54 2017
@@ -40,17 +40,13 @@ name: test_add_i64
# ALL-LABEL: name: test_add_i64
legalized: true
regBankSelected: true
-# ALL: registers:
-# ALL-NEXT: - { id: 0, class: gr64, preferred-register: '' }
-# ALL-NEXT: - { id: 1, class: gr64, preferred-register: '' }
-# ALL-NEXT: - { id: 2, class: gr64, preferred-register: '' }
registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
-# ALL: %0 = COPY %rdi
-# ALL-NEXT: %1 = COPY %rsi
-# ALL-NEXT: %2 = ADD64rr %0, %1
+# ALL: %0:gr64 = COPY %rdi
+# ALL-NEXT: %1:gr64 = COPY %rsi
+# ALL-NEXT: %2:gr64 = ADD64rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %edi, %esi
@@ -67,17 +63,13 @@ name: test_add_i32
# ALL-LABEL: name: test_add_i32
legalized: true
regBankSelected: true
-# ALL: registers:
-# ALL-NEXT: - { id: 0, class: gr32, preferred-register: '' }
-# ALL-NEXT: - { id: 1, class: gr32, preferred-register: '' }
-# ALL-NEXT: - { id: 2, class: gr32, preferred-register: '' }
registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
-# ALL: %0 = COPY %edi
-# ALL-NEXT: %1 = COPY %esi
-# ALL-NEXT: %2 = ADD32rr %0, %1
+# ALL: %0:gr32 = COPY %edi
+# ALL-NEXT: %1:gr32 = COPY %esi
+# ALL-NEXT: %2:gr32 = ADD32rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %edi, %esi
@@ -95,17 +87,13 @@ alignment: 4
legalized: true
regBankSelected: true
selected: false
-# ALL: registers:
-# ALL-NEXT: - { id: 0, class: gr16, preferred-register: '' }
-# ALL-NEXT: - { id: 1, class: gr16, preferred-register: '' }
-# ALL-NEXT: - { id: 2, class: gr16, preferred-register: '' }
registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
-# ALL: %0 = COPY %di
-# ALL: %1 = COPY %si
-# ALL: %2 = ADD16rr %0, %1, implicit-def %eflags
+# ALL: %0:gr16 = COPY %di
+# ALL: %1:gr16 = COPY %si
+# ALL: %2:gr16 = ADD16rr %0, %1, implicit-def %eflags
body: |
bb.1 (%ir-block.0):
liveins: %edi, %esi
@@ -124,17 +112,13 @@ alignment: 4
legalized: true
regBankSelected: true
selected: false
-# ALL: registers:
-# ALL-NEXT: - { id: 0, class: gr8, preferred-register: '' }
-# ALL-NEXT: - { id: 1, class: gr8, preferred-register: '' }
-# ALL-NEXT: - { id: 2, class: gr8, preferred-register: '' }
registers:
- { id: 0, class: gpr }
- { id: 1, class: gpr }
- { id: 2, class: gpr }
-# ALL: %0 = COPY %dil
-# ALL: %1 = COPY %sil
-# ALL: %2 = ADD8rr %0, %1, implicit-def %eflags
+# ALL: %0:gr8 = COPY %dil
+# ALL: %1:gr8 = COPY %sil
+# ALL: %2:gr8 = ADD8rr %0, %1, implicit-def %eflags
body: |
bb.1 (%ir-block.0):
liveins: %edi, %esi
@@ -154,23 +138,18 @@ legalized: true
regBankSelected: true
selected: false
tracksRegLiveness: true
-# ALL: registers:
-# NO_AVX512VL-NEXT: - { id: 0, class: vr128, preferred-register: '' }
-# NO_AVX512VL-NEXT: - { id: 1, class: vr128, preferred-register: '' }
-# NO_AVX512VL-NEXT: - { id: 2, class: vr128, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 0, class: vr128x, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 1, class: vr128x, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 2, class: vr128x, preferred-register: '' }
registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# ALL: %0 = COPY %xmm0
-# ALL-NEXT: %1 = COPY %xmm1
-# SSE-NEXT: %2 = PADDDrr %0, %1
-# AVX-NEXT: %2 = VPADDDrr %0, %1
-# AVX512F-NEXT: %2 = VPADDDrr %0, %1
-# AVX512VL-NEXT: %2 = VPADDDZ128rr %0, %1
+# NO_AVX512VL: %0:vr128 = COPY %xmm0
+# NO_AVX512VL: %1:vr128 = COPY %xmm1
+# SSE-NEXT: %2:vr128 = PADDDrr %0, %1
+# AVX-NEXT: %2:vr128 = VPADDDrr %0, %1
+# AVX512F-NEXT: %2:vr128 = VPADDDrr %0, %1
+# AVX512VL: %0:vr128x = COPY %xmm0
+# AVX512VL: %1:vr128x = COPY %xmm1
+# AVX512VL-NEXT: %2:vr128x = VPADDDZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
@@ -190,23 +169,22 @@ legalized: true
regBankSelected: true
selected: false
tracksRegLiveness: true
-# ALL: registers:
-# NO_AVX512VL-NEXT: - { id: 0, class: vr128, preferred-register: '' }
-# NO_AVX512VL-NEXT: - { id: 1, class: vr128, preferred-register: '' }
-# NO_AVX512VL-NEXT: - { id: 2, class: vr128, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 0, class: vr128x, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 1, class: vr128x, preferred-register: '' }
-# AVX512VL-NEXT: - { id: 2, class: vr128x, preferred-register: '' }
registers:
- { id: 0, class: vecr }
- { id: 1, class: vecr }
- { id: 2, class: vecr }
-# ALL: %0 = COPY %xmm0
-# ALL-NEXT: %1 = COPY %xmm1
-# SSE-NEXT: %2 = ADDPSrr %0, %1
-# AVX-NEXT: %2 = VADDPSrr %0, %1
-# AVX512F-NEXT: %2 = VADDPSrr %0, %1
-# AVX512VL-NEXT: %2 = VADDPSZ128rr %0, %1
+# SSE: %0:vr128 = COPY %xmm0
+# SSE-NEXT: %1:vr128 = COPY %xmm1
+# SSE-NEXT: %2:vr128 = ADDPSrr %0, %1
+# AVX: %0:vr128 = COPY %xmm0
+# AVX-NEXT: %1:vr128 = COPY %xmm1
+# AVX-NEXT: %2:vr128 = VADDPSrr %0, %1
+# AVX512F: %0:vr128 = COPY %xmm0
+# AVX512F-NEXT: 1:vr128 = COPY %xmm1
+# AVX512F-NEXT: %2:vr128 = VADDPSrr %0, %1
+# AVX512VL: %0:vr128x = COPY %xmm0
+# AVX512VL-NEXT: %1:vr128x = COPY %xmm1
+# AVX512VL-NEXT: %2:vr128x = VADDPSZ128rr %0, %1
body: |
bb.1 (%ir-block.0):
liveins: %xmm0, %xmm1
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-and-scalar.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-and-scalar.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-and-scalar.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-and-scalar.mir Tue Oct 24 11:04:54 2017
@@ -41,13 +41,9 @@ body: |
liveins: %edi, %esi
; ALL-LABEL: name: test_and_i8
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: gr8
- ; ALL-NEXT: id: 1, class: gr8
- ; ALL-NEXT: id: 2, class: gr8
- ; ALL: [[COPY:%[0-9]+]] = COPY %dil
- ; ALL: [[COPY1:%[0-9]+]] = COPY %sil
- ; ALL: [[AND8rr:%[0-9]+]] = AND8rr [[COPY]], [[COPY1]], implicit-def %eflags
+ ; ALL: [[COPY:%[0-9]+]]:gr8 = COPY %dil
+ ; ALL: [[COPY1:%[0-9]+]]:gr8 = COPY %sil
+ ; ALL: [[AND8rr:%[0-9]+]]:gr8 = AND8rr [[COPY]], [[COPY1]], implicit-def %eflags
; ALL: %al = COPY [[AND8rr]]
; ALL: RET 0, implicit %al
%0(s8) = COPY %dil
@@ -75,13 +71,9 @@ body: |
liveins: %edi, %esi
; ALL-LABEL: name: test_and_i16
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: gr16
- ; ALL-NEXT: id: 1, class: gr16
- ; ALL-NEXT: id: 2, class: gr16
- ; ALL: [[COPY:%[0-9]+]] = COPY %di
- ; ALL: [[COPY1:%[0-9]+]] = COPY %si
- ; ALL: [[AND16rr:%[0-9]+]] = AND16rr [[COPY]], [[COPY1]], implicit-def %eflags
+ ; ALL: [[COPY:%[0-9]+]]:gr16 = COPY %di
+ ; ALL: [[COPY1:%[0-9]+]]:gr16 = COPY %si
+ ; ALL: [[AND16rr:%[0-9]+]]:gr16 = AND16rr [[COPY]], [[COPY1]], implicit-def %eflags
; ALL: %ax = COPY [[AND16rr]]
; ALL: RET 0, implicit %ax
%0(s16) = COPY %di
@@ -109,13 +101,9 @@ body: |
liveins: %edi, %esi
; ALL-LABEL: name: test_and_i32
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: gr32
- ; ALL-NEXT: id: 1, class: gr32
- ; ALL-NEXT: id: 2, class: gr32
- ; ALL: [[COPY:%[0-9]+]] = COPY %edi
- ; ALL: [[COPY1:%[0-9]+]] = COPY %esi
- ; ALL: [[AND32rr:%[0-9]+]] = AND32rr [[COPY]], [[COPY1]], implicit-def %eflags
+ ; ALL: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; ALL: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
+ ; ALL: [[AND32rr:%[0-9]+]]:gr32 = AND32rr [[COPY]], [[COPY1]], implicit-def %eflags
; ALL: %eax = COPY [[AND32rr]]
; ALL: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -143,13 +131,9 @@ body: |
liveins: %rdi, %rsi
; ALL-LABEL: name: test_and_i64
- ; ALL: registers:
- ; ALL-NEXT: id: 0, class: gr64
- ; ALL-NEXT: id: 1, class: gr64
- ; ALL-NEXT: id: 2, class: gr64
- ; ALL: [[COPY:%[0-9]+]] = COPY %rdi
- ; ALL: [[COPY1:%[0-9]+]] = COPY %rsi
- ; ALL: [[AND64rr:%[0-9]+]] = AND64rr [[COPY]], [[COPY1]], implicit-def %eflags
+ ; ALL: [[COPY:%[0-9]+]]:gr64 = COPY %rdi
+ ; ALL: [[COPY1:%[0-9]+]]:gr64 = COPY %rsi
+ ; ALL: [[AND64rr:%[0-9]+]]:gr64 = AND64rr [[COPY]], [[COPY1]], implicit-def %eflags
; ALL: %rax = COPY [[AND64rr]]
; ALL: RET 0, implicit %rax
%0(s64) = COPY %rdi
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsi.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsi.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsi.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsi.mir Tue Oct 24 11:04:54 2017
@@ -24,13 +24,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_blsi32rr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[BLSI32rr:%[0-9]+]] = BLSI32rr [[COPY]], implicit-def %eflags
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[BLSI32rr:%[0-9]+]]:gr32 = BLSI32rr [[COPY]], implicit-def %eflags
; CHECK: %edi = COPY [[BLSI32rr]]
%0(s32) = COPY %edi
%1(s32) = G_CONSTANT i32 0
@@ -55,15 +50,10 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_blsi32rr_nomatch
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr32
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[MOV32r0_:%[0-9]+]] = MOV32r0 implicit-def %eflags
- ; CHECK: [[SUB32ri:%[0-9]+]] = SUB32ri [[MOV32r0_]], 0, implicit-def %eflags
- ; CHECK: [[AND32rr:%[0-9]+]] = AND32rr [[SUB32ri]], [[COPY]], implicit-def %eflags
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[MOV32r0_:%[0-9]+]]:gr32 = MOV32r0 implicit-def %eflags
+ ; CHECK: [[SUB32ri:%[0-9]+]]:gr32 = SUB32ri [[MOV32r0_]], 0, implicit-def %eflags
+ ; CHECK: [[AND32rr:%[0-9]+]]:gr32 = AND32rr [[SUB32ri]], [[COPY]], implicit-def %eflags
; CHECK: %edi = COPY [[AND32rr]]
%0(s32) = COPY %edi
%1(s32) = G_CONSTANT i32 0
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsr.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsr.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsr.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-blsr.mir Tue Oct 24 11:04:54 2017
@@ -21,13 +21,8 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_blsr32rr
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gpr
- ; CHECK-NEXT: id: 2, class: gpr
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[BLSR32rr:%[0-9]+]] = BLSR32rr [[COPY]], implicit-def %eflags
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[BLSR32rr:%[0-9]+]]:gr32 = BLSR32rr [[COPY]], implicit-def %eflags
; CHECK: %edi = COPY [[BLSR32rr]]
%0(s32) = COPY %edi
%1(s32) = G_CONSTANT i32 -1
@@ -52,15 +47,10 @@ body: |
liveins: %edi
; CHECK-LABEL: name: test_blsr32rr_nomatch
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr32
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[MOV32ri:%[0-9]+]] = MOV32ri 4294967295
- ; CHECK: [[DEC32r:%[0-9]+]] = DEC32r [[MOV32ri]], implicit-def %eflags
- ; CHECK: [[AND32rr:%[0-9]+]] = AND32rr [[DEC32r]], [[COPY]], implicit-def %eflags
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[MOV32ri:%[0-9]+]]:gr32 = MOV32ri 4294967295
+ ; CHECK: [[DEC32r:%[0-9]+]]:gr32 = DEC32r [[MOV32ri]], implicit-def %eflags
+ ; CHECK: [[AND32rr:%[0-9]+]]:gr32 = AND32rr [[DEC32r]], [[COPY]], implicit-def %eflags
; CHECK: %edi = COPY [[AND32rr]]
%0(s32) = COPY %edi
%1(s32) = G_CONSTANT i32 -1
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-brcond.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-brcond.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-brcond.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-brcond.mir Tue Oct 24 11:04:54 2017
@@ -22,29 +22,19 @@ name: test
alignment: 4
legalized: true
regBankSelected: true
-# X64: registers:
-# X64-NEXT: - { id: 0, class: gr32, preferred-register: '' }
-# X64-NEXT: - { id: 1, class: gr8, preferred-register: '' }
-# X64-NEXT: - { id: 2, class: gr32, preferred-register: '' }
-# X64-NEXT: - { id: 3, class: gr32, preferred-register: '' }
-#
-# X32: registers:
-# X32-NEXT: - { id: 0, class: gr32_abcd, preferred-register: '' }
-# X32-NEXT: - { id: 1, class: gr8, preferred-register: '' }
-# X32-NEXT: - { id: 2, class: gr32, preferred-register: '' }
-# X32-NEXT: - { id: 3, class: gr32, preferred-register: '' }
registers:
- { id: 0, class: gpr, preferred-register: '' }
- { id: 1, class: gpr, preferred-register: '' }
- { id: 2, class: gpr, preferred-register: '' }
- { id: 3, class: gpr, preferred-register: '' }
-# CHECK: %0 = COPY %edi
-# CHECK-NEXT: %2 = MOV32r0 implicit-def %eflags
-# CHECK-NEXT: %3 = MOV32ri 1
-# CHECK-NEXT: %1 = COPY %0.sub_8bit
+# X64: %0:gr32 = COPY %edi
+# X32: %0:gr32_abcd = COPY %edi
+# CHECK-NEXT: %2:gr32 = MOV32r0 implicit-def %eflags
+# CHECK-NEXT: %3:gr32 = MOV32ri 1
+# CHECK-NEXT: %1:gr8 = COPY %0.sub_8bit
# CHECK-NEXT: TEST8ri %1, 1, implicit-def %eflags
# CHECK-NEXT: JNE_1 %[[TRUE:bb.[0-9].true]], implicit %eflags
-# CHECK-NEXT: JMP_1 %[[FALSE:bb.[0-9].false]]
+# CHECK-NEXT: JMP_1 %[[FALSE:bb.[0-9].false]]
# CHECK: [[TRUE]]:
# CHECK-NEXT: %eax = COPY %2
# CHECK-NEXT: RET 0, implicit %eax
Modified: llvm/trunk/test/CodeGen/X86/GlobalISel/select-cmp.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/GlobalISel/select-cmp.mir?rev=316479&r1=316478&r2=316479&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/GlobalISel/select-cmp.mir (original)
+++ llvm/trunk/test/CodeGen/X86/GlobalISel/select-cmp.mir Tue Oct 24 11:04:54 2017
@@ -96,18 +96,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_eq_i8
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr8
- ; CHECK-NEXT: id: 1, class: gr8
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %dil
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %sil
+ ; CHECK: [[COPY:%[0-9]+]]:gr8 = COPY %dil
+ ; CHECK: [[COPY1:%[0-9]+]]:gr8 = COPY %sil
; CHECK: CMP8rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETEr:%[0-9]+]] = SETEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETEr:%[0-9]+]]:gr8 = SETEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s8) = COPY %dil
@@ -133,18 +127,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_eq_i16
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr16
- ; CHECK-NEXT: id: 1, class: gr16
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %di
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %si
+ ; CHECK: [[COPY:%[0-9]+]]:gr16 = COPY %di
+ ; CHECK: [[COPY1:%[0-9]+]]:gr16 = COPY %si
; CHECK: CMP16rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETEr:%[0-9]+]] = SETEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETEr:%[0-9]+]]:gr8 = SETEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s16) = COPY %di
@@ -170,18 +158,12 @@ body: |
liveins: %rdi, %rsi
; CHECK-LABEL: name: test_icmp_eq_i64
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr64
- ; CHECK-NEXT: id: 1, class: gr64
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %rdi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %rsi
+ ; CHECK: [[COPY:%[0-9]+]]:gr64 = COPY %rdi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr64 = COPY %rsi
; CHECK: CMP64rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETEr:%[0-9]+]] = SETEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETEr:%[0-9]+]]:gr8 = SETEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s64) = COPY %rdi
@@ -207,18 +189,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_eq_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETEr:%[0-9]+]] = SETEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETEr:%[0-9]+]]:gr8 = SETEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -244,18 +220,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_ne_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETNEr:%[0-9]+]] = SETNEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETNEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETNEr:%[0-9]+]]:gr8 = SETNEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETNEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -281,18 +251,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_ugt_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETAr:%[0-9]+]] = SETAr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETAr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETAr:%[0-9]+]]:gr8 = SETAr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETAr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -318,18 +282,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_uge_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETAEr:%[0-9]+]] = SETAEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETAEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETAEr:%[0-9]+]]:gr8 = SETAEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETAEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -355,18 +313,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_ult_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETBr:%[0-9]+]] = SETBr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETBr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETBr:%[0-9]+]]:gr8 = SETBr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETBr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -392,18 +344,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_ule_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETBEr:%[0-9]+]] = SETBEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETBEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETBEr:%[0-9]+]]:gr8 = SETBEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETBEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -429,18 +375,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_sgt_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETGr:%[0-9]+]] = SETGr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETGr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETGr:%[0-9]+]]:gr8 = SETGr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETGr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -466,18 +406,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_sge_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETGEr:%[0-9]+]] = SETGEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETGEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETGEr:%[0-9]+]]:gr8 = SETGEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETGEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -503,18 +437,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_slt_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETLr:%[0-9]+]] = SETLr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETLr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETLr:%[0-9]+]]:gr8 = SETLr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETLr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
@@ -540,18 +468,12 @@ body: |
liveins: %edi, %esi
; CHECK-LABEL: name: test_icmp_sle_i32
- ; CHECK: registers:
- ; CHECK-NEXT: id: 0, class: gr32
- ; CHECK-NEXT: id: 1, class: gr32
- ; CHECK-NEXT: id: 2, class: gr8
- ; CHECK-NEXT: id: 3, class: gr32
- ; CHECK-NEXT: id: 4, class: gr32
- ; CHECK: [[COPY:%[0-9]+]] = COPY %edi
- ; CHECK: [[COPY1:%[0-9]+]] = COPY %esi
+ ; CHECK: [[COPY:%[0-9]+]]:gr32 = COPY %edi
+ ; CHECK: [[COPY1:%[0-9]+]]:gr32 = COPY %esi
; CHECK: CMP32rr [[COPY]], [[COPY1]], implicit-def %eflags
- ; CHECK: [[SETLEr:%[0-9]+]] = SETLEr implicit %eflags
- ; CHECK: [[SUBREG_TO_REG:%[0-9]+]] = SUBREG_TO_REG 0, [[SETLEr]], 1
- ; CHECK: [[AND32ri8_:%[0-9]+]] = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
+ ; CHECK: [[SETLEr:%[0-9]+]]:gr8 = SETLEr implicit %eflags
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gr32 = SUBREG_TO_REG 0, [[SETLEr]], 1
+ ; CHECK: [[AND32ri8_:%[0-9]+]]:gr32 = AND32ri8 [[SUBREG_TO_REG]], 1, implicit-def %eflags
; CHECK: %eax = COPY [[AND32ri8_]]
; CHECK: RET 0, implicit %eax
%0(s32) = COPY %edi
More information about the llvm-commits
mailing list