This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: MIPS R3900 'bgt' with gcc 3.0/binutils 2.11.2


mike stump wrote:
> 
> > Date: Sun, 12 Aug 2001 21:35:14 +0100
> > From: Jonathan Larmour <jlarmour@redhat.com>
> > To: binutils@sources.redhat.com, gcc@gcc.gnu.org
> 
> > clock.s:2652: Error: opcode not supported on this processor: R3900 (MIPS1)
> > `bgtul'
> 
> This is a macro, first available with mips2 according to opcodes.
> > But there is definitely a gcc bug, and possibly also a libopcodes
> > bug. Can someone advise?
> 
> It was a gcc bug.

Certainly at least. But I'm still unsure about bgtu or bgt in opcodes
which, according to opcodes, are meant to be in MIPS I, and I'm not sure
they really are.

>  This bug has been fixed in recent compiler work.
> The fixed looked something like:

I don't think this fixed it - The test for TARGET_MIPS3900 was moved into
ISA_HAS_BRANCHLIKELY, that's all. This patch by itself would remove all
branch likelys for R3900s.

Jifl

> Index: mips.h
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/config/mips/mips.h,v
> retrieving revision 1.114
> retrieving revision 1.115
> diff -c -p -r1.114 -r1.115
> *** mips.h 2001/06/26 06:36:37  1.114
> --- mips.h 2001/07/06 07:32:35  1.115
> *************** extern void             sbss_section PARAMS ((void)
> *** 580,586 ****
>   /* This is meant to be redefined in the host dependent files.  */
>   #define SUBTARGET_TARGET_OPTIONS
> 
> ! #define GENERATE_BRANCHLIKELY  (!TARGET_MIPS16 && (TARGET_MIPS3900 || ISA_HAS_BRANCHLIKELY))
> 
>   /* Generate three-operand multiply instructions for both SImode and DImode.  */
>   #define GENERATE_MULT3         (TARGET_MIPS3900                               \
> --- 597,603 ----
>   /* This is meant to be redefined in the host dependent files.  */
>   #define SUBTARGET_TARGET_OPTIONS
> 
> ! #define GENERATE_BRANCHLIKELY  (!TARGET_MIPS16 && ISA_HAS_BRANCHLIKELY)
> 
>   /* Generate three-operand multiply instructions for both SImode and DImode.  */
>   #define GENERATE_MULT3         (TARGET_MIPS3900                               \
> ------------------------------

-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]