discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Latest Gnuradio git won't compile on OS X


From: Stefan Oltmanns
Subject: Re: [Discuss-gnuradio] Latest Gnuradio git won't compile on OS X
Date: Thu, 23 Oct 2014 19:52:17 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:24.0) Gecko/20100101 Thunderbird/24.0

Adding const did not fix the problem, so I gave the 0xdd / 0x88 directly
as shuffle mask parameter in _mm256_shuffle_ps, then it compiles without
any problems (same fix for volk_32fc_deinterleave_imag_32f.h)

Thank you very much
Stefan

Am 23.10.2014 19:50, schrieb West, Nathan:
> On Thu, Oct 23, 2014 at 12:37 PM, Stefan Oltmanns
> <address@hidden> wrote:
>> I just got the latest git version of gnuradio and tried to compile, but
>> I get compilation errors resulting from avxintrin.h:
>>
>> http://pastebin.com/uq4uGeNs
>>
>> These errors seems to be common and result from using non-standard
>> GCC-extensions that clang does not support.
>>
>> Any ideas?
> 
> This is a recently introduced bug; thanks for the report!
> 
> This is apparently because clang is stricter than gcc on constant
> arguments. The shuffle parameter is defined as an int rather than
> const int. The same instruction/function has been used for a long time
> without any problems, but in other cases we always give the literal
> value rather than a variable.
> 
> Since you're building from source I'll assume you might be able to try
> this patch out:
> 
> --- a/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h
> +++ b/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h
> @@ -42,8 +42,8 @@ static inline void
> volk_32fc_deinterleave_32f_x2_a_avx(float* iBuffer, float* qB
> 
>    unsigned int number = 0;
>    // Mask for real and imaginary parts
> -  int realMask = 0x88;
> -  int imagMask = 0xdd;
> +  const int realMask = 0x88;
> +  const int imagMask = 0xdd;
>    const unsigned int eighthPoints = num_points / 8;
>    __m256 cplxValue1, cplxValue2, complex1, complex2, iValue, qValue;
>    for(;number < eighthPoints; number++){
> 
> Otherwise, just roll back to a commit before we merged in the volk
> gsoc work (1-2 weeks, I think).
> 
> Nathan
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]