[PATCH] D141721: DAG/GlobalISel: Fix broken/redundant setting of MODereferenceable

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 13 12:34:54 PST 2023


arsenm created this revision.
arsenm added reviewers: efriedma, craig.topper, paquette, aemerson, RKSimon, reames.
Herald added subscribers: kosarev, pmatos, asb, kerbowa, pengfei, hiraditya, jgravelle-google, sbc100, jvesely, dschuff.
Herald added a project: All.
arsenm requested review of this revision.
Herald added subscribers: aheejin, wdng.
Herald added a project: LLVM.

This was incorrectly setting dereferenceable on unaligned
operands. getLoadMemOperandFlags does the alignment dereferenceabilty
check without alignment, and then both paths went on to check
isDereferenceableAndAlignedPointer. Make getLoadMemOperandFlags check
isDereferenceableAndAlignedPointer, and remove the second call.


https://reviews.llvm.org/D141721

Files:
  llvm/include/llvm/CodeGen/TargetLowering.h
  llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/CodeGen/TargetLoweringBase.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-load-metadata.ll
  llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-objects.ll
  llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
  llvm/test/CodeGen/AMDGPU/buffer-intrinsics-mmo-offsets.ll
  llvm/test/CodeGen/AMDGPU/indirect-call.ll
  llvm/test/CodeGen/AMDGPU/kernel-args.ll
  llvm/test/CodeGen/AMDGPU/legalize-fp-load-invariant.ll
  llvm/test/CodeGen/WebAssembly/reg-stackify.ll
  llvm/test/CodeGen/X86/fold-sext-trunc.ll
  llvm/test/CodeGen/X86/hoist-invariant-load.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D141721.489096.patch
Type: text/x-patch
Size: 26377 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230113/66b95904/attachment.bin>


More information about the llvm-commits mailing list