> -----Original Message----- > From: Steve Ellcey [mailto:sell...@imgtec.com] > Sent: Thursday, October 23, 2014 4:37 PM > To: matthew.fort...@imgtec.com; Moore, Catherine; gcc- > patc...@gcc.gnu.org > Subject: [Patch] MIPS configuration patch > > Here is another patch to reduce the differences between the 32 bit MIPS and > 64 bit MIPS configuration. This patch combines the two case entries in > config.gcc into one entry so the header file list and other settings don't > have > to be handled twice. > > This patch should not change the build for any MIPS target except that, > before this patch, the gnu_ld and gas variables were explicitly set to yes for > MIPS64 targets but not for MIPS32 targets. I don't know why this difference > exists but it shouldn't matter for builds that are on linux because the > variables were getting set to 'yes' anyway when using the GNU linker and > assembler. I don't think anyone builds a linux target that does not use > these. > I chose to put the settings in (matching MIPS64) but I don't think removing > them would cause any problems if we want to do that. >
Hi Steve, The gnu_ld and gas settings can be removed altogether. They are set earlier for all linux-targets: *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu) extra_options="$extra_options gnu-user.opt" gas=yes gnu_ld=yes case ${enable_threads} in "" | yes | posix) thread_file='posix' ;; Esac This patch is OK, with that change. Thanks, Catherine > > > 2014-10-23 Steve Ellcey <sell...@imgtec.com> > > * config.gcc (mips*-*-linux*): Combine 32 and 64 bit cases. > > > diff --git a/gcc/config.gcc b/gcc/config.gcc index 6bbbb26..8bc59bf 100644 > --- a/gcc/config.gcc > +++ b/gcc/config.gcc > @@ -1945,41 +1945,46 @@ mips*-mti-linux*) > gnu_ld=yes > gas=yes > ;; > -mips64*-*-linux* | mipsisa64*-*-linux*) > +mips*-*-linux*) # Linux MIPS, either endian. > tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc- > stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h" > extra_options="${extra_options} linux-android.opt" > - tmake_file="${tmake_file} mips/t-linux64" > - tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32" > case ${target} in > + mipsisa32r2*) > + tm_defines="${tm_defines} > MIPS_ISA_DEFAULT=33" > + ;; > + mipsisa32*) > + tm_defines="${tm_defines} > MIPS_ISA_DEFAULT=32" > + ;; > mips64el-st-linux-gnu) > + tm_defines="${tm_defines} > MIPS_ABI_DEFAULT=ABI_N32" > tm_file="${tm_file} mips/st.h" > tmake_file="${tmake_file} mips/t-st" > + enable_mips_multilibs="yes" > ;; > mips64octeon*-*-linux*) > + tm_defines="${tm_defines} > MIPS_ABI_DEFAULT=ABI_N32" > tm_defines="${tm_defines} > MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\"" > target_cpu_default=MASK_SOFT_FLOAT_ABI > + enable_mips_multilibs="yes" > ;; > mipsisa64r2*-*-linux*) > + tm_defines="${tm_defines} > MIPS_ABI_DEFAULT=ABI_N32" > tm_defines="${tm_defines} > MIPS_ISA_DEFAULT=65" > + enable_mips_multilibs="yes" > + ;; > + mips64*-*-linux* | mipsisa64*-*-linux*) > + tm_defines="${tm_defines} > MIPS_ABI_DEFAULT=ABI_N32" > + enable_mips_multilibs="yes" > ;; > esac > - gnu_ld=yes > - gas=yes > - ;; > -mips*-*-linux*) # Linux MIPS, either endian. > - tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc- > stdint.h ${tm_file} mips/gnu-user.h mips/linux.h" > - extra_options="${extra_options} linux-android.opt" > if test x$enable_targets = xall; then > + enable_mips_multilibs="yes" > + fi > + if test x$enable_mips_multilibs = xyes; then > tmake_file="${tmake_file} mips/t-linux64" > fi > - tm_file="${tm_file} mips/linux-common.h" > - case ${target} in > - mipsisa32r2*) > - tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" > - ;; > - mipsisa32*) > - tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" > - esac > + gnu_ld=yes > + gas=yes > ;; > mips*-mti-elf*) > tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h > mips/sde.h mips/mti-elf.h"