mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-12 05:56:28 +00:00
eliminate the "string" form of ConstantArray::get, using
ConstantDataArray::getString instead. llvm-svn: 149365
This commit is contained in:
parent
c613633ed8
commit
a9b3505e9a
@ -352,17 +352,6 @@ public:
|
||||
// ConstantArray accessors
|
||||
static Constant *get(ArrayType *T, ArrayRef<Constant*> V);
|
||||
|
||||
/// This method constructs a ConstantArray and initializes it with a text
|
||||
/// string. The default behavior (AddNull==true) causes a null terminator to
|
||||
/// be placed at the end of the array. This effectively increases the length
|
||||
/// of the array by one (you've been warned). However, in some situations
|
||||
/// this is not desired so if AddNull==false then the string is copied without
|
||||
/// null termination.
|
||||
|
||||
// FIXME Remove this.
|
||||
static Constant *get(LLVMContext &Context, StringRef Initializer,
|
||||
bool AddNull = true);
|
||||
|
||||
/// Transparently provide more efficient getOperand methods.
|
||||
DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Constant);
|
||||
|
||||
|
@ -2018,7 +2018,8 @@ bool LLParser::ParseValID(ValID &ID, PerFunctionState *PFS) {
|
||||
}
|
||||
case lltok::kw_c: // c "foo"
|
||||
Lex.Lex();
|
||||
ID.ConstantVal = ConstantArray::get(Context, Lex.getStrVal(), false);
|
||||
ID.ConstantVal = ConstantDataArray::getString(Context, Lex.getStrVal(),
|
||||
false);
|
||||
if (ParseToken(lltok::StringConstant, "expected string")) return true;
|
||||
ID.Kind = ValID::t_Constant;
|
||||
return false;
|
||||
|
@ -213,7 +213,7 @@ const char *AddressSanitizer::getPassName() const {
|
||||
|
||||
// Create a constant for Str so that we can pass it to the run-time lib.
|
||||
static GlobalVariable *createPrivateGlobalForString(Module &M, StringRef Str) {
|
||||
Constant *StrConst = ConstantArray::get(M.getContext(), Str);
|
||||
Constant *StrConst = ConstantDataArray::getString(M.getContext(), Str);
|
||||
return new GlobalVariable(M, StrConst->getType(), true,
|
||||
GlobalValue::PrivateLinkage, StrConst, "");
|
||||
}
|
||||
|
@ -780,12 +780,6 @@ Constant *ConstantArray::get(ArrayType *Ty, ArrayRef<Constant*> V) {
|
||||
return pImpl->ArrayConstants.getOrCreate(Ty, V);
|
||||
}
|
||||
|
||||
// FIXME: Remove this method.
|
||||
Constant *ConstantArray::get(LLVMContext &Context, StringRef Str,
|
||||
bool AddNull) {
|
||||
return ConstantDataArray::getString(Context, Str, AddNull);
|
||||
}
|
||||
|
||||
/// getTypeForElements - Return an anonymous struct type to use for a constant
|
||||
/// with the specified set of elements. The list must not be empty.
|
||||
StructType *ConstantStruct::getTypeForElements(LLVMContext &Context,
|
||||
|
@ -634,8 +634,8 @@ LLVMValueRef LLVMConstStringInContext(LLVMContextRef C, const char *Str,
|
||||
LLVMBool DontNullTerminate) {
|
||||
/* Inverted the sense of AddNull because ', 0)' is a
|
||||
better mnemonic for null termination than ', 1)'. */
|
||||
return wrap(ConstantArray::get(*unwrap(C), StringRef(Str, Length),
|
||||
DontNullTerminate == 0));
|
||||
return wrap(ConstantDataArray::getString(*unwrap(C), StringRef(Str, Length),
|
||||
DontNullTerminate == 0));
|
||||
}
|
||||
LLVMValueRef LLVMConstStructInContext(LLVMContextRef C,
|
||||
LLVMValueRef *ConstantVals,
|
||||
|
@ -24,7 +24,7 @@ using namespace llvm;
|
||||
/// specified. If Name is specified, it is the name of the global variable
|
||||
/// created.
|
||||
Value *IRBuilderBase::CreateGlobalString(StringRef Str, const Twine &Name) {
|
||||
Constant *StrConstant = ConstantArray::get(Context, Str, true);
|
||||
Constant *StrConstant = ConstantDataArray::getString(Context, Str);
|
||||
Module &M = *BB->getParent()->getParent();
|
||||
GlobalVariable *GV = new GlobalVariable(M, StrConstant->getType(),
|
||||
true, GlobalValue::PrivateLinkage,
|
||||
|
@ -820,7 +820,8 @@ static void CleanupAndPrepareModules(BugDriver &BD, Module *&Test,
|
||||
// Don't forward functions which are external in the test module too.
|
||||
if (TestFn && !TestFn->isDeclaration()) {
|
||||
// 1. Add a string constant with its name to the global file
|
||||
Constant *InitArray = ConstantArray::get(F->getContext(), F->getName());
|
||||
Constant *InitArray =
|
||||
ConstantDataArray::getString(F->getContext(), F->getName());
|
||||
GlobalVariable *funcName =
|
||||
new GlobalVariable(*Safe, InitArray->getType(), true /*isConstant*/,
|
||||
GlobalValue::InternalLinkage, InitArray,
|
||||
|
Loading…
Reference in New Issue
Block a user