diff options
author | David Mason <davmason@microsoft.com> | 2018-02-08 14:35:01 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-08 14:35:01 -0800 |
commit | 3d689d00843618105e735c5647e1cb64e721a333 (patch) | |
tree | b9a05efa47453c907289333eee643e022fabcfb1 /src/pal | |
parent | 7caf7f3198131dc4dc24e5e65fc2d8ce49fadf14 (diff) | |
download | coreclr-3d689d00843618105e735c5647e1cb64e721a333.tar.gz coreclr-3d689d00843618105e735c5647e1cb64e721a333.tar.bz2 coreclr-3d689d00843618105e735c5647e1cb64e721a333.zip |
Debugger api to set a breakpoint on offset 0 of all methods (#15819)
* Debugger api to set a breakpoint on offset 0 of all methods
* code review feedback
* more code review feedback
* respect IsIl in CorDbFunctionBreakoint()
* change SIMPLIFYING_ASSERT to SIMPLIFYING_ASSUMPTION_SUCCEEDED for hrs, it outputs a much better diagnostic message
Diffstat (limited to 'src/pal')
-rw-r--r-- | src/pal/prebuilt/inc/cordebug.h | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/src/pal/prebuilt/inc/cordebug.h b/src/pal/prebuilt/inc/cordebug.h index 39310403dc..0935c969a6 100644 --- a/src/pal/prebuilt/inc/cordebug.h +++ b/src/pal/prebuilt/inc/cordebug.h @@ -577,6 +577,13 @@ typedef interface ICorDebugFunction3 ICorDebugFunction3; #endif /* __ICorDebugFunction3_FWD_DEFINED__ */ +#ifndef __ICorDebugFunction4_FWD_DEFINED__ +#define __ICorDebugFunction4_FWD_DEFINED__ +typedef interface ICorDebugFunction4 ICorDebugFunction4; + +#endif /* __ICorDebugFunction4_FWD_DEFINED__ */ + + #ifndef __ICorDebugCode_FWD_DEFINED__ #define __ICorDebugCode_FWD_DEFINED__ typedef interface ICorDebugCode ICorDebugCode; @@ -12084,6 +12091,86 @@ EXTERN_C const IID IID_ICorDebugFunction3; +#ifndef __ICorDebugFunction4_INTERFACE_DEFINED__ +#define __ICorDebugFunction4_INTERFACE_DEFINED__ + +/* interface ICorDebugFunction4 */ +/* [unique][uuid][local][object] */ + + +EXTERN_C const IID IID_ICorDebugFunction4; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("72965963-34fd-46e9-9434-b817fe6e7f43") + ICorDebugFunction4 : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE CreateNativeBreakpoint( + ICorDebugFunctionBreakpoint **ppBreakpoint) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICorDebugFunction4Vtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICorDebugFunction4 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICorDebugFunction4 * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICorDebugFunction4 * This); + + HRESULT ( STDMETHODCALLTYPE *CreateNativeBreakpoint )( + ICorDebugFunction4 * This, + ICorDebugFunctionBreakpoint **ppBreakpoint); + + END_INTERFACE + } ICorDebugFunction4Vtbl; + + interface ICorDebugFunction4 + { + CONST_VTBL struct ICorDebugFunction4Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICorDebugFunction4_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICorDebugFunction4_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICorDebugFunction4_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICorDebugFunction4_CreateNativeBreakpoint(This,ppBreakpoint) \ + ( (This)->lpVtbl -> CreateNativeBreakpoint(This,ppBreakpoint) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICorDebugFunction4_INTERFACE_DEFINED__ */ + + #endif /* __ICorDebugFunction3_INTERFACE_DEFINED__ */ |