From 9965b12fd1bcb78396fbea2c28d80068e43b31a3 Mon Sep 17 00:00:00 2001 From: Dominik Montada Date: Mon, 27 Jan 2020 09:35:59 -0500 Subject: [PATCH] Use pointer type size for offset constant when lowering load/stores --- llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp index a6fe2c395056..8245fa15f061 100644 --- a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp +++ b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp @@ -2273,8 +2273,8 @@ LegalizerHelper::lower(MachineInstr &MI, unsigned TypeIdx, LLT Ty) { auto LargeLoad = MIRBuilder.buildLoad(LargeLdReg, PtrReg, *LargeMMO); - auto OffsetCst = - MIRBuilder.buildConstant(LLT::scalar(64), LargeSplitSize / 8); + auto OffsetCst = MIRBuilder.buildConstant( + LLT::scalar(PtrTy.getSizeInBits()), LargeSplitSize / 8); Register PtrAddReg = MRI.createGenericVirtualRegister(PtrTy); auto SmallPtr = MIRBuilder.buildPtrAdd(PtrAddReg, PtrReg, OffsetCst.getReg(0));