[LLVMdev] Removing legacy profiling code from LLVM

Chandler Carruth chandlerc at google.com
Thu Sep 12 20:22:29 PDT 2013


Alright, I'm ready to nuke it. Last chance to say stop.

For context of others, this has come up repeatedly: no one we know of is
using EdgeProfiling.cpp, PathProfiling.cpp, and the
lib/Analysis/Profile*Pass.cpp collection of tools. They haven't been
updated since 2012 when Alastair Murray looked into this stuff, and both
current efforts towards PGO are essentially *totally* different
implementation strategies that won't benefit from this code being here.

If anything, this code is actively confusing those efforts and so I would
like to garbage collect and help pave the way for new stuff. We can always
recover this code from the VCS if needed in the future.

Files on the chopping block:
#       deleted:    include/llvm/Analysis/PathNumbering.h
#       deleted:    include/llvm/Analysis/PathProfileInfo.h
#       deleted:    include/llvm/Analysis/ProfileDataLoader.h
#       deleted:    include/llvm/Analysis/ProfileDataTypes.h
#       deleted:    include/llvm/Analysis/ProfileInfo.h
#       deleted:    include/llvm/Analysis/ProfileInfoLoader.h
#       deleted:    include/llvm/Analysis/ProfileInfoTypes.h
#       deleted:    lib/Analysis/PathNumbering.cpp
#       deleted:    lib/Analysis/PathProfileInfo.cpp
#       deleted:    lib/Analysis/PathProfileVerifier.cpp
#       deleted:    lib/Analysis/ProfileDataLoader.cpp
#       deleted:    lib/Analysis/ProfileDataLoaderPass.cpp
#       deleted:    lib/Analysis/ProfileEstimatorPass.cpp
#       deleted:    lib/Analysis/ProfileInfo.cpp
#       deleted:    lib/Analysis/ProfileInfoLoader.cpp
#       deleted:    lib/Analysis/ProfileInfoLoaderPass.cpp
#       deleted:    lib/Analysis/ProfileVerifierPass.cpp
#       deleted:    lib/Transforms/Instrumentation/EdgeProfiling.cpp
#       deleted:    lib/Transforms/Instrumentation/OptimalEdgeProfiling.cpp
#       deleted:    lib/Transforms/Instrumentation/PathProfiling.cpp

Please let me know if you have any concerns. I'm likely to submit this
rather soon and revert it if I hear any problems because we've already
spent too much time with newcomers looking at this code, trying to do stuff
with it, and then realizing it never really worked or was actively
maintained.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130912/c129236c/attachment.html>


More information about the llvm-dev mailing list