aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAndrew Savonichev <andrew.savonichev@gmail.com>2023-01-11 20:48:06 +0300
committerAndrew Savonichev <andrew.savonichev@gmail.com>2023-01-15 00:10:49 +0300
commit75345fb11638ff4c3f4c6c691dbb6c4f72e6666f (patch)
treed16af440d9605e580ddec58c8ec16e5912c6d7db /clang/lib/Frontend/CompilerInvocation.cpp
parent6ad0788c332bb2043142954d300c49ac3e537f34 (diff)
downloadllvm-75345fb11638ff4c3f4c6c691dbb6c4f72e6666f.zip
llvm-75345fb11638ff4c3f4c6c691dbb6c4f72e6666f.tar.gz
llvm-75345fb11638ff4c3f4c6c691dbb6c4f72e6666f.tar.bz2
[NVPTX] Drop memory references of LDG/LDU
This patch fixes machine verifier errors: *** Bad machine code: Missing mayLoad flag *** - function: foo1 - basic block: %bb.0 (0x5560fc64ef08) - instruction: %4:float32regs = INT_PTX_LDG_GLOBAL_f32areg64 killed %3:int64regs :: (load (s32) from %ir.from1, addrspace 1) mayLoad flag is missing because LDG and LDU instructions operate on read-only memory, so we want to treat them as regular instructions and exclude them from memory analysis. Machine verifier checks for memoperands to determine whether an instruction is a load, so dropping them during lowering fixes the problem. Differential Revision: https://reviews.llvm.org/D112466
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions