使用GCC编译PowerPC(MPC5643L)时,它无法识别powerISA 2.03指令。我怎么能克服这个?更具体地说,这些主要是e_格式汇编指令。然而,ghs和windriver并没有表现出这样的问题。
我知道MPC不支持mpc56xx系列,但在其他支持的目标中支持powerISA 2.03。
答案 0 :(得分:2)
e_
ans se_
指令是VLE(可变长度编码)指令。 e_
个是32位,se_
是16位。这些仅应在VLE模式打开时使用。请注意,大多数(如果不是全部)e_
指令都有相同的经典PowerPC指令。
所以真正的问题是:你打算使用VLE吗?如果没有,请切换回经典说明。如果是,那么我认为你有问题,因为据我所知,gcc / gas不支持VLE。我知道CodeSourcery正在实施它,但是他们在将更改提交给社区时遇到了问题。我不知道gcc中VLE支持的当前状态。
答案 1 :(得分:0)
这些说明是什么?例子本来是受欢迎的。我想它们是SPE(信号处理引擎)指令。我从来没有使用过这个,但是GCC有一个选项-mspe来生成这些指令。 您可以在以下位置阅读更多信息 http://gcc.gnu.org/onlinedocs/gcc/RS_002f6000-and-PowerPC-Options.html
还有-mabi = spe to“使用特定扩展名扩展当前ABI”。我不知道默认值以及您的情况是否需要。