mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-05-07 19:36:06 +03:00
Use _d_newarrayU instead of _d_newarrayvT
This commit is contained in:
parent
8f7f264c89
commit
50f729d415
5 changed files with 9 additions and 9 deletions
|
@ -617,7 +617,7 @@ DSliceValue* DtoNewDynArray(Loc& loc, Type* arrayType, DValue* dim, bool default
|
|||
|
||||
const char* fnname = defaultInit ?
|
||||
(zeroInit ? "_d_newarrayT" : "_d_newarrayiT") :
|
||||
"_d_newarrayvT";
|
||||
"_d_newarrayU";
|
||||
LLFunction* fn = LLVM_D_GetRuntimeFunction(loc, gIR->module, fnname);
|
||||
|
||||
// call allocator
|
||||
|
|
|
@ -385,7 +385,7 @@ namespace {
|
|||
Module* M;
|
||||
|
||||
TypeInfoFI AllocMemoryT;
|
||||
ArrayFI NewArrayVT;
|
||||
ArrayFI NewArrayU;
|
||||
ArrayFI NewArrayT;
|
||||
AllocClassFI AllocClass;
|
||||
UntypedMemoryFI AllocMemory;
|
||||
|
@ -427,12 +427,12 @@ FunctionPass *createGarbageCollect2Stack() {
|
|||
GarbageCollect2Stack::GarbageCollect2Stack()
|
||||
: FunctionPass(ID),
|
||||
AllocMemoryT(ReturnType::Pointer, 0),
|
||||
NewArrayVT(ReturnType::Array, 0, 1, false),
|
||||
NewArrayU(ReturnType::Array, 0, 1, false),
|
||||
NewArrayT(ReturnType::Array, 0, 1, true),
|
||||
AllocMemory(0)
|
||||
{
|
||||
KnownFunctions["_d_allocmemoryT"] = &AllocMemoryT;
|
||||
KnownFunctions["_d_newarrayvT"] = &NewArrayVT;
|
||||
KnownFunctions["_d_newarrayU"] = &NewArrayU;
|
||||
KnownFunctions["_d_newarrayT"] = &NewArrayT;
|
||||
KnownFunctions["_d_newclass"] = &AllocClass;
|
||||
KnownFunctions["_d_allocmemory"] = &AllocMemory;
|
||||
|
|
|
@ -343,7 +343,7 @@ void SimplifyDRuntimeCalls::InitOptimizations() {
|
|||
Optimizations["_d_allocmemoryT"] = &Allocation;
|
||||
Optimizations["_d_newarrayT"] = &Allocation;
|
||||
Optimizations["_d_newarrayiT"] = &Allocation;
|
||||
Optimizations["_d_newarrayvT"] = &Allocation;
|
||||
Optimizations["_d_newarrayU"] = &Allocation;
|
||||
Optimizations["_d_newarraymT"] = &Allocation;
|
||||
Optimizations["_d_newarraymiT"] = &Allocation;
|
||||
Optimizations["_d_newarraymvT"] = &Allocation;
|
||||
|
|
|
@ -88,7 +88,7 @@ static void checkForImplicitGCCall(const Loc &loc, const char *name)
|
|||
"_d_newarrayiT",
|
||||
"_d_newarraymT",
|
||||
"_d_newarraymiT",
|
||||
"_d_newarrayvT",
|
||||
"_d_newarrayU",
|
||||
"_d_newclass",
|
||||
};
|
||||
|
||||
|
@ -410,11 +410,11 @@ static void LLVM_D_BuildRuntimeModule()
|
|||
}
|
||||
// void[] _d_newarrayT(TypeInfo ti, size_t length)
|
||||
// void[] _d_newarrayiT(TypeInfo ti, size_t length)
|
||||
// void[] _d_newarrayvT(TypeInfo ti, size_t length)
|
||||
// void[] _d_newarrayU(TypeInfo ti, size_t length)
|
||||
{
|
||||
llvm::StringRef fname("_d_newarrayT");
|
||||
llvm::StringRef fname2("_d_newarrayiT");
|
||||
llvm::StringRef fname3("_d_newarrayvT");
|
||||
llvm::StringRef fname3("_d_newarrayU");
|
||||
LLType *types[] = { typeInfoTy, sizeTy };
|
||||
LLFunctionType* fty = llvm::FunctionType::get(voidArrayTy, types, false);
|
||||
llvm::Function::Create(fty, llvm::GlobalValue::ExternalLinkage, fname, M);
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit d2fa88202fed6e7c227eaa71d738ded658267079
|
||||
Subproject commit 4e75437a2805f0e3e6882a0b36b438303e402383
|
Loading…
Add table
Add a link
Reference in a new issue