diff options
author | David Mason <davmason@microsoft.com> | 2018-02-09 15:06:23 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-09 15:06:23 -0800 |
commit | 12efefd27a9ad641a059df38a77f8de9f375cff9 (patch) | |
tree | 09bcd16f3595812a040c416adc71c7295e73ddc7 /src/pal/prebuilt | |
parent | f32950cbac121e291a55c77686cd25eb6aa4ecb8 (diff) | |
download | coreclr-12efefd27a9ad641a059df38a77f8de9f375cff9.tar.gz coreclr-12efefd27a9ad641a059df38a77f8de9f375cff9.tar.bz2 coreclr-12efefd27a9ad641a059df38a77f8de9f375cff9.zip |
Debugger api to set a breakpoint on offset 0 of all methods (#16303)
* Debugger api to set a breakpoint on offset 0 of all methods
* fix ifdef misplacement in pal cordebug.h
* add IID to cordebug_i.cpp
Diffstat (limited to 'src/pal/prebuilt')
-rw-r--r-- | src/pal/prebuilt/idl/cordebug_i.cpp | 3 | ||||
-rw-r--r-- | src/pal/prebuilt/inc/cordebug.h | 90 |
2 files changed, 92 insertions, 1 deletions
diff --git a/src/pal/prebuilt/idl/cordebug_i.cpp b/src/pal/prebuilt/idl/cordebug_i.cpp index dd69e57086..923f78b4d4 100644 --- a/src/pal/prebuilt/idl/cordebug_i.cpp +++ b/src/pal/prebuilt/idl/cordebug_i.cpp @@ -295,6 +295,9 @@ MIDL_DEFINE_GUID(IID, IID_ICorDebugFunction2,0xEF0C490B,0x94C3,0x4e4d,0xB6,0x29, MIDL_DEFINE_GUID(IID, IID_ICorDebugFunction3,0x09B70F28,0xE465,0x482D,0x99,0xE0,0x81,0xA1,0x65,0xEB,0x05,0x32); +MIDL_DEFINE_GUID(IID, IID_ICorDebugFunction4,0x72965963,0x34fd,0x46e9,0x94,0x34,0xb8,0x17,0xfe,0x6e,0x7f,0x43); + + MIDL_DEFINE_GUID(IID, IID_ICorDebugCode,0xCC7BCAF4,0x8A68,0x11d2,0x98,0x3C,0x00,0x00,0xF8,0x08,0x34,0x2D); diff --git a/src/pal/prebuilt/inc/cordebug.h b/src/pal/prebuilt/inc/cordebug.h index 39310403dc..e45964ae9d 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; @@ -12085,7 +12092,88 @@ EXTERN_C const IID IID_ICorDebugFunction3; -#endif /* __ICorDebugFunction3_INTERFACE_DEFINED__ */ +#endif /* __ICorDebugFunction3_INTERFACE_DEFINED__ */ + + +#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__ */ + #ifndef __ICorDebugCode_INTERFACE_DEFINED__ |