llvm/tools/bugpoint
Hal Finkel c818be073d [bugpoint] Fix "Alias must point to a definition" problems
GlobalAliases may reference function definitions, but not function declarations.

bugpoint would sometimes create invalid IR by deleting a function's body (thus
mutating a function definition into a declaration) without first 'fixing' any
GlobalAliases that reference that function definition.

This change iteratively prevents that issue. Before deleting a function's body,
it scans the module for GlobalAliases which reference that function. When
found, it eliminates them using replaceAllUsesWith.

Fixes PR20788.

Patch by Nick Johnson!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254171 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-26 19:23:49 +00:00
..
BugDriver.cpp
BugDriver.h [bugpoint] Fix "Alias must point to a definition" problems 2015-11-26 19:23:49 +00:00
bugpoint.cpp
CMakeLists.txt
CrashDebugger.cpp [bugpoint] Fix "Alias must point to a definition" problems 2015-11-26 19:23:49 +00:00
ExecutionDriver.cpp
ExtractFunction.cpp [bugpoint] Fix "Alias must point to a definition" problems 2015-11-26 19:23:49 +00:00
FindBugs.cpp
ListReducer.h
LLVMBuild.txt
Makefile
Miscompilation.cpp
OptimizerDriver.cpp
ToolRunner.cpp
ToolRunner.h