From 27d21d328389e03341ad91b06d5ed7ce2164ffd8 Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Fri, 26 Jun 1992 02:43:09 +0000 Subject: [PATCH] *** empty log message *** From-SVN: r1288 --- gcc/dbxout.c | 11 ----------- gcc/ginclude/va-i860.h | 4 ++-- gcc/libgcc2.c | 8 ++++++-- 3 files changed, 8 insertions(+), 15 deletions(-) diff --git a/gcc/dbxout.c b/gcc/dbxout.c index d5ac243aaa5..4436c312830 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1402,16 +1402,6 @@ dbxout_symbol (decl, local) fprintf (asmfile, "%s \"%s:", ASM_STABS_OP, IDENTIFIER_POINTER (DECL_NAME (decl))); -/* #ifndef DBX_NO_EXTRA_TAGS rms: I think this is no longer needed. */ - /* This section makes absolutely no sense to me. Why would a tag - ever be needed at this point? The result of this is that any - structure typedef with the tag omitted is treated as if the - tag was given to be the same as the typedef name. Probably - no harm in it, unless the programmer used the same name for - the tag of a *different* structure. At any rate, Alliant's - debugger would want the tag output before the typedef, so - this code still loses. -- hyc */ - /* Short cut way to output a tag also. */ if ((TREE_CODE (type) == RECORD_TYPE || TREE_CODE (type) == UNION_TYPE) @@ -1427,7 +1417,6 @@ dbxout_symbol (decl, local) tag_needed = 1; #endif } -/* #endif */ putc ('t', asmfile); current_sym_code = DBX_TYPE_DECL_STABS_CODE; diff --git a/gcc/ginclude/va-i860.h b/gcc/ginclude/va-i860.h index 9983a639f72..632960a614f 100644 --- a/gcc/ginclude/va-i860.h +++ b/gcc/ginclude/va-i860.h @@ -31,7 +31,7 @@ typedef union { } __f_regs; typedef struct { -#ifdef __SVR4__ +#if defined(__SVR4__) || defined(__alliant__) __f_regs __float_regs; long __ireg[12]; #else /* pre-SVR4 */ long __ireg[12]; __f_regs __float_regs; @@ -43,7 +43,7 @@ typedef struct { #define __GNU_VA_LIST /* Field names were properly prefixed with `__'. */ typedef struct { -#ifdef __SVR4__ +#if defined(__SVR4__) || defined(__alliant__) unsigned __ireg_used; /* How many int regs consumed 'til now? */ unsigned __freg_used; /* How many flt regs consumed 'til now? */ long *__reg_base; /* Address of where we stored the regs. */ diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index 384d214c36c..8d5ad4ac756 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -764,13 +764,17 @@ __fixunssfsi (float a) #ifdef L_varargs #ifdef __i860__ -#ifdef SVR4 +#if defined(SVR4) || defined(__alliant__) asm (" .text"); asm (" .align 4"); +/* The Alliant needs the added underscore. */ asm (".globl __builtin_saveregs"); asm ("__builtin_saveregs:"); - asm (" andnot 0x0f,%sp,%sp"); /* round down to 16-byte boundary */ + asm (".globl ___builtin_saveregs"); +asm ("___builtin_saveregs:"); + + asm (" andnot 0x0f,%sp,%sp"); /* round down to 16-byte boundary */ asm (" adds -96,%sp,%sp"); /* allocate stack space for reg save area and also for a new va_list structure */ -- 2.30.2