Re: [RFC PATCH v6] MIPS: fix build with binutils 2.24.51+

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

 



On 11/07/2014 11:05 AM, Matthew Fortune wrote:
>> +(mips1) `cfc1 $2,$31'
>> make[1]: *** [arch/mips/math-emu/cp1emu.o] Error 1
>> make: *** [arch/mips/math-emu] Error 2
>> make: *** Waiting for unfinished jobs....
> 
> This is the offending code in cp1emu.c:
> 
>                         if (is_fpu_owner())
>                                 asm volatile(
>                                         ".set push\n"
>                                         "\t.set mips1\n"
>                                         "\tcfc1\t%0,$31\n"
>                                         "\t.set pop" : "=r" (fcr31));
>                         else
>                                 fcr31 = current->thread.fpu.fcr31;
>                         preempt_enable();
> 
> I'm not sure how this can have built with binutils 2.23 (as indicated by
> Manuel and not built with 2.24). The reason this works with the latest
> version of binutils 2.24.x is that cfc1 has been reclassified as not an
> FPU instruction.
> 
> This just needs the hardfloat annotation adding via the macro as in the
> other cases.
> 
> Thanks,
> Matthew
> 
I am confused about this comment. The problem is reproducible with the
latest Mentor toolchain which uses the following gas
GNU assembler version 2.24.51 (mips-linux-gnu) using BFD version
(Sourcery CodeBench Lite 2014.05-27) 2.24.51.20140217.

I am not sure how Manuel's patch triggered this problem on Mentor to be
honest.

-- 
markos





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux