Skip to content
This repository was archived by the owner on Nov 11, 2024. It is now read-only.

Commit 9d41e41

Browse files
committed
Small call refactor
1 parent d30ddd3 commit 9d41e41

File tree

1 file changed

+2
-18
lines changed

1 file changed

+2
-18
lines changed

src/module.cpp

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -952,6 +952,8 @@ void CSharpLanguageModule::ExternalCall(MethodRef method, MemAddr data, const Ji
952952
hasRefs |= param.IsReference();
953953
}
954954

955+
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
956+
955957
switch (retType) {
956958
case ValueType::Void:
957959
case ValueType::Bool:
@@ -972,90 +974,72 @@ void CSharpLanguageModule::ExternalCall(MethodRef method, MemAddr data, const Ji
972974
case ValueType::Vector3:
973975
case ValueType::Vector4:
974976
case ValueType::Matrix4x4:
975-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
976977
break;
977978
case ValueType::Function: {
978-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
979979
ret->SetReturn(g_monolm.CreateDelegate(ret->GetReturn<void*>(), *retProp.GetPrototype()));
980980
break;
981981
}
982982
case ValueType::String: {
983-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
984983
ret->SetReturn(g_monolm.CreateString(*reinterpret_cast<plg::string*>(args[0])));
985984
break;
986985
}
987986
case ValueType::ArrayBool: {
988-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
989987
ret->SetReturn(g_monolm.CreateArrayT<bool>(*reinterpret_cast<std::vector<bool>*>(args[0]), mono_get_byte_class()));
990988
break;
991989
}
992990
case ValueType::ArrayChar8: {
993-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
994991
ret->SetReturn(g_monolm.CreateArrayT<char>(*reinterpret_cast<std::vector<char>*>(args[0]), mono_get_char_class()));
995992
break;
996993
}
997994
case ValueType::ArrayChar16: {
998-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
999995
ret->SetReturn(g_monolm.CreateArrayT<char16_t>(*reinterpret_cast<std::vector<char16_t>*>(args[0]), mono_get_char_class()));
1000996
break;
1001997
}
1002998
case ValueType::ArrayInt8: {
1003-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
1004999
ret->SetReturn(g_monolm.CreateArrayT<int8_t>(*reinterpret_cast<std::vector<int8_t>*>(args[0]), mono_get_sbyte_class()));
10051000
break;
10061001
}
10071002
case ValueType::ArrayInt16: {
1008-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10091003
ret->SetReturn(g_monolm.CreateArrayT<int16_t>(*reinterpret_cast<std::vector<int16_t>*>(args[0]), mono_get_int16_class()));
10101004
break;
10111005
}
10121006
case ValueType::ArrayInt32: {
1013-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10141007
ret->SetReturn(g_monolm.CreateArrayT<int32_t>(*reinterpret_cast<std::vector<int32_t>*>(args[0]), mono_get_int32_class()));
10151008
break;
10161009
}
10171010
case ValueType::ArrayInt64: {
1018-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10191011
ret->SetReturn(g_monolm.CreateArrayT<int64_t>(*reinterpret_cast<std::vector<int64_t>*>(args[0]), mono_get_int64_class()));
10201012
break;
10211013
}
10221014
case ValueType::ArrayUInt8: {
1023-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10241015
ret->SetReturn(g_monolm.CreateArrayT<uint8_t>(*reinterpret_cast<std::vector<uint8_t>*>(args[0]), mono_get_byte_class()));
10251016
break;
10261017
}
10271018
case ValueType::ArrayUInt16: {
1028-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10291019
ret->SetReturn(g_monolm.CreateArrayT<uint16_t>(*reinterpret_cast<std::vector<uint16_t>*>(args[0]), mono_get_uint16_class()));
10301020
break;
10311021
}
10321022
case ValueType::ArrayUInt32: {
1033-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10341023
ret->SetReturn(g_monolm.CreateArrayT<uint32_t>(*reinterpret_cast<std::vector<uint32_t>*>(args[0]), mono_get_uint32_class()));
10351024
break;
10361025
}
10371026
case ValueType::ArrayUInt64: {
1038-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10391027
ret->SetReturn(g_monolm.CreateArrayT<uint64_t>(*reinterpret_cast<std::vector<uint64_t>*>(args[0]), mono_get_uint64_class()));
10401028
break;
10411029
}
10421030
case ValueType::ArrayPointer: {
1043-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10441031
ret->SetReturn(g_monolm.CreateArrayT<uintptr_t>(*reinterpret_cast<std::vector<uintptr_t>*>(args[0]), mono_get_intptr_class()));
10451032
break;
10461033
}
10471034
case ValueType::ArrayFloat: {
1048-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10491035
ret->SetReturn(g_monolm.CreateArrayT<float>(*reinterpret_cast<std::vector<float>*>(args[0]), mono_get_single_class()));
10501036
break;
10511037
}
10521038
case ValueType::ArrayDouble: {
1053-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10541039
ret->SetReturn(g_monolm.CreateArrayT<double>(*reinterpret_cast<std::vector<double>*>(args[0]), mono_get_double_class()));
10551040
break;
10561041
}
10571042
case ValueType::ArrayString: {
1058-
func(parameters.GetDataPtr(), reinterpret_cast<const JitCall::Return*>(ret));
10591043
ret->SetReturn(g_monolm.CreateStringArray(*reinterpret_cast<std::vector<plg::string>*>(args[0])));
10601044
break;
10611045
}

0 commit comments

Comments
 (0)