summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1998-01-29 00:47:10 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1998-01-29 00:47:10 +0000
commit3a36dff306fc01fba889427f91012b9e70d9c942 (patch)
treeeffcfc36e61e8e2a6ba95b48205af287c1e3cd1a /gcc/config
parentdd53deb4eda4b3c4612a94e72072e7ec3b70d885 (diff)
downloadgcc-3a36dff306fc01fba889427f91012b9e70d9c942.tar.gz
* am-alpha.h: Don't include alloca for OPEN_VMS.
* alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define. * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define. (GCC_INCLUDE_DIR): Define * make-cc.com, make-cccp.com, make-cc1.com: Removed. * makefile.vms: New file. * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha. * alpha.c (output_prolog): Output '.name' directive for minimal traceback information. * alpha.c (output_prolog): Don't prepend entry point symbols with '$' on OPEN_VMS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17546 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/alpha/alpha.c16
-rw-r--r--gcc/config/alpha/vms.h2
-rw-r--r--gcc/config/alpha/xm-alpha.h2
-rw-r--r--gcc/config/alpha/xm-vms.h31
4 files changed, 34 insertions, 17 deletions
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index c5d132590a7..0484ea64e6f 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -2776,7 +2776,7 @@ output_prolog (file, size)
fprintf (file, "\t.ent ");
assemble_name (file, alpha_function_name);
fprintf (file, "\n");
- sprintf (entry_label, "$%s..en", alpha_function_name);
+ sprintf (entry_label, "%s..en", alpha_function_name);
ASM_OUTPUT_LABEL (file, entry_label);
inside_function = TRUE;
@@ -2910,10 +2910,20 @@ output_prolog (file, size)
fprintf (file, "\t.prologue\n");
+ readonly_section ();
+ fprintf (file, "\t.align 3\n");
+ assemble_name (file, alpha_function_name); fputs ("..na:\n", file);
+ fputs ("\t.ascii \"", file);
+ assemble_name (file, alpha_function_name);
+ fputs ("\\0\"\n", file);
+
link_section ();
fprintf (file, "\t.align 3\n");
+ fputs ("\t.name ", file);
+ assemble_name (file, alpha_function_name);
+ fputs ("..na\n", file);
ASM_OUTPUT_LABEL (file, alpha_function_name);
- fprintf (file, "\t.pdesc $");
+ fprintf (file, "\t.pdesc ");
assemble_name (file, alpha_function_name);
fprintf (file, "..en,%s\n", is_stack_procedure ? "stack" : "reg");
alpha_need_linkage (alpha_function_name, 1);
@@ -4015,7 +4025,7 @@ alpha_write_linkage (stream)
if (lptr->kind == KIND_LOCAL)
{
/* Local and used, build linkage pair. */
- fprintf (stream, "\t.quad $%s..en\n", lptr->name);
+ fprintf (stream, "\t.quad %s..en\n", lptr->name);
fprintf (stream, "\t.quad %s\n", lptr->name);
}
else
diff --git a/gcc/config/alpha/vms.h b/gcc/config/alpha/vms.h
index e0bc3349afc..57618907fda 100644
--- a/gcc/config/alpha/vms.h
+++ b/gcc/config/alpha/vms.h
@@ -31,7 +31,7 @@ Boston, MA 02111-1307, USA. */
#undef CPP_PREDEFINES
#define CPP_PREDEFINES \
-"-Dalpha -D__ALPHA -Dvms -DVMS -D__alpha__ -D__alpha -D__vms__ -D__VMS__\
+"-D__ALPHA -Dvms -DVMS -D__alpha__ -D__alpha -D__vms__ -D__VMS__\
-Asystem(vms) -Acpu(alpha) -Amachine(alpha)"
#undef CPP_SPEC
diff --git a/gcc/config/alpha/xm-alpha.h b/gcc/config/alpha/xm-alpha.h
index 4bf20c0a385..7665127b714 100644
--- a/gcc/config/alpha/xm-alpha.h
+++ b/gcc/config/alpha/xm-alpha.h
@@ -46,7 +46,7 @@ Boston, MA 02111-1307, USA. */
#if defined(__GNUC__) && !defined(USE_C_ALLOCA)
#define alloca __builtin_alloca
#else
-#if !defined(_WIN32) && !defined(USE_C_ALLOCA)
+#if !defined(_WIN32) && !defined(USE_C_ALLOCA) && !defined(OPEN_VMS)
#include <alloca.h>
#else
extern void *alloca ();
diff --git a/gcc/config/alpha/xm-vms.h b/gcc/config/alpha/xm-vms.h
index c96423a6e5a..43ac5b62cfb 100644
--- a/gcc/config/alpha/xm-vms.h
+++ b/gcc/config/alpha/xm-vms.h
@@ -1,5 +1,5 @@
/* Configuration for GNU C-compiler for openVMS/Alpha.
- Copyright (C) 1996 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997 Free Software Foundation, Inc.
Contributed by Klaus Kaempf (kkaempf@progis.de).
This file is part of GNU CC.
@@ -51,9 +51,23 @@ Boston, MA 02111-1307, USA. */
#define VMS
#endif
+#define GCC_INCLUDE_DIR ""
+/* Specify the list of include file directories. */
+#define INCLUDE_DEFAULTS \
+{ \
+ { "GNU_GXX_INCLUDE:", "G++", 1, 1 }, \
+ { "GNU_CC_INCLUDE:", "GCC", 0, 0 }, \
+ { ".", 0, 0, 1 }, \
+ { 0, 0, 0, 0 } \
+}
+
/* Define a local equivalent (sort of) for unlink */
#define unlink remove
+
#define NEED_ATEXIT
+#define HAVE_VPRINTF
+#define HAVE_PUTENV
+#define HAVE_STRERROR
#define NO_SYS_PARAMS_H /* Don't have <sys/params.h> */
#define NO_STAB_H /* Don't have <stab.h> */
@@ -63,16 +77,11 @@ Boston, MA 02111-1307, USA. */
#define HAVE_STDLIB_H 1
#define HAVE_UNISTD_H 1
#define HAVE_STRING_H 1
+#define HAVE_LIMITS_H 1
+#define HAVE_STDDEF_H 1
+#define HAVE_TIME_H 1
#define STDC_HEADERS 1
-
-/* Use ANSI/SYSV style byte manipulation routines instead of BSD ones. */
-
-#define bcopy(s,d,n) memcpy((d),(s),(n))
-#define bzero(d,n) memset((d),0,(n))
-#define bcmp(l,r,n) memcmp((l),(r),(n))
-
-#define index strchr
-#define rindex strrchr
+#define HAVE_CPP_STRINGIFY 1
#if __STDC__
extern void *alloca (size_t);
@@ -82,5 +91,3 @@ extern char *alloca (unsigned int);
#define OBJECT_SUFFIX ".obj"
#define EXECUTABLE_SUFFIX ".exe"
-#define DIR_SEPARATOR ']'
-#define PATH_SEPARATOR ','