[Linux][GDB-JIT] Remove (nothrow) when using new (dotnet/coreclr#10457)
authorIgor Kulaychuk <igor.kulaychuk@gmail.com>
Thu, 30 Mar 2017 09:54:02 +0000 (12:54 +0300)
committerJan Vorlicek <janvorli@microsoft.com>
Thu, 30 Mar 2017 09:54:02 +0000 (11:54 +0200)
commitf6faf62922310947f70d49e5d5d7c3bbe7120466
treea713b2c897f24e19b20c1f9fe8b11f69479f840d
parent4ac252245871e83393268f03d36237b1a121741a
[Linux][GDB-JIT] Remove (nothrow) when using new (dotnet/coreclr#10457)

* Merge ByteTypeInfo into PrimitiveTypeInfo

* Remove ArrayTypeInfo ownership over its array element type

ArrayTypeInfo should not delete memory for its array element type
because element type is owned by NotifyGdb::PTK_TypeInfoMap.

* Make NamedRefTypeInfo to own its value type pointer

* Fix memory leak when creating ArrayTypeInfo

* Refactor creation of PrimitiveTypeInfo class

* Move code from GetTypeInfoFromTypeHandle to ClassTypeInfo constructor

* Move code from GetTypeInfoFromTypeHandle to RefTypeInfo constructor

* Remove (nothrow) usage from GetTypeInfoFromTypeHandle function

* Remove most usages of (nothrow) from gdbjit

* Remove all remaining (nothrow) usages from gdbjit

* Throw COR_E_NOTSUPPORTED from GetTypeInfoFromTypeHandle when dumping unsupported types

* Remove (nothrow) usage from MemBuf::Resize

* Use NewArrayHolder for vars in FunctionMember class

* Use NewArrayHolder for m_type_name in TypeInfoBase class

* Use NewArrayHolder for m_typedef_name in TypeDefInfo class

* Use NewArrayHolder for m_member_name in TypeMember class

* Use NewArrayHolder for m_var_name in VarDebugInfo class

* Use NewArrayHolder for members in ClassTypeInfo class

* Add m_symbol_name field to Elf_Symbol struct for managing symbol name memory

* Add m_value_type_storage field to NamedRefTypeInfo class for managing referenced type memory

* Remove CalledMethod list cleanup - avoid having dangling pointer in CodeHeader class

* Fix memory leak in GetMethodNativeMap function

* Simplify FunctionMemberPtrArrayHolder class

Since FunctionMemberPtrArrayHolder instance lifetime is limited to
NotifyGdb::MethodCompiled method, there is no need for complicated reallocation code.

* Wrap NotifyGdb::MethodCompiled endtry point in try/catch block

* Fix argument naming style - rename MethodDescPtr to methodDescPtr

Commit migrated from https://github.com/dotnet/coreclr/commit/46f2b55b09421a66c963410d9c59ae4f8887a293
src/coreclr/src/vm/gdbjit.cpp
src/coreclr/src/vm/gdbjit.h