aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
diff options
context:
space:
mode:
authorJohannes Doerfert <johannes@jdoerfert.de>2020-05-12 20:51:21 -0500
committerJohannes Doerfert <johannes@jdoerfert.de>2020-05-12 21:00:30 -0500
commitaf48351cc8fc63148e8cfd10a936b2d5d0c2f078 (patch)
tree4e0bd13882abddfcd963f25c7719bb59b554e625 /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
parent8aa2266fd8dd237c84daf12c2eec0df244558f49 (diff)
downloadllvm-af48351cc8fc63148e8cfd10a936b2d5d0c2f078.zip
llvm-af48351cc8fc63148e8cfd10a936b2d5d0c2f078.tar.gz
llvm-af48351cc8fc63148e8cfd10a936b2d5d0c2f078.tar.bz2
[Attributor][FIX] Stabilize the state of AAReturnedValues each update
For AAReturnedValues we treated new and existing information differently in the updateImpl. Only the latter was properly analyzed and categorized. The former was thought to be analyzed in the subsequent update. Since the Attributor does not support "self-updates" we need to make sure the state is "stable" after each updateImpl invocation. That is, if the surrounding information does not change, the state is valid. Now we make sure all return values have been handled and properly categorized each iteration. We might not update again if we have not requested a non-fix attribute so we cannot "wait" for the next update to analyze a new return value. Bug reported by @sdmitriev.
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions