On Thu, Mar 31, 2016 at 5:12 AM, fengwei.yin fengwei.yin@linaro.org wrote:
Because gcc 4.9 could build this file without any issue, I apply --save-temps with gcc 4.9. The ii file is attached. Can't see significant differences.
There is a patch in gcc-5 to make unified assembler syntax the default. Unfortunately, it changes how extended asms work, which is perhaps a bug. The message claims it doesn't affect extended asms, but it does. https://gcc.gnu.org/ml/gcc-patches/2015-11/msg01196.html The interesting bit is the change to ASM_APP_OFF.
gcc-4.9 emits a .thumb after the extended asm to switch back into thumb mode just in case. gcc-5.3 instead emits .syntax unified, which doesn't change the arm/thumb mode, just the syntax supported. This is arguably a bug, but this doesn't immediately help you. It could take a little time to get gcc-5.x source fixed, and then the compiler binary releases. Or alternatively we could fix the asm to work with gcc 5.
Jim