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
This commit is contained in:
Rainer Orth 2001-06-07 17:04:51 +00:00 committed by Rainer Orth
parent 09e983244e
commit 5076b0ead9
3 changed files with 51 additions and 4 deletions

View File

@ -1,3 +1,14 @@
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,

View File

@ -36,13 +36,18 @@ Boston, MA 02111-1307, USA. */
-Dunix -D__osf__ -D_LONGLONG -DSYSTYPE_BSD \
-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
instead of PTHREAD_USE_D4 since both have the same effect and the former
doesn't invade the users' namespace. */
#undef 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. */
@ -79,10 +84,14 @@ Boston, MA 02111-1307, USA. */
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. */
#if ((TARGET_DEFAULT | TARGET_CPU_DEFAULT) & MASK_GAS) != 0
/* 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
/* 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.
@ -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
will need to be fixed to work in this case. Pass -O0 since some
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
/* Specify to run a post-processor, mips-tfile after the assembler
@ -120,6 +129,11 @@ Boston, MA 02111-1307, USA. */
#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. */
#ifndef CROSS_COMPILE
#define HAVE_STAMP_H 1

View File

@ -1,5 +1,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.
@ -20,3 +20,25 @@
#undef LONG_DOUBLE_TYPE_SIZE
#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"