I ran into this issue yesterday, and this patch solves the compilation on 
warrior. However, it's a patch for Qt itself, and not for OE.

Is there already a warrior patch in the making, or should I submit one?


On 19-11-19 13:37, Quentin Schulz wrote:
> At least since gcc v8, source code with asm volatile won't compile
> anymore.
> 
> The volatile qualifier anyway is a no-op since asm blocks are implicitly
> volatile as written in the documentation[1].
> 
> Let's get rid of this redundant qualifier so we can build with newer
> GCCs.
> 
> The resulting error message is the following (note that there is a
> bunch of them):
> ../3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:617:5: error: 
> expected '(' before 'volatile'
> asm volatile (
>   ^~~~~~~~
>   (
> ../3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:618:1: error: 
> expected unqualified-id before string constant
> ".text\n"
> ^~~~~~~~~
> ../3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:617:15: error: 
> expected ')' before string constant
> asm volatile (
>         ~^
>          )
> ".text\n"
> ~~~~~~~~~
> 
> [1] https://gcc.gnu.org/onlinedocs/gcc/Basic-Asm.html#Basic-Asm
> 
> Upstream-Status: Inappropriate
> Signed-off-by: Quentin Schulz <quentin.sch...@streamunlimited.com>
> ---
>   .../JavaScriptCore/jit/JITStubs.cpp           | 48 +++++++++----------
>   1 file changed, 24 insertions(+), 24 deletions(-)
> 
> diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp 
> b/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp
> index d8027ff2..dcead6d0 100644
> --- a/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp
> +++ b/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp
> @@ -116,7 +116,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) 
> == 0x3c, JITStackFrame_s
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, 
> JITStackFrame_callFrame_offset_matches_ctiTrampoline);
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x50, 
> JITStackFrame_code_offset_matches_ctiTrampoline);
>   
> -asm volatile (
> +asm (
>   ".text\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
> @@ -138,7 +138,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -154,7 +154,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>       
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
>   HIDE_SYMBOL(ctiOpThrowNotCaught) "\n"
>   SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
> @@ -179,7 +179,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) 
> == 0x48, JITStackFrame_s
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x90, 
> JITStackFrame_callFrame_offset_matches_ctiTrampoline);
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x80, 
> JITStackFrame_code_offset_matches_ctiTrampoline);
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
>   SYMBOL_STRING(ctiTrampoline) ":" "\n"
> @@ -206,7 +206,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -222,7 +222,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
>   HIDE_SYMBOL(ctiOpThrowNotCaught) "\n"
>   SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
> @@ -242,7 +242,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
>   #error "JIT_STUB_ARGUMENT_VA_LIST not supported on ARMv7."
>   #endif
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
> @@ -269,7 +269,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "bx lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
> @@ -287,7 +287,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "bx lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
> @@ -305,7 +305,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
>   
>   #elif COMPILER(GCC) && CPU(ARM_TRADITIONAL)
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
>   SYMBOL_STRING(ctiTrampoline) ":" "\n"
> @@ -323,7 +323,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "mov pc, lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -418,7 +418,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) 
> == 0x38, JITStackFrame_
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x30, 
> JITStackFrame_code_offset_matches_ctiTrampoline);
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) == 0x1c, 
> JITStackFrame_stub_argument_space_matches_ctiTrampoline);
>   
> -asm volatile (
> +asm (
>   ".text\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
> @@ -440,7 +440,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -456,7 +456,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>       
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
>   HIDE_SYMBOL(ctiOpThrowNotCaught) "\n"
>   SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
> @@ -480,7 +480,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) 
> == 0x58, JITStackFrame_
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x48, 
> JITStackFrame_code_offset_matches_ctiTrampoline);
>   COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) == 0x78, 
> JITStackFrame_stub_argument_space_matches_ctiTrampoline);
>   
> -asm volatile (
> +asm (
>   ".text\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
> @@ -515,7 +515,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -531,7 +531,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "ret" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
>   HIDE_SYMBOL(ctiOpThrowNotCaught) "\n"
>   SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
> @@ -551,7 +551,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
>   #error "JIT_STUB_ARGUMENT_VA_LIST not supported on ARMv7."
>   #endif
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
> @@ -578,7 +578,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "bx lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
> @@ -596,7 +596,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
>       "bx lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".text" "\n"
>   ".align 2" "\n"
>   ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n"
> @@ -614,7 +614,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n"
>   
>   #elif COMPILER(GCC) && CPU(ARM_TRADITIONAL)
>   
> -asm volatile (
> +asm (
>   ".text\n"
>   ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
>   HIDE_SYMBOL(ctiTrampoline) "\n"
> @@ -632,7 +632,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n"
>       "mov pc, lr" "\n"
>   );
>   
> -asm volatile (
> +asm (
>   ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n"
>   HIDE_SYMBOL(ctiVMThrowTrampoline) "\n"
>   SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n"
> @@ -1024,7 +1024,7 @@ static NEVER_INLINE void 
> throwStackOverflowError(CallFrame* callFrame, JSGlobalD
>       extern "C" { \
>           rtype JITStubThunked_##op(STUB_ARGS_DECLARATION); \
>       }; \
> -    asm volatile ( \
> +    asm ( \
>           ".text" "\n" \
>           ".align 2" "\n" \
>           ".globl " SYMBOL_STRING(cti_##op) "\n" \
> @@ -1053,7 +1053,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, 
> thunkReturnAddress) == THUNK_RETUR
>       extern "C" { \
>           rtype JITStubThunked_##op(STUB_ARGS_DECLARATION); \
>       }; \
> -    asm volatile ( \
> +    asm ( \
>           ".globl " SYMBOL_STRING(cti_##op) "\n" \
>           HIDE_SYMBOL(cti_##op) "\n"             \
>           SYMBOL_STRING(cti_##op) ":" "\n" \
> 

-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to