[SROA] Unify the names of new instructions created in SROA. #11815
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In Debug builds, the names of adjusted pointers have a pointer-specific name prefix which doesn't exist in non-debug builds.
This causes differences in output when looking at the output of SROA with a Debug or Release compiler.
For most of our ongoing testing, we use essentially Release+Asserts build (basically release but without NDEBUG defined), however we ship a Release compiler. Therefore we want to say with reasonable confidence that building a large project with Release vs a Release+Asserts build gives us the same output when the same compiler version is used.
This difference however, makes it difficult to prove that the output is the same if the only difference is the name when using LTO builds and looking at bitcode. We are using
-fdiscard-value-namesto make sure the LLVM IR as identical as possible.Hence this change is being proposed.