aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJay Foad <jay.foad@amd.com>2021-07-21 15:53:59 +0100
committerJay Foad <jay.foad@amd.com>2021-07-26 14:27:30 +0100
commit59f6865231ff7d233e3728b21de2e5aa35189eb3 (patch)
treebfb7f81c58fc563b9b2a5731ac5aea00466d3b12 /clang/lib/Frontend/CompilerInvocation.cpp
parent683b9ed0d593f249e992bed63768986b37b49dbb (diff)
downloadllvm-59f6865231ff7d233e3728b21de2e5aa35189eb3.zip
llvm-59f6865231ff7d233e3728b21de2e5aa35189eb3.tar.gz
llvm-59f6865231ff7d233e3728b21de2e5aa35189eb3.tar.bz2
[AMDGPU][GISel] Fix MMO for raw/struct buffer access with non-constant offset
Codegen for the raw/struct buffer access intrinsics would update the offset in the MMO to reflect the combined offset, if it was known to be constant. If the combined offset was not known to be constant, or if there was an index, it would set the offset in the MMO to 0. This is unsafe because it makes it look like the access does not alias with another access with a fixed non-zero offset. Fix these cases by setting the pointer in the MMO to null, to reflect the fact that we do not have any known IR value pointer + constant offset for the access. D106284 did this for SelectionDAG. This is the corresponding fix for GlobalISel. Differential Revision: https://reviews.llvm.org/D106451
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions