File tree 1 file changed +6
-5
lines changed
src/coreclr/tools/Common/JitInterface
1 file changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -55,11 +55,7 @@ public static uint GetLoongArch64PassStructInRegisterFlags(TypeDesc typeDesc)
55
55
int fieldIndex = 0 ;
56
56
foreach ( FieldDesc field in typeDesc . GetFields ( ) )
57
57
{
58
- if ( fieldIndex > 1 )
59
- {
60
- return ( uint ) StructFloatFieldInfoFlags . STRUCT_NO_FLOAT_FIELD ;
61
- }
62
- else if ( field . IsStatic )
58
+ if ( field . IsStatic )
63
59
{
64
60
continue ;
65
61
}
@@ -162,6 +158,11 @@ public static uint GetLoongArch64PassStructInRegisterFlags(TypeDesc typeDesc)
162
158
163
159
default :
164
160
{
161
+ if ( ( numIntroducedFields == 2 ) && ( field . FieldType . Category == TypeFlags . Class ) )
162
+ {
163
+ return ( uint ) StructFloatFieldInfoFlags . STRUCT_NO_FLOAT_FIELD ;
164
+ }
165
+
165
166
if ( field . FieldType . GetElementSize ( ) . AsInt == 8 )
166
167
{
167
168
if ( numIntroducedFields > 1 )
You can’t perform that action at this time.
0 commit comments