Searched hist:"864 e8de3dd61e147bee68096aac873eb179fea77" (Results 1 – 1 of 1) sorted by relevance
| /optee_os/core/arch/arm/kernel/ |
| H A D | thread_a32.S | 864e8de3dd61e147bee68096aac873eb179fea77 Mon Mar 25 16:18:38 UTC 2019 Jerome Forissier <jerome.forissier@linaro.org> core: thread_a32.S: use assembler unified syntax (UAL)
The movnes instruction causes a compilation warning with Clang:
core/arch/arm/kernel/thread_a32.S:250:2: error: instruction 'movne' can not set flags, but 's' suffix specified movnes pc, lr ^
This is because Clang supports only Unified Assembler Language syntax (UAL). GCC also supports this syntax, and there are two ways to enable it: either use the -masm-syntax-unified flag, or the ".syntax unified" directive. Unfortunately, the first option does not work with GCC 8.2 [1]. Therefore, use the second option.
This modification results in identical code being generated with GCC for the whole thread_a32.o file. And Clang generates the same code as GCC for the the 'movsne pc, lr' instruction.
Link: [1] https://github.com/gcc-mirror/gcc/commit/2fd2b9b8425f Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
|