Commit 5076b0ea by Rainer Orth Committed by Rainer Orth

osf5.h (CPP_XFLOAT_SPEC): Override default definition.

	* alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
	(ASM_OLDAS_SPEC): Likewise.

	* alpha/osf.h (CPP_XFLOAT_SPEC): Define.
	(CPP_SUBTARGET_SPEC): Use it.
	(ASM_OLDAS_SPEC): Define.
	(ASM_SPEC): Use it.
	(SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.

From-SVN: r42971
parent 09e98324
2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
(ASM_OLDAS_SPEC): Likewise.
* alpha/osf.h (CPP_XFLOAT_SPEC): Define.
(CPP_SUBTARGET_SPEC): Use it.
(ASM_OLDAS_SPEC): Define.
(ASM_SPEC): Use it.
(SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args, * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
passed by reference. passed by reference.
......
...@@ -36,13 +36,18 @@ Boston, MA 02111-1307, USA. */ ...@@ -36,13 +36,18 @@ Boston, MA 02111-1307, USA. */
-Dunix -D__osf__ -D_LONGLONG -DSYSTYPE_BSD \ -Dunix -D__osf__ -D_LONGLONG -DSYSTYPE_BSD \
-D_SYSTYPE_BSD -Asystem=unix -Asystem=xpg4" -D_SYSTYPE_BSD -Asystem=unix -Asystem=xpg4"
/* Tru64 UNIX V5 requires additional definitions for 16 byte long double
support. Empty by default. */
#define CPP_XFLOAT_SPEC ""
/* Accept DEC C flags for multithreaded programs. We use _PTHREAD_USE_D4 /* Accept DEC C flags for multithreaded programs. We use _PTHREAD_USE_D4
instead of PTHREAD_USE_D4 since both have the same effect and the former instead of PTHREAD_USE_D4 since both have the same effect and the former
doesn't invade the users' namespace. */ doesn't invade the users' namespace. */
#undef CPP_SUBTARGET_SPEC #undef CPP_SUBTARGET_SPEC
#define CPP_SUBTARGET_SPEC \ #define CPP_SUBTARGET_SPEC \
"%{pthread|threads:-D_REENTRANT} %{threads:-D_PTHREAD_USE_D4}" "%{pthread|threads:-D_REENTRANT} %{threads:-D_PTHREAD_USE_D4} %(cpp_xfloat)"
/* Under OSF4, -p and -pg require -lprof1, and -lprof1 requires -lpdf. */ /* Under OSF4, -p and -pg require -lprof1, and -lprof1 requires -lpdf. */
...@@ -79,10 +84,14 @@ Boston, MA 02111-1307, USA. */ ...@@ -79,10 +84,14 @@ Boston, MA 02111-1307, USA. */
ASM_OUTPUT_SOURCE_FILENAME (FILE, main_input_filename); \ ASM_OUTPUT_SOURCE_FILENAME (FILE, main_input_filename); \
} }
/* Tru64 UNIX V5.1 requires a special as flag. Empty by default. */
#define ASM_OLDAS_SPEC ""
/* No point in running CPP on our assembler output. */ /* No point in running CPP on our assembler output. */
#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_GAS) != 0 #if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_GAS) != 0
/* Don't pass -g to GNU as, because some versions don't accept this option. */ /* Don't pass -g to GNU as, because some versions don't accept this option. */
#define ASM_SPEC "%{malpha-as:-g} -nocpp %{pg}" #define ASM_SPEC "%{malpha-as:-g %(asm_oldas)} -nocpp %{pg}"
#else #else
/* In OSF/1 v3.2c, the assembler by default does not output file names which /* In OSF/1 v3.2c, the assembler by default does not output file names which
causes mips-tfile to fail. Passing -g to the assembler fixes this problem. causes mips-tfile to fail. Passing -g to the assembler fixes this problem.
...@@ -91,7 +100,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -91,7 +100,7 @@ Boston, MA 02111-1307, USA. */
if the user does not specify -g. If we don't pass -g, then mips-tfile if the user does not specify -g. If we don't pass -g, then mips-tfile
will need to be fixed to work in this case. Pass -O0 since some will need to be fixed to work in this case. Pass -O0 since some
optimization are broken and don't help us anyway. */ optimization are broken and don't help us anyway. */
#define ASM_SPEC "%{!mgas:-g} -nocpp %{pg} -O0" #define ASM_SPEC "%{!mgas:-g %(asm_oldas)} -nocpp %{pg} -O0"
#endif #endif
/* Specify to run a post-processor, mips-tfile after the assembler /* Specify to run a post-processor, mips-tfile after the assembler
...@@ -120,6 +129,11 @@ Boston, MA 02111-1307, USA. */ ...@@ -120,6 +129,11 @@ Boston, MA 02111-1307, USA. */
#endif #endif
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
{ "cpp_xfloat", CPP_XFLOAT_SPEC }, \
{ "asm_oldas", ASM_OLDAS_SPEC }
/* Indicate that we have a stamp.h to use. */ /* Indicate that we have a stamp.h to use. */
#ifndef CROSS_COMPILE #ifndef CROSS_COMPILE
#define HAVE_STAMP_H 1 #define HAVE_STAMP_H 1
......
/* Definitions of target machine for GNU compiler, for DEC Alpha on Tru64 5. /* Definitions of target machine for GNU compiler, for DEC Alpha on Tru64 5.
Copyright (C) 2000 Free Software Foundation, Inc. Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of GNU CC. This file is part of GNU CC.
...@@ -20,3 +20,25 @@ ...@@ -20,3 +20,25 @@
#undef LONG_DOUBLE_TYPE_SIZE #undef LONG_DOUBLE_TYPE_SIZE
#define LONG_DOUBLE_TYPE_SIZE 128 #define LONG_DOUBLE_TYPE_SIZE 128
/* Tru64 UNIX V5 has a 16 byte long double type and requires __X_FLOAT to be
defined to get the appropriate prototypes for the long double functions
in <math.h>. */
#undef CPP_XFLOAT_SPEC
#define CPP_XFLOAT_SPEC "-D__X_FLOAT"
/* In Tru64 UNIX V5.1, Compaq introduced a new assembler
(/usr/lib/cmplrs/cc/adu) which currently (versions between 3.04.29 and
3.04.32) breaks mips-tfile. Passing the undocumented -oldas flag reverts
to using the old assembler (/usr/lib/cmplrs/cc/as[01]).
The V5.0 and V5.0A assemblers silently ignore -oldas, so it can be
specified here.
It is clearly not desirable to depend on this undocumented flag, and
Compaq wants -oldas to go away soon, but until they have released a
new adu that works with mips-tfile, this is the only option. */
#undef ASM_OLDAS_SPEC
#define ASM_OLDAS_SPEC "-oldas"
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