aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAlex Gatea <alexgatea@gmail.com>2022-11-04 14:28:17 +0100
committerNikita Popov <npopov@redhat.com>2022-11-04 14:28:17 +0100
commit7d0648cb6c5f3c7377662a1211846f9fe03c474f (patch)
tree8aab3d63c167aca8bbdd35df1d723d9951d8030a /flang/lib/Frontend/CompilerInvocation.cpp
parent1fb186198af5f183dde053c1396f899567755d64 (diff)
downloadllvm-7d0648cb6c5f3c7377662a1211846f9fe03c474f.zip
llvm-7d0648cb6c5f3c7377662a1211846f9fe03c474f.tar.gz
llvm-7d0648cb6c5f3c7377662a1211846f9fe03c474f.tar.bz2
[GVN] Patch for invalid GVN replacement
If PRE is performed as part of the main GVN pass (to PRE GEP operands before processing loads), and it is performed across a backedge, we will end up adding the new instruction to the leader table of a block that has not yet been processed. When it will be processed, GVN will incorrectly assume that the value is already available, even though it is only available at the end of the block. Avoid this by not performing PRE across backedges. Fixes https://github.com/llvm/llvm-project/issues/58418. Differential Revision: https://reviews.llvm.org/D136095
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions