aboutsummaryrefslogtreecommitdiff
path: root/libc
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2025-09-04 10:23:29 +0200
committerGitHub <noreply@github.com>2025-09-04 08:23:29 +0000
commitd1408667de830da8817c24cb9788da6caae551c7 (patch)
treeb080f576f0225d07213ae961305b5212daffac38 /libc
parentd0246fe1e79c6ea06b6b72f66a71a96a3342aa42 (diff)
downloadllvm-d1408667de830da8817c24cb9788da6caae551c7.zip
llvm-d1408667de830da8817c24cb9788da6caae551c7.tar.gz
llvm-d1408667de830da8817c24cb9788da6caae551c7.tar.bz2
[MemorySSA] Don't create phi nodes in fixupDefs() (#156021)
The general flow when inserting MemoryDefs is: * Insert the def and set it's defining access (may insert phis) * Insert IDF phis * Update defining access for defs after the new one (fixupDefs) * Rename uses if requested fixupDefs() uses getPreviousDef() which can create new MemoryPHIs, but for which we're not going to insert IDF phis, so the required dominance property may not hold. I believe this is a leftover from a time before the "Insert IDF phis" step existed. Now that step should already ensure that all necessary MemoryPhis have been inserted, and we only need to update them. The fixupDefs() implementation was also returning after updating a single access, which is not right. Fixes https://github.com/llvm/llvm-project/issues/47875. Fixes https://github.com/llvm/llvm-project/issues/117157. Fixes https://github.com/llvm/llvm-project/issues/152998. Fixes https://github.com/llvm/llvm-project/issues/155161. Fixes https://github.com/llvm/llvm-project/issues/155184.
Diffstat (limited to 'libc')
0 files changed, 0 insertions, 0 deletions