diff options
author | Dylan Noblesmith <nobled@dreamwidth.org> | 2014-08-25 01:59:29 +0000 |
---|---|---|
committer | Dylan Noblesmith <nobled@dreamwidth.org> | 2014-08-25 01:59:29 +0000 |
commit | 0280c4c7a7018647939d062022318e6bb38bf07e (patch) | |
tree | 5b4c4670702f525b8c777ea15b2a001c40290ea8 /lib/Target/NVPTX/NVPTXAsmPrinter.h | |
parent | 1e321bba6e1b51965406764653f69c846dc0573a (diff) |
NVPTX: remove raw delete call
Also make members that are never accessed outside the class
private.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216363 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/NVPTX/NVPTXAsmPrinter.h')
-rw-r--r-- | lib/Target/NVPTX/NVPTXAsmPrinter.h | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/lib/Target/NVPTX/NVPTXAsmPrinter.h b/lib/Target/NVPTX/NVPTXAsmPrinter.h index cbafeeeb815..83fa5d3e09a 100644 --- a/lib/Target/NVPTX/NVPTXAsmPrinter.h +++ b/lib/Target/NVPTX/NVPTXAsmPrinter.h @@ -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]); } } } |