@@ -109,7 +109,9 @@ class Instantiation;
109109class  CordbType ;
110110class  CordbNativeCode ;
111111class  CordbILCode ;
112+ #ifdef  FEATURE_CODE_VERSIONING
112113class  CordbReJitILCode ;
114+ #endif  //  FEATURE_CODE_VERSIONING
113115class  CordbEval ;
114116
115117class  CordbMDA ;
@@ -5496,9 +5498,11 @@ class CordbFunction : public CordbBase,
54965498    //  Get the existing IL code object
54975499    HRESULT GetILCode (CordbILCode ** ppCode);
54985500
5501+ #ifdef  FEATURE_CODE_VERSIONING
54995502    //  Finds or creates an ILCode for a given rejit request
55005503    HRESULT LookupOrCreateReJitILCode (VMPTR_ILCodeVersionNode vmILCodeVersionNode,
55015504                                      CordbReJitILCode** ppILCode);
5505+ #endif  //  FEATURE_CODE_VERSIONING
55025506
55035507
55045508#ifdef  FEATURE_METADATA_UPDATER
@@ -5613,9 +5617,11 @@ class CordbFunction : public CordbBase,
56135617    //  Only valid if m_fCachedMethodValuesValid is set.
56145618    BOOL                     m_fIsStaticCached;
56155619
5620+ #ifdef  FEATURE_CODE_VERSIONING
56165621    //  A collection, indexed by VMPTR_SharedReJitInfo, of IL code for rejit requests
56175622    //  The collection is filled lazily by LookupOrCreateReJitILCode
56185623    CordbSafeHashTable<CordbReJitILCode> m_reJitILCodes;
5624+ #endif  //  FEATURE_CODE_VERSIONING
56195625};
56205626
56215627// -----------------------------------------------------------------------------
@@ -5833,6 +5839,7 @@ class CordbILCode : public CordbCode
58335839
58345840}; //  class CordbILCode
58355841
5842+ #ifdef  FEATURE_CODE_VERSIONING
58365843/*  ------------------------------------------------------------------------- *
58375844* CordbReJitILCode class 
58385845* This class represents an IL code blob for a particular EnC version and 
@@ -5878,6 +5885,7 @@ class CordbReJitILCode : public CordbILCode,
58785885    ULONG32 m_cILMap;
58795886    NewArrayHolder<COR_IL_MAP> m_pILMap;
58805887};
5888+ #endif  //  FEATURE_CODE_VERSIONING
58815889
58825890/*  ------------------------------------------------------------------------- *
58835891 * CordbNativeCode class. These correspond to MethodDesc's on the left-side. 
@@ -7368,7 +7376,11 @@ class CordbJITILFrame : public CordbBase, public ICorDebugILFrame, public ICorDe
73687376                    GENERICS_TYPE_TOKEN   exactGenericArgsToken,
73697377                    DWORD                 dwExactGenericArgsTokenIndex,
73707378                    bool                   fVarArgFnx ,
7379+ #ifdef  FEATURE_CODE_VERSIONING
73717380                    CordbReJitILCode *    pReJitCode,
7381+ #else 
7382+                     void  *                pReJitCode,
7383+ #endif  //  FEATURE_CODE_VERSIONING
73727384                    bool                   fAdjustedIP );
73737385    HRESULT Init ();
73747386    virtual  ~CordbJITILFrame ();
@@ -7479,7 +7491,9 @@ class CordbJITILFrame : public CordbBase, public ICorDebugILFrame, public ICorDe
74797491    static  HRESULT BuildInstantiationForCallsite (CordbModule *pModule, NewArrayHolder<CordbType*> &types, Instantiation &inst, Instantiation *currentInstantiation, mdToken targetClass, SigParser funcGenerics);
74807492
74817493    CordbILCode* GetOriginalILCode ();
7494+ #ifdef  FEATURE_CODE_VERSIONING
74827495    CordbReJitILCode* GetReJitILCode ();
7496+ #endif  //  FEATURE_CODE_VERSIONING
74837497    void  AdjustIPAfterException ();
74847498
74857499private: 
@@ -7546,8 +7560,10 @@ class CordbJITILFrame : public CordbBase, public ICorDebugILFrame, public ICorDe
75467560    //  IL Variable index of the Generics Arg Token.
75477561    DWORD               m_dwFrameParamsTokenIndex;
75487562
7563+ #ifdef  FEATURE_CODE_VERSIONING
75497564    //  if this frame is instrumented with rejit, this will point to the instrumented IL code
75507565    RSSmartPtr<CordbReJitILCode> m_pReJitCode;
7566+ #endif  //  FEATURE_CODE_VERSIONING
75517567    BOOL m_adjustedIP;
75527568};
75537569
0 commit comments