NVPTX: remove raw delete call

Also make members that are never accessed outside the class
private.

llvm-svn: 216363
This commit is contained in:
Dylan Noblesmith 2014-08-25 01:59:29 +00:00
parent c4a9942a68
commit 802b6ce8de
1 changed files with 7 additions and 10 deletions

View File

@ -86,13 +86,13 @@ class LLVM_LIBRARY_VISIBILITY NVPTXAsmPrinter : public AsmPrinter {
// Once we have this AggBuffer setup, we can choose how to print
// it out.
public:
unsigned size; // size of the buffer in bytes
unsigned char *buffer; // the buffer
unsigned numSymbols; // number of symbol addresses
SmallVector<unsigned, 4> symbolPosInBuffer;
SmallVector<const Value *, 4> Symbols;
private:
const unsigned size; // size of the buffer in bytes
std::vector<unsigned char> buffer; // the buffer
SmallVector<unsigned, 4> symbolPosInBuffer;
SmallVector<const Value *, 4> Symbols;
unsigned curpos;
raw_ostream &O;
NVPTXAsmPrinter &AP;
@ -100,14 +100,11 @@ class LLVM_LIBRARY_VISIBILITY NVPTXAsmPrinter : public AsmPrinter {
public:
AggBuffer(unsigned _size, raw_ostream &_O, NVPTXAsmPrinter &_AP)
: O(_O), AP(_AP) {
buffer = new unsigned char[_size];
size = _size;
: size(_size), buffer(_size), O(_O), AP(_AP) {
curpos = 0;
numSymbols = 0;
EmitGeneric = AP.EmitGeneric;
}
~AggBuffer() { delete[] buffer; }
unsigned addBytes(unsigned char *Ptr, int Num, int Bytes) {
assert((curpos + Num) <= size);
assert((curpos + Bytes) <= size);
@ -179,9 +176,9 @@ class LLVM_LIBRARY_VISIBILITY NVPTXAsmPrinter : public AsmPrinter {
else
nextSymbolPos = symbolPosInBuffer[nSym];
} else if (nBytes == 4)
O << *(unsigned int *)(buffer + pos);
O << *(unsigned int *)(&buffer[pos]);
else
O << *(unsigned long long *)(buffer + pos);
O << *(unsigned long long *)(&buffer[pos]);
}
}
}