stringref'ize readRecord and properly capitalize it. Add a compatibility method to easy

the transition.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172940 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2013-01-20 01:06:48 +00:00
parent f84b7500ce
commit 194ef24dfe
2 changed files with 20 additions and 8 deletions

View File

@ -506,9 +506,20 @@ public:
/// skipRecord - Read the current record and discard it.
void skipRecord(unsigned AbbrevID);
unsigned readRecord(unsigned AbbrevID, SmallVectorImpl<uint64_t> &Vals,
StringRef *Blob = 0);
unsigned ReadRecord(unsigned AbbrevID, SmallVectorImpl<uint64_t> &Vals,
const char **BlobStart = 0, unsigned *BlobLen = 0);
const char **BlobStart = 0, unsigned *BlobLen = 0) {
if (!BlobStart)
return readRecord(AbbrevID, Vals);
StringRef S;
unsigned X = readRecord(AbbrevID, Vals, &S);
*BlobStart = S.data();
*BlobLen = S.size();
return X;
}
unsigned ReadRecord(unsigned AbbrevID, SmallVectorImpl<uint64_t> &Vals,
const char *&BlobStart, unsigned &BlobLen) {
return ReadRecord(AbbrevID, Vals, &BlobStart, &BlobLen);

View File

@ -198,9 +198,9 @@ void BitstreamCursor::skipRecord(unsigned AbbrevID) {
}
}
unsigned BitstreamCursor::ReadRecord(unsigned AbbrevID,
unsigned BitstreamCursor::readRecord(unsigned AbbrevID,
SmallVectorImpl<uint64_t> &Vals,
const char **BlobStart, unsigned *BlobLen){
StringRef *Blob) {
if (AbbrevID == bitc::UNABBREV_RECORD) {
unsigned Code = ReadVBR(6);
unsigned NumElts = ReadVBR(6);
@ -256,10 +256,11 @@ unsigned BitstreamCursor::ReadRecord(unsigned AbbrevID,
// Otherwise, read the number of bytes. If we can return a reference to
// the data, do so to avoid copying it.
if (BlobStart) {
*BlobStart = (const char*)BitStream->getBitcodeBytes().getPointer(
NextChar, NumElts);
*BlobLen = NumElts;
if (Blob) {
*Blob =
StringRef((const char*)BitStream->getBitcodeBytes().getPointer(
NextChar, NumElts),
NumElts);
} else {
for (; NumElts; ++NextChar, --NumElts)
Vals.push_back(getByte(NextChar));