相关疑难解决方法(0)

CLR/Fastcall:大值类型如何在内部传递给被调用函数?

只是出于好奇:值类型通常是复制的,并且 JIT 编译器在调用方法时似乎使用 Microsoft 的 Fastcall 调用约定。这会将前几个参数放入寄存器中,以便快速访问。但是大值类型(即大于寄存器的大小或堆栈的宽度)如何传递给被调用的函数?


这本书的摘录指出:

CLR 的即时代码使用 fastcall Windows 调用约定。这允许调用者在机器的 ECX 和 EDX 寄存器中提供前两个参数(包括实例方法的情况)。

clr calling-convention

4
推荐指数
1
解决办法
881
查看次数

标签 统计

calling-convention ×1

clr ×1