Commit 7f75ae86 by Catherine Moore Committed by Catherine Moore

config.gcc (mips64vrel-*-elf*): Include the tm_file prior to vr.h.

        * config.gcc (mips64vrel-*-elf*): Include the tm_file
        prior to vr.h.
        * config/mips/linux.h (LINUX_DRIVER_SELF_SPECS): New.
        (BASE_DRIVER_SELF_SPECS): Remove.
        (DRIVER_SELF_SPECS): New definition.
        * config/mips/elfoabi.h: (DRIVER_SELF_SPECS): Include
        BASE_DRIVER_SELF_SPECS.
        * config/mips/sde.h: Likewise.
        * config/mips/iris6.h: Likewise.
        * config/mips/vr.h: Likewise.
        * config/mips/mips.h (BASE_DRIVER_SELF_SPECS): New.

From-SVN: r141754
parent 548a6322
2008-11-10 Catherine Moore <clm@codesourcery.com>
* config.gcc (mips64vrel-*-elf*): Include the tm_file
prior to vr.h.
* config/mips/linux.h (LINUX_DRIVER_SELF_SPECS): New.
(BASE_DRIVER_SELF_SPECS): Remove.
(DRIVER_SELF_SPECS): New definition.
* config/mips/elfoabi.h: (DRIVER_SELF_SPECS): Include
BASE_DRIVER_SELF_SPECS.
* config/mips/sde.h: Likewise.
* config/mips/iris6.h: Likewise.
* config/mips/vr.h: Likewise.
* config/mips/mips.h (BASE_DRIVER_SELF_SPECS): New.
2008-11-07 Vladimir Makarov <vmakarov@redhat.com> 2008-11-07 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimizations/37948 PR rtl-optimizations/37948
......
...@@ -1672,7 +1672,7 @@ mips64-*-elf* | mips64el-*-elf*) ...@@ -1672,7 +1672,7 @@ mips64-*-elf* | mips64el-*-elf*)
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
;; ;;
mips64vr-*-elf* | mips64vrel-*-elf*) mips64vr-*-elf* | mips64vrel-*-elf*)
tm_file="mips/vr.h elfos.h ${tm_file} mips/elf.h" tm_file="elfos.h ${tm_file} mips/vr.h mips/elf.h"
tmake_file=mips/t-vr tmake_file=mips/t-vr
;; ;;
mips64orion-*-elf* | mips64orionel-*-elf*) mips64orion-*-elf* | mips64orionel-*-elf*)
......
...@@ -19,6 +19,7 @@ You should have received a copy of the GNU General Public License ...@@ -19,6 +19,7 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */ <http://www.gnu.org/licenses/>. */
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \ #define DRIVER_SELF_SPECS \
/* Make sure a -mips option is present. This helps us to pick \ /* Make sure a -mips option is present. This helps us to pick \
the right multilib, and also makes the later specs easier \ the right multilib, and also makes the later specs easier \
...@@ -32,4 +33,8 @@ along with GCC; see the file COPYING3. If not see ...@@ -32,4 +33,8 @@ along with GCC; see the file COPYING3. If not see
/* Remove a redundant -mfp64 for -mabi=o64; we want the !mfp64 \ /* Remove a redundant -mfp64 for -mabi=o64; we want the !mfp64 \
multilibs. There's no need to check whether the architecture \ multilibs. There's no need to check whether the architecture \
is 64-bit; cc1 will complain if it isn't. */ \ is 64-bit; cc1 will complain if it isn't. */ \
"%{mabi=o64: %<mfp64}" "%{mabi=o64: %<mfp64}", \
\
/* Configuration-independent MIPS rules.*/ \
BASE_DRIVER_SELF_SPECS
...@@ -29,9 +29,12 @@ along with GCC; see the file COPYING3. If not see ...@@ -29,9 +29,12 @@ along with GCC; see the file COPYING3. If not see
/* Force the default ABI onto the command line in order to make the specs /* Force the default ABI onto the command line in order to make the specs
easier to write. Default to the mips2 ISA for the O32 ABI. */ easier to write. Default to the mips2 ISA for the O32 ABI. */
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \ #define DRIVER_SELF_SPECS \
"%{!mabi=*: -mabi=n32}", \ "%{!mabi=*: -mabi=n32}", \
"%{mabi=32: %{!mips*: %{!march*: -mips2}}}" "%{mabi=32: %{!mips*: %{!march*: -mips2}}}", \
/* Configuration-independent MIPS rules. */ \
BASE_DRIVER_SELF_SPECS
/* Force the generation of dwarf .debug_frame sections even if not /* Force the generation of dwarf .debug_frame sections even if not
compiling -g. This guarantees that we can unwind the stack. */ compiling -g. This guarantees that we can unwind the stack. */
......
...@@ -134,7 +134,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); ...@@ -134,7 +134,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
# define MARCH_MTUNE_NATIVE_SPECS "" # define MARCH_MTUNE_NATIVE_SPECS ""
#endif #endif
#define BASE_DRIVER_SELF_SPECS \ #define LINUX_DRIVER_SELF_SPECS \
NO_SHARED_SPECS \ NO_SHARED_SPECS \
MARCH_MTUNE_NATIVE_SPECS, \ MARCH_MTUNE_NATIVE_SPECS, \
/* -mplt has no effect without -mno-shared. Simplify later \ /* -mplt has no effect without -mno-shared. Simplify later \
...@@ -142,4 +142,8 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); ...@@ -142,4 +142,8 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
"%{!mno-shared:%<mplt}", \ "%{!mno-shared:%<mplt}", \
/* -mplt likewise has no effect for -mabi=64 without -msym32. */ \ /* -mplt likewise has no effect for -mabi=64 without -msym32. */ \
"%{mabi=64:%{!msym32:%<mplt}}" "%{mabi=64:%{!msym32:%<mplt}}"
#define DRIVER_SELF_SPECS BASE_DRIVER_SELF_SPECS
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \
BASE_DRIVER_SELF_SPECS, \
LINUX_DRIVER_SELF_SPECS
...@@ -742,6 +742,12 @@ enum mips_code_readable_setting { ...@@ -742,6 +742,12 @@ enum mips_code_readable_setting {
{"mips-plt", "%{!mplt:%{!mno-plt:-m%(VALUE)}}" } {"mips-plt", "%{!mplt:%{!mno-plt:-m%(VALUE)}}" }
/* A spec that infers the -mdsp setting from an -march argument. */
#define BASE_DRIVER_SELF_SPECS \
"%{!mno-dsp:%{march=24ke*|march=34k*|march=74k*: -mdsp}}"
#define DRIVER_SELF_SPECS BASE_DRIVER_SELF_SPECS
#define GENERATE_DIVIDE_TRAPS (TARGET_DIVIDE_TRAPS \ #define GENERATE_DIVIDE_TRAPS (TARGET_DIVIDE_TRAPS \
&& ISA_HAS_COND_TRAP) && ISA_HAS_COND_TRAP)
......
...@@ -19,6 +19,7 @@ You should have received a copy of the GNU General Public License ...@@ -19,6 +19,7 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */ <http://www.gnu.org/licenses/>. */
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \ #define DRIVER_SELF_SPECS \
/* Make sure a -mips option is present. This helps us to pick \ /* Make sure a -mips option is present. This helps us to pick \
the right multilib, and also makes the later specs easier \ the right multilib, and also makes the later specs easier \
...@@ -46,7 +47,10 @@ along with GCC; see the file COPYING3. If not see ...@@ -46,7 +47,10 @@ along with GCC; see the file COPYING3. If not see
The latter trumps the former. */ \ The latter trumps the former. */ \
"%{mno-data-in-code: -mcode-readable=no}", \ "%{mno-data-in-code: -mcode-readable=no}", \
"%{!mcode-readable=no: %{mcode-xonly: -mcode-readable=pcrel}}", \ "%{!mcode-readable=no: %{mcode-xonly: -mcode-readable=pcrel}}", \
"%<mno-data-in-code %<mcode-xonly" "%<mno-data-in-code %<mcode-xonly", \
\
/* Configuration-independent MIPS rules. */ \
BASE_DRIVER_SELF_SPECS
/* Use trap rather than break for all but MIPS I ISA. Force -no-mips16, /* Use trap rather than break for all but MIPS I ISA. Force -no-mips16,
so that MIPS16 assembler code requires an explicit ".set mips16". so that MIPS16 assembler code requires an explicit ".set mips16".
......
...@@ -20,12 +20,15 @@ along with GCC; see the file COPYING3. If not see ...@@ -20,12 +20,15 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */ <http://www.gnu.org/licenses/>. */
#define DEFAULT_VR_ARCH "mfix-vr4130" #define DEFAULT_VR_ARCH "mfix-vr4130"
#undef MIPS_ABI_DEFAULT
#define MIPS_ABI_DEFAULT ABI_EABI #define MIPS_ABI_DEFAULT ABI_EABI
#undef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS \ #define MULTILIB_DEFAULTS \
{ MULTILIB_ENDIAN_DEFAULT, \ { MULTILIB_ENDIAN_DEFAULT, \
MULTILIB_ABI_DEFAULT, \ MULTILIB_ABI_DEFAULT, \
DEFAULT_VR_ARCH } DEFAULT_VR_ARCH }
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \ #define DRIVER_SELF_SPECS \
/* Enforce the default architecture. This is mostly for \ /* Enforce the default architecture. This is mostly for \
the assembler's benefit. */ \ the assembler's benefit. */ \
...@@ -51,4 +54,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -51,4 +54,7 @@ along with GCC; see the file COPYING3. If not see
"%{mabi=eabi:%{!mlong*:%{!mgp32:-mlong64}}}", \ "%{mabi=eabi:%{!mlong*:%{!mgp32:-mlong64}}}", \
\ \
/* Remove -mgp32 if it is redundant. */ \ /* Remove -mgp32 if it is redundant. */ \
"%{mabi=32:%<mgp32}" "%{mabi=32:%<mgp32}", \
\
/* Configuration-independent MIPS rules. */ \
BASE_DRIVER_SELF_SPECS
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment