Update for upstream LLVM changes is MemoryBuffer APIs

Swift SVN r21409
This commit is contained in:
Dmitri Hrybenko
2014-08-22 08:28:03 +00:00
parent e45fe991b0
commit 42b25d939d
7 changed files with 39 additions and 36 deletions

View File

@@ -22,10 +22,12 @@ SourceLoc SourceManager::getCodeCompletionLoc() const {
.getAdvancedLoc(CodeCompletionOffset);
}
unsigned SourceManager::addNewSourceBuffer(llvm::MemoryBuffer *Buffer) {
unsigned
SourceManager::addNewSourceBuffer(std::unique_ptr<llvm::MemoryBuffer> Buffer) {
assert(Buffer);
auto ID = LLVMSourceMgr.AddNewSourceBuffer(Buffer, llvm::SMLoc());
BufIdentIDMap[Buffer->getBufferIdentifier()] = ID;
StringRef BufIdentifier = Buffer->getBufferIdentifier();
auto ID = LLVMSourceMgr.AddNewSourceBuffer(std::move(Buffer), llvm::SMLoc());
BufIdentIDMap[BufIdentifier] = ID;
return ID;
}
@@ -35,8 +37,9 @@ unsigned SourceManager::addMemBufferCopy(llvm::MemoryBuffer *Buffer) {
unsigned SourceManager::addMemBufferCopy(StringRef InputData,
StringRef BufIdentifier) {
auto Buffer = llvm::MemoryBuffer::getMemBufferCopy(InputData, BufIdentifier);
return addNewSourceBuffer(Buffer);
auto Buffer = std::unique_ptr<llvm::MemoryBuffer>(
llvm::MemoryBuffer::getMemBufferCopy(InputData, BufIdentifier));
return addNewSourceBuffer(std::move(Buffer));
}
bool SourceManager::openVirtualFile(SourceLoc loc, StringRef name,