如何将Ada代码与装配混合(使用GAS组装)?
我知道如何将Ada与C链接,但我如何与汇编链接?我知道gcc从Ada代码生成汇编代码,因此我认为可以进行交叉链接。
答案 0 :(得分:2)
据推测,您可以将程序集编译为.o目标文件,并将其作为参数提供给您的Ada编译器。
答案 1 :(得分:2)
答案 2 :(得分:1)
如果您想使用Ada执行任何类型的混合语言编程,包括Ada / Assember,您应该查看编译器在Interfacing pragmas上的文档,特别是其允许的调用约定。
例如,pragma import
/ export
为Gnat provides an Assembler
convention。
通常,您必须将汇编程序设置为子程序,该子程序使用与您的接口编译指示中使用的“约定”兼容的调用约定。
大多数编译器还通过System.Machine_Code包支持某种内联汇编。这允许您将相同源文件中的少量汇编语言与Ada混合使用。