1、Arm compiler 6 下target分为两种:aarch64-arm-none-eabi(对应AArch64执行状态)和armv8a-arm-none-eabi(对应AArch32执行状态),当target设置为aarch64-arm-none-eabi时无法使用内嵌汇编指令QADD、QADD16等,当target设置为armv8a-arm-none-eabi时可以使用内嵌汇编指令QADD、QADD16等,这应该是和两种执行状态各种的指令集相关,但是前面提前的可以编译时在Debug下,但是Release下是无法编译的,为什么?
2、看用例“startup_ARMv8_AArch64_with_AArch32_app”中的makefile文件,觉得用例同时用到了上述的两种target同时进行工程的编译,请问是不是可以同时对工程不同的文件进行不同的编译选项设置?
3、Armv8架构下的AArch32和AArch64这两种执行状态除了指令集、寄存器等的区别外,还有什么本质的区别(希望了解是不是在Armv8 64bit下生成.a库就必须使用AArch64下的指令,不能使用AArch32下的指令)?
不好意思,上周一直不在,刚看到,会尽快回复你。