remove GCC2 FORTRAN compiler and libraries that had been used on GCC2 archs
This commit is contained in:
parent
35c197e090
commit
d85f4f7fc0
@ -1,4 +1,4 @@
|
|||||||
# $OpenBSD: Makefile,v 1.1153 2013/08/08 20:49:11 bluhm Exp $
|
# $OpenBSD: Makefile,v 1.1154 2013/08/09 10:59:30 naddy Exp $
|
||||||
|
|
||||||
SUBDIR =
|
SUBDIR =
|
||||||
SUBDIR += ElectricFence
|
SUBDIR += ElectricFence
|
||||||
@ -346,7 +346,6 @@
|
|||||||
SUBDIR += libexecinfo
|
SUBDIR += libexecinfo
|
||||||
SUBDIR += libexude
|
SUBDIR += libexude
|
||||||
SUBDIR += libf2c
|
SUBDIR += libf2c
|
||||||
SUBDIR += libf2c-old
|
|
||||||
SUBDIR += libffi
|
SUBDIR += libffi
|
||||||
SUBDIR += libfmt
|
SUBDIR += libfmt
|
||||||
SUBDIR += libftdi
|
SUBDIR += libftdi
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
# $OpenBSD: Makefile,v 1.13 2013/07/07 21:25:27 naddy Exp $
|
|
||||||
|
|
||||||
V = 2.95.3
|
|
||||||
CONFIG = ${MACHINE_ARCH}-unknown-openbsd${OSREV}
|
|
||||||
SUBST_VARS += CONFIG V
|
|
||||||
PKGNAME = libf2c-$V
|
|
||||||
REVISION = 9
|
|
||||||
DISTFILES = libf2c-openbsd-$V.tgz
|
|
||||||
MASTER_SITES = http://spacehopper.org/mirrors/
|
|
||||||
|
|
||||||
ONLY_FOR_ARCHS = ${GCC2_ARCHS}
|
|
||||||
COMMENT = GNU fortran 77 libraries
|
|
||||||
CATEGORIES = devel math
|
|
||||||
PERMIT_PACKAGE_CDROM = Yes
|
|
||||||
|
|
||||||
MAJOR = 8
|
|
||||||
MINOR = 0
|
|
||||||
SHARED_LIBS = g2c ${MAJOR}.${MINOR}
|
|
||||||
|
|
||||||
WRKDIST = ${WRKDIR}/libf2c
|
|
||||||
BUILD_DEPENDS = lang/g77-old:patch
|
|
||||||
LIBIBERTY_INCLUDES = ${WRKDIR}/lang/g77-old/libiberty/include
|
|
||||||
EGCS_DIR = ${WRKDIR}/lang/g77-old/g77
|
|
||||||
|
|
||||||
MAKE_FILE = ${WRKDIST}/Makefile.bsd-wrapper
|
|
||||||
|
|
||||||
post-extract:
|
|
||||||
if test -e ${EGCS_DIR}/gcc; then \
|
|
||||||
ln -sf ${EGCS_DIR}/gcc ${WRKDIR}/gcc; \
|
|
||||||
else \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
ln -sf ${EGCS_DIR}/install-sh ${WRKDIR}/install-sh
|
|
||||||
ln -sf ${EGCS_DIR}/config.sub ${WRKDIR}/config.sub
|
|
||||||
ln -sf ${EGCS_DIR}/config.guess ${WRKDIR}/config.guess
|
|
||||||
|
|
||||||
do-configure:
|
|
||||||
cd ${WRKDIST} && ${MAKE} ${MAKE_FLAGS} -f ${MAKE_FILE} obj
|
|
||||||
cd ${WRKDIST} && ${MAKE} ${MAKE_FLAGS} -f ${MAKE_FILE} depend
|
|
||||||
|
|
||||||
MAKE_FLAGS = MANDIR=${TRUEPREFIX}/man/cat \
|
|
||||||
INSTALL_LIBGCC= LIBGCC= \
|
|
||||||
COMPILERS=f771 \
|
|
||||||
USE_COLLECT2= \
|
|
||||||
LIBDIR=${TRUEPREFIX}/lib \
|
|
||||||
LIBIBERTY_INCLUDES=${LIBIBERTY_INCLUDES} \
|
|
||||||
major=${MAJOR} minor=${MINOR}
|
|
||||||
|
|
||||||
post-install:
|
|
||||||
cd ${WRKBUILD}/obj && ${INSTALL_DATA} g2c.h ${PREFIX}/include
|
|
||||||
${INSTALL_DATA_DIR} ${PREFIX}/lib/gcc-lib/${CONFIG}/$V
|
|
||||||
.for i in libfrtbegin.a libfrtbegin_pic.a libfrtbegin_p.a libg2c.a \
|
|
||||||
libg2c_p.a libg2c_pic.a libg2c.so.*
|
|
||||||
if test -e ${DESTDIR}${TRUEPREFIX}/lib/$i; then \
|
|
||||||
ln -sf ${TRUEPREFIX}/lib/$i ${PREFIX}/lib/gcc-lib/${CONFIG}/$V; \
|
|
||||||
fi
|
|
||||||
.endfor
|
|
||||||
|
|
||||||
.include <bsd.port.mk>
|
|
@ -1,5 +0,0 @@
|
|||||||
MD5 (libf2c-openbsd-2.95.3.tgz) = mvIqGP5tQ1ontnF//JjXCg==
|
|
||||||
RMD160 (libf2c-openbsd-2.95.3.tgz) = i3oyDI625pcbGUa2WgOdYzJxvPg=
|
|
||||||
SHA1 (libf2c-openbsd-2.95.3.tgz) = uzYTfZFwNgGV7kqaUDqJQP38EkQ=
|
|
||||||
SHA256 (libf2c-openbsd-2.95.3.tgz) = mcpzSOepDo3eFyTY5Shmhoszn7zkP21lEdDbX0T19p8=
|
|
||||||
SIZE (libf2c-openbsd-2.95.3.tgz) = 242588
|
|
@ -1,12 +0,0 @@
|
|||||||
$OpenBSD: patch-Makefile_bsd-wrapper,v 1.1.1.1 2010/05/27 08:36:54 espie Exp $
|
|
||||||
--- Makefile.bsd-wrapper.orig Tue May 25 11:38:21 2010
|
|
||||||
+++ Makefile.bsd-wrapper Tue May 25 11:38:43 2010
|
|
||||||
@@ -139,7 +139,7 @@ all: config.status
|
|
||||||
|
|
||||||
config.status: Makefile.in configure
|
|
||||||
mkdir -p libE77
|
|
||||||
- cd ${.CURDIR}/../gcc && \
|
|
||||||
+ cd ${EGCS_DIR}/gcc && \
|
|
||||||
make -f Makefile.bsd-wrapper config.status tree-check.h
|
|
||||||
# fake g771 existence
|
|
||||||
cd $(EGCS_OBJDIR)/gcc && touch f771
|
|
@ -1 +0,0 @@
|
|||||||
fortran 77 libraries for gcc 2.95.3.
|
|
@ -1,3 +0,0 @@
|
|||||||
@comment $OpenBSD: PFRAG.shared,v 1.2 2013/07/02 08:21:43 espie Exp $
|
|
||||||
@lib lib/libg2c.so.${LIBg2c_VERSION}
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libg2c.${LIBg2c_VERSION}
|
|
@ -1,14 +0,0 @@
|
|||||||
@comment $OpenBSD: PLIST,v 1.3 2013/07/02 08:21:43 espie Exp $
|
|
||||||
include/g2c.h
|
|
||||||
lib/gcc-lib/
|
|
||||||
lib/gcc-lib/${CONFIG}/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libfrtbegin.a
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libfrtbegin_p.a
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libg2c.a
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libg2c_p.a
|
|
||||||
%%SHARED%%
|
|
||||||
lib/libfrtbegin.a
|
|
||||||
lib/libfrtbegin_p.a
|
|
||||||
lib/libg2c.a
|
|
||||||
lib/libg2c_p.a
|
|
@ -1,4 +1,4 @@
|
|||||||
# $OpenBSD: Makefile,v 1.153 2013/06/19 22:39:01 jturner Exp $
|
# $OpenBSD: Makefile,v 1.154 2013/08/09 10:59:31 naddy Exp $
|
||||||
|
|
||||||
SUBDIR =
|
SUBDIR =
|
||||||
SUBDIR += STk
|
SUBDIR += STk
|
||||||
@ -25,7 +25,6 @@
|
|||||||
SUBDIR += gambit
|
SUBDIR += gambit
|
||||||
SUBDIR += gawk
|
SUBDIR += gawk
|
||||||
SUBDIR += g77
|
SUBDIR += g77
|
||||||
SUBDIR += g77-old
|
|
||||||
SUBDIR += gcc
|
SUBDIR += gcc
|
||||||
SUBDIR += gforth
|
SUBDIR += gforth
|
||||||
SUBDIR += gfortran
|
SUBDIR += gfortran
|
||||||
|
@ -1,102 +0,0 @@
|
|||||||
# $OpenBSD: Makefile,v 1.15 2013/07/14 18:00:17 miod Exp $
|
|
||||||
|
|
||||||
ONLY_FOR_ARCHS = ${GCC2_ARCHS}
|
|
||||||
|
|
||||||
V = 2.95.3
|
|
||||||
PKGNAME = g77-$V
|
|
||||||
REVISION = 8
|
|
||||||
DISTFILES = g77-openbsd-2.95.3.tgz \
|
|
||||||
libiberty-includes-openbsd.tgz
|
|
||||||
|
|
||||||
CONFIG = ${MACHINE_ARCH}-unknown-openbsd${OSREV}
|
|
||||||
SUBST_VARS += CONFIG V
|
|
||||||
SYSV = 2.95.3
|
|
||||||
|
|
||||||
COMMENT = GNU fortran 77 compiler
|
|
||||||
CATEGORIES = lang math
|
|
||||||
MASTER_SITES = http://spacehopper.org/mirrors/
|
|
||||||
|
|
||||||
PERMIT_PACKAGE_CDROM = Yes
|
|
||||||
|
|
||||||
WRKDIST = ${WRKDIR}/g77
|
|
||||||
CONFIGURE_SCRIPT = ${WRKDIST}/gcc/configure
|
|
||||||
|
|
||||||
SEPARATE_BUILD = Yes
|
|
||||||
LIBIBERTY_INCLUDES = ${WRKDIR}/libiberty/include
|
|
||||||
|
|
||||||
GNUCFLAGS = ${CFLAGS} ${COPTS} -DOPENBSD_NATIVE \
|
|
||||||
-I${LIBIBERTY_INCLUDES}
|
|
||||||
|
|
||||||
VAXHOST_CFLAGS = -DIN_GCC -DOPENBSD_NATIVE -DHAVE_CONFIG_H -O0
|
|
||||||
CONFIGURE_STYLE = gnu
|
|
||||||
|
|
||||||
MAKE_FLAGS = CFLAGS="${GNUCFLAGS}" \
|
|
||||||
CC="${CC}" LDFLAGS="${LDSTATIC}" \
|
|
||||||
DEMANGLER_PROG= \
|
|
||||||
DEMANGLE_H= \
|
|
||||||
LIBIBERTY_INCLUDES=${LIBIBERTY_INCLUDES} \
|
|
||||||
LIBGCC2_INCLUDES=-I${LIBIBERTY_INCLUDES} \
|
|
||||||
BUILD_LIBIBERTY=-liberty \
|
|
||||||
LIBIBERTY=-liberty \
|
|
||||||
HOST_LIBDEPS= \
|
|
||||||
LIBDEPS= \
|
|
||||||
build_infodir=. \
|
|
||||||
INSTALL_LIBGCC= LIBGCC= \
|
|
||||||
COMPILERS=f771 \
|
|
||||||
USE_COLLECT2= \
|
|
||||||
LANGUAGES=f77 \
|
|
||||||
GCC_FOR_TARGET=gcc \
|
|
||||||
LIBGCC1=
|
|
||||||
|
|
||||||
FAKE_FLAGS= prefix=${WRKINST}${TRUEPREFIX} \
|
|
||||||
infodir=${WRKINST}${TRUEPREFIX}/info \
|
|
||||||
bindir=${WRKINST}${TRUEPREFIX}/bin \
|
|
||||||
NO_TARGET_GCC=true
|
|
||||||
|
|
||||||
.if ${MACHINE_ARCH} == "vax"
|
|
||||||
MAKE_FLAGS += HOST_CFLAGS="${VAXHOST_CFLAGS} -I${LIBIBERTY_INCLUDES}"
|
|
||||||
.endif
|
|
||||||
|
|
||||||
CONFIGURE_ENV = INSTALL_PROGRAM="${INSTALL} ${INSTALL_COPY} ${INSTALL_STRIP}" \
|
|
||||||
CPPFLAGS=-I${LIBIBERTY_INCLUDES}
|
|
||||||
|
|
||||||
CONFIGURE_ARGS = --with-gnu-as --with-gnu-ld \
|
|
||||||
--with-local-prefix=${PREFIX} ${CF} \
|
|
||||||
--with-gxx-include-dir=dummy \
|
|
||||||
-enable-languages='f77' \
|
|
||||||
--disable-cpp --disable-nls \
|
|
||||||
--enable-__cxa_atexit
|
|
||||||
|
|
||||||
ALL_TARGET = all doc
|
|
||||||
INSTALL_TARGET = install-common f77.install-info f77.install-normal
|
|
||||||
|
|
||||||
LIBDIR = ${PREFIX}/lib/gcc-lib/${CONFIG}/$V
|
|
||||||
SYSDIR = /usr/lib/gcc-lib/${CONFIG}/${SYSV}
|
|
||||||
|
|
||||||
.if ${MACHINE_ARCH} == "m68k"
|
|
||||||
PKG_ARGS += -DPIC=1
|
|
||||||
.else
|
|
||||||
PKG_ARGS += -DPIC=0
|
|
||||||
.endif
|
|
||||||
|
|
||||||
post-extract:
|
|
||||||
cd ${WRKDIST}/gcc; rm assert.h; ln -sf /usr/include/assert.h
|
|
||||||
post-patch:
|
|
||||||
@cp ${FILESDIR}/gcc_config_vax_openbsdelf.h \
|
|
||||||
${WRKSRC}/gcc/config/vax/openbsdelf.h
|
|
||||||
post-install:
|
|
||||||
ln -sf ${SYSDIR}/libgcc.a ${LIBDIR}/libgcc.a
|
|
||||||
if [ -d ${LIBDIR}/fpic ]; then \
|
|
||||||
ln -sf ${SYSDIR}/fpic/libgcc.a ${LIBDIR}/fpic/libgcc.a; \
|
|
||||||
fi
|
|
||||||
if [ -d ${LIBDIR}/fPIC ]; then \
|
|
||||||
ln -sf ${SYSDIR}/fPIC/libgcc.a ${LIBDIR}/fPIC/libgcc.a; \
|
|
||||||
fi
|
|
||||||
ln -sf ${SYSDIR}/cpp0 ${LIBDIR}/cpp0
|
|
||||||
${INSTALL_MAN} ${WRKDIST}/gcc/f/g77.1 ${PREFIX}/man/man1/g77.1
|
|
||||||
cd ${PREFIX}/man/man1 && ln -f g77.1 f77.1
|
|
||||||
cd ${PREFIX}/bin && ln -f g77 f77
|
|
||||||
|
|
||||||
WANTLIB = c iberty
|
|
||||||
|
|
||||||
.include <bsd.port.mk>
|
|
@ -1,10 +0,0 @@
|
|||||||
MD5 (g77-openbsd-2.95.3.tgz) = ujAYhdBRbvzN/hahA6SnuQ==
|
|
||||||
MD5 (libiberty-includes-openbsd.tgz) = WHqNyoI2toJt4z5iHIc23Q==
|
|
||||||
RMD160 (g77-openbsd-2.95.3.tgz) = Mhq5B3sV98S4lNvrS7vUiNa6/QE=
|
|
||||||
RMD160 (libiberty-includes-openbsd.tgz) = YSPA4sN5Dd8DZ9g3feIg5qum63s=
|
|
||||||
SHA1 (g77-openbsd-2.95.3.tgz) = xPAOIfbIjkS8L74+oKH0BOvOb7w=
|
|
||||||
SHA1 (libiberty-includes-openbsd.tgz) = /JjLnsZV7TTmMI0Nk9rTYrBxjAk=
|
|
||||||
SHA256 (g77-openbsd-2.95.3.tgz) = Z920jDWAgGbTjsEO7FmOCM0WmFiGxm1cwxNfeAD8mwc=
|
|
||||||
SHA256 (libiberty-includes-openbsd.tgz) = 0LLdT251NyRZWLGF1G99GU+8XFgDXGQo8KXHWkzbIVQ=
|
|
||||||
SIZE (g77-openbsd-2.95.3.tgz) = 8210338
|
|
||||||
SIZE (libiberty-includes-openbsd.tgz) = 69547
|
|
@ -1,92 +0,0 @@
|
|||||||
/* Configuration file for a vax OpenBSD target.
|
|
||||||
Copyright (C) 1999 Free Software Foundation, Inc.
|
|
||||||
|
|
||||||
This file is part of GNU CC.
|
|
||||||
|
|
||||||
GNU CC is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2, or (at your option)
|
|
||||||
any later version.
|
|
||||||
|
|
||||||
GNU CC is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with GNU CC; see the file COPYING. If not, write to
|
|
||||||
the Free Software Foundation, 59 Temple Place - Suite 330,
|
|
||||||
Boston, MA 02111-1307, USA. */
|
|
||||||
|
|
||||||
#undef TARGET_DEFAULT
|
|
||||||
#define TARGET_DEFAULT 0
|
|
||||||
#include <vax/vax.h>
|
|
||||||
|
|
||||||
#undef PCC_BITFIELD_TYPE_MATTERS
|
|
||||||
#include <elfos.h>
|
|
||||||
|
|
||||||
#define OBSD_NO_DYNAMIC_LIBRARIES
|
|
||||||
#include <openbsd.h>
|
|
||||||
|
|
||||||
#undef CPP_PREDEFINES
|
|
||||||
#define CPP_PREDEFINES "-D__unix__ -D__vax__ -D__OpenBSD__ -D__ELF__ -Asystem(unix) -Asystem(OpenBSD) -Acpu(vax) -Amachine(vax)"
|
|
||||||
|
|
||||||
#undef LINK_SPEC
|
|
||||||
#define LINK_SPEC \
|
|
||||||
"%{!nostdlib:%{!r*:%{!e*:-e _start}}} %{R*} %{assert*}"
|
|
||||||
|
|
||||||
/* As an elf system, we need crtbegin/crtend stuff. */
|
|
||||||
#undef STARTFILE_SPEC
|
|
||||||
#define STARTFILE_SPEC \
|
|
||||||
"%{pg:gcrt0%O%s} %{!pg:%{p:gcrt0%O%s} %{!p:crt0%O%s}} crtbegin%O%s"
|
|
||||||
#undef ENDFILE_SPEC
|
|
||||||
#define ENDFILE_SPEC "crtend%O%s"
|
|
||||||
|
|
||||||
/* Layout of source language data types. */
|
|
||||||
|
|
||||||
/* This must agree with <machine/_types.h> */
|
|
||||||
#undef SIZE_TYPE
|
|
||||||
#define SIZE_TYPE "long unsigned int"
|
|
||||||
|
|
||||||
#undef PTRDIFF_TYPE
|
|
||||||
#define PTRDIFF_TYPE "long int"
|
|
||||||
|
|
||||||
#undef WCHAR_TYPE
|
|
||||||
#define WCHAR_TYPE "int"
|
|
||||||
|
|
||||||
#undef WCHAR_TYPE_SIZE
|
|
||||||
#define WCHAR_TYPE_SIZE 32
|
|
||||||
|
|
||||||
#undef DEFAULT_PCC_STRUCT_RETURN
|
|
||||||
#define DEFAULT_PCC_STRUCT_RETURN 0
|
|
||||||
#undef PCC_STATIC_STRUCT_RETURN
|
|
||||||
|
|
||||||
#undef REGISTER_PREFIX
|
|
||||||
#define REGISTER_PREFIX "%"
|
|
||||||
|
|
||||||
#undef USER_LABEL_PREFIX
|
|
||||||
#define USER_LABEL_PREFIX ""
|
|
||||||
|
|
||||||
/* Redefine this with register prefixes. */
|
|
||||||
#undef VAX_ISTREAM_SYNC
|
|
||||||
#define VAX_ISTREAM_SYNC "movpsl -(%sp)\n\tpushal 1(%pc)\n\trei"
|
|
||||||
|
|
||||||
#undef FUNCTION_PROFILER
|
|
||||||
#define FUNCTION_PROFILER(FILE, LABELNO) \
|
|
||||||
asm_fprintf (FILE, "\tmovab .LP%d,%Rr0\n\tjsb __mcount\n", (LABELNO))
|
|
||||||
|
|
||||||
/* Use sjlj exceptions. */
|
|
||||||
#undef DWARF2_UNWIND_INFO
|
|
||||||
|
|
||||||
/* Make sure .stabs for a function are always the same section. */
|
|
||||||
#define DBX_OUTPUT_FUNCTION_END(file,decl) function_section(decl)
|
|
||||||
|
|
||||||
/* The VAX wants no space between the case instruction and the jump table. */
|
|
||||||
#undef ASM_OUTPUT_BEFORE_CASE_LABEL
|
|
||||||
#define ASM_OUTPUT_BEFORE_CASE_LABEL(FILE, PREFIX, NUM, TABLE)
|
|
||||||
|
|
||||||
/* Get the udiv/urem calls out of the user's namespace */
|
|
||||||
#undef UDIVSI3_LIBCALL
|
|
||||||
#define UDIVSI3_LIBCALL "*__udiv"
|
|
||||||
#undef UMODSI3_LIBCALL
|
|
||||||
#define UMODSI3_LIBCALL "*__urem"
|
|
@ -1,13 +0,0 @@
|
|||||||
$OpenBSD: patch-gcc_Makefile_in,v 1.1.1.1 2010/05/27 08:36:21 espie Exp $
|
|
||||||
--- gcc/Makefile.in.orig Tue May 25 11:08:35 2010
|
|
||||||
+++ gcc/Makefile.in Tue May 25 11:08:42 2010
|
|
||||||
@@ -2552,9 +2552,6 @@ install-common: native installdirs $(EXTRA_PARTS) lang
|
|
||||||
$(INSTALL_DATA) SYSCALLS.c.X $(libsubdir)/SYSCALLS.c.X; \
|
|
||||||
chmod a-x $(libsubdir)/SYSCALLS.c.X; \
|
|
||||||
fi
|
|
||||||
- -rm -f $(libsubdir)/cpp0$(exeext)
|
|
||||||
- $(INSTALL_PROGRAM) cpp0$(exeext) $(libsubdir)/cpp0$(exeext)
|
|
||||||
-# Install gcov if it was compiled.
|
|
||||||
-if [ -f gcov$(exeext) ]; \
|
|
||||||
then \
|
|
||||||
rm -f $(bindir)/gcov$(exeext); \
|
|
@ -1,15 +0,0 @@
|
|||||||
$OpenBSD: patch-gcc_config_gcc,v 1.1 2013/07/14 18:00:19 miod Exp $
|
|
||||||
--- gcc/config.gcc.orig Tue Nov 16 11:23:43 2004
|
|
||||||
+++ gcc/config.gcc Sun Jul 14 12:04:19 2013
|
|
||||||
@@ -2762,10 +2762,10 @@ vax-*-netbsd*)
|
|
||||||
use_collect2=yes
|
|
||||||
;;
|
|
||||||
vax-*-openbsd*)
|
|
||||||
+ tm_file="vax/openbsdelf.h"
|
|
||||||
tm_file="${tm_file} exec-stack.h"
|
|
||||||
tmake_file="${tmake_file} vax/t-openbsd"
|
|
||||||
float_format=vax
|
|
||||||
- use_collect2=yes
|
|
||||||
;;
|
|
||||||
vax-*-ultrix*) # vaxen running ultrix
|
|
||||||
tm_file="${tm_file} vax/ultrix.h"
|
|
@ -1,163 +0,0 @@
|
|||||||
$OpenBSD: patch-gcc_config_vax_vax_c,v 1.1 2013/07/14 18:00:19 miod Exp $
|
|
||||||
--- gcc/config/vax/vax.c.orig Wed May 26 13:36:09 1999
|
|
||||||
+++ gcc/config/vax/vax.c Sun Jul 14 12:08:27 2013
|
|
||||||
@@ -19,7 +19,7 @@ the Free Software Foundation, 59 Temple Place - Suite
|
|
||||||
Boston, MA 02111-1307, USA. */
|
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
-#include <stdio.h>
|
|
||||||
+#include "system.h"
|
|
||||||
#include "rtl.h"
|
|
||||||
#include "regs.h"
|
|
||||||
#include "hard-reg-set.h"
|
|
||||||
@@ -32,6 +32,8 @@ Boston, MA 02111-1307, USA. */
|
|
||||||
#ifdef VMS_TARGET
|
|
||||||
#include "tree.h"
|
|
||||||
#endif
|
|
||||||
+#include "reload.h"
|
|
||||||
+#include "recog.h"
|
|
||||||
|
|
||||||
/* This is like nonimmediate_operand with a restriction on the type of MEM. */
|
|
||||||
|
|
||||||
@@ -43,8 +45,9 @@ split_quadword_operands (operands, low, n)
|
|
||||||
int i;
|
|
||||||
/* Split operands. */
|
|
||||||
|
|
||||||
- low[0] = low[1] = low[2] = 0;
|
|
||||||
- for (i = 0; i < 3; i++)
|
|
||||||
+ for (i = 0; i < n; i++)
|
|
||||||
+ low[i] = 0;
|
|
||||||
+ for (i = 0; i < n; i++)
|
|
||||||
{
|
|
||||||
if (low[i])
|
|
||||||
/* it's already been figured out */;
|
|
||||||
@@ -56,7 +59,7 @@ split_quadword_operands (operands, low, n)
|
|
||||||
if (which_alternative == 0 && i == 0)
|
|
||||||
{
|
|
||||||
addr = XEXP (operands[i], 0);
|
|
||||||
- operands[i+1] = low[i+1] = gen_rtx (MEM, SImode, addr);
|
|
||||||
+ operands[i+1] = low[i+1] = gen_rtx_MEM (SImode, addr);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
@@ -83,15 +86,15 @@ print_operand_address (file, addr)
|
|
||||||
goto retry;
|
|
||||||
|
|
||||||
case REG:
|
|
||||||
- fprintf (file, "(%s)", reg_names[REGNO (addr)]);
|
|
||||||
+ fprintf (file, "(%s%s)", REGISTER_PREFIX, reg_names[REGNO (addr)]);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case PRE_DEC:
|
|
||||||
- fprintf (file, "-(%s)", reg_names[REGNO (XEXP (addr, 0))]);
|
|
||||||
+ fprintf (file, "-(%s%s)", REGISTER_PREFIX, reg_names[REGNO (XEXP (addr, 0))]);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case POST_INC:
|
|
||||||
- fprintf (file, "(%s)+", reg_names[REGNO (XEXP (addr, 0))]);
|
|
||||||
+ fprintf (file, "(%s%s)+", REGISTER_PREFIX, reg_names[REGNO (XEXP (addr, 0))]);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case PLUS:
|
|
||||||
@@ -232,7 +235,7 @@ print_operand_address (file, addr)
|
|
||||||
output_address (offset);
|
|
||||||
|
|
||||||
if (breg != 0)
|
|
||||||
- fprintf (file, "(%s)", reg_names[REGNO (breg)]);
|
|
||||||
+ fprintf (file, "(%s%s)", REGISTER_PREFIX, reg_names[REGNO (breg)]);
|
|
||||||
|
|
||||||
if (ireg != 0)
|
|
||||||
{
|
|
||||||
@@ -240,7 +243,7 @@ print_operand_address (file, addr)
|
|
||||||
ireg = XEXP (ireg, 0);
|
|
||||||
if (GET_CODE (ireg) != REG)
|
|
||||||
abort ();
|
|
||||||
- fprintf (file, "[%s]", reg_names[REGNO (ireg)]);
|
|
||||||
+ fprintf (file, "[%s%s]", REGISTER_PREFIX, reg_names[REGNO (ireg)]);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
@@ -249,7 +252,7 @@ print_operand_address (file, addr)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
-char *
|
|
||||||
+const char *
|
|
||||||
rev_cond_name (op)
|
|
||||||
rtx op;
|
|
||||||
{
|
|
||||||
@@ -286,8 +289,10 @@ vax_float_literal(c)
|
|
||||||
register rtx c;
|
|
||||||
{
|
|
||||||
register enum machine_mode mode;
|
|
||||||
+#if HOST_FLOAT_FORMAT == VAX_FLOAT_FORMAT
|
|
||||||
int i;
|
|
||||||
union {double d; int i[2];} val;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (GET_CODE (c) != CONST_DOUBLE)
|
|
||||||
return 0;
|
|
||||||
@@ -323,7 +328,8 @@ vax_float_literal(c)
|
|
||||||
2 - indirect */
|
|
||||||
|
|
||||||
|
|
||||||
-int vax_address_cost(addr)
|
|
||||||
+int
|
|
||||||
+vax_address_cost (addr)
|
|
||||||
register rtx addr;
|
|
||||||
{
|
|
||||||
int reg = 0, indexed = 0, indir = 0, offset = 0, predec = 0;
|
|
||||||
@@ -365,6 +371,8 @@ int vax_address_cost(addr)
|
|
||||||
indir = 2; /* 3 on VAX 2 */
|
|
||||||
addr = XEXP (addr, 0);
|
|
||||||
goto restart;
|
|
||||||
+ default:
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Up to 3 things can be added in an address. They are stored in
|
|
||||||
@@ -402,7 +410,7 @@ vax_rtx_cost (x)
|
|
||||||
enum machine_mode mode = GET_MODE (x);
|
|
||||||
register int c;
|
|
||||||
int i = 0; /* may be modified in switch */
|
|
||||||
- char *fmt = GET_RTX_FORMAT (code); /* may be modified in switch */
|
|
||||||
+ const char *fmt = GET_RTX_FORMAT (code); /* may be modified in switch */
|
|
||||||
|
|
||||||
switch (code)
|
|
||||||
{
|
|
||||||
@@ -427,6 +435,8 @@ vax_rtx_cost (x)
|
|
||||||
case QImode:
|
|
||||||
c = 10; /* 3-4 on VAX 9000, 20-28 on VAX 2 */
|
|
||||||
break;
|
|
||||||
+ default:
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case UDIV:
|
|
||||||
@@ -582,7 +592,7 @@ vax_rtx_cost (x)
|
|
||||||
|
|
||||||
/* Check a `double' value for validity for a particular machine mode. */
|
|
||||||
|
|
||||||
-static char *float_strings[] =
|
|
||||||
+static const char *const float_strings[] =
|
|
||||||
{
|
|
||||||
"1.70141173319264430e+38", /* 2^127 (2^24 - 1) / 2^24 */
|
|
||||||
"-1.70141173319264430e+38",
|
|
||||||
@@ -661,7 +671,7 @@ check_float_value (mode, d, overflow)
|
|
||||||
static
|
|
||||||
struct extern_list {
|
|
||||||
struct extern_list *next; /* next external */
|
|
||||||
- char *name; /* name of the external */
|
|
||||||
+ const char *name; /* name of the external */
|
|
||||||
int size; /* external's actual size */
|
|
||||||
int in_const; /* section type flag */
|
|
||||||
} *extern_head = 0, *pending_head = 0;
|
|
||||||
@@ -672,7 +682,7 @@ struct extern_list {
|
|
||||||
void
|
|
||||||
vms_check_external (decl, name, pending)
|
|
||||||
tree decl;
|
|
||||||
- char *name;
|
|
||||||
+ const char *name;
|
|
||||||
int pending;
|
|
||||||
{
|
|
||||||
register struct extern_list *p, *p0;
|
|
@ -1,303 +0,0 @@
|
|||||||
$OpenBSD: patch-gcc_config_vax_vax_h,v 1.1 2013/07/14 18:00:19 miod Exp $
|
|
||||||
--- gcc/config/vax/vax.h.orig Thu Jul 20 21:05:21 2006
|
|
||||||
+++ gcc/config/vax/vax.h Sun Jul 14 12:08:29 2013
|
|
||||||
@@ -25,7 +25,7 @@ Boston, MA 02111-1307, USA. */
|
|
||||||
|
|
||||||
/* If using g-format floating point, alter math.h. */
|
|
||||||
|
|
||||||
-#define CPP_SPEC "%{mg:-DGFLOAT}"
|
|
||||||
+#define CPP_SPEC "%{mg:%{!ansi:-DGFLOAT} -D__GFLOAT}"
|
|
||||||
|
|
||||||
/* Choose proper libraries depending on float format.
|
|
||||||
Note that there are no profiling libraries for g-format.
|
|
||||||
@@ -51,13 +51,16 @@ extern int target_flags;
|
|
||||||
/* Macros used in the machine description to test the flags. */
|
|
||||||
|
|
||||||
/* Nonzero if compiling code that Unix assembler can assemble. */
|
|
||||||
-#define TARGET_UNIX_ASM (target_flags & 1)
|
|
||||||
+#define MASK_UNIX_ASM 1
|
|
||||||
+#define TARGET_UNIX_ASM (target_flags & MASK_UNIX_ASM)
|
|
||||||
|
|
||||||
/* Nonzero if compiling with VAX-11 "C" style structure alignment */
|
|
||||||
-#define TARGET_VAXC_ALIGNMENT (target_flags & 2)
|
|
||||||
+#define MASK_VAXC_ALIGNMENT 2
|
|
||||||
+#define TARGET_VAXC_ALIGNMENT (target_flags & MASK_VAXC_ALIGNMENT)
|
|
||||||
|
|
||||||
/* Nonzero if compiling with `G'-format floating point */
|
|
||||||
-#define TARGET_G_FLOAT (target_flags & 4)
|
|
||||||
+#define MASK_G_FLOAT 4
|
|
||||||
+#define TARGET_G_FLOAT (target_flags & MASK_G_FLOAT)
|
|
||||||
|
|
||||||
/* Macro to define tables used to set the flags.
|
|
||||||
This is a list in braces of pairs in braces,
|
|
||||||
@@ -66,26 +69,26 @@ extern int target_flags;
|
|
||||||
An empty string NAME is used to identify the default VALUE. */
|
|
||||||
|
|
||||||
#define TARGET_SWITCHES \
|
|
||||||
- { {"unix", 1}, \
|
|
||||||
- {"gnu", -1}, \
|
|
||||||
- {"vaxc-alignment", 2}, \
|
|
||||||
- {"g", 4}, \
|
|
||||||
- {"g-float", 4}, \
|
|
||||||
- {"d", -4}, \
|
|
||||||
- {"d-float", -4}, \
|
|
||||||
- { "", TARGET_DEFAULT}}
|
|
||||||
+ { {"unix", MASK_UNIX_ASM, "Generate code for UNIX assembler"}, \
|
|
||||||
+ {"gnu", -MASK_UNIX_ASM, "Generate code for GNU assembler (gas)"}, \
|
|
||||||
+ {"vaxc-alignment", MASK_VAXC_ALIGNMENT, "Use VAXC structure conventions"}, \
|
|
||||||
+ {"g", MASK_G_FLOAT, "Generate GFLOAT double precision code"}, \
|
|
||||||
+ {"g-float", MASK_G_FLOAT, "Generate GFLOAT double precision code"}, \
|
|
||||||
+ {"d", -MASK_G_FLOAT, "Generate DFLOAT double precision code"}, \
|
|
||||||
+ {"d-float", -MASK_G_FLOAT, "Generate DFLOAT double precision code"}, \
|
|
||||||
+ { "", TARGET_DEFAULT, 0}}
|
|
||||||
|
|
||||||
/* Default target_flags if no switches specified. */
|
|
||||||
|
|
||||||
#ifndef TARGET_DEFAULT
|
|
||||||
-#define TARGET_DEFAULT 1
|
|
||||||
+#define TARGET_DEFAULT MASK_UNIX_ASM
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Target machine storage layout */
|
|
||||||
|
|
||||||
/* Define for software floating point emulation of VAX format
|
|
||||||
when cross compiling from a non-VAX host. */
|
|
||||||
-/* #define REAL_ARITHMETIC */
|
|
||||||
+#define REAL_ARITHMETIC
|
|
||||||
|
|
||||||
/* Define this if most significant bit is lowest numbered
|
|
||||||
in instructions that operate on numbered bit-fields.
|
|
||||||
@@ -258,7 +261,7 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
|
|
||||||
This is an initializer for a vector of HARD_REG_SET
|
|
||||||
of length N_REG_CLASSES. */
|
|
||||||
|
|
||||||
-#define REG_CLASS_CONTENTS {0, 0xffff}
|
|
||||||
+#define REG_CLASS_CONTENTS {{0}, {0xffff}}
|
|
||||||
|
|
||||||
/* The same information, inverted:
|
|
||||||
Return the class number of the smallest class containing
|
|
||||||
@@ -347,8 +350,7 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
|
|
||||||
/* Given an rtx for the address of a frame,
|
|
||||||
return an rtx for the address of the word in the frame
|
|
||||||
that holds the dynamic chain--the previous frame's address. */
|
|
||||||
-#define DYNAMIC_CHAIN_ADDRESS(frame) \
|
|
||||||
-gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
+#define DYNAMIC_CHAIN_ADDRESS(FRAME) plus_constant ((FRAME), 12)
|
|
||||||
|
|
||||||
/* If we generate an insn to push BYTES bytes,
|
|
||||||
this says how many the stack pointer really advances by.
|
|
||||||
@@ -377,14 +379,14 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
/* On the Vax the return value is in R0 regardless. */
|
|
||||||
|
|
||||||
#define FUNCTION_VALUE(VALTYPE, FUNC) \
|
|
||||||
- gen_rtx (REG, TYPE_MODE (VALTYPE), 0)
|
|
||||||
+ gen_rtx_REG (TYPE_MODE (VALTYPE), 0)
|
|
||||||
|
|
||||||
/* Define how to find the value returned by a library function
|
|
||||||
assuming the value has mode MODE. */
|
|
||||||
|
|
||||||
/* On the Vax the return value is in R0 regardless. */
|
|
||||||
|
|
||||||
-#define LIBCALL_VALUE(MODE) gen_rtx (REG, MODE, 0)
|
|
||||||
+#define LIBCALL_VALUE(MODE) gen_rtx_REG (MODE, 0)
|
|
||||||
|
|
||||||
/* Define this if PCC uses the nonreentrant convention for returning
|
|
||||||
structure and union values. */
|
|
||||||
@@ -469,10 +471,11 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
if (warn_stack_larger_than && size > stack_larger_than_size) \
|
|
||||||
warning ("stack usage is %d bytes", size); \
|
|
||||||
if ((size) >= 64) \
|
|
||||||
- fprintf (FILE, "\tmovab %d(sp),sp\n", -size); \
|
|
||||||
+ fprintf (FILE, "\tmovab %d(%ssp),%ssp\n", -size, \
|
|
||||||
+ REGISTER_PREFIX, REGISTER_PREFIX); \
|
|
||||||
else if (size) \
|
|
||||||
- fprintf (FILE, "\tsubl2 $%d,sp\n", (size)); \
|
|
||||||
-}
|
|
||||||
+ fprintf (FILE, "\tsubl2 $%d,%ssp\n", \
|
|
||||||
+ (size), REGISTER_PREFIX); }
|
|
||||||
|
|
||||||
/* vms.h redefines this. */
|
|
||||||
#define MAYBE_VMS_FUNCTION_PROLOGUE(FILE)
|
|
||||||
@@ -500,8 +503,9 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define BLOCK_PROFILER(FILE, BLOCKNO) \
|
|
||||||
- fprintf (FILE, "\tmovpsl -(sp)\n\tmovw (sp),2(sp)\n\taddl2 $2,sp\n\taddl2 $1,LPBX2+%d\n\tbicpsw $255\n\tbispsw (sp)+\n", \
|
|
||||||
- 4 * BLOCKNO)
|
|
||||||
+ fprintf (FILE, "\tmovpsl -(%ssp)\n\tmovw (%ssp),2(%ssp)\n\taddl2 $2,%ssp\n\taddl2 $1,LPBX2+%d\n\tbicpsw $255\n\tbispsw (%ssp)+\n", \
|
|
||||||
+ 4 * BLOCKNO, REGISTER_PREFIX, REGISTER_PREFIX, REGISTER_PREFIX, \
|
|
||||||
+ REGISTER_PREFIX, REGISTER_PREFIX)
|
|
||||||
|
|
||||||
/* EXIT_IGNORE_STACK should be nonzero if, when returning from a function,
|
|
||||||
the stack pointer does not matter. The value is tested only in
|
|
||||||
@@ -538,10 +542,10 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
#define TRAMPOLINE_TEMPLATE(FILE) \
|
|
||||||
{ \
|
|
||||||
ASM_OUTPUT_SHORT (FILE, const0_rtx); \
|
|
||||||
- ASM_OUTPUT_SHORT (FILE, GEN_INT (0x8fd0)); \
|
|
||||||
+ ASM_OUTPUT_SHORT (FILE, GEN_INT (0x8fd0)); \
|
|
||||||
ASM_OUTPUT_INT (FILE, const0_rtx); \
|
|
||||||
- ASM_OUTPUT_BYTE (FILE, 0x50+STATIC_CHAIN_REGNUM); \
|
|
||||||
- ASM_OUTPUT_SHORT (FILE, GEN_INT (0x9f17)); \
|
|
||||||
+ ASM_OUTPUT_BYTE (FILE, 0x50 + STATIC_CHAIN_REGNUM); \
|
|
||||||
+ ASM_OUTPUT_SHORT (FILE, GEN_INT (0x9f17)); \
|
|
||||||
ASM_OUTPUT_INT (FILE, const0_rtx); \
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -560,16 +564,20 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
FNADDR is an RTX for the address of the function's pure code.
|
|
||||||
CXT is an RTX for the static chain value for the function. */
|
|
||||||
|
|
||||||
+/* This is separated out so register prefixes can be added by a target
|
|
||||||
+ if it requires them */
|
|
||||||
+#define VAX_ISTREAM_SYNC "movpsl -(sp)\n\tpushal 1(pc)\n\trei"
|
|
||||||
+
|
|
||||||
/* We copy the register-mask from the function's pure code
|
|
||||||
to the start of the trampoline. */
|
|
||||||
+
|
|
||||||
#define INITIALIZE_TRAMPOLINE(TRAMP, FNADDR, CXT) \
|
|
||||||
{ \
|
|
||||||
- emit_insn (gen_rtx (ASM_INPUT, VOIDmode, \
|
|
||||||
- "movpsl -(sp)\n\tpushal 1(pc)\n\trei")); \
|
|
||||||
- emit_move_insn (gen_rtx (MEM, HImode, TRAMP), \
|
|
||||||
- gen_rtx (MEM, HImode, FNADDR)); \
|
|
||||||
- emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 4)), CXT);\
|
|
||||||
- emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 11)), \
|
|
||||||
+ emit_insn (gen_rtx_ASM_INPUT (VOIDmode, VAX_ISTREAM_SYNC)); \
|
|
||||||
+ emit_move_insn (gen_rtx_MEM (HImode, TRAMP), \
|
|
||||||
+ gen_rtx_MEM (HImode, FNADDR)); \
|
|
||||||
+ emit_move_insn (gen_rtx_MEM (SImode, plus_constant (TRAMP, 4)), CXT);\
|
|
||||||
+ emit_move_insn (gen_rtx_MEM (SImode, plus_constant (TRAMP, 11)), \
|
|
||||||
plus_constant (FNADDR, 2)); \
|
|
||||||
FINALIZE_TRAMPOLINE(TRAMP); \
|
|
||||||
}
|
|
||||||
@@ -586,7 +594,7 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
|
|
||||||
#define RETURN_ADDR_RTX(COUNT, FRAME) \
|
|
||||||
((COUNT == 0) \
|
|
||||||
- ? gen_rtx (MEM, Pmode, plus_constant (FRAME, RETURN_ADDRESS_OFFSET)) \
|
|
||||||
+ ? gen_rtx_MEM (Pmode, plus_constant (FRAME, RETURN_ADDRESS_OFFSET)) \
|
|
||||||
: (rtx) 0)
|
|
||||||
|
|
||||||
|
|
||||||
@@ -841,6 +849,10 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
jumps to the default label instead. */
|
|
||||||
#define CASE_DROPS_THROUGH
|
|
||||||
|
|
||||||
+/* Indicate that jump tables go in the text section. This is
|
|
||||||
+ necessary when compiling PIC code. */
|
|
||||||
+#define JUMP_TABLES_IN_TEXT_SECTION 1
|
|
||||||
+
|
|
||||||
/* Specify the tree operation to be used to convert reals to integers. */
|
|
||||||
#define IMPLICIT_FIX_EXPR FIX_ROUND_EXPR
|
|
||||||
|
|
||||||
@@ -1041,15 +1053,18 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
|
|
||||||
/* Output before read-only data. */
|
|
||||||
|
|
||||||
-#define TEXT_SECTION_ASM_OP ".text"
|
|
||||||
+#define TEXT_SECTION_ASM_OP "\t.text"
|
|
||||||
|
|
||||||
/* Output before writable data. */
|
|
||||||
|
|
||||||
-#define DATA_SECTION_ASM_OP ".data"
|
|
||||||
+#define DATA_SECTION_ASM_OP "\t.data"
|
|
||||||
|
|
||||||
/* How to refer to registers in assembler output.
|
|
||||||
- This sequence is indexed by compiler's hard-register-number (see above). */
|
|
||||||
+ This sequence is indexed by compiler's hard-register-number (see above).
|
|
||||||
+ The register names will be prefixed by REGISTER_PREFIX, if any. */
|
|
||||||
|
|
||||||
+#define REGISTER_PREFIX ""
|
|
||||||
+
|
|
||||||
#define REGISTER_NAMES \
|
|
||||||
{"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", \
|
|
||||||
"r9", "r10", "r11", "ap", "fp", "sp", "pc"}
|
|
||||||
@@ -1098,7 +1113,7 @@ gen_rtx (PLUS, Pmode, frame, GEN_INT (12))
|
|
||||||
|
|
||||||
/* The prefix to add to user-visible assembler symbols. */
|
|
||||||
|
|
||||||
-#define USER_LABEL_PREFIX "_"
|
|
||||||
+#define USER_LABEL_PREFIX ""
|
|
||||||
|
|
||||||
/* This is how to output an internal numbered label where
|
|
||||||
PREFIX is the class of label and NUM is the number within the class. */
|
|
||||||
@@ -1159,25 +1174,45 @@ do { char dstr[30]; \
|
|
||||||
It need not be very fast code. */
|
|
||||||
|
|
||||||
#define ASM_OUTPUT_REG_PUSH(FILE,REGNO) \
|
|
||||||
- fprintf (FILE, "\tpushl %s\n", reg_names[REGNO])
|
|
||||||
+ fprintf (FILE, "\tpushl %s%s\n", REGISTER_PREFIX, reg_names[REGNO])
|
|
||||||
|
|
||||||
/* This is how to output an insn to pop a register from the stack.
|
|
||||||
It need not be very fast code. */
|
|
||||||
|
|
||||||
#define ASM_OUTPUT_REG_POP(FILE,REGNO) \
|
|
||||||
- fprintf (FILE, "\tmovl (sp)+,%s\n", reg_names[REGNO])
|
|
||||||
+ fprintf (FILE, "\tmovl (%ssp)+,%s%s\n", REGISTER_PREFIX, REGISTER_PREFIX, \
|
|
||||||
+ reg_names[REGNO])
|
|
||||||
|
|
||||||
/* This is how to output an element of a case-vector that is absolute.
|
|
||||||
(The Vax does not use such vectors,
|
|
||||||
but we must define this macro anyway.) */
|
|
||||||
|
|
||||||
-#define ASM_OUTPUT_ADDR_VEC_ELT(FILE, VALUE) \
|
|
||||||
- fprintf (FILE, "\t.long L%d\n", VALUE)
|
|
||||||
+#define ASM_OUTPUT_ADDR_VEC_ELT(FILE, VALUE) \
|
|
||||||
+ do \
|
|
||||||
+ { \
|
|
||||||
+ char label[256]; \
|
|
||||||
+ ASM_GENERATE_INTERNAL_LABEL (label, "L", (VALUE)); \
|
|
||||||
+ fprintf (FILE, "\t.long "); \
|
|
||||||
+ assemble_name (FILE, label); \
|
|
||||||
+ fprintf (FILE, "\n"); \
|
|
||||||
+ } \
|
|
||||||
+ while (0)
|
|
||||||
|
|
||||||
/* This is how to output an element of a case-vector that is relative. */
|
|
||||||
|
|
||||||
-#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \
|
|
||||||
- fprintf (FILE, "\t.word L%d-L%d\n", VALUE, REL)
|
|
||||||
+#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \
|
|
||||||
+ do \
|
|
||||||
+ { \
|
|
||||||
+ char label[256]; \
|
|
||||||
+ ASM_GENERATE_INTERNAL_LABEL (label, "L", (VALUE)); \
|
|
||||||
+ fprintf (FILE, "\t.word "); \
|
|
||||||
+ assemble_name (FILE, label); \
|
|
||||||
+ ASM_GENERATE_INTERNAL_LABEL (label, "L", (REL)); \
|
|
||||||
+ fprintf (FILE, "-"); \
|
|
||||||
+ assemble_name (FILE, label); \
|
|
||||||
+ fprintf (FILE, "\n"); \
|
|
||||||
+ } \
|
|
||||||
+ while (0)
|
|
||||||
|
|
||||||
/* This is how to output an assembler line
|
|
||||||
that says to advance the location counter
|
|
||||||
@@ -1236,7 +1271,7 @@ do { char dstr[30]; \
|
|
||||||
#define ASM_OUTPUT_MI_THUNK(FILE, THUNK_FNDECL, DELTA, FUNCTION) \
|
|
||||||
do { \
|
|
||||||
fprintf (FILE, "\t.word 0x0ffc\n"); \
|
|
||||||
- fprintf (FILE, "\taddl2 $%d,4(ap)\n", DELTA); \
|
|
||||||
+ fprintf (FILE, "\taddl2 $%d,4(%sap)\n", DELTA, REGISTER_PREFIX); \
|
|
||||||
fprintf (FILE, "\tjmp "); \
|
|
||||||
assemble_name (FILE, XSTR (XEXP (DECL_RTL (FUNCTION), 0), 0)); \
|
|
||||||
fprintf (FILE, "+2\n"); \
|
|
||||||
@@ -1284,7 +1319,7 @@ VAX operand formatting codes:
|
|
||||||
((CODE) == '#')
|
|
||||||
|
|
||||||
#define PRINT_OPERAND(FILE, X, CODE) \
|
|
||||||
-{ extern char *rev_cond_name (); \
|
|
||||||
+{ extern const char *rev_cond_name (); \
|
|
||||||
if (CODE == '#') fputc (ASM_DOUBLE_CHAR, FILE); \
|
|
||||||
else if (CODE == 'C') \
|
|
||||||
fputs (rev_cond_name (X), FILE); \
|
|
||||||
@@ -1308,7 +1343,7 @@ VAX operand formatting codes:
|
|
||||||
else if (CODE == 'M' && GET_CODE (X) == CONST_INT) \
|
|
||||||
fprintf (FILE, "$%d", ~((1 << INTVAL (x)) - 1)); \
|
|
||||||
else if (GET_CODE (X) == REG) \
|
|
||||||
- fprintf (FILE, "%s", reg_names[REGNO (X)]); \
|
|
||||||
+ fprintf (FILE, "%s%s", REGISTER_PREFIX, reg_names[REGNO (X)]); \
|
|
||||||
else if (GET_CODE (X) == MEM) \
|
|
||||||
output_address (XEXP (X, 0)); \
|
|
||||||
else if (GET_CODE (X) == CONST_DOUBLE && GET_MODE (X) == SFmode) \
|
|
@ -1,21 +0,0 @@
|
|||||||
$OpenBSD: patch-gcc_f_lang-specs_h,v 1.1.1.1 2010/05/27 08:36:21 espie Exp $
|
|
||||||
--- gcc/f/lang-specs.h.orig Tue May 25 10:28:17 2010
|
|
||||||
+++ gcc/f/lang-specs.h Tue May 25 10:33:40 2010
|
|
||||||
@@ -35,7 +35,7 @@ the Free Software Foundation, 59 Temple Place - Suite
|
|
||||||
Sun f77, at least) so you test `__unix' rather than `unix'.
|
|
||||||
-D_LANGUAGE_FORTRAN is used by some compilers like SGI and
|
|
||||||
might as well be in there. */
|
|
||||||
- {"cpp0 -lang-c %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %{$} %I\
|
|
||||||
+ {"cc1 -E -traditional-cpp %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %{$} %I\
|
|
||||||
%{C:%{!E:%eGNU C does not support -C without using -E}}\
|
|
||||||
%{M} %{MM} %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\
|
|
||||||
%{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2}\
|
|
||||||
@@ -44,7 +44,7 @@ the Free Software Foundation, 59 Temple Place - Suite
|
|
||||||
%c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}} -traditional\
|
|
||||||
%{ffast-math:-D__FAST_MATH__}\
|
|
||||||
%{g*} %{W*} %{w} %{pedantic*} %{H} %{d*} %C %{D*} %{U*} %{i*} %Z\
|
|
||||||
- %i %{!M:%{!MM:%{!E:%{!pipe:%g.i}}}}%{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}} |\n",
|
|
||||||
+ %i %{!M:%{!MM:%{!E:%{!pipe:-o %g.i}}}}%{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}} |\n",
|
|
||||||
"%{!M:%{!MM:%{!E:f771 %{!pipe:%g.i} %(f771) \
|
|
||||||
%{!Q:-quiet} -dumpbase %b.F %{d*} %{m*} %{a*}\
|
|
||||||
%{g*} %{O*} %{W*} %{w} %{pedantic*} \
|
|
@ -1 +0,0 @@
|
|||||||
gnu fortran 77 for 2.95.3.
|
|
@ -1,5 +0,0 @@
|
|||||||
@comment $OpenBSD: PFRAG.PIC,v 1.2 2010/05/29 17:00:47 phessler Exp $
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/fpic/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/fpic/libgcc.a
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/fPIC/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/fPIC/libgcc.a
|
|
@ -1,14 +0,0 @@
|
|||||||
@comment $OpenBSD: PLIST,v 1.2 2011/06/21 20:17:53 naddy Exp $
|
|
||||||
@bin bin/f77
|
|
||||||
@bin bin/g77
|
|
||||||
@info info/g77.info
|
|
||||||
lib/gcc-lib/
|
|
||||||
lib/gcc-lib/${CONFIG}/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/cpp0
|
|
||||||
@bin lib/gcc-lib/${CONFIG}/${V}/f771
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/libgcc.a
|
|
||||||
%%PIC%%
|
|
||||||
lib/gcc-lib/${CONFIG}/${V}/specs
|
|
||||||
@man man/man1/f77.1
|
|
||||||
@man man/man1/g77.1
|
|
Loading…
x
Reference in New Issue
Block a user