Move GetConstantStringInfo to lib/Analysis. Remove

string output routine from Constant. Update all
callers. Change debug intrinsic api slightly to
accomodate move of routine, these now return values
instead of strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52748 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eric Christopher
2008-06-26 00:31:12 +00:00
parent cda8875433
commit 0d2b0aba42
10 changed files with 120 additions and 64 deletions

View File

@@ -12,6 +12,7 @@
//===----------------------------------------------------------------------===//
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/Constants.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/GlobalAlias.h"
#include "llvm/GlobalVariable.h"
#include "llvm/Intrinsics.h"
@@ -2594,8 +2595,7 @@ static bool isMemSrcFromString(SDOperand Src, std::string &Str,
GlobalVariable *GV = dyn_cast<GlobalVariable>(G->getGlobal());
if (GV && GV->isConstant()) {
Str = GV->getStringValue(false);
if (!Str.empty()) {
if (GetConstantStringInfo(GV, Str)) {
SrcOff += SrcDelta;
return true;
}