代码之家  ›  专栏  ›  技术社区  ›  rkellerm

使用调用约定fastcall有什么真正的用例吗?

  •  6
  • rkellerm  · 技术社区  · 15 年前

    谢谢。

    3 回复  |  直到 15 年前
        1
  •  3
  •   luvieere    15 年前

    Here

    您可以指定回调函数(a 您必须使用\uu快速呼叫 希望如此。

        2
  •  5
  •   humbagumba    15 年前

    __如果可能的话,fastcall尝试在CPU寄存器而不是堆栈中传递函数参数,这会更快。

    以下是MSDN文章的链接,该文章解释了\uu fastcall呼叫约定: http://msdn.microsoft.com/en-us/library/6xa169sk(VS.71).aspx

    前两个DWORD或更小 参数在ECX和EDX中传递 从右向左传递。


    总的来说,我想说的是,不要指望这会带来任何性能优势。

        3
  •  1
  •   Paul R    15 年前

    我有一个例子可以有效地使用它—它是一个非常小的asm例程(3条指令),它处理寄存器中的单个值。