forked from OSchip/llvm-project
Bitcode Writer: EmitRecordWith* takes an ArrayRef instead of a SmallVector (NFC)
From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 247178
This commit is contained in:
parent
db7ea86bf4
commit
7d2bf53ed1
|
@ -15,6 +15,7 @@
|
|||
#ifndef LLVM_BITCODE_BITSTREAMWRITER_H
|
||||
#define LLVM_BITCODE_BITSTREAMWRITER_H
|
||||
|
||||
#include "llvm/ADT/ArrayRef.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/ADT/StringRef.h"
|
||||
#include "llvm/Bitcode/BitCodes.h"
|
||||
|
@ -286,8 +287,8 @@ private:
|
|||
/// emission code. If BlobData is non-null, then it specifies an array of
|
||||
/// data that should be emitted as part of the Blob or Array operand that is
|
||||
/// known to exist at the end of the record.
|
||||
template<typename uintty>
|
||||
void EmitRecordWithAbbrevImpl(unsigned Abbrev, SmallVectorImpl<uintty> &Vals,
|
||||
template <typename uintty>
|
||||
void EmitRecordWithAbbrevImpl(unsigned Abbrev, const ArrayRef<uintty> &Vals,
|
||||
StringRef Blob) {
|
||||
const char *BlobData = Blob.data();
|
||||
unsigned BlobLen = (unsigned) Blob.size();
|
||||
|
@ -398,14 +399,14 @@ public:
|
|||
// Insert the code into Vals to treat it uniformly.
|
||||
Vals.insert(Vals.begin(), Code);
|
||||
|
||||
EmitRecordWithAbbrev(Abbrev, Vals);
|
||||
EmitRecordWithAbbrev(Abbrev, makeArrayRef(Vals));
|
||||
}
|
||||
|
||||
/// EmitRecordWithAbbrev - Emit a record with the specified abbreviation.
|
||||
/// Unlike EmitRecord, the code for the record should be included in Vals as
|
||||
/// the first entry.
|
||||
template<typename uintty>
|
||||
void EmitRecordWithAbbrev(unsigned Abbrev, SmallVectorImpl<uintty> &Vals) {
|
||||
template <typename uintty>
|
||||
void EmitRecordWithAbbrev(unsigned Abbrev, const ArrayRef<uintty> &Vals) {
|
||||
EmitRecordWithAbbrevImpl(Abbrev, Vals, StringRef());
|
||||
}
|
||||
|
||||
|
@ -414,27 +415,27 @@ public:
|
|||
/// specified by the pointer and length specified at the end. In contrast to
|
||||
/// EmitRecord, this routine expects that the first entry in Vals is the code
|
||||
/// of the record.
|
||||
template<typename uintty>
|
||||
void EmitRecordWithBlob(unsigned Abbrev, SmallVectorImpl<uintty> &Vals,
|
||||
template <typename uintty>
|
||||
void EmitRecordWithBlob(unsigned Abbrev, const ArrayRef<uintty> &Vals,
|
||||
StringRef Blob) {
|
||||
EmitRecordWithAbbrevImpl(Abbrev, Vals, Blob);
|
||||
}
|
||||
template<typename uintty>
|
||||
void EmitRecordWithBlob(unsigned Abbrev, SmallVectorImpl<uintty> &Vals,
|
||||
template <typename uintty>
|
||||
void EmitRecordWithBlob(unsigned Abbrev, const ArrayRef<uintty> &Vals,
|
||||
const char *BlobData, unsigned BlobLen) {
|
||||
return EmitRecordWithAbbrevImpl(Abbrev, Vals, StringRef(BlobData, BlobLen));
|
||||
}
|
||||
|
||||
/// EmitRecordWithArray - Just like EmitRecordWithBlob, works with records
|
||||
/// that end with an array.
|
||||
template<typename uintty>
|
||||
void EmitRecordWithArray(unsigned Abbrev, SmallVectorImpl<uintty> &Vals,
|
||||
StringRef Array) {
|
||||
template <typename uintty>
|
||||
void EmitRecordWithArray(unsigned Abbrev, const ArrayRef<uintty> &Vals,
|
||||
StringRef Array) {
|
||||
EmitRecordWithAbbrevImpl(Abbrev, Vals, Array);
|
||||
}
|
||||
template<typename uintty>
|
||||
void EmitRecordWithArray(unsigned Abbrev, SmallVectorImpl<uintty> &Vals,
|
||||
const char *ArrayData, unsigned ArrayLen) {
|
||||
template <typename uintty>
|
||||
void EmitRecordWithArray(unsigned Abbrev, const ArrayRef<uintty> &Vals,
|
||||
const char *ArrayData, unsigned ArrayLen) {
|
||||
return EmitRecordWithAbbrevImpl(Abbrev, Vals, StringRef(ArrayData,
|
||||
ArrayLen));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue