This is the parent pass of D73307.
This adds a new pass to make internal linkage symbol names unique with clang option -funique-internal-linkage-symbols.
Paths
| Differential D78243
New pass to make internal linkage symbol names unique ClosedPublic Authored by tmsriram on Apr 15 2020, 2:19 PM.
Details
Diff Detail Event Timelinetmsriram added a child revision: D73307: Unique Names for Functions with Internal Linkage.Apr 15 2020, 2:19 PM
Comment Actions Code looks good, but I think this needs a test in llvm/test/Transforms. I think it should be registered by the INITIALIZE_PASS macros, so opt -unique-internal-linkage-names should find it and run it... Comment Actions
Done. Comment Actions lgtm, plus improvement to test.
This revision is now accepted and ready to land.Apr 17 2020, 1:11 PM
Comment Actions You may need an opt -passes='...' test for the new pass manager and implement the new pass. We are using -fexperimental-new-pass-manager heavily.
Comment Actions
I am already testing -fexperimental-new-pass-manager in D73307, need to do it here? Comment Actions
Probably wouldn't hurt to have both an explicit test for each pass manager. Closed by commit rG365b60fc9371: New pass to make internal linkage symbol names unique. (authored by tmsriram). · Explain WhyApr 20 2020, 3:13 PM This revision was automatically updated to reflect the committed changes. tmsriram marked 3 inline comments as done. Comment Actions
I saw this after I pushed. I can follow it up with a test.
Revision Contents
Diff 258427 llvm/include/llvm/InitializePasses.h
llvm/include/llvm/Transforms/Utils.h
llvm/include/llvm/Transforms/Utils/UniqueInternalLinkageNames.h
llvm/lib/Transforms/Utils/CMakeLists.txt
llvm/lib/Transforms/Utils/UniqueInternalLinkageNames.cpp
llvm/lib/Transforms/Utils/Utils.cpp
llvm/test/Transforms/UniqueInternalLinkageNames/unique_symbol_names.ll
llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
|
The defaulted default constructor can be deleted.