All of lore.kernel.org
 help / color / mirror / Atom feed
* GCCFLAGS for gcc 3.3.x (-march and _MIPS_ISA)
@ 2003-08-12  6:26 Atsushi Nemoto
  2003-08-12  6:49 ` Kumba
  2003-08-12  6:51 ` Thiemo Seufer
  0 siblings, 2 replies; 22+ messages in thread
From: Atsushi Nemoto @ 2003-08-12  6:26 UTC (permalink / raw)
  To: linux-mips

I'm trying to compile kernel with gcc 3.3.1 and binutils 2.14.  I
found this report on this ML:

>>>>> On Tue, 13 May 2003 13:33:16 +0200, Guido Guenther <agx@sigxcpu.org> said:
Guido> Just for completeness: I had to use:
Guido>  GCCFLAGS += -mabi=32 -march=r4600 -mtune=r4600 -Wa,--trap
Guido> to make gcc-3.3 happy (note the 32 instead of o32). gcc-3.2
Guido> doesn't seem to handle these options correctly at all.

It can compile the kernel, but handle_adel_int (and handle_ades_int)
contain wrong codes.

8002630c <handle_adel_int> 40284000 	dmfc0	t0,$8
80026310 <handle_adel_int+0x4> 00000000 	nop
80026314 <handle_adel_int+0x8> ffa800a4 	sd	t0,164(sp)

The source code for this instructions are:

#define __BUILD_clear_ade(exception)                                    \
		.set	reorder;					\
		MFC0	t0,CP0_BADVADDR;                                \
		.set	noreorder;					\
		REG_S	t0,PT_BVADDR(sp);                               \
		KMODE

The macro MFC0 and REG_S are defined asm.h and depend on _MIPS_ISA.

#if (_MIPS_ISA == _MIPS_ISA_MIPS1) || (_MIPS_ISA == _MIPS_ISA_MIPS2) || \
    (_MIPS_ISA == _MIPS_ISA_MIPS32)
#define MFC0		mfc0
#define MTC0		mtc0
#endif
#if (_MIPS_ISA == _MIPS_ISA_MIPS3) || (_MIPS_ISA == _MIPS_ISA_MIPS4) || \
    (_MIPS_ISA == _MIPS_ISA_MIPS5) || (_MIPS_ISA == _MIPS_ISA_MIPS64)
#define MFC0		dmfc0
#define MTC0		dmtc0
#endif

The option -march=r4600 seems to make gcc 3.3.x choose MIPS_ISA_MIPS3.

So, the right options is:

	GCCFLAGS += -mabi=32 -march=mips2 -mtune=r4600 -Wa,--trap
(or	GCCFLAGS += $(call check_gcc, -mcpu=r4600 -mips2, -mabi=32 -march=mips2 -mtune=r4600) -Wa,--trap)

Isn't it?

---
Atsushi Nemoto

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2003-08-19 12:35 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-08-12  6:26 GCCFLAGS for gcc 3.3.x (-march and _MIPS_ISA) Atsushi Nemoto
2003-08-12  6:49 ` Kumba
2003-08-12  7:06   ` Thiemo Seufer
2003-08-12  7:56     ` Kumba
2003-08-12  8:10       ` Thiemo Seufer
2003-08-12  8:26         ` Kumba
2003-08-12  9:25   ` Atsushi Nemoto
2003-08-19  3:52     ` Ralf Baechle
2003-08-12  6:51 ` Thiemo Seufer
2003-08-12 10:06   ` Atsushi Nemoto
2003-08-12 10:16     ` Thiemo Seufer
2003-08-12 15:26       ` Atsushi Nemoto
2003-08-14  3:03         ` Thiemo Seufer
2003-08-12 13:56   ` Maciej W. Rozycki
2003-08-12 14:04     ` Thiemo Seufer
2003-08-12 14:40       ` Maciej W. Rozycki
2003-08-14  3:08         ` Thiemo Seufer
2003-08-19  3:38       ` Ralf Baechle
2003-08-19 12:22         ` Maciej W. Rozycki
2003-08-19 12:34           ` Ralf Baechle
2003-08-19  3:57   ` Ralf Baechle
2003-08-19  6:41     ` Thiemo Seufer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.