Add back r222061 with a fix.
authorRafael Espindola <rafael.espindola@gmail.com>
Mon, 17 Nov 2014 02:28:27 +0000 (02:28 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Mon, 17 Nov 2014 02:28:27 +0000 (02:28 +0000)
commitdaa09d03abebc7134e898d7e186c49c8be6a3789
tree46dffdb7b22992667d1c7d2a4c88e107a72a9010
parentb06648fe56ccd6a111d7031fed071924811aacd7
Add back r222061 with a fix.

This adds back r222061, but now calls initializePAEvalPass from the correct
library to avoid link problems.

Original message:

Don't make assumptions about the name of private global variables.

Private variables are can be renamed, so it is not reliable to make
decisions on the name.

The name is also dropped by the assembler before getting to the
linker, so using the name causes a disconnect between how llvm makes a
decision (var name) and how the linker makes a decision (section it is
in).

This patch changes one case where we were looking at the variable name to use
the section instead.

Test tuning by Michael Gottesman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222117 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/Passes.h
include/llvm/InitializePasses.h
include/llvm/LinkAllPasses.h
lib/Transforms/ObjCARC/CMakeLists.txt
lib/Transforms/ObjCARC/ObjCARC.cpp
lib/Transforms/ObjCARC/ObjCARC.h
lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp [new file with mode: 0644]
test/Transforms/ObjCARC/provenance.ll [new file with mode: 0644]