“.dcall”在汇编代码中是什么意思?

What does '.dcall' mean in assembly code?

我正在尝试理解汇编代码中的程序,该程序应使用 COSMIC 编译器编译为 STM8 控制器上的 运行。

在程序的开头,有一对xrefxdef,然后是.dcall语句或命令。这是:

.dcall "2,0,__checksum16"

我搜索了编译器手册、控制器编程手册和互联网,但找不到这行是什么意思。

谁能解释一下这是什么意思,这些逗号分隔的条目是什么意思?

它是一个汇编程序指令,标记函数的入口点、符号名称和堆栈使用。

根据this

[...] the first integer is the stack space used by the call instruction plus any automatic storage used by the function. The second integer is the number of bytes stacked by the caller.

我建议根据其名称和功能,将调试信息插入目标文件以供 ZAP 符号调试器使用。我不熟悉 Cosmic 工具链,但它也可能被链接器用于在调用图中执行堆栈深度分析。