diff options
author | Greg Clayton <gclayton@apple.com> | 2013-04-18 18:10:51 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2013-04-18 18:10:51 +0000 |
commit | e01e07b6e76ad6f571cefe679d112fede88cf1db (patch) | |
tree | 20979ebc3dfe96a71174222e2fee18f30f772abf /lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h | |
parent | 56f976f6bda043e5bdbd35e5d92968a112b74a10 (diff) | |
download | bcm5719-llvm-e01e07b6e76ad6f571cefe679d112fede88cf1db.tar.gz bcm5719-llvm-e01e07b6e76ad6f571cefe679d112fede88cf1db.zip |
Since we use C++11, we should switch over to using std::unique_ptr when C++11 is being used. To do this, we follow what we have done for shared pointers and we define a STD_UNIQUE_PTR macro that can be used and it will "do the right thing". Due to some API differences in std::unique_ptr and due to the fact that we need to be able to compile without C++11, we can't use move semantics so some code needed to change so that it can compile with either C++.
Anyone wanting to use a unique_ptr or auto_ptr should now use the "STD_UNIQUE_PTR(TYPE)" macro.
llvm-svn: 179779
Diffstat (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h')
-rw-r--r-- | lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h index 7428b6b13e2..4b9cee2a608 100644 --- a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h +++ b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h @@ -43,7 +43,7 @@ class DisassemblerLLVMC : public lldb_private::Disassembler public: LLVMCDisassembler (const char *triple, unsigned flavor, DisassemblerLLVMC &owner); - ~LLVMCDisassembler() {}; + ~LLVMCDisassembler(); uint64_t GetMCInst (const uint8_t *opcode_data, size_t opcode_data_len, lldb::addr_t pc, llvm::MCInst &mc_inst); uint64_t PrintMCInst (llvm::MCInst &mc_inst, char *output_buffer, size_t out_buffer_len); @@ -54,14 +54,14 @@ class DisassemblerLLVMC : public lldb_private::Disassembler } private: - bool m_is_valid; - std::auto_ptr<llvm::MCContext> m_context_ap; - std::auto_ptr<llvm::MCAsmInfo> m_asm_info_ap; - std::auto_ptr<llvm::MCSubtargetInfo> m_subtarget_info_ap; - std::auto_ptr<llvm::MCInstrInfo> m_instr_info_ap; - std::auto_ptr<llvm::MCRegisterInfo> m_reg_info_ap; - std::auto_ptr<llvm::MCInstPrinter> m_instr_printer_ap; - std::auto_ptr<llvm::MCDisassembler> m_disasm_ap; + bool m_is_valid; + STD_UNIQUE_PTR(llvm::MCContext) m_context_ap; + STD_UNIQUE_PTR(llvm::MCAsmInfo) m_asm_info_ap; + STD_UNIQUE_PTR(llvm::MCSubtargetInfo) m_subtarget_info_ap; + STD_UNIQUE_PTR(llvm::MCInstrInfo) m_instr_info_ap; + STD_UNIQUE_PTR(llvm::MCRegisterInfo) m_reg_info_ap; + STD_UNIQUE_PTR(llvm::MCInstPrinter) m_instr_printer_ap; + STD_UNIQUE_PTR(llvm::MCDisassembler) m_disasm_ap; }; public: @@ -164,8 +164,8 @@ protected: lldb_private::Mutex m_mutex; bool m_data_from_file; - std::auto_ptr<LLVMCDisassembler> m_disasm_ap; - std::auto_ptr<LLVMCDisassembler> m_alternate_disasm_ap; + STD_UNIQUE_PTR(LLVMCDisassembler) m_disasm_ap; + STD_UNIQUE_PTR(LLVMCDisassembler) m_alternate_disasm_ap; }; #endif // liblldb_DisassemblerLLVM_h_ |