Merge Demangle change in r342330 to libcxxabi.

Differential Revision: https://reviews.llvm.org/D52104

llvm-svn: 342331
This commit is contained in:
Nico Weber 2018-09-15 18:25:49 +00:00
parent 1359d654e3
commit da01b342b2
2 changed files with 15 additions and 31 deletions

View File

@ -312,21 +312,6 @@ public:
return Alloc.allocate(sizeof(Node *) * sz);
}
};
bool initializeOutputStream(char *Buf, size_t *N, OutputStream &S,
size_t InitSize) {
size_t BufferSize;
if (Buf == nullptr) {
Buf = static_cast<char *>(std::malloc(InitSize));
if (Buf == nullptr)
return true;
BufferSize = InitSize;
} else
BufferSize = *N;
S.reset(Buf, BufferSize);
return false;
}
} // unnamed namespace
//===----------------------------------------------------------------------===//

View File

@ -71,22 +71,6 @@ public:
BufferCapacity = BufferCapacity_;
}
/// Create an OutputStream from a buffer and a size. If either of these are
/// null a buffer is allocated.
static OutputStream create(char *StartBuf, size_t *Size, size_t AllocSize) {
OutputStream Result;
if (!StartBuf || !Size) {
StartBuf = static_cast<char *>(std::malloc(AllocSize));
if (StartBuf == nullptr)
std::terminate();
Size = &AllocSize;
}
Result.reset(StartBuf, *Size);
return Result;
}
/// If a ParameterPackExpansion (or similar type) is encountered, the offset
/// into the pack that we're currently printing.
unsigned CurrentPackIndex = std::numeric_limits<unsigned>::max();
@ -186,6 +170,21 @@ public:
SwapAndRestore &operator=(const SwapAndRestore &) = delete;
};
inline bool initializeOutputStream(char *Buf, size_t *N, OutputStream &S,
size_t InitSize) {
size_t BufferSize;
if (Buf == nullptr) {
Buf = static_cast<char *>(std::malloc(InitSize));
if (Buf == nullptr)
return true;
BufferSize = InitSize;
} else
BufferSize = *N;
S.reset(Buf, BufferSize);
return false;
}
} // namespace
#endif