[libav-devel] [PATCH] configure: fix inline asm checks

James Almer jamrial at gmail.com
Fri Jun 8 04:05:26 CEST 2018


On 6/7/2018 6:01 PM, Diego Biurrun wrote:
> On Thu, Jun 07, 2018 at 03:03:21PM +0300, Martin Storsjö wrote:
>> Commit 8c893aa3cd5 removed quotes that were required to detect
>> inline asm:
>>
>> check_insn armv5te qadd r0, r0, r0
>> .../test.c:1:34: error: expected string literal in 'asm'
>> void foo(void){ __asm__ volatile(qadd r0, r0, r0); }
>>
>> The correct code is:
>>
>> void foo(void){ __asm__ volatile("qadd r0, r0, r0"); }
>> --- a/configure
>> +++ b/configure
>> @@ -866,7 +866,7 @@ EOF
>>  check_insn(){
>>      log check_insn "$@"
>> -    check_inline_asm ${1}_inline "$2"
>> +    check_inline_asm ${1}_inline "\"$2\""
>>      check_as ${1}_external "$2"
>>  }
> 
> This does not look like the correct fix to me. The required quotes
> should be part of the convenience function instead. Notice how calls
> to check_insn and check_inline_asm differ in the way they quote their
> arguments. There should be no need for this inconsistency.
> 
> I'll look into it.

Changing all the calls from check_insn name 'insn' to check_insn name
'"insn"' would probably fix the check_inline_asm tests, but may break
the check_as tests.

I don't have an arm or qemu system to confirm the above, though.

> 
> Diego
> _______________________________________________
> libav-devel mailing list
> libav-devel at libav.org
> https://lists.libav.org/mailman/listinfo/libav-devel
> 



More information about the libav-devel mailing list