Skip to content

Commit 160fedd

Browse files
committed
Introduce readObject
1 parent d40f326 commit 160fedd

File tree

20 files changed

+461
-161
lines changed

20 files changed

+461
-161
lines changed

src/coreclr/inc/corinfo.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3244,6 +3244,13 @@ class ICorDynamicInfo : public ICorStaticInfo
32443244
bool ignoreMovableObjects = true
32453245
) = 0;
32463246

3247+
virtual bool readObject(
3248+
CORINFO_OBJECT_HANDLE obj,
3249+
uint8_t* buffer,
3250+
int bufferSize,
3251+
int valueOffset
3252+
) = 0;
3253+
32473254
// If pIsSpeculative is NULL, return the class handle for the value of ref-class typed
32483255
// static readonly fields, if there is a unique location for the static and the class
32493256
// is already initialized.

src/coreclr/inc/icorjitinfoimpl_generated.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -643,6 +643,12 @@ bool getReadonlyStaticFieldValue(
643643
int valueOffset,
644644
bool ignoreMovableObjects) override;
645645

646+
bool readObject(
647+
CORINFO_OBJECT_HANDLE obj,
648+
uint8_t* buffer,
649+
int bufferSize,
650+
int valueOffset) override;
651+
646652
CORINFO_CLASS_HANDLE getStaticFieldCurrentClass(
647653
CORINFO_FIELD_HANDLE field,
648654
bool* pIsSpeculative) override;

src/coreclr/inc/jiteeversionguid.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,11 @@ typedef const GUID *LPCGUID;
4343
#define GUID_DEFINED
4444
#endif // !GUID_DEFINED
4545

46-
constexpr GUID JITEEVersionIdentifier = { /* 236d7997-3d71-45f9-b7d7-5241ad89a56f */
47-
0x236d7997,
48-
0x3d71,
49-
0x45f9,
50-
{ 0xb7, 0xd7, 0x52, 0x41, 0xad, 0x89, 0xa5, 0x6f }
46+
constexpr GUID JITEEVersionIdentifier = { /* 7658c1e7-a363-4ccf-a1a4-1486bac7b5c8 */
47+
0x7658c1e7,
48+
0xa363,
49+
0x4ccf,
50+
{ 0xa1, 0xa4, 0x14, 0x86, 0xba, 0xc7, 0xb5, 0xc8 }
5151
};
5252

5353
//////////////////////////////////////////////////////////////////////////////////////////////////////////

src/coreclr/jit/ICorJitInfo_names_generated.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ DEF_CLR_API(canAccessFamily)
160160
DEF_CLR_API(isRIDClassDomainID)
161161
DEF_CLR_API(getClassDomainID)
162162
DEF_CLR_API(getReadonlyStaticFieldValue)
163+
DEF_CLR_API(readObject)
163164
DEF_CLR_API(getStaticFieldCurrentClass)
164165
DEF_CLR_API(getVarArgsHandle)
165166
DEF_CLR_API(canGetVarArgsHandle)

src/coreclr/jit/ICorJitInfo_wrapper_generated.hpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1535,6 +1535,18 @@ bool WrapICorJitInfo::getReadonlyStaticFieldValue(
15351535
return temp;
15361536
}
15371537

1538+
bool WrapICorJitInfo::readObject(
1539+
CORINFO_OBJECT_HANDLE obj,
1540+
uint8_t* buffer,
1541+
int bufferSize,
1542+
int valueOffset)
1543+
{
1544+
API_ENTER(readObject);
1545+
bool temp = wrapHnd->readObject(obj, buffer, bufferSize, valueOffset);
1546+
API_LEAVE(readObject);
1547+
return temp;
1548+
}
1549+
15381550
CORINFO_CLASS_HANDLE WrapICorJitInfo::getStaticFieldCurrentClass(
15391551
CORINFO_FIELD_HANDLE field,
15401552
bool* pIsSpeculative)

0 commit comments

Comments
 (0)