-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[LoongArch64] JIT/EE interface for getting ABI-info #62893
Merged
Merged
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit
Hold shift + click to select a range
47d106f
Merge pull request #1 from dotnet/main
shushanhf 411b59e
Merge branch 'dotnet:main' into master
shushanhf 7eed4eb
Merge branch 'dotnet:main' into master
shushanhf 0d7c9e4
Merge branch 'dotnet:main' into master
shushanhf 2c534c5
Merge branch 'dotnet:main' into master
shushanhf 6e14d76
Merge branch 'dotnet:main' into master
shushanhf 359875d
Merge branch 'dotnet:main' into master
shushanhf 192b095
Merge branch 'dotnet:main' into main
shushanhf 485a681
[LoongArch64] add ToolBox directory about jitinterace for getting ABI…
shushanhf 42667b3
[LoongArch64] add new interace for getting ABI-info. (#59561)
shushanhf 7e518a8
[LoongArch64] add the linking page for LoongArch64 ABI-info. (#59561)
db97aa7
[LoongArch64] moved ThunkInput.txt to #62885.
4e3eeb2
[LoongArch64] moved vm/jitinterface.cpp to #62885.
f722a3b
remove the JIT/EE interface back from #62885..
c896413
Merge branch 'main' into main_loongarch64_3a
shushanhf 948a822
[LoongArch64] Fix the compiling error after merge.
shushanhf a723e85
[LoongArch64] add comments for the returned value of `getFieldTypeByH…
adb9570
[LoongArch64] rename getFieldTypeByHnd to getFieldSizeClassificationB…
shushanhf 02ff4bf
[LoongArch64] Delete the interface `getArgType2`.
shushanhf f28774a
[LoongArch64] delete `GetArgType` within `ToolBox/superpmi`.
shushanhf 73d158a
[LoongArch64] rename `getFieldSizeClassificationByHnd` to
shushanhf 7d5d052
[LoongArch64] amend the floating-ABI for native-struct.
shushanhf b8534b2
[LoongArch64] update all related `GetFieldSizeClassificationByHnd`
47c81cc
Merge branch 'main' into main_loongarch64_3a
a3688bf
[LoongArch64] replace `LookupApproxFieldTypeHandle()`
shushanhf b05a2b9
[LoongArch64] implements the crossgen2 for LoongArch64.
shushanhf 6a179ff
Revert "[LoongArch64] implements the crossgen2 for LoongArch64."
a6cbbcc
[LoongArch64] update the `GUID JITEEVersionIdentifier`.
a5d6bcd
Merge branch 'main' into main_loongarch64_3a
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -2638,6 +2638,9 @@ void MethodContext::recGetArgType(CORINFO_SIG_INFO* sig, | |||||
CORINFO_ARG_LIST_HANDLE args, | ||||||
CORINFO_CLASS_HANDLE* vcTypeRet, | ||||||
CorInfoTypeWithMod result, | ||||||
#if defined(TARGET_LOONGARCH64) | ||||||
int flags, | ||||||
#endif | ||||||
DWORD exceptionCode) | ||||||
{ | ||||||
if (GetArgType == nullptr) | ||||||
|
@@ -2664,6 +2667,9 @@ void MethodContext::recGetArgType(CORINFO_SIG_INFO* sig, | |||||
Agnostic_GetArgType_Value value; | ||||||
value.vcTypeRet = CastHandle(*vcTypeRet); | ||||||
value.result = (DWORD)result; | ||||||
#if defined(TARGET_LOONGARCH64) | ||||||
value.flags = flags; | ||||||
#endif | ||||||
value.exceptionCode = (DWORD)exceptionCode; | ||||||
|
||||||
GetArgType->Add(key, value); | ||||||
|
@@ -2681,6 +2687,9 @@ void MethodContext::dmpGetArgType(const Agnostic_GetArgType_Key& key, const Agno | |||||
CorInfoTypeWithMod MethodContext::repGetArgType(CORINFO_SIG_INFO* sig, | ||||||
CORINFO_ARG_LIST_HANDLE args, | ||||||
CORINFO_CLASS_HANDLE* vcTypeRet, | ||||||
#if defined(TARGET_LOONGARCH64) | ||||||
int *flags, | ||||||
#endif | ||||||
DWORD* exceptionCode) | ||||||
{ | ||||||
AssertMapExists(GetArgType, ": key %016llX %016llX", CastHandle(sig->scope), CastHandle(args)); | ||||||
|
@@ -2701,6 +2710,10 @@ CorInfoTypeWithMod MethodContext::repGetArgType(CORINFO_SIG_INFO* sig, | |||||
AssertKeyExists(GetArgType, key, ": key %016llX %016llX", key.scope, key.args); | ||||||
|
||||||
Agnostic_GetArgType_Value value = GetArgType->Get(key); | ||||||
#if defined(TARGET_LOONGARCH64) | ||||||
if (flags) | ||||||
*flags = value.flags; | ||||||
#endif | ||||||
DEBUG_REP(dmpGetArgType(key, value)); | ||||||
|
||||||
*vcTypeRet = (CORINFO_CLASS_HANDLE)value.vcTypeRet; | ||||||
|
@@ -2709,6 +2722,27 @@ CorInfoTypeWithMod MethodContext::repGetArgType(CORINFO_SIG_INFO* sig, | |||||
return temp; | ||||||
} | ||||||
|
||||||
void MethodContext::recGetFieldTypeByHnd(CORINFO_CLASS_HANDLE cls, DWORD value) | ||||||
{ | ||||||
if (GetFieldTypeByHnd == nullptr) | ||||||
GetFieldTypeByHnd = new LightWeightMap<DWORDLONG, DWORD>(); | ||||||
|
||||||
DWORDLONG key = (DWORDLONG)cls; | ||||||
|
||||||
GetFieldTypeByHnd->Add((DWORDLONG)cls, value); | ||||||
//DEBUG_REC(dmpGetArgType(key, value)); | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks |
||||||
} | ||||||
|
||||||
void MethodContext::dmpGetFieldTypeByHnd(DWORDLONG key, DWORD value) | ||||||
{ | ||||||
printf("GetFieldTypeByHnd key %08X value-%X", key, value); | ||||||
} | ||||||
|
||||||
DWORD MethodContext::repGetFieldTypeByHnd(CORINFO_CLASS_HANDLE cls) | ||||||
{ | ||||||
return GetFieldTypeByHnd->Get((DWORDLONG)cls); | ||||||
} | ||||||
|
||||||
void MethodContext::recGetArgNext(CORINFO_ARG_LIST_HANDLE args, CORINFO_ARG_LIST_HANDLE result) | ||||||
{ | ||||||
if (GetArgNext == nullptr) | ||||||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This and number and number of other changes were for getArgType2. They are not necessary anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, Thanks for your review.
I will delete them.