2010-10-20 29 views
0

你好新人在这里(温柔),创建一个程序,它利用2个不同ISA

我试图写一个程序,它已经在它的浮点代码。但是这个程序需要在两个不同的处理器上运行。除了它们的浮点模型外,它们具有大致相同的ISA。他们使用完全不同的指令和寄存器来执行浮点计算。一个优雅的方式让gcc编译1个处理器模型的一段代码,另一段处理另一个模型的代码?我已经有了一个确定代码当前运行在哪个处理器的方法,所以我可以让它链接到内存中的相应代码。

一切都只在C中完成。为了好奇,我使用了powerpc e500v2和e300内核。

这不是一个家庭作业问题,没有老师会在互联网上对此感到不满。

回答

2

使用不同的GCC选项构建两个不同的.o文件。

我假设您正在讨论的代码足够兼容共享ELF文件,例如x87与SSE2浮点,而不是x86和x86_64,或者像ClearSpeed这样的奇怪东西。

相关问题