We empirically evaluated thousands of different C calling conventions for irregular microcontroller architectures, and found potential for improvement over the calling conventions previously used in the Small Device C Compiler (SDCC). The improvements in code size and speed are substantial enough that SDCC made changes to its default calling convention, breaking ABI compatibility.
翻译:我们从经验上评估了数千个不同的C类呼叫协议,这些协议要求建立非常规的微控制器结构,并发现与小型设备C编译器(SDCC)先前使用的呼叫协议相比,有可能有所改进。 代码大小和速度的改进足够大,以至于SDCC修改了默认呼叫协议,打破了ABI兼容性。