projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[X86] Add support for tbyte memory operand size for Intel-syntax x86 assembly
[oota-llvm.git]
/
include
/
llvm
/
Object
/
Archive.h
diff --git
a/include/llvm/Object/Archive.h
b/include/llvm/Object/Archive.h
index e461564ace8e092b9a5edd9fed9d9b1af1555ecd..e5d59d832e31b13cac567a2f0bf611a2fb1c4915 100644
(file)
--- a/
include/llvm/Object/Archive.h
+++ b/
include/llvm/Object/Archive.h
@@
-74,6
+74,7
@@
public:
return Data.begin() < other.Data.begin();
}
return Data.begin() < other.Data.begin();
}
+ const Archive *getParent() const { return Parent; }
Child getNext() const;
ErrorOr<StringRef> getName() const;
Child getNext() const;
ErrorOr<StringRef> getName() const;
@@
-94,9
+95,7
@@
public:
/// \return the size in the archive header for this member.
uint64_t getRawSize() const;
/// \return the size in the archive header for this member.
uint64_t getRawSize() const;
- StringRef getBuffer() const {
- return StringRef(Data.data() + StartOfFile, getSize());
- }
+ ErrorOr<StringRef> getBuffer() const;
uint64_t getChildOffset() const;
ErrorOr<MemoryBufferRef> getMemoryBufferRef() const;
uint64_t getChildOffset() const;
ErrorOr<MemoryBufferRef> getMemoryBufferRef() const;
@@
-208,7
+207,11
@@
public:
bool hasSymbolTable() const;
child_iterator getSymbolTableChild() const { return SymbolTable; }
bool hasSymbolTable() const;
child_iterator getSymbolTableChild() const { return SymbolTable; }
- StringRef getSymbolTable() const { return SymbolTable->getBuffer(); }
+ StringRef getSymbolTable() const {
+ // We know that the symbol table is not an external file,
+ // so we just assert there is no error.
+ return *SymbolTable->getBuffer();
+ }
uint32_t getNumberOfSymbols() const;
private:
uint32_t getNumberOfSymbols() const;
private:
@@
-217,6
+220,7
@@
private:
child_iterator FirstRegular;
unsigned Format : 2;
unsigned IsThin : 1;
child_iterator FirstRegular;
unsigned Format : 2;
unsigned IsThin : 1;
+ mutable std::vector<std::unique_ptr<MemoryBuffer>> ThinBuffers;
};
}
};
}