From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shinya Kuribayashi Date: Sun, 21 Oct 2007 21:12:15 +0900 Subject: [U-Boot-Users] [MIPS] Add PIC-related switches to PLATFORM_{CPP, LD}FLAGS and cleanup In-Reply-To: <471A230F.9050209@ruby.dti.ne.jp> References: <471A211D.907@ruby.dti.ne.jp> <471A2188.3020500@ruby.dti.ne.jp> <471A21D8.1050901@ruby.dti.ne.jp> <471A2258.1010101@ruby.dti.ne.jp> <471A22A2.3000401@ruby.dti.ne.jp> <471A230F.9050209@ruby.dti.ne.jp> Message-ID: <471B421F.2070901@ruby.dti.ne.jp> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Shinya Kuribayashi wrote: > diff --git a/cpu/mips/config.mk b/cpu/mips/config.mk > index b29986e..1f2860e 100644 > --- a/cpu/mips/config.mk > +++ b/cpu/mips/config.mk > @@ -35,6 +35,4 @@ else > ENDIANNESS = -EB > endif > > -MIPSFLAGS += $(ENDIANNESS) -mabicalls > - > -PLATFORM_CPPFLAGS += $(MIPSFLAGS) > +PLATFORM_CPPFLAGS += $(ENDIANNESS) Err, I should have fixed like this: -MIPSFLAGS += $(ENDIANNESS) -mabicalls +MIPSFLAGS += $(ENDIANNESS) already fixed. Shinya > diff --git a/mips_config.mk b/mips_config.mk > index d8aa5fa..67fb67d 100644 > --- a/mips_config.mk > +++ b/mips_config.mk > @@ -22,3 +22,28 @@ > # > > PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__ > + > +# > +# From Linux arch/mips/Makefile > +# > +# GCC uses -G 0 -mabicalls -fpic as default. We don't want PIC in the kernel > +# code since it only slows down the whole thing. At some point we might make > +# use of global pointer optimizations but their use of $28 conflicts with > +# the current pointer optimization. > +# > +# The DECStation requires an ECOFF kernel for remote booting, other MIPS > +# machines may also. Since BFD is incredibly buggy with respect to > +# crossformat linking we rely on the elf2ecoff tool for format conversion. > +# > +# cflags-y += -G 0 -mno-abicalls -fno-pic -pipe > +# cflags-y += -msoft-float > +# LDFLAGS_vmlinux += -G 0 -static -n -nostdlib > +# MODFLAGS += -mlong-calls > +# > + > +# > +# Meanwhile, U-Boot rely on PIC. We add proper switches explicitly. > +# > +PLATFORM_CPPFLAGS += -G 0 -mabicalls -fpic -pipe > +PLATFORM_CPPFLAGS += -msoft-float > +PLATFORM_LDFLAGS += -G 0 -static -n -nostdlib