Index: lldb/trunk/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h =================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h +++ lldb/trunk/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h @@ -20,42 +20,36 @@ class ABIMacOSX_arm : public lldb_private::ABI { public: - ~ABIMacOSX_arm() { } + ~ABIMacOSX_arm() override = default; - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t func_addr, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t func_addr, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); - -protected: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; + + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -public: - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are are 4 byte aligned if (cfa & (4ull - 1ull)) @@ -65,8 +59,8 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // Just make sure the address is a valid 32 bit address. Bit zero // might be set due to Thumb function calls, so don't enforce 2 byte @@ -74,20 +68,21 @@ return pc <= UINT32_MAX; } - virtual lldb::addr_t - FixCodeAddress (lldb::addr_t pc) + lldb::addr_t + FixCodeAddress(lldb::addr_t pc) override { // ARM uses bit zero to signify a code address is thumb, so we must // strip bit zero in any code addresses. return pc & ~(lldb::addr_t)1; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -103,13 +98,18 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); + + lldb_private::ConstString + GetPluginName() override; - virtual uint32_t - GetPluginVersion(); + uint32_t + GetPluginVersion() override; protected: + lldb::ValueObjectSP + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const override; + private: ABIMacOSX_arm() : lldb_private::ABI() @@ -118,4 +118,4 @@ } }; -#endif // liblldb_ABIMacOSX_arm_h_ +#endif // liblldb_ABIMacOSX_arm_h_ Index: lldb/trunk/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h =================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h +++ lldb/trunk/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h @@ -22,30 +22,30 @@ public lldb_private::ABI { public: - ~ABIMacOSX_arm64() { } + ~ABIMacOSX_arm64() override = default; - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; + + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The arm64 ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -57,9 +57,8 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -69,8 +68,8 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { if (pc & (4ull - 1ull)) return false; // Not 4 byte aligned @@ -79,12 +78,13 @@ return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -97,25 +97,26 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ + static lldb_private::ConstString GetPluginNameStatic(); - virtual lldb_private::ConstString - GetPluginName() + lldb_private::ConstString + GetPluginName() override { return GetPluginNameStatic(); } - virtual uint32_t - GetPluginVersion(); + uint32_t + GetPluginVersion() override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; protected: - virtual lldb::ValueObjectSP + lldb::ValueObjectSP GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; + lldb_private::CompilerType &ast_type) const override; private: ABIMacOSX_arm64() : @@ -125,4 +126,4 @@ } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABIMacOSX_arm64_h_ Index: lldb/trunk/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h =================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h +++ lldb/trunk/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h @@ -22,41 +22,33 @@ public lldb_private::ABI { public: - - ~ABIMacOSX_i386() { } + ~ABIMacOSX_i386() override = default; - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t func_addr, - lldb::addr_t return_addr, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t func_addr, + lldb::addr_t return_addr, + llvm::ArrayRef args) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); - -protected: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - -public: + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; + + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The Darwin i386 ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -71,8 +63,8 @@ // // If we were to enforce 16-byte alignment, we also need to relax to 4-byte // alignment for non-darwin i386 targets. - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are are 4 byte aligned if (cfa & (4ull - 1ull)) @@ -82,19 +74,20 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // Just make sure the address is a valid 32 bit address. return pc <= UINT32_MAX; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -107,22 +100,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ + static lldb_private::ConstString GetPluginNameStatic (); - virtual lldb_private::ConstString - GetPluginName(); + lldb_private::ConstString + GetPluginName() override; - virtual uint32_t - GetPluginVersion(); + uint32_t + GetPluginVersion() override; protected: + lldb::ValueObjectSP + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const override; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABIMacOSX_i386() : lldb_private::ABI() { } // Call CreateInstance instead. + ABIMacOSX_i386() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; - -#endif // liblldb_ABI_h_ +#endif // liblldb_ABIMacOSX_i386_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-arm/ABISysV_arm.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-arm/ABISysV_arm.h +++ lldb/trunk/source/Plugins/ABI/SysV-arm/ABISysV_arm.h @@ -20,7 +20,7 @@ class ABISysV_arm : public lldb_private::ABI { public: - ~ABISysV_arm() { } + ~ABISysV_arm() override = default; size_t GetRedZoneSize () const override; @@ -39,12 +39,6 @@ lldb_private::Error SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: - lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const override; - -public: bool CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan) override; @@ -88,6 +82,7 @@ //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -103,6 +98,7 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ + lldb_private::ConstString GetPluginName() override; @@ -110,6 +106,10 @@ GetPluginVersion() override; protected: + lldb::ValueObjectSP + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const override; + private: ABISysV_arm() : lldb_private::ABI() @@ -118,4 +118,4 @@ } }; -#endif // liblldb_ABISysV_arm_h_ +#endif // liblldb_ABISysV_arm_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h +++ lldb/trunk/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h @@ -20,7 +20,7 @@ class ABISysV_arm64 : public lldb_private::ABI { public: - ~ABISysV_arm64() { } + ~ABISysV_arm64() override = default; size_t GetRedZoneSize () const override; @@ -39,12 +39,6 @@ lldb_private::Error SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: - lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const override; - -public: bool CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan) override; @@ -64,7 +58,6 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - bool CallFrameAddressIsValid (lldb::addr_t cfa) override { @@ -92,6 +85,7 @@ //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -107,6 +101,7 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ + lldb_private::ConstString GetPluginName() override; @@ -114,6 +109,10 @@ GetPluginVersion() override; protected: + lldb::ValueObjectSP + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const override; + private: ABISysV_arm64() : lldb_private::ABI() @@ -122,4 +121,4 @@ } }; -#endif // liblldb_ABISysV_arm64_h_ +#endif // liblldb_ABISysV_arm64_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h +++ lldb/trunk/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h @@ -21,63 +21,54 @@ public lldb_private::ABI { public: + ~ABISysV_hexagon() override = default; - ~ABISysV_hexagon( void ) - { - } - - virtual size_t - GetRedZoneSize ( void ) const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall ( lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args ) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; // special thread plan for GDB style non-jit function calls - virtual bool - PrepareTrivialCall ( lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::Type &prototype, - llvm::ArrayRef args ) const; - - virtual bool - GetArgumentValues ( lldb_private::Thread &thread, - lldb_private::ValueList &values ) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::Type &prototype, + llvm::ArrayRef args) const override; + + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject ( lldb::StackFrameSP &frame_sp, - lldb::ValueObjectSP &new_value ); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, + lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple ( lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type ) const; - -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl ( lldb_private::Thread &thread, - lldb_private::CompilerType &type ) const; + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; // specialized to work with llvm IR types - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl ( lldb_private::Thread &thread, llvm::Type &type ) const; + lldb::ValueObjectSP + GetReturnValueObjectImpl(lldb_private::Thread &thread, llvm::Type &type) const override; - virtual bool - CreateFunctionEntryUnwindPlan ( lldb_private::UnwindPlan &unwind_plan ); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan ( lldb_private::UnwindPlan &unwind_plan ); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile ( const lldb_private::RegisterInfo *reg_info ); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; - virtual bool - CallFrameAddressIsValid ( lldb::addr_t cfa ) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & 0x07) @@ -87,50 +78,60 @@ return true; } - virtual bool - CodeAddressIsValid ( lldb::addr_t pc ) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // We have a 64 bit address space, so anything is valid as opcodes // aren't fixed width... return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray ( uint32_t &count ); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void - Initialize ( void ); + Initialize(); static void - Terminate ( void ); + Terminate(); static lldb::ABISP CreateInstance ( const lldb_private::ArchSpec &arch ); static lldb_private::ConstString - GetPluginNameStatic ( void ); + GetPluginNameStatic(); //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName ( void ); - virtual uint32_t - GetPluginVersion ( void ); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void - CreateRegisterMapIfNeeded ( void ); + CreateRegisterMapIfNeeded(); + + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_hexagon ( void ) : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_hexagon() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABISysV_hexagon_h_ +#endif // liblldb_ABISysV_hexagon_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.h +++ lldb/trunk/source/Plugins/ABI/SysV-i386/ABISysV_i386.h @@ -21,10 +21,7 @@ public lldb_private::ABI { public: - - ~ABISysV_i386() - { - } + ~ABISysV_i386() override = default; size_t GetRedZoneSize () const override @@ -46,15 +43,6 @@ lldb_private::Error SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: - lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - - bool - RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); - -public: lldb::ValueObjectSP GetReturnValueObjectImpl (lldb_private::Thread &thread, lldb_private::CompilerType &type) const override; @@ -104,9 +92,11 @@ const lldb_private::RegisterInfo * GetRegisterInfoArray (uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -119,6 +109,7 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ + static lldb_private::ConstString GetPluginNameStatic(); @@ -126,13 +117,25 @@ GetPluginName() override; uint32_t - GetPluginVersion() override + GetPluginVersion() override { return 1; } +protected: + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + + bool + RegisterIsCalleeSaved(const lldb_private::RegisterInfo *reg_info); + private: - ABISysV_i386() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_i386() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h +#endif // liblldb_ABISysV_i386_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-mips/ABISysV_mips.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-mips/ABISysV_mips.h +++ lldb/trunk/source/Plugins/ABI/SysV-mips/ABISysV_mips.h @@ -21,49 +21,40 @@ public lldb_private::ABI { public: + ~ABISysV_mips() override = default; - ~ABISysV_mips() - { - } + size_t + GetRedZoneSize() const override; - virtual size_t - GetRedZoneSize () const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &type) const; - - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; + + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -73,19 +64,21 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // Just make sure the address is a valid 32 bit address. Bit zero // might be set due to MicroMIPS function calls, so don't enforce alignment. return (pc <= UINT32_MAX); } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -101,21 +94,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); - virtual uint32_t - GetPluginVersion(); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void CreateRegisterMapIfNeeded (); + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_mips() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_mips() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABISysV_mips_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h +++ lldb/trunk/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h @@ -21,46 +21,37 @@ public lldb_private::ABI { public: + ~ABISysV_mips64() override = default; - ~ABISysV_mips64() - { - } + size_t + GetRedZoneSize() const override; - virtual size_t - GetRedZoneSize () const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &type) const; - - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The SysV mips ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -72,8 +63,8 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -83,8 +74,8 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { if (pc & (4ull - 1ull)) return false; // Not 4 byte aligned @@ -93,11 +84,13 @@ return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -113,21 +106,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); - virtual uint32_t - GetPluginVersion(); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void CreateRegisterMapIfNeeded (); + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_mips64() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_mips64() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABISysV_mips64_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h +++ lldb/trunk/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h @@ -21,46 +21,37 @@ public lldb_private::ABI { public: + ~ABISysV_ppc() override = default; - ~ABISysV_ppc() - { - } - - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; + + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &type) const; + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The SysV ppc ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -72,8 +63,8 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -83,19 +74,21 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // We have a 64 bit address space, so anything is valid as opcodes // aren't fixed width... return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -111,21 +104,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); - virtual uint32_t - GetPluginVersion(); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void CreateRegisterMapIfNeeded (); + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_ppc() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_ppc() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABISysV_ppc_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h +++ lldb/trunk/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h @@ -21,46 +21,37 @@ public lldb_private::ABI { public: + ~ABISysV_ppc64() override = default; - ~ABISysV_ppc64() - { - } - - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; - - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; + + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &type) const; + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The SysV ppc64 ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -72,8 +63,8 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -83,19 +74,21 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // We have a 64 bit address space, so anything is valid as opcodes // aren't fixed width... return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -111,21 +104,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); - virtual uint32_t - GetPluginVersion(); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void CreateRegisterMapIfNeeded (); + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_ppc64() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_ppc64() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABISysV_ppc64_h_ Index: lldb/trunk/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h =================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h +++ lldb/trunk/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h @@ -21,46 +21,37 @@ public lldb_private::ABI { public: + ~ABISysV_x86_64() override = default; - ~ABISysV_x86_64() - { - } - - virtual size_t - GetRedZoneSize () const; + size_t + GetRedZoneSize() const override; - virtual bool - PrepareTrivialCall (lldb_private::Thread &thread, - lldb::addr_t sp, - lldb::addr_t functionAddress, - lldb::addr_t returnAddress, - llvm::ArrayRef args) const; + bool + PrepareTrivialCall(lldb_private::Thread &thread, + lldb::addr_t sp, + lldb::addr_t functionAddress, + lldb::addr_t returnAddress, + llvm::ArrayRef args) const override; - virtual bool - GetArgumentValues (lldb_private::Thread &thread, - lldb_private::ValueList &values) const; + bool + GetArgumentValues(lldb_private::Thread &thread, + lldb_private::ValueList &values) const override; - virtual lldb_private::Error - SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value); + lldb_private::Error + SetReturnValueObject(lldb::StackFrameSP &frame_sp, lldb::ValueObjectSP &new_value) override; -protected: lldb::ValueObjectSP - GetReturnValueObjectSimple (lldb_private::Thread &thread, - lldb_private::CompilerType &ast_type) const; - -public: - virtual lldb::ValueObjectSP - GetReturnValueObjectImpl (lldb_private::Thread &thread, - lldb_private::CompilerType &type) const; + GetReturnValueObjectImpl(lldb_private::Thread &thread, + lldb_private::CompilerType &type) const override; - virtual bool - CreateFunctionEntryUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateFunctionEntryUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - CreateDefaultUnwindPlan (lldb_private::UnwindPlan &unwind_plan); + bool + CreateDefaultUnwindPlan(lldb_private::UnwindPlan &unwind_plan) override; - virtual bool - RegisterIsVolatile (const lldb_private::RegisterInfo *reg_info); + bool + RegisterIsVolatile(const lldb_private::RegisterInfo *reg_info) override; // The SysV x86_64 ABI requires that stack frames be 16 byte aligned. // When there is a trap handler on the stack, e.g. _sigtramp in userland @@ -72,8 +63,8 @@ // Whitelisting the trap handlers for user space would be easy (_sigtramp) but // in other environments there can be a large number of different functions // involved in async traps. - virtual bool - CallFrameAddressIsValid (lldb::addr_t cfa) + bool + CallFrameAddressIsValid(lldb::addr_t cfa) override { // Make sure the stack call frame addresses are 8 byte aligned if (cfa & (8ull - 1ull)) @@ -83,19 +74,21 @@ return true; } - virtual bool - CodeAddressIsValid (lldb::addr_t pc) + bool + CodeAddressIsValid(lldb::addr_t pc) override { // We have a 64 bit address space, so anything is valid as opcodes // aren't fixed width... return true; } - virtual const lldb_private::RegisterInfo * - GetRegisterInfoArray (uint32_t &count); + const lldb_private::RegisterInfo * + GetRegisterInfoArray(uint32_t &count) override; + //------------------------------------------------------------------ // Static Functions //------------------------------------------------------------------ + static void Initialize(); @@ -111,21 +104,30 @@ //------------------------------------------------------------------ // PluginInterface protocol //------------------------------------------------------------------ - virtual lldb_private::ConstString - GetPluginName(); - virtual uint32_t - GetPluginVersion(); + lldb_private::ConstString + GetPluginName() override; + + uint32_t + GetPluginVersion() override; protected: void CreateRegisterMapIfNeeded (); + lldb::ValueObjectSP + GetReturnValueObjectSimple(lldb_private::Thread &thread, + lldb_private::CompilerType &ast_type) const; + bool RegisterIsCalleeSaved (const lldb_private::RegisterInfo *reg_info); private: - ABISysV_x86_64() : lldb_private::ABI() { } // Call CreateInstance instead. + ABISysV_x86_64() : + lldb_private::ABI() + { + // Call CreateInstance instead. + } }; -#endif // liblldb_ABI_h_ +#endif // liblldb_ABISysV_x86_64_h_