[PATCH] D57172: [opaque pointer types] Pass value type to LoadInst creation.
David Blaikie via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 24 13:45:39 PST 2019
dblaikie added inline comments.
================
Comment at: llvm/test/CodeGen/AMDGPU/lower-kernargs.ll:309-311
+; HSA-NEXT: [[ARG0_KERNARG_OFFSET_CAST:%.*]] = bitcast i8 addrspace(4)* [[ARG0_KERNARG_OFFSET]] to <4 x i32> addrspace(4)*
+; HSA-NEXT: [[TMP:%.*]] = load <4 x i32>, <4 x i32> addrspace(4)* [[ARG0_KERNARG_OFFSET_CAST]], align 16, !invariant.load !0
+; HSA-NEXT: [[ARG0_LOAD:%.*]] = shufflevector <4 x i32> [[TMP]], <4 x i32> undef, <3 x i32> <i32 0, i32 1, i32 2>
----------------
I haven't figured out why these tests changed - could you explain it?
================
Comment at: llvm/tools/bugpoint/Miscompilation.cpp:884
+ Value *CachedVal =
+ new LoadInst(F->getFunctionType(), Cache, "fpcache", EntryBB);
Value *IsNull = new ICmpInst(*EntryBB, ICmpInst::ICMP_EQ, CachedVal,
----------------
This doesn't immediately make sense to me - can you load a function type? What's the resulting value type? (I guess I'm misreading this somehow)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57172/new/
https://reviews.llvm.org/D57172
More information about the llvm-commits
mailing list