mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-03-02 13:05:42 +08:00
This commit was manufactured by cvs2svn to create branch 'binutils-
2_13-branch'. Sprout from kseitz_interps-20020528-branch 2002-06-18 21:15:59 UTC cvs2svn 'This commit was manufactured by cvs2svn to create branch' Cherrypick from master 2002-07-11 20:14:41 UTC DJ Delorie <dj@redhat.com> '* configure.in: Remove two redundant tests.': COPYING.LIBGLOSS ChangeLog Makefile.in config-ml.in config.sub config/ChangeLog configure configure.in etc/ChangeLog etc/texi2pod.pl include/ChangeLog include/bfdlink.h include/demangle.h include/dis-asm.h include/elf/ChangeLog include/elf/alpha.h include/elf/common.h include/elf/dwarf2.h include/elf/sh.h include/elf/vax.h include/fibheap.h include/gdb/ChangeLog include/gdb/sim-d10v.h include/getopt.h include/hashtab.h include/libiberty.h include/opcode/ChangeLog include/opcode/a29k.h include/opcode/convex.h include/opcode/dlx.h include/opcode/i386.h include/opcode/mips.h include/opcode/or32.h include/partition.h include/sort.h include/splay-tree.h ltcf-cxx.sh Delete: include/callback.h include/remote-sim.h
This commit is contained in:
parent
357281c75d
commit
ce122f0260
186
COPYING.LIBGLOSS
Normal file
186
COPYING.LIBGLOSS
Normal file
@ -0,0 +1,186 @@
|
||||
The libgloss subdirectory is a collection of software from several sources.
|
||||
Each have their own copyrights embedded in each file that they concern.
|
||||
|
||||
(1) University of California, Berkeley
|
||||
|
||||
Copyright (c) 1990 The Regents of the University of California.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms are permitted
|
||||
provided that the above copyright notice and this paragraph are
|
||||
duplicated in all such forms and that any documentation,
|
||||
and other materials related to such distribution and use
|
||||
acknowledge that the software was developed
|
||||
by the University of California, Berkeley. The name of the
|
||||
University may not be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
(2) DJ Delorie
|
||||
|
||||
Copyright (C) 1993 DJ Delorie
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms is permitted
|
||||
provided that the above copyright notice and following paragraph are
|
||||
duplicated in all such forms.
|
||||
|
||||
This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
(3) GPL (fr30 directory only)
|
||||
|
||||
Copyright (C) 1998 Free Software Foundation, Inc.
|
||||
Contributed by Cygnus Solutions.
|
||||
|
||||
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.
|
||||
|
||||
(4) Advanced Micro Devices
|
||||
|
||||
Copyright 1989, 1990 Advanced Micro Devices, Inc.
|
||||
|
||||
This software is the property of Advanced Micro Devices, Inc (AMD) which
|
||||
specifically grants the user the right to modify, use and distribute this
|
||||
software provided this notice is not removed or altered. All other rights
|
||||
are reserved by AMD.
|
||||
|
||||
AMD MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS
|
||||
SOFTWARE. IN NO EVENT SHALL AMD BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL
|
||||
DAMAGES IN CONNECTION WITH OR ARISING FROM THE FURNISHING, PERFORMANCE, OR
|
||||
USE OF THIS SOFTWARE.
|
||||
|
||||
So that all may benefit from your experience, please report any problems
|
||||
or suggestions about this software to the 29K Technical Support Center at
|
||||
800-29-29-AMD (800-292-9263) in the USA, or 0800-89-1131 in the UK, or
|
||||
0031-11-1129 in Japan, toll free. The direct dial number is 512-462-4118.
|
||||
|
||||
Advanced Micro Devices, Inc.
|
||||
29K Support Products
|
||||
Mail Stop 573
|
||||
5900 E. Ben White Blvd.
|
||||
Austin, TX 78741
|
||||
800-292-9263
|
||||
|
||||
(5) Array Technology Corporation and MIPS (mips/lsi33k-stub.h)
|
||||
|
||||
COPYRIGHT (C) 1991, 1992 ARRAY TECHNOLOGY CORPORATION
|
||||
All Rights Reserved
|
||||
|
||||
This software is confidential information which is proprietary to and
|
||||
a trade secret of ARRAY Technology Corporation. Use, duplication, or
|
||||
disclosure is subject to the terms of a separate license agreement.
|
||||
|
||||
Copyright 1985 by MIPS Computer Systems, Inc.
|
||||
|
||||
(6) University of Utah and the Computer Systems Laboratory (CSL)
|
||||
|
||||
Copyright (c) 1990,1994 The University of Utah and
|
||||
the Computer Systems Laboratory (CSL). All rights reserved.
|
||||
|
||||
Permission to use, copy, modify and distribute this software is hereby
|
||||
granted provided that (1) source code retains these copyright, permission,
|
||||
and disclaimer notices, and (2) redistributions including binaries
|
||||
reproduce the notices in supporting documentation, and (3) all advertising
|
||||
materials mentioning features or use of this software display the following
|
||||
acknowledgement: ``This product includes software developed by the
|
||||
Computer Systems Laboratory at the University of Utah.''
|
||||
|
||||
THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
|
||||
IS" CONDITION. THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
|
||||
ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
|
||||
|
||||
CSL requests users of this software to return to csl-dist@cs.utah.edu any
|
||||
improvements that they make and grant CSL redistribution rights.
|
||||
|
||||
(7) Sun Microsystems
|
||||
|
||||
Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
|
||||
|
||||
Developed at SunPro, a Sun Microsystems, Inc. business.
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software is freely granted, provided that this notice
|
||||
is preserved.
|
||||
|
||||
(8) Hewlett Packard
|
||||
|
||||
(c) Copyright 1986 HEWLETT-PACKARD COMPANY
|
||||
|
||||
To anyone who acknowledges that this file is provided "AS IS"
|
||||
without any express or implied warranty:
|
||||
permission to use, copy, modify, and distribute this file
|
||||
for any purpose is hereby granted without fee, provided that
|
||||
the above copyright notice and this notice appears in all
|
||||
copies, and that the name of Hewlett-Packard Company not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific, written prior permission.
|
||||
Hewlett-Packard Company makes no representations about the
|
||||
suitability of this software for any purpose.
|
||||
|
||||
(9) Hans-Peter Nilsson
|
||||
|
||||
Copyright (C) 2001 Hans-Peter Nilsson
|
||||
|
||||
Permission to use, copy, modify, and distribute this software is
|
||||
freely granted, provided that the above copyright notice, this notice
|
||||
and the following disclaimer are preserved with no changes.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE.
|
||||
|
||||
(10) No Copyright
|
||||
|
||||
THIS SOFTWARE IS NOT COPYRIGHTED
|
||||
|
||||
(11) Default copyright
|
||||
|
||||
Unless otherwise stated in each remaining libgloss file, the remaining
|
||||
files in the libgloss subdirectory are governed by the following copyright.
|
||||
This includes copyrights attributed to Cygnus Solutions and Cygnus Support
|
||||
which are now owned by Red Hat Incorporated.
|
||||
|
||||
Copyright (c) 1994, 1997, 2001, 2002 Red Hat Incorporated.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
The name of Red Hat Incorporated may not be used to endorse
|
||||
or promote products derived from this software without specific
|
||||
prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
127
ChangeLog
127
ChangeLog
@ -1,3 +1,127 @@
|
||||
2002-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* configure.in: Remove two redundant tests.
|
||||
|
||||
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||
|
||||
* configure.in (mips*-*-irix6*o32): Enable stabs.
|
||||
|
||||
2002-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* configure.in: Don't build grez.
|
||||
* Makefile.in: Ditto.
|
||||
|
||||
* Makefile.in: Remove references to bsp, cygmon, libstub.
|
||||
* configure.in: Ditto.
|
||||
|
||||
* configure.in: Remove leftover reference to gdbtest.
|
||||
|
||||
2002-07-08 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
* configure.in (gxx_include_dir): Change to match versioned
|
||||
C++ headers if --enable-version-specific-runtime-libs is used.
|
||||
|
||||
2002-07-04 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
* ltcf-cxx.sh (hpux*): Modify to support ia64-*-hpux*.
|
||||
|
||||
2002-07-03 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* configure.in: Make --without-x work.
|
||||
|
||||
2002-07-03 Nick Clifton <nickc@cambridge.redhat.com>
|
||||
|
||||
* contrib: New directory. Created to contain a copy of the
|
||||
texi2pod.pl script so that it is in the same place as the version in
|
||||
the FSF GCC sources.
|
||||
|
||||
2002-07-02 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* configure.in: Rearrange target Makefile fragment collection.
|
||||
|
||||
* Makefile.in: Don't try to build gdbtest, tgas, ispell, inet, or
|
||||
cvs[src].
|
||||
* configure.in: Ditto.
|
||||
|
||||
2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* Makefile.in: Eliminate 'apache' targets.
|
||||
* configure.in: Eliminate 'apache' targets.
|
||||
|
||||
* configure.in: Eliminate redundant tests. Reorganize.
|
||||
|
||||
* Makefile.in: Eliminate last reference to LIBGCC1_TEST.
|
||||
|
||||
* config-ml.in: Eliminate references to Cygnus configure.
|
||||
|
||||
* Makefile.in: Eliminate references to building emacs.
|
||||
|
||||
2002-07-01 Denis Chertykov <denisc@overta.ru>
|
||||
|
||||
* configure.in: Add support for ip2k.
|
||||
|
||||
2002-06-24 Ben Elliston <bje@redhat.com>
|
||||
|
||||
* configure.in (host_tools): Remove cgen.
|
||||
|
||||
* Makefile.in (all-cgen): Remove; runs from its source directory.
|
||||
(check-cgen, install-cgen, clean-cgen): Likewise.
|
||||
(all-opcodes): No not depend on all-cgen.
|
||||
(all-sim): Likewise.
|
||||
|
||||
2002-06-22 Nathanael Nerode <neroden@twcny.rr.com>
|
||||
|
||||
* configure.in: Fix AIX configury bug.
|
||||
|
||||
2002-06-19 Nathanael Nerode <neroden@twcny.rr.com>
|
||||
|
||||
* configure.in: Replace ${topsrcdir} with ${srcdir}.
|
||||
|
||||
* configure.in: Move definition of libstdcxx_flags right above
|
||||
usage, rather than way earlier.
|
||||
|
||||
* configure.in: Pull definition of is_cross_compiler earlier.
|
||||
|
||||
* configure.in: Rearrange a little.
|
||||
|
||||
* configure.in: Remove references to librx.
|
||||
* Makefile.in: Remove references to librx.
|
||||
|
||||
2002-06-19 Nathanael Nerode <neroden@twcny.rr.com>
|
||||
|
||||
* configure.in: Eliminate ${gasdir} variable.
|
||||
|
||||
2002-06-18 Dave Brolley <brolley@redhat.com>
|
||||
|
||||
* configure.in: Add support for frv.
|
||||
* config.sub: Add support for frv.
|
||||
|
||||
2002-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* Makefile.in (CFLAGS_FOR_TARGET): Add -O2.
|
||||
|
||||
2002-06-08 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* configure.in (vax-*-netbsd*): Re-enable gas.
|
||||
|
||||
2002-05-31 Nathanael Nerode <neroden@twcny.rr.com>
|
||||
|
||||
* Makefile.in: Replace HOST_PREFIX, HOST_PREFIX_1 with BUILD_PREFIX,
|
||||
BUILD_PREFIX_1, to correct nomenclature.
|
||||
* configure: Likewise.
|
||||
|
||||
* Makefile.in: Eliminate version-specific references to tcl8.1, tk8.1.
|
||||
* configure.in: Eliminate version-specific references to tcl8.1, tk8.1.
|
||||
|
||||
2002-05-31 Olaf Hering <olh@suse.de>
|
||||
|
||||
* config-ml.in: Propogate DESTDIR also.
|
||||
|
||||
2002-05-29 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* configure.in (vax-*-netbsd*): Don't build gas for this
|
||||
platform.
|
||||
|
||||
2002-05-28 Marek Michalkiewicz <marekm@amelek.gda.pl>
|
||||
|
||||
* configure.in (noconfigdirs): Don't compile libiberty, libstdcxx
|
||||
@ -19,9 +143,6 @@
|
||||
* configure: Likewise.
|
||||
* configure.in: Likewise.
|
||||
|
||||
config:
|
||||
* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
|
||||
|
||||
2002-05-13 Nathanael Nerode <neroden@twcny.rr.com>
|
||||
|
||||
* configure.in: Simplify makefile fragment collection.
|
||||
|
110
Makefile.in
110
Makefile.in
@ -90,8 +90,8 @@ CC = cc
|
||||
# Special variables passed down in EXTRA_GCC_FLAGS. They are defined
|
||||
# here so that they can be overridden by Makefile fragments.
|
||||
HOST_CC = $(CC_FOR_BUILD)
|
||||
HOST_PREFIX =
|
||||
HOST_PREFIX_1 = loser-
|
||||
BUILD_PREFIX =
|
||||
BUILD_PREFIX_1 = loser-
|
||||
|
||||
# These flag values are normally overridden by the configure script.
|
||||
CFLAGS = -g
|
||||
@ -100,7 +100,11 @@ CXXFLAGS = -g -O2
|
||||
LDFLAGS =
|
||||
LIBCFLAGS = $(CFLAGS)
|
||||
CFLAGS_FOR_BUILD = $(CFLAGS)
|
||||
CFLAGS_FOR_TARGET = $(CFLAGS)
|
||||
# During gcc bootstrap, if we use some random cc for stage1 then
|
||||
# CFLAGS will be just -g. We want to ensure that TARGET libraries
|
||||
# (which we know are built with gcc) are built with optimizations so
|
||||
# prepend -O2 when setting CFLAGS_FOR_TARGET.
|
||||
CFLAGS_FOR_TARGET = -O2 $(CFLAGS)
|
||||
LDFLAGS_FOR_TARGET =
|
||||
LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
|
||||
PICFLAG =
|
||||
@ -182,7 +186,7 @@ OTHERS =
|
||||
|
||||
# This is set by the configure script to the list of directories which
|
||||
# should be built using the target tools.
|
||||
TARGET_CONFIGDIRS = libiberty libgloss $(SPECIAL_LIBS) newlib librx winsup opcodes bsp libstub cygmon libf2c libobjc
|
||||
TARGET_CONFIGDIRS = libiberty libgloss $(SPECIAL_LIBS) newlib winsup opcodes libf2c libobjc
|
||||
|
||||
# Target libraries are put under this directory:
|
||||
# Changed by configure to $(target_alias) if cross.
|
||||
@ -486,8 +490,8 @@ EXTRA_GCC_FLAGS = \
|
||||
'CXX=$(CXX)' \
|
||||
'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
|
||||
'HOST_CC=$(CC_FOR_BUILD)' \
|
||||
'HOST_PREFIX=$(HOST_PREFIX)' \
|
||||
'HOST_PREFIX_1=$(HOST_PREFIX_1)' \
|
||||
'BUILD_PREFIX=$(BUILD_PREFIX)' \
|
||||
'BUILD_PREFIX_1=$(BUILD_PREFIX_1)' \
|
||||
'NM=$(NM)' \
|
||||
"`echo 'RANLIB=$(RANLIB)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
'WINDRES=$$(WINDRES_FOR_TARGET)' \
|
||||
@ -496,7 +500,6 @@ EXTRA_GCC_FLAGS = \
|
||||
"`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'LIBGCC1_TEST=$(LIBGCC1_TEST)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
"`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s/.*=$$/XFOO=/`" \
|
||||
@ -521,7 +524,6 @@ CONFIGURE_BUILD_MODULES = \
|
||||
# This is a list of the targets for all of the modules which are compiled
|
||||
# using $(FLAGS_TO_PASS).
|
||||
ALL_MODULES = \
|
||||
all-apache \
|
||||
all-ash \
|
||||
all-autoconf \
|
||||
all-automake \
|
||||
@ -531,8 +533,6 @@ ALL_MODULES = \
|
||||
all-bison \
|
||||
all-byacc \
|
||||
all-bzip2 \
|
||||
all-cgen \
|
||||
all-cvssrc \
|
||||
all-db \
|
||||
all-dejagnu \
|
||||
all-diff \
|
||||
@ -549,13 +549,10 @@ ALL_MODULES = \
|
||||
all-gnuserv \
|
||||
all-gprof \
|
||||
all-grep \
|
||||
all-grez \
|
||||
all-gzip \
|
||||
all-hello \
|
||||
all-indent \
|
||||
all-inet \
|
||||
all-intl \
|
||||
all-ispell \
|
||||
all-itcl \
|
||||
all-ld \
|
||||
all-libgui \
|
||||
@ -580,10 +577,8 @@ ALL_MODULES = \
|
||||
all-snavigator \
|
||||
all-tar \
|
||||
all-tcl \
|
||||
all-tcl8.1 \
|
||||
all-texinfo \
|
||||
all-textutils \
|
||||
all-tgas \
|
||||
all-time \
|
||||
all-uudecode \
|
||||
all-wdiff \
|
||||
@ -605,7 +600,6 @@ NATIVE_CHECK_MODULES = \
|
||||
check-zip
|
||||
|
||||
CROSS_CHECK_MODULES = \
|
||||
check-apache \
|
||||
check-ash \
|
||||
check-autoconf \
|
||||
check-automake \
|
||||
@ -613,8 +607,6 @@ CROSS_CHECK_MODULES = \
|
||||
check-bfd \
|
||||
check-binutils \
|
||||
check-bzip2 \
|
||||
check-cgen \
|
||||
check-cvssrc \
|
||||
check-db \
|
||||
check-dejagnu \
|
||||
check-diff \
|
||||
@ -631,9 +623,7 @@ CROSS_CHECK_MODULES = \
|
||||
check-gzip \
|
||||
check-hello \
|
||||
check-indent \
|
||||
check-inet \
|
||||
check-intl \
|
||||
check-ispell \
|
||||
check-itcl \
|
||||
check-ld \
|
||||
check-libgui \
|
||||
@ -659,7 +649,6 @@ CROSS_CHECK_MODULES = \
|
||||
check-tcl \
|
||||
check-texinfo \
|
||||
check-textutils \
|
||||
check-tgas \
|
||||
check-time \
|
||||
check-uudecode \
|
||||
check-wdiff \
|
||||
@ -675,7 +664,6 @@ CHECK_MODULES=$(NATIVE_CHECK_MODULES) $(CROSS_CHECK_MODULES)
|
||||
# We put install-tcl before install-itcl because itcl wants to run a
|
||||
# program on installation which uses the Tcl libraries.
|
||||
INSTALL_MODULES = \
|
||||
install-apache \
|
||||
install-ash \
|
||||
install-autoconf \
|
||||
install-automake \
|
||||
@ -686,8 +674,6 @@ INSTALL_MODULES = \
|
||||
install-binutils \
|
||||
install-bison \
|
||||
install-byacc \
|
||||
install-cgen \
|
||||
install-cvssrc \
|
||||
install-db \
|
||||
install-dejagnu \
|
||||
install-diff \
|
||||
@ -704,15 +690,11 @@ INSTALL_MODULES = \
|
||||
install-gnuserv \
|
||||
install-gprof \
|
||||
install-grep \
|
||||
install-grez \
|
||||
install-gzip \
|
||||
install-hello \
|
||||
install-indent \
|
||||
install-inet \
|
||||
install-intl \
|
||||
install-ispell \
|
||||
install-tcl \
|
||||
install-tcl8.1 \
|
||||
install-itcl \
|
||||
install-ld \
|
||||
install-libgui \
|
||||
@ -735,7 +717,6 @@ INSTALL_MODULES = \
|
||||
install-snavigator \
|
||||
install-tar \
|
||||
install-textutils \
|
||||
install-tgas \
|
||||
install-time \
|
||||
install-uudecode \
|
||||
install-wdiff \
|
||||
@ -745,20 +726,16 @@ INSTALL_MODULES = \
|
||||
# This is a list of the targets for all of the modules which are compiled
|
||||
# using $(X11_FLAGS_TO_PASS).
|
||||
ALL_X11_MODULES = \
|
||||
all-emacs \
|
||||
all-emacs19 \
|
||||
all-gdb \
|
||||
all-expect \
|
||||
all-guile \
|
||||
all-tclX \
|
||||
all-tk \
|
||||
all-tk8.1 \
|
||||
all-tix
|
||||
|
||||
# This is a list of the check targets for all of the modules which are
|
||||
# compiled using $(X11_FLAGS_TO_PASS).
|
||||
CHECK_X11_MODULES = \
|
||||
check-emacs \
|
||||
check-gdb \
|
||||
check-guile \
|
||||
check-expect \
|
||||
@ -769,21 +746,17 @@ CHECK_X11_MODULES = \
|
||||
# This is a list of the install targets for all the modules which are
|
||||
# compiled using $(X11_FLAGS_TO_PASS).
|
||||
INSTALL_X11_MODULES = \
|
||||
install-emacs \
|
||||
install-emacs19 \
|
||||
install-gdb \
|
||||
install-guile \
|
||||
install-expect \
|
||||
install-tclX \
|
||||
install-tk \
|
||||
install-tk8.1 \
|
||||
install-tix
|
||||
|
||||
# This is a list of the targets for all of the modules which are compiled
|
||||
# using $(TARGET_FLAGS_TO_PASS).
|
||||
ALL_TARGET_MODULES = \
|
||||
all-target-libstdc++-v3 \
|
||||
all-target-librx \
|
||||
all-target-newlib \
|
||||
all-target-libf2c \
|
||||
all-target-libobjc \
|
||||
@ -793,20 +766,16 @@ ALL_TARGET_MODULES = \
|
||||
all-target-libiberty \
|
||||
all-target-gperf \
|
||||
all-target-examples \
|
||||
all-target-libstub \
|
||||
all-target-libffi \
|
||||
all-target-libjava \
|
||||
all-target-zlib \
|
||||
all-target-boehm-gc \
|
||||
all-target-qthreads \
|
||||
all-target-bsp \
|
||||
all-target-cygmon
|
||||
all-target-qthreads
|
||||
|
||||
# This is a list of the configure targets for all of the modules which
|
||||
# are compiled using the target tools.
|
||||
CONFIGURE_TARGET_MODULES = \
|
||||
configure-target-libstdc++-v3 \
|
||||
configure-target-librx \
|
||||
configure-target-newlib \
|
||||
configure-target-libf2c \
|
||||
configure-target-libobjc \
|
||||
@ -816,14 +785,11 @@ CONFIGURE_TARGET_MODULES = \
|
||||
configure-target-libiberty \
|
||||
configure-target-gperf \
|
||||
configure-target-examples \
|
||||
configure-target-libstub \
|
||||
configure-target-libffi \
|
||||
configure-target-libjava \
|
||||
configure-target-zlib \
|
||||
configure-target-boehm-gc \
|
||||
configure-target-qthreads \
|
||||
configure-target-bsp \
|
||||
configure-target-cygmon
|
||||
configure-target-qthreads
|
||||
|
||||
# This is a list of the check targets for all of the modules which are
|
||||
# compiled using $(TARGET_FLAGS_TO_PASS).
|
||||
@ -852,7 +818,6 @@ INSTALL_TARGET_MODULES = \
|
||||
install-target-winsup \
|
||||
install-target-libgloss \
|
||||
install-target-libiberty \
|
||||
install-target-bsp \
|
||||
install-target-libjava \
|
||||
install-target-zlib \
|
||||
install-target-boehm-gc \
|
||||
@ -861,7 +826,6 @@ INSTALL_TARGET_MODULES = \
|
||||
|
||||
# This is a list of the targets for which we can do a clean-{target}.
|
||||
CLEAN_MODULES = \
|
||||
clean-apache \
|
||||
clean-ash \
|
||||
clean-autoconf \
|
||||
clean-automake \
|
||||
@ -871,8 +835,6 @@ CLEAN_MODULES = \
|
||||
clean-bison \
|
||||
clean-byacc \
|
||||
clean-bzip2 \
|
||||
clean-cgen \
|
||||
clean-cvssrc \
|
||||
clean-db \
|
||||
clean-dejagnu \
|
||||
clean-diff \
|
||||
@ -889,13 +851,10 @@ CLEAN_MODULES = \
|
||||
clean-gnuserv \
|
||||
clean-gprof \
|
||||
clean-grep \
|
||||
clean-grez \
|
||||
clean-gzip \
|
||||
clean-hello \
|
||||
clean-indent \
|
||||
clean-inet \
|
||||
clean-intl \
|
||||
clean-ispell \
|
||||
clean-itcl \
|
||||
clean-ld \
|
||||
clean-libgui \
|
||||
@ -922,7 +881,6 @@ CLEAN_MODULES = \
|
||||
clean-tcl \
|
||||
clean-texinfo \
|
||||
clean-textutils \
|
||||
clean-tgas \
|
||||
clean-time \
|
||||
clean-uudecode \
|
||||
clean-wdiff \
|
||||
@ -932,7 +890,6 @@ CLEAN_MODULES = \
|
||||
# All of the target modules that can be cleaned
|
||||
CLEAN_TARGET_MODULES = \
|
||||
clean-target-libstdc++-v3 \
|
||||
clean-target-librx \
|
||||
clean-target-newlib \
|
||||
clean-target-libf2c \
|
||||
clean-target-libobjc \
|
||||
@ -941,19 +898,14 @@ CLEAN_TARGET_MODULES = \
|
||||
clean-target-libiberty \
|
||||
clean-target-gperf \
|
||||
clean-target-examples \
|
||||
clean-target-libstub \
|
||||
clean-target-libffi \
|
||||
clean-target-libjava \
|
||||
clean-target-zlib \
|
||||
clean-target-boehm-gc \
|
||||
clean-target-qthreads \
|
||||
clean-target-bsp \
|
||||
clean-target-cygmon
|
||||
clean-target-qthreads
|
||||
|
||||
# All of the x11 modules that can be cleaned
|
||||
CLEAN_X11_MODULES = \
|
||||
clean-emacs \
|
||||
clean-emacs19 \
|
||||
clean-gdb \
|
||||
clean-expect \
|
||||
clean-guile \
|
||||
@ -1178,11 +1130,6 @@ install.all: install-no-fixedincludes
|
||||
true ; \
|
||||
fi
|
||||
|
||||
# inet-install is used because the I*Net wants DejaGNU installed but
|
||||
# not built. Similarly, gzip is built but not installed.
|
||||
inet-install:
|
||||
$(MAKE) INSTALL_MODULES="`echo $(INSTALL_MODULES) | sed -e 's/install-dejagnu//' -e 's/install-gzip//'`" install
|
||||
|
||||
# install-no-fixedincludes is used because Cygnus can not distribute
|
||||
# the fixed header files.
|
||||
.PHONY: install-no-fixedincludes
|
||||
@ -1703,7 +1650,6 @@ ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss
|
||||
ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3
|
||||
|
||||
# This is a list of inter-dependencies among modules.
|
||||
all-apache:
|
||||
all-ash:
|
||||
all-autoconf: all-m4 all-texinfo
|
||||
all-automake: all-m4 all-texinfo
|
||||
@ -1713,19 +1659,11 @@ all-binutils: all-libiberty all-opcodes all-bfd all-flex all-bison all-byacc all
|
||||
all-bison: all-texinfo
|
||||
configure-target-boehm-gc: $(ALL_GCC_C) configure-target-qthreads
|
||||
all-target-boehm-gc: configure-target-boehm-gc
|
||||
configure-target-bsp: $(ALL_GCC_C)
|
||||
all-target-bsp: configure-target-bsp
|
||||
all-byacc:
|
||||
all-bzip2:
|
||||
all-cgen: all-libiberty
|
||||
all-cvssrc:
|
||||
configure-target-cygmon: $(ALL_GCC_C)
|
||||
all-target-cygmon: configure-target-cygmon all-target-libiberty all-target-libstub all-target-bsp
|
||||
all-db:
|
||||
all-dejagnu: all-tcl all-expect all-tk
|
||||
all-diff: all-libiberty
|
||||
all-emacs:
|
||||
all-emacs19: all-bison all-byacc
|
||||
all-etc:
|
||||
configure-target-examples: $(ALL_GCC_C)
|
||||
all-target-examples: configure-target-examples
|
||||
@ -1746,20 +1684,17 @@ configure-target-gperf: $(ALL_GCC_CXX)
|
||||
all-target-gperf: configure-target-gperf all-target-libiberty all-target-libstdc++-v3
|
||||
all-gprof: all-libiberty all-bfd all-opcodes all-intl
|
||||
all-grep: all-libiberty
|
||||
all-grez: all-libiberty all-bfd all-opcodes
|
||||
all-gui: all-gdb all-libproc all-target-librx
|
||||
all-gui: all-gdb all-libproc
|
||||
all-guile:
|
||||
all-gzip: all-libiberty
|
||||
all-hello: all-libiberty
|
||||
all-indent:
|
||||
all-inet: all-tcl all-send-pr all-perl
|
||||
all-intl:
|
||||
all-ispell: all-emacs19
|
||||
all-itcl: all-tcl all-tk all-tcl8.1 all-tk8.1
|
||||
all-itcl: all-tcl all-tk
|
||||
all-ld: all-libiberty all-bfd all-opcodes all-bison all-byacc all-flex all-intl
|
||||
configure-target-libgloss: $(ALL_GCC)
|
||||
all-target-libgloss: configure-target-libgloss configure-target-newlib
|
||||
all-libgui: all-tcl all-tk all-tcl8.1 all-tk8.1 all-itcl
|
||||
all-libgui: all-tcl all-tk all-itcl
|
||||
all-libiberty:
|
||||
|
||||
all-build-libiberty: configure-build-libiberty
|
||||
@ -1768,12 +1703,8 @@ configure-target-libffi: $(ALL_GCC_C)
|
||||
all-target-libffi: configure-target-libffi
|
||||
configure-target-libjava: $(ALL_GCC_C) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi
|
||||
all-target-libjava: configure-target-libjava all-fastjar all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi
|
||||
configure-target-librx: $(ALL_GCC_C)
|
||||
all-target-librx: configure-target-librx
|
||||
configure-target-libstdc++-v3: $(ALL_GCC_C)
|
||||
all-target-libstdc++-v3: configure-target-libstdc++-v3 all-target-libiberty
|
||||
configure-target-libstub: $(ALL_GCC_C)
|
||||
all-target-libstub: configure-target-libstub
|
||||
all-libtool:
|
||||
configure-target-libf2c: $(ALL_GCC_C)
|
||||
all-target-libf2c: configure-target-libf2c all-target-libiberty
|
||||
@ -1786,7 +1717,7 @@ configure-target-newlib: $(ALL_GCC)
|
||||
all-target-newlib: configure-target-newlib
|
||||
configure-target-libtermcap: $(ALL_GCC_C)
|
||||
all-target-libtermcap: configure-target-libtermcap
|
||||
all-opcodes: all-bfd all-libiberty all-cgen
|
||||
all-opcodes: all-bfd all-libiberty
|
||||
all-patch: all-libiberty
|
||||
all-perl:
|
||||
all-prms: all-libiberty
|
||||
@ -1799,19 +1730,16 @@ all-sed: all-libiberty
|
||||
all-send-pr: all-prms
|
||||
all-shellutils:
|
||||
all-sid: all-tcl all-tk
|
||||
all-sim: all-libiberty all-bfd all-opcodes all-readline all-cgen
|
||||
all-sim: all-libiberty all-bfd all-opcodes all-readline
|
||||
all-snavigator: all-tcl all-tk all-itcl all-tix all-db all-grep all-libgui
|
||||
all-tar: all-libiberty
|
||||
all-tcl:
|
||||
all-tcl8.1:
|
||||
all-tclX: all-tcl all-tk
|
||||
all-tk: all-tcl
|
||||
all-tk8.1: all-tcl8.1
|
||||
all-texinfo: all-libiberty
|
||||
all-textutils:
|
||||
all-tgas: all-libiberty all-bfd all-opcodes
|
||||
all-time:
|
||||
all-tix: all-tcl all-tk all-tcl8.1 all-tk8.1
|
||||
all-tix: all-tcl all-tk
|
||||
all-wdiff:
|
||||
configure-target-winsup: $(ALL_GCC_C)
|
||||
all-target-winsup: all-target-libiberty all-target-libtermcap configure-target-winsup
|
||||
|
@ -537,6 +537,7 @@ multi-do:
|
||||
LIBCFLAGS="$(LIBCFLAGS) $${flags}" \
|
||||
LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \
|
||||
LDFLAGS="$(LDFLAGS) $${flags}" \
|
||||
DESTDIR="$(DESTDIR)" \
|
||||
$(DO)); then \
|
||||
true; \
|
||||
else \
|
||||
|
4
config.sub
vendored
4
config.sub
vendored
@ -231,7 +231,7 @@ case $basic_machine in
|
||||
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
||||
| c4x | clipper \
|
||||
| d10v | d30v | dlx | dsp16xx \
|
||||
| fr30 \
|
||||
| fr30 | frv \
|
||||
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
||||
| i370 | i860 | i960 | ia64 \
|
||||
| m32r | m68000 | m68k | m88k | mcore \
|
||||
@ -288,7 +288,7 @@ case $basic_machine in
|
||||
| clipper-* | cydra-* \
|
||||
| d10v-* | d30v-* | dlx-* \
|
||||
| elxsi-* \
|
||||
| f30[01]-* | f700-* | fr30-* | fx80-* \
|
||||
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
||||
| h8300-* | h8500-* \
|
||||
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
||||
| i*86-* | i860-* | i960-* | ia64-* \
|
||||
|
8
configure
vendored
8
configure
vendored
@ -917,8 +917,8 @@ if [ "${build}" != "${host}" ]; then
|
||||
|
||||
tools="AR AR_FOR_TARGET AS AS_FOR_TARGET BISON CC_FOR_BUILD"
|
||||
tools="${tools} CC_FOR_TARGET CXX_FOR_TARGET GCJ_FOR_TARGET"
|
||||
tools="${tools} DLLTOOL DLLTOOL_FOR_TARGET GCC_FOR_TARGET HOST_PREFIX"
|
||||
tools="${tools} HOST_PREFIX_1 LD LD_FOR_TARGET LEX MAKEINFO NM"
|
||||
tools="${tools} DLLTOOL DLLTOOL_FOR_TARGET GCC_FOR_TARGET BUILD_PREFIX"
|
||||
tools="${tools} BUILD_PREFIX_1 LD LD_FOR_TARGET LEX MAKEINFO NM"
|
||||
tools="${tools} NM_FOR_TARGET RANLIB RANLIB_FOR_TARGET"
|
||||
tools="${tools} WINDRES WINDRES_FOR_TARGET YACC"
|
||||
tools="${tools} OBJCOPY OBJDUMP"
|
||||
@ -955,8 +955,8 @@ t loop
|
||||
DLLTOOL=${DLLTOOL-${host_alias}-dlltool}
|
||||
DLLTOOL_FOR_TARGET=${DLLTOOL_FOR_TARGET-${target_alias}-dlltool}
|
||||
GCC_FOR_TARGET=${GCC_FOR_TARGET-${CC_FOR_TARGET-${target_alias}-gcc}}
|
||||
HOST_PREFIX=${build_alias}-
|
||||
HOST_PREFIX_1=${build_alias}-
|
||||
BUILD_PREFIX=${build_alias}-
|
||||
BUILD_PREFIX_1=${build_alias}-
|
||||
LD=${LD-${host_alias}-ld}
|
||||
LD_FOR_TARGET=${LD_FOR_TARGET-${target_alias}-ld}
|
||||
MAKEINFO=${MAKEINFO-makeinfo}
|
||||
|
1002
configure.in
1002
configure.in
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,31 @@
|
||||
2002-06-11 Nick Clifton <nickc@cambridge.redhat.com>
|
||||
|
||||
Import the following patches from the FSF GCC sources:
|
||||
2002-03-25 Zack Weinberg <zack@codesourcery.com>
|
||||
|
||||
* texi2pod.pl: Handle @end ftable and @end vtable.
|
||||
|
||||
2001-12-12 Matthias Klose <doko@debian.org>
|
||||
|
||||
* texi2pod.pl: Merge changes from binutils' texi2pod.pl. Allows
|
||||
generation of more than one man page from one source.
|
||||
Add '-' to set of valid chars for an identifier.
|
||||
Let -D option accept flags of the form <flag>=<value>.
|
||||
Use \s+ for whitespace detection in '@c man' lines.
|
||||
Handle @set and @clear independent of $output.
|
||||
Substitute all @value{}'s in a line.
|
||||
|
||||
2001-11-14 Joseph S. Myers <jsm28@cam.ac.uk>
|
||||
|
||||
* texi2pod.pl: Handle @ifnottex, @iftex and @display. Handle @var
|
||||
in verbatim blocks specially. Handle @unnumbered, @unnumberedsec
|
||||
and @center. Allow [a-z] after @enumerate. Handle 0 and numbers
|
||||
greater than 9 in enumerations.
|
||||
|
||||
2001-07-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||||
|
||||
* texi2pod.pl: Handle @r inside @item.
|
||||
|
||||
2002-02-27 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* fdl.texi: New file.
|
||||
@ -19,7 +47,7 @@
|
||||
|
||||
* add-log.el, add-log.vi: New files.
|
||||
|
||||
Wed Jan 20 01:33:50 1999 Angela Marie Thomas (angela@cygnus.com)
|
||||
1999-01-20 Angela Marie Thomas (angela@cygnus.com)
|
||||
|
||||
* comp-tools-verify: Remove some checks that are no longer valid.
|
||||
|
||||
@ -27,16 +55,16 @@ Wed Jan 20 01:33:50 1999 Angela Marie Thomas (angela@cygnus.com)
|
||||
|
||||
* targetdoc/fr30.texi: New document.
|
||||
|
||||
Thu Oct 1 21:15:59 1998 Angela Marie Thomas (angela@cygnus.com)
|
||||
1998-10-01 Angela Marie Thomas (angela@cygnus.com)
|
||||
|
||||
* comp-tools-fix, cross-tools-fix: Replace /usr/include
|
||||
with ${FIXINCDIR}.
|
||||
|
||||
Tue Aug 11 19:22:11 1998 Doug Evans <devans@canuck.cygnus.com>
|
||||
1998-08-11 Doug Evans <devans@canuck.cygnus.com>
|
||||
|
||||
* make-rel-sym-tree (version): Update calculation.
|
||||
|
||||
Fri Jun 12 21:34:01 1998 Ian Lance Taylor <ian@cygnus.com>
|
||||
1998-06-12 Ian Lance Taylor <ian@cygnus.com>
|
||||
|
||||
* configure.texi: Various additions.
|
||||
* Makefile.in (TEXI2HTML, DVIPS): New variables.
|
||||
@ -51,7 +79,7 @@ Fri Jun 12 21:34:01 1998 Ian Lance Taylor <ian@cygnus.com>
|
||||
* configbuild.ein: New file (EPS version of configbuild.fig).
|
||||
* configbuild.jin: New file (JPEG version of configbuild.fig).
|
||||
|
||||
Wed Jun 10 14:41:25 1998 Ian Lance Taylor <ian@cygnus.com>
|
||||
1998-06-10 Ian Lance Taylor <ian@cygnus.com>
|
||||
|
||||
* configure.texi: New file.
|
||||
* configdev.tin: New file.
|
||||
|
132
etc/texi2pod.pl
132
etc/texi2pod.pl
@ -1,6 +1,6 @@
|
||||
#! /usr/bin/perl -w
|
||||
|
||||
# Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1999, 2000, 2001, 200 Free Software Foundation, Inc.
|
||||
|
||||
# This file is part of GNU CC.
|
||||
|
||||
@ -30,9 +30,12 @@ $section = "";
|
||||
@icstack = ();
|
||||
@endwstack = ();
|
||||
@skstack = ();
|
||||
@instack = ();
|
||||
$shift = "";
|
||||
%defs = ();
|
||||
$fnno = 1;
|
||||
$inf = "";
|
||||
$ibase = "";
|
||||
|
||||
while ($_ = shift) {
|
||||
if (/^-D(.*)$/) {
|
||||
@ -41,15 +44,13 @@ while ($_ = shift) {
|
||||
} else {
|
||||
$flag = shift;
|
||||
}
|
||||
$value=$flag;
|
||||
$value =~ s,^[a-zA-Z0-9_]+,,;
|
||||
$value =~ s,.*=,,;
|
||||
$flag =~ s,=.*$,,;
|
||||
$value = "";
|
||||
($flag, $value) = ($flag =~ /^([^=]+)(?:=(.+))?/);
|
||||
die "no flag specified for -D\n"
|
||||
unless $flag ne "";
|
||||
#print STDERR "FL = $flag, V = $value\n";
|
||||
die "flags may only contain letters, digits, hyphens, dashes and underscores\n"
|
||||
unless $flag =~ /^[a-zA-Z0-9_-]+$/;
|
||||
$defs{$flag} = $value;
|
||||
|
||||
} elsif (/^-/) {
|
||||
usage();
|
||||
} else {
|
||||
@ -60,14 +61,19 @@ while ($_ = shift) {
|
||||
}
|
||||
|
||||
if (defined $in) {
|
||||
open(STDIN, $in) or die "opening \"$in\": $!\n";
|
||||
$inf = gensym();
|
||||
open($inf, "<$in") or die "opening \"$in\": $!\n";
|
||||
$ibase = $1 if $in =~ m|^(.+)/[^/]+$|;
|
||||
} else {
|
||||
$inf = \*STDIN;
|
||||
}
|
||||
|
||||
if (defined $out) {
|
||||
open(STDOUT, ">$out") or die "opening \"$out\": $!\n";
|
||||
}
|
||||
|
||||
while(<STDIN>)
|
||||
{
|
||||
while(defined $inf) {
|
||||
while(<$inf>) {
|
||||
# Certain commands are discarded without further processing.
|
||||
/^\@(?:
|
||||
[a-z]+index # @*index: useful only in complete manual
|
||||
@ -75,8 +81,9 @@ while(<STDIN>)
|
||||
|(?:end\s+)?group # @group .. @end group: ditto
|
||||
|page # @page: ditto
|
||||
|node # @node: useful only in .info file
|
||||
|(?:end\s+)?ifnottex # @ifnottex .. @end ifnottex: use contents
|
||||
)\b/x and next;
|
||||
|
||||
|
||||
chomp;
|
||||
|
||||
# Look for filename and title markers.
|
||||
@ -84,7 +91,7 @@ while(<STDIN>)
|
||||
/^\@settitle\s+([^.]+)/ and $tl = postprocess($1), next;
|
||||
|
||||
# Identify a man title but keep only the one we are interested in.
|
||||
/^\@c man title ([A-Za-z0-9]+) (.+)/ and do {
|
||||
/^\@c\s+man\s+title\s+([A-Za-z0-9-]+)\s+(.+)/ and do {
|
||||
if (exists $defs{$1}) {
|
||||
$fn = $1;
|
||||
$tl = postprocess($2);
|
||||
@ -95,19 +102,30 @@ while(<STDIN>)
|
||||
# Look for blocks surrounded by @c man begin SECTION ... @c man end.
|
||||
# This really oughta be @ifman ... @end ifman and the like, but such
|
||||
# would require rev'ing all other Texinfo translators.
|
||||
/^\@c man begin ([A-Z]+) ([A-Za-z0-9]+)/ and do {
|
||||
/^\@c\s+man\s+begin\s+([A-Z]+)\s+([A-Za-z0-9-]+)/ and do {
|
||||
$output = 1 if exists $defs{$2};
|
||||
$sect = $1;
|
||||
next;
|
||||
};
|
||||
/^\@c man begin ([A-Z]+)/ and $sect = $1, $output = 1, next;
|
||||
/^\@c man end/ and do {
|
||||
/^\@c\s+man\s+begin\s+([A-Z]+)/ and $sect = $1, $output = 1, next;
|
||||
/^\@c\s+man\s+end/ and do {
|
||||
$sects{$sect} = "" unless exists $sects{$sect};
|
||||
$sects{$sect} .= postprocess($section);
|
||||
$section = "";
|
||||
$output = 0;
|
||||
next;
|
||||
};
|
||||
|
||||
# handle variables
|
||||
/^\@set\s+([a-zA-Z0-9_-]+)\s*(.*)$/ and do {
|
||||
$defs{$1} = $2;
|
||||
next;
|
||||
};
|
||||
/^\@clear\s+([a-zA-Z0-9_-]+)/ and do {
|
||||
delete $defs{$1};
|
||||
next;
|
||||
};
|
||||
|
||||
next unless $output;
|
||||
|
||||
# Discard comments. (Can't do it above, because then we'd never see
|
||||
@ -120,20 +138,20 @@ while(<STDIN>)
|
||||
# Ignore @end foo, where foo is not an operation which may
|
||||
# cause us to skip, if we are presently skipping.
|
||||
my $ended = $1;
|
||||
next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu)$/;
|
||||
next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu|iftex)$/;
|
||||
|
||||
die "\@end $ended without \@$ended at line $.\n" unless defined $endw;
|
||||
die "\@$endw ended by \@end $ended at line $.\n" unless $ended eq $endw;
|
||||
|
||||
$endw = pop @endwstack;
|
||||
|
||||
if ($ended =~ /^(?:ifset|ifclear|ignore|menu)$/) {
|
||||
if ($ended =~ /^(?:ifset|ifclear|ignore|menu|iftex)$/) {
|
||||
$skipping = pop @skstack;
|
||||
next;
|
||||
} elsif ($ended =~ /^(?:example|smallexample)$/) {
|
||||
} elsif ($ended =~ /^(?:example|smallexample|display)$/) {
|
||||
$shift = "";
|
||||
$_ = ""; # need a paragraph break
|
||||
} elsif ($ended =~ /^(?:itemize|enumerate|table)$/) {
|
||||
} elsif ($ended =~ /^(?:itemize|enumerate|[fv]?table)$/) {
|
||||
$_ = "\n=back\n";
|
||||
$ic = pop @icstack;
|
||||
} else {
|
||||
@ -160,7 +178,7 @@ while(<STDIN>)
|
||||
next;
|
||||
};
|
||||
|
||||
/^\@(ignore|menu)\b/ and do {
|
||||
/^\@(ignore|menu|iftex)\b/ and do {
|
||||
push @endwstack, $endw;
|
||||
push @skstack, $skipping;
|
||||
$endw = $1;
|
||||
@ -189,6 +207,12 @@ while(<STDIN>)
|
||||
s/\@\{/{/g;
|
||||
s/\@\}/}/g;
|
||||
s/\@\@/&at;/g;
|
||||
|
||||
# Inside a verbatim block, handle @var specially.
|
||||
if ($shift ne "") {
|
||||
s/\@var\{([^\}]*)\}/<$1>/g;
|
||||
}
|
||||
|
||||
# POD doesn't interpret E<> inside a verbatim block.
|
||||
if ($shift eq "") {
|
||||
s/</</g;
|
||||
@ -199,11 +223,22 @@ while(<STDIN>)
|
||||
}
|
||||
|
||||
# Single line command handlers.
|
||||
/^\@set\s+([a-zA-Z0-9_-]+)\s*(.*)$/ and $defs{$1} = $2, next;
|
||||
/^\@clear\s+([a-zA-Z0-9_-]+)/ and delete $defs{$1}, next;
|
||||
|
||||
/^\@section\s+(.+)$/ and $_ = "\n=head2 $1\n";
|
||||
/^\@subsection\s+(.+)$/ and $_ = "\n=head3 $1\n";
|
||||
/^\@include\s+(.+)$/ and do {
|
||||
push @instack, $inf;
|
||||
$inf = gensym();
|
||||
|
||||
# Try cwd and $ibase.
|
||||
open($inf, "<" . $1)
|
||||
or open($inf, "<" . $ibase . "/" . $1)
|
||||
or die "cannot open $1 or $ibase/$1: $!\n";
|
||||
next;
|
||||
};
|
||||
|
||||
/^\@(?:section|unnumbered|unnumberedsec|center)\s+(.+)$/
|
||||
and $_ = "\n=head2 $1\n";
|
||||
/^\@subsection\s+(.+)$/
|
||||
and $_ = "\n=head3 $1\n";
|
||||
|
||||
# Block command handlers:
|
||||
/^\@itemize\s+(\@[a-z]+|\*|-)/ and do {
|
||||
@ -214,7 +249,7 @@ while(<STDIN>)
|
||||
$endw = "itemize";
|
||||
};
|
||||
|
||||
/^\@enumerate(?:\s+([A-Z0-9]+))?/ and do {
|
||||
/^\@enumerate(?:\s+([a-zA-Z0-9]+))?/ and do {
|
||||
push @endwstack, $endw;
|
||||
push @icstack, $ic;
|
||||
if (defined $1) {
|
||||
@ -226,19 +261,19 @@ while(<STDIN>)
|
||||
$endw = "enumerate";
|
||||
};
|
||||
|
||||
/^\@table\s+(\@[a-z]+)/ and do {
|
||||
/^\@([fv]?table)\s+(\@[a-z]+)/ and do {
|
||||
push @endwstack, $endw;
|
||||
push @icstack, $ic;
|
||||
$ic = $1;
|
||||
$endw = $1;
|
||||
$ic = $2;
|
||||
$ic =~ s/\@(?:samp|strong|key|gcctabopt|env)/B/;
|
||||
$ic =~ s/\@(?:code|kbd)/C/;
|
||||
$ic =~ s/\@(?:dfn|var|emph|cite|i)/I/;
|
||||
$ic =~ s/\@(?:file)/F/;
|
||||
$_ = "\n=over 4\n";
|
||||
$endw = "table";
|
||||
};
|
||||
|
||||
/^\@((?:small)?example)/ and do {
|
||||
/^\@((?:small)?example|display)/ and do {
|
||||
push @endwstack, $endw;
|
||||
$endw = $1;
|
||||
$shift = "\t";
|
||||
@ -251,12 +286,17 @@ while(<STDIN>)
|
||||
$_ = "\n=item $ic\<$1\>\n";
|
||||
} else {
|
||||
$_ = "\n=item $ic\n";
|
||||
$ic =~ y/A-Ya-y1-8/B-Zb-z2-9/;
|
||||
$ic =~ y/A-Ya-y/B-Zb-z/;
|
||||
$ic =~ s/(\d+)/$1 + 1/eg;
|
||||
}
|
||||
};
|
||||
|
||||
$section .= $shift.$_."\n";
|
||||
}
|
||||
# End of current file.
|
||||
close($inf);
|
||||
$inf = pop @instack;
|
||||
}
|
||||
|
||||
die "No filename or title\n" unless defined $fn && defined $tl;
|
||||
|
||||
@ -284,13 +324,15 @@ sub postprocess
|
||||
local $_ = $_[0];
|
||||
|
||||
# @value{foo} is replaced by whatever 'foo' is defined as.
|
||||
if (/\@value\{([a-zA-Z0-9_-]+)\}/) {
|
||||
if (! exists $defs{$1}) {
|
||||
print STDERR "Option $1 not define\n";
|
||||
while (m/(\@value\{([a-zA-Z0-9_-]+)\})/g) {
|
||||
if (! exists $defs{$2}) {
|
||||
print STDERR "Option $2 not defined\n";
|
||||
s/\Q$1\E//;
|
||||
} else {
|
||||
$value = $defs{$2};
|
||||
s/\Q$1\E/$value/;
|
||||
}
|
||||
|
||||
}
|
||||
s/\@value\{([a-zA-Z0-9_-]+)\}/$defs{$1}/g;
|
||||
|
||||
# Formatting commands.
|
||||
# Temporary escape for @r.
|
||||
@ -303,9 +345,6 @@ sub postprocess
|
||||
s/\@w\{([^\}]*)\}/S<$1>/g;
|
||||
s/\@(?:dmn|math)\{([^\}]*)\}/$1/g;
|
||||
|
||||
# Handle @r inside bold.
|
||||
1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;
|
||||
|
||||
# Cross references are thrown away, as are @noindent and @refill.
|
||||
# (@noindent is impossible in .pod, and @refill is unnecessary.)
|
||||
# @* is also impossible in .pod; we discard it and any newline that
|
||||
@ -327,9 +366,11 @@ sub postprocess
|
||||
s/\@uref\{([^\},]*),([^\},]*),([^\},]*)\}/$3/g;
|
||||
|
||||
# Turn B<blah I<blah> blah> into B<blah> I<blah> B<blah> to
|
||||
# match Texinfo semantics of @emph inside @samp.
|
||||
# match Texinfo semantics of @emph inside @samp. Also handle @r
|
||||
# inside bold.
|
||||
s/</</g;
|
||||
s/>/>/g;
|
||||
1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;
|
||||
1 while (s/B<([^<>]*)I<([^>]+)>/B<$1>I<$2>B</g);
|
||||
1 while (s/I<([^<>]*)B<([^>]+)>/I<$1>B<$2>I</g);
|
||||
s/[BI]<>//g;
|
||||
@ -372,4 +413,15 @@ sub add_footnote
|
||||
$sects{FOOTNOTES} .= $_[0];
|
||||
$sects{FOOTNOTES} .= "\n\n";
|
||||
}
|
||||
|
||||
|
||||
# stolen from Symbol.pm
|
||||
{
|
||||
my $genseq = 0;
|
||||
sub gensym
|
||||
{
|
||||
my $name = "GEN" . $genseq++;
|
||||
my $ref = \*{$name};
|
||||
delete $::{$name};
|
||||
return $ref;
|
||||
}
|
||||
}
|
||||
|
@ -1,3 +1,75 @@
|
||||
2002-07-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* elf/common.h (SHT_GNU_LIBLIST, DT_GNU_PRELINKED,
|
||||
DT_GNU_CONFLICT*, DT_GNU_LIBLIST*): Define.
|
||||
|
||||
2002-07-01 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* bfdlink.h (struct bfd_sym_chain): Declare.
|
||||
(struct bfd_link_info): Add gc_sym_list. Formatting fixes.
|
||||
|
||||
2002-06-25 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* demangle.h: #include "ansidecl.h" rather than #include <ansidecl.h>.
|
||||
* fibheap.h: Likewise.
|
||||
* hashtab.h: Likewise.
|
||||
* partition.h: Likewise.
|
||||
* sort.h: Likewise.
|
||||
* splay-tree.h: Likewise.
|
||||
|
||||
2002-06-24 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* libiberty.h (basename): Don't declare if HAVE_DECL_BASENAME.
|
||||
* getopt.h (getopt): Don't declare if HAVE_DECL_GETOPT.
|
||||
|
||||
2002-06-18 Dave Brolley <brolley@redhat.com>
|
||||
|
||||
From Catherine Moore:
|
||||
* dis-asm.h (print_insn_frv): New prototype.
|
||||
|
||||
2002-06-09 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* remote-sim.h: Move to directory gdb/.
|
||||
* callback.h: Move to directory gdb/.
|
||||
|
||||
2002-06-07 Charles Wilson <cwilson@ece.gatech.edu>
|
||||
|
||||
* bfdlink.h (struct bfd_link_info): Change type of
|
||||
pei386_auto_import field to int so that -1 can mean enabled by
|
||||
default and 1 can mean enabled by command line switch.
|
||||
|
||||
2002-06-06 DJ Delorie <dj@redhat.com>
|
||||
|
||||
* hashtab.h (htab): Rearrange new members for backward
|
||||
compatibility.
|
||||
(htab_create): Don't use a macro that requires other headers.
|
||||
|
||||
2002-06-05 Geoffrey Keating <geoffk@redhat.com>
|
||||
|
||||
* hashtab.h (htab_create): Restore prototype for backward
|
||||
compatibility.
|
||||
(htab_try_create): Likewise.
|
||||
|
||||
2002-05-22 Geoffrey Keating <geoffk@redhat.com>
|
||||
|
||||
* hashtab.h (struct htab): Update for change to length specifier.
|
||||
|
||||
2002-05-10 Geoffrey Keating <geoffk@redhat.com>
|
||||
|
||||
* hashtab.h (GTY): Define if undefined.
|
||||
(htab_alloc): New typedef.
|
||||
(htab_free): New typedef.
|
||||
(struct htab): Support gengtype; allow user-specified memory
|
||||
allocation.
|
||||
(htab_create_alloc): New.
|
||||
(htab_create): Replace with #define.
|
||||
(htab_try_create): Delete.
|
||||
|
||||
2002-05-31 Michal Ludvig <mludvig@suse.cz>
|
||||
|
||||
* elf/dwarf2.h (DW_CFA_low_user, DW_CFA_high_user): Renamed
|
||||
to DW_CFA_lo_user, DW_CFA_hi_user respectively.
|
||||
|
||||
2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
|
||||
|
||||
* dis-asm.h: Prototype print_insn_dlx.
|
||||
|
@ -3,21 +3,21 @@
|
||||
Free Software Foundation, Inc.
|
||||
Written by Steve Chamberlain and Ian Lance Taylor, Cygnus Support.
|
||||
|
||||
This file is part of BFD, the Binary File Descriptor library.
|
||||
This file is part of BFD, the Binary File Descriptor library.
|
||||
|
||||
This program 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 of the License, or
|
||||
(at your option) any later version.
|
||||
This program 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 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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.
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef BFDLINK_H
|
||||
#define BFDLINK_H
|
||||
@ -183,6 +183,12 @@ extern void bfd_link_hash_traverse
|
||||
/* Add an entry to the undefs list. */
|
||||
extern void bfd_link_add_undef
|
||||
PARAMS ((struct bfd_link_hash_table *, struct bfd_link_hash_entry *));
|
||||
|
||||
struct bfd_sym_chain
|
||||
{
|
||||
struct bfd_sym_chain *next;
|
||||
const char *name;
|
||||
};
|
||||
|
||||
/* This structure holds all the information needed to communicate
|
||||
between BFD and the linker when doing a link. */
|
||||
@ -191,33 +197,46 @@ struct bfd_link_info
|
||||
{
|
||||
/* Function callbacks. */
|
||||
const struct bfd_link_callbacks *callbacks;
|
||||
|
||||
/* true if BFD should generate a relocateable object file. */
|
||||
boolean relocateable;
|
||||
/* true if BFD should generate relocation information in the final executable. */
|
||||
|
||||
/* true if BFD should generate relocation information in the final
|
||||
executable. */
|
||||
boolean emitrelocations;
|
||||
|
||||
/* true if BFD should generate a "task linked" object file,
|
||||
similar to relocatable but also with globals converted to statics. */
|
||||
similar to relocatable but also with globals converted to
|
||||
statics. */
|
||||
boolean task_link;
|
||||
|
||||
/* true if BFD should generate a shared object. */
|
||||
boolean shared;
|
||||
|
||||
/* true if BFD should pre-bind symbols in a shared object. */
|
||||
boolean symbolic;
|
||||
|
||||
/* true if BFD should export all symbols in the dynamic symbol table
|
||||
of an executable, rather than only those used. */
|
||||
boolean export_dynamic;
|
||||
|
||||
/* true if shared objects should be linked directly, not shared. */
|
||||
boolean static_link;
|
||||
|
||||
/* true if the output file should be in a traditional format. This
|
||||
is equivalent to the setting of the BFD_TRADITIONAL_FORMAT flag
|
||||
on the output file, but may be checked when reading the input
|
||||
files. */
|
||||
boolean traditional_format;
|
||||
|
||||
/* true if we want to produced optimized output files. This might
|
||||
need much more time and therefore must be explicitly selected. */
|
||||
boolean optimize;
|
||||
|
||||
/* true if BFD should generate errors for undefined symbols
|
||||
even if generating a shared object. */
|
||||
boolean no_undefined;
|
||||
|
||||
/* true if BFD should allow undefined symbols in shared objects even
|
||||
when no_undefined is set to disallow undefined symbols. The net
|
||||
result will be that undefined symbols in regular objects will
|
||||
@ -231,39 +250,55 @@ struct bfd_link_info
|
||||
select an appropriate memset function. Apparently it is also
|
||||
normal for HPPA shared libraries to have undefined symbols. */
|
||||
boolean allow_shlib_undefined;
|
||||
/* True if ok to have multiple definition. */
|
||||
|
||||
/* true if ok to have multiple definition. */
|
||||
boolean allow_multiple_definition;
|
||||
|
||||
/* Which symbols to strip. */
|
||||
enum bfd_link_strip strip;
|
||||
|
||||
/* Which local symbols to discard. */
|
||||
enum bfd_link_discard discard;
|
||||
|
||||
/* true if symbols should be retained in memory, false if they
|
||||
should be freed and reread. */
|
||||
boolean keep_memory;
|
||||
|
||||
/* The list of input BFD's involved in the link. These are chained
|
||||
together via the link_next field. */
|
||||
bfd *input_bfds;
|
||||
|
||||
/* If a symbol should be created for each input BFD, this is section
|
||||
where those symbols should be placed. It must be a section in
|
||||
the output BFD. It may be NULL, in which case no such symbols
|
||||
will be created. This is to support CREATE_OBJECT_SYMBOLS in the
|
||||
linker command language. */
|
||||
asection *create_object_symbols_section;
|
||||
|
||||
/* List of global symbol names that are starting points for marking
|
||||
sections against garbage collection. */
|
||||
struct bfd_sym_chain *gc_sym_list;
|
||||
|
||||
/* Hash table handled by BFD. */
|
||||
struct bfd_link_hash_table *hash;
|
||||
|
||||
/* Hash table of symbols to keep. This is NULL unless strip is
|
||||
strip_some. */
|
||||
struct bfd_hash_table *keep_hash;
|
||||
|
||||
/* true if every symbol should be reported back via the notice
|
||||
callback. */
|
||||
boolean notice_all;
|
||||
|
||||
/* Hash table of symbols to report back via the notice callback. If
|
||||
this is NULL, and notice_all is false, then no symbols are
|
||||
reported back. */
|
||||
struct bfd_hash_table *notice_hash;
|
||||
|
||||
/* Hash table of symbols which are being wrapped (the --wrap linker
|
||||
option). If this is NULL, no symbols are being wrapped. */
|
||||
struct bfd_hash_table *wrap_hash;
|
||||
|
||||
/* If a base output file is wanted, then this points to it */
|
||||
PTR base_file;
|
||||
|
||||
@ -275,6 +310,7 @@ struct bfd_link_info
|
||||
/* The function to call when the executable or shared object is
|
||||
loaded. */
|
||||
const char *init_function;
|
||||
|
||||
/* The function to call when the executable or shared object is
|
||||
unloaded. */
|
||||
const char *fini_function;
|
||||
@ -288,9 +324,10 @@ struct bfd_link_info
|
||||
/* May be used to set DT_FLAGS_1 for ELF. */
|
||||
bfd_vma flags_1;
|
||||
|
||||
/* True if auto-import thunks for DATA items in pei386 DLLs
|
||||
should be generated/linked against. */
|
||||
boolean pei386_auto_import;
|
||||
/* Non-zero if auto-import thunks for DATA items in pei386 DLLs
|
||||
should be generated/linked against. Set to 1 if this feature
|
||||
is explicitly requested by the user, -1 if enabled by default. */
|
||||
int pei386_auto_import;
|
||||
|
||||
/* True if non-PLT relocs should be merged into one reloc section
|
||||
and sorted so that relocs against the same symbol come together. */
|
||||
|
@ -1,270 +0,0 @@
|
||||
/* Remote target system call callback support.
|
||||
Copyright 1997 Free Software Foundation, Inc.
|
||||
Contributed by Cygnus Solutions.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program 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 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* This interface isn't intended to be specific to any particular kind
|
||||
of remote (hardware, simulator, whatever). As such, support for it
|
||||
(e.g. sim/common/callback.c) should *not* live in the simulator source
|
||||
tree, nor should it live in the gdb source tree. */
|
||||
|
||||
/* There are various ways to handle system calls:
|
||||
|
||||
1) Have a simulator intercept the appropriate trap instruction and
|
||||
directly perform the system call on behalf of the target program.
|
||||
This is the typical way of handling system calls for embedded targets.
|
||||
[Handling system calls for embedded targets isn't that much of an
|
||||
oxymoron as running compiler testsuites make use of the capability.]
|
||||
|
||||
This method of system call handling is done when STATE_ENVIRONMENT
|
||||
is ENVIRONMENT_USER.
|
||||
|
||||
2) Have a simulator emulate the hardware as much as possible.
|
||||
If the program running on the real hardware communicates with some sort
|
||||
of target manager, one would want to be able to run this program on the
|
||||
simulator as well.
|
||||
|
||||
This method of system call handling is done when STATE_ENVIRONMENT
|
||||
is ENVIRONMENT_OPERATING.
|
||||
*/
|
||||
|
||||
#ifndef CALLBACK_H
|
||||
#define CALLBACK_H
|
||||
|
||||
/* ??? The reason why we check for va_start here should be documented. */
|
||||
|
||||
#ifndef va_start
|
||||
#include <ansidecl.h>
|
||||
#ifdef ANSI_PROTOTYPES
|
||||
#include <stdarg.h>
|
||||
#else
|
||||
#include <varargs.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Mapping of host/target values. */
|
||||
/* ??? For debugging purposes, one might want to add a string of the
|
||||
name of the symbol. */
|
||||
|
||||
typedef struct {
|
||||
int host_val;
|
||||
int target_val;
|
||||
} CB_TARGET_DEFS_MAP;
|
||||
|
||||
#define MAX_CALLBACK_FDS 10
|
||||
|
||||
/* Forward decl for stat/fstat. */
|
||||
struct stat;
|
||||
|
||||
typedef struct host_callback_struct host_callback;
|
||||
|
||||
struct host_callback_struct
|
||||
{
|
||||
int (*close) PARAMS ((host_callback *,int));
|
||||
int (*get_errno) PARAMS ((host_callback *));
|
||||
int (*isatty) PARAMS ((host_callback *, int));
|
||||
int (*lseek) PARAMS ((host_callback *, int, long , int));
|
||||
int (*open) PARAMS ((host_callback *, const char*, int mode));
|
||||
int (*read) PARAMS ((host_callback *,int, char *, int));
|
||||
int (*read_stdin) PARAMS (( host_callback *, char *, int));
|
||||
int (*rename) PARAMS ((host_callback *, const char *, const char *));
|
||||
int (*system) PARAMS ((host_callback *, const char *));
|
||||
long (*time) PARAMS ((host_callback *, long *));
|
||||
int (*unlink) PARAMS ((host_callback *, const char *));
|
||||
int (*write) PARAMS ((host_callback *,int, const char *, int));
|
||||
int (*write_stdout) PARAMS ((host_callback *, const char *, int));
|
||||
void (*flush_stdout) PARAMS ((host_callback *));
|
||||
int (*write_stderr) PARAMS ((host_callback *, const char *, int));
|
||||
void (*flush_stderr) PARAMS ((host_callback *));
|
||||
int (*stat) PARAMS ((host_callback *, const char *, struct stat *));
|
||||
int (*fstat) PARAMS ((host_callback *, int, struct stat *));
|
||||
|
||||
/* When present, call to the client to give it the oportunity to
|
||||
poll any io devices for a request to quit (indicated by a nonzero
|
||||
return value). */
|
||||
int (*poll_quit) PARAMS ((host_callback *));
|
||||
|
||||
/* Used when the target has gone away, so we can close open
|
||||
handles and free memory etc etc. */
|
||||
int (*shutdown) PARAMS ((host_callback *));
|
||||
int (*init) PARAMS ((host_callback *));
|
||||
|
||||
/* depreciated, use vprintf_filtered - Talk to the user on a console. */
|
||||
void (*printf_filtered) PARAMS ((host_callback *, const char *, ...));
|
||||
|
||||
/* Talk to the user on a console. */
|
||||
void (*vprintf_filtered) PARAMS ((host_callback *, const char *, va_list));
|
||||
|
||||
/* Same as vprintf_filtered but to stderr. */
|
||||
void (*evprintf_filtered) PARAMS ((host_callback *, const char *, va_list));
|
||||
|
||||
/* Print an error message and "exit".
|
||||
In the case of gdb "exiting" means doing a longjmp back to the main
|
||||
command loop. */
|
||||
void (*error) PARAMS ((host_callback *, const char *, ...));
|
||||
|
||||
int last_errno; /* host format */
|
||||
|
||||
int fdmap[MAX_CALLBACK_FDS];
|
||||
char fdopen[MAX_CALLBACK_FDS];
|
||||
char alwaysopen[MAX_CALLBACK_FDS];
|
||||
|
||||
/* System call numbers. */
|
||||
CB_TARGET_DEFS_MAP *syscall_map;
|
||||
/* Errno values. */
|
||||
CB_TARGET_DEFS_MAP *errno_map;
|
||||
/* Flags to the open system call. */
|
||||
CB_TARGET_DEFS_MAP *open_map;
|
||||
/* Signal numbers. */
|
||||
CB_TARGET_DEFS_MAP *signal_map;
|
||||
/* Layout of `stat' struct.
|
||||
The format is a series of "name,length" pairs separated by colons.
|
||||
Empty space is indicated with a `name' of "space".
|
||||
All padding must be explicitly mentioned.
|
||||
Lengths are in bytes. If this needs to be extended to bits,
|
||||
use "name.bits".
|
||||
Example: "st_dev,4:st_ino,4:st_mode,4:..." */
|
||||
const char *stat_map;
|
||||
|
||||
/* Marker for those wanting to do sanity checks.
|
||||
This should remain the last member of this struct to help catch
|
||||
miscompilation errors. */
|
||||
#define HOST_CALLBACK_MAGIC 4705 /* teds constant */
|
||||
int magic;
|
||||
};
|
||||
|
||||
extern host_callback default_callback;
|
||||
|
||||
/* Canonical versions of system call numbers.
|
||||
It's not intended to willy-nilly throw every system call ever heard
|
||||
of in here. Only include those that have an important use.
|
||||
??? One can certainly start a discussion over the ones that are currently
|
||||
here, but that will always be true. */
|
||||
|
||||
/* These are used by the ANSI C support of libc. */
|
||||
#define CB_SYS_exit 1
|
||||
#define CB_SYS_open 2
|
||||
#define CB_SYS_close 3
|
||||
#define CB_SYS_read 4
|
||||
#define CB_SYS_write 5
|
||||
#define CB_SYS_lseek 6
|
||||
#define CB_SYS_unlink 7
|
||||
#define CB_SYS_getpid 8
|
||||
#define CB_SYS_kill 9
|
||||
#define CB_SYS_fstat 10
|
||||
/*#define CB_SYS_sbrk 11 - not currently a system call, but reserved. */
|
||||
|
||||
/* ARGV support. */
|
||||
#define CB_SYS_argvlen 12
|
||||
#define CB_SYS_argv 13
|
||||
|
||||
/* These are extras added for one reason or another. */
|
||||
#define CB_SYS_chdir 14
|
||||
#define CB_SYS_stat 15
|
||||
#define CB_SYS_chmod 16
|
||||
#define CB_SYS_utime 17
|
||||
#define CB_SYS_time 18
|
||||
|
||||
/* Struct use to pass and return information necessary to perform a
|
||||
system call. */
|
||||
/* FIXME: Need to consider target word size. */
|
||||
|
||||
typedef struct cb_syscall {
|
||||
/* The target's value of what system call to perform. */
|
||||
int func;
|
||||
/* The arguments to the syscall. */
|
||||
long arg1, arg2, arg3, arg4;
|
||||
|
||||
/* The result. */
|
||||
long result;
|
||||
/* Some system calls have two results. */
|
||||
long result2;
|
||||
/* The target's errno value, or 0 if success.
|
||||
This is converted to the target's value with host_to_target_errno. */
|
||||
int errcode;
|
||||
|
||||
/* Working space to be used by memory read/write callbacks. */
|
||||
PTR p1;
|
||||
PTR p2;
|
||||
long x1,x2;
|
||||
|
||||
/* Callbacks for reading/writing memory (e.g. for read/write syscalls).
|
||||
??? long or unsigned long might be better to use for the `count'
|
||||
argument here. We mimic sim_{read,write} for now. Be careful to
|
||||
test any changes with -Wall -Werror, mixed signed comparisons
|
||||
will get you. */
|
||||
int (*read_mem) PARAMS ((host_callback * /*cb*/, struct cb_syscall * /*sc*/,
|
||||
unsigned long /*taddr*/, char * /*buf*/,
|
||||
int /*bytes*/));
|
||||
int (*write_mem) PARAMS ((host_callback * /*cb*/, struct cb_syscall * /*sc*/,
|
||||
unsigned long /*taddr*/, const char * /*buf*/,
|
||||
int /*bytes*/));
|
||||
|
||||
/* For sanity checking, should be last entry. */
|
||||
int magic;
|
||||
} CB_SYSCALL;
|
||||
|
||||
/* Magic number sanity checker. */
|
||||
#define CB_SYSCALL_MAGIC 0x12344321
|
||||
|
||||
/* Macro to initialize CB_SYSCALL. Called first, before filling in
|
||||
any fields. */
|
||||
#define CB_SYSCALL_INIT(sc) \
|
||||
do { \
|
||||
memset ((sc), 0, sizeof (*(sc))); \
|
||||
(sc)->magic = CB_SYSCALL_MAGIC; \
|
||||
} while (0)
|
||||
|
||||
/* Return codes for various interface routines. */
|
||||
|
||||
typedef enum {
|
||||
CB_RC_OK = 0,
|
||||
/* generic error */
|
||||
CB_RC_ERR,
|
||||
/* either file not found or no read access */
|
||||
CB_RC_ACCESS,
|
||||
CB_RC_NO_MEM
|
||||
} CB_RC;
|
||||
|
||||
/* Read in target values for system call numbers, errno values, signals. */
|
||||
CB_RC cb_read_target_syscall_maps PARAMS ((host_callback *, const char *));
|
||||
|
||||
/* Translate target to host syscall function numbers. */
|
||||
int cb_target_to_host_syscall PARAMS ((host_callback *, int));
|
||||
|
||||
/* Translate host to target errno value. */
|
||||
int cb_host_to_target_errno PARAMS ((host_callback *, int));
|
||||
|
||||
/* Translate target to host open flags. */
|
||||
int cb_target_to_host_open PARAMS ((host_callback *, int));
|
||||
|
||||
/* Translate target signal number to host. */
|
||||
int cb_target_to_host_signal PARAMS ((host_callback *, int));
|
||||
|
||||
/* Translate host signal number to target. */
|
||||
int cb_host_to_target_signal PARAMS ((host_callback *, int));
|
||||
|
||||
/* Translate host stat struct to target.
|
||||
If stat struct ptr is NULL, just compute target stat struct size.
|
||||
Result is size of target stat struct or 0 if error. */
|
||||
int cb_host_to_target_stat PARAMS ((host_callback *, const struct stat *, PTR));
|
||||
|
||||
/* Perform a system call. */
|
||||
CB_RC cb_syscall PARAMS ((host_callback *, CB_SYSCALL *));
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/* Defs for interface to demanglers.
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001
|
||||
Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
@ -21,7 +21,7 @@
|
||||
#if !defined (DEMANGLE_H)
|
||||
#define DEMANGLE_H
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
|
||||
/* Options passed to cplus_demangle (in 2nd parameter). */
|
||||
|
||||
|
@ -236,6 +236,7 @@ extern int print_insn_w65 PARAMS ((bfd_vma, disassemble_info*));
|
||||
extern int print_insn_xstormy16 PARAMS ((bfd_vma, disassemble_info*));
|
||||
extern int print_insn_sh64 PARAMS ((bfd_vma, disassemble_info *));
|
||||
extern int print_insn_sh64x_media PARAMS ((bfd_vma, disassemble_info *));
|
||||
extern int print_insn_frv PARAMS ((bfd_vma, disassemble_info *));
|
||||
|
||||
extern disassembler_ftype arc_get_disassembler PARAMS ((void *));
|
||||
extern disassembler_ftype cris_get_disassembler PARAMS ((bfd *));
|
||||
|
@ -1,3 +1,40 @@
|
||||
2002-07-01 Matt Thomas <matt@3am-software.com>
|
||||
|
||||
* vax.h: Rename EF_* to EF_VAX_*.
|
||||
|
||||
2002-06-18 Dave Brolley <brolley@redhat.com>
|
||||
|
||||
From Catherine Moore, Michael Meissner, Dave Brolley:
|
||||
* common.h (EM_CYGNUS_FRV): New macro.
|
||||
* frv.h: New file.
|
||||
|
||||
2002-06-06 Lars Brinkhoff <lars@nocrew.org>
|
||||
|
||||
* common.h: Change registry@sco.com to registry@caldera.com.
|
||||
(EM_PDP10, EM_PDP11): Define.
|
||||
|
||||
2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* sh.h (_bfd_sh64_crange_qsort_cmpb, _bfd_sh64_crange_qsort_cmpl)
|
||||
(_bfd_sh64_crange_bsearch_cmpb, _bfd_sh64_crange_bsearch_cmpl): New
|
||||
prototypes.
|
||||
|
||||
2002-06-01 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* alpha.h (LITUSE_ALPHA_ADDR, LITUSE_ALPHA_BASE, LITUSE_ALPHA_BYTOFF,
|
||||
LITUSE_ALPHA_JSR, LITUSE_ALPHA_TLSGD, LITUSE_ALPHA_TLSLDM): New.
|
||||
|
||||
2002-05-30 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* alpha.h (R_ALPHA_TLSGD, R_ALPHA_TLSLDM, R_ALPHA_DTPMOD64,
|
||||
R_ALPHA_GOTDTPREL, R_ALPHA_DTPREL64, R_ALPHA_DTPRELHI,
|
||||
R_ALPHA_DTPRELLO, R_ALPHA_DTPREL16, R_ALPHA_GOTTPREL, R_ALPHA_TPREL64,
|
||||
R_ALPHA_TPRELHI, R_ALPHA_TPRELLO, R_ALPHA_TPREL16): New.
|
||||
|
||||
2002-05-29 Matt Thomas <matt@3am-software.com>
|
||||
|
||||
* vax.h: New file
|
||||
|
||||
2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
|
||||
|
||||
* common.h (EM_DLX): Define.
|
||||
@ -8,8 +45,8 @@
|
||||
* common.h (NT_GNU_ABI_TAG): Define.
|
||||
(GNU_ABI_TAG_LINUX): Define.
|
||||
(GNU_ABI_TAG_HURD): Define.
|
||||
(GNU_ABI_TAG_SOLARIS): Define.
|
||||
(NT_NETBSD_IDENT): Define.
|
||||
(GNU_ABI_TAG_SOLARIS): Define.
|
||||
(NT_NETBSD_IDENT): Define.
|
||||
(NT_FREEBSD_ABI_TAG): Define.
|
||||
|
||||
2002-04-24 Elena Zannoni <ezannoni@redhat.com>
|
||||
@ -108,7 +145,7 @@
|
||||
|
||||
* common.h: Update copyright years.
|
||||
(NT_NETBSDCORE_PROCINFO): Define.
|
||||
(NT_NETBSDCORE_FIRSTMACH): Define.
|
||||
(NT_NETBSDCORE_FIRSTMACH): Define.
|
||||
|
||||
2002-01-06 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
@ -302,18 +339,18 @@
|
||||
|
||||
2000-10-16 Chris Demetriou <cgd@sibyte.com>
|
||||
|
||||
* mips.h (E_MIPS_ARCH_32): New constant.
|
||||
(E_MIPS_MACH_MIPS32, E_MIPS_MACH_MIPS32_4K): Replace the
|
||||
former with the latter.
|
||||
* mips.h (E_MIPS_ARCH_32): New constant.
|
||||
(E_MIPS_MACH_MIPS32, E_MIPS_MACH_MIPS32_4K): Replace the
|
||||
former with the latter.
|
||||
|
||||
* mips.h (E_MIPS_ARCH_5, E_MIPS_ARCH_64): New definitions.
|
||||
* mips.h (E_MIPS_ARCH_5, E_MIPS_ARCH_64): New definitions.
|
||||
|
||||
* mips.h (E_MIPS_MACH_SB1): New constant.
|
||||
* mips.h (E_MIPS_MACH_SB1): New constant.
|
||||
|
||||
2000-11-30 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* common.h (EM_X86_64): New macro.
|
||||
* x86-64.h: New file.
|
||||
* common.h (EM_X86_64): New macro.
|
||||
* x86-64.h: New file.
|
||||
|
||||
2000-11-27 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
|
@ -99,6 +99,28 @@ START_RELOC_NUMBERS (elf_alpha_reloc_type)
|
||||
STO_ALPHA_STD_GPLOAD. */
|
||||
RELOC_NUMBER (R_ALPHA_BRSGP, 28)
|
||||
|
||||
/* Thread-Local Storage. */
|
||||
RELOC_NUMBER (R_ALPHA_TLSGD, 29)
|
||||
RELOC_NUMBER (R_ALPHA_TLSLDM, 30)
|
||||
RELOC_NUMBER (R_ALPHA_DTPMOD64, 31)
|
||||
RELOC_NUMBER (R_ALPHA_GOTDTPREL, 32)
|
||||
RELOC_NUMBER (R_ALPHA_DTPREL64, 33)
|
||||
RELOC_NUMBER (R_ALPHA_DTPRELHI, 34)
|
||||
RELOC_NUMBER (R_ALPHA_DTPRELLO, 35)
|
||||
RELOC_NUMBER (R_ALPHA_DTPREL16, 36)
|
||||
RELOC_NUMBER (R_ALPHA_GOTTPREL, 37)
|
||||
RELOC_NUMBER (R_ALPHA_TPREL64, 38)
|
||||
RELOC_NUMBER (R_ALPHA_TPRELHI, 39)
|
||||
RELOC_NUMBER (R_ALPHA_TPRELLO, 40)
|
||||
RELOC_NUMBER (R_ALPHA_TPREL16, 41)
|
||||
|
||||
END_RELOC_NUMBERS (R_ALPHA_max)
|
||||
|
||||
#define LITUSE_ALPHA_ADDR 0
|
||||
#define LITUSE_ALPHA_BASE 1
|
||||
#define LITUSE_ALPHA_BYTOFF 2
|
||||
#define LITUSE_ALPHA_JSR 3
|
||||
#define LITUSE_ALPHA_TLSGD 4
|
||||
#define LITUSE_ALPHA_TLSLDM 5
|
||||
|
||||
#endif /* _ELF_ALPHA_H */
|
||||
|
@ -92,7 +92,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
#define ET_HIPROC 0xFFFF /* Processor-specific */
|
||||
|
||||
/* Values for e_machine, which identifies the architecture. These numbers
|
||||
are officially assigned by registry@sco.com. See below for a list of
|
||||
are officially assigned by registry@caldera.com. See below for a list of
|
||||
ad-hoc numbers used during initial development. */
|
||||
|
||||
#define EM_NONE 0 /* No machine */
|
||||
@ -145,6 +145,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
#define EM_TINYJ 61 /* Advanced Logic Corp. TinyJ embedded processor */
|
||||
#define EM_X86_64 62 /* Advanced Micro Devices X86-64 processor */
|
||||
|
||||
#define EM_PDP10 64 /* Digital Equipment Corp. PDP-10 */
|
||||
#define EM_PDP11 65 /* Digital Equipment Corp. PDP-11 */
|
||||
#define EM_FX66 66 /* Siemens FX66 microcontroller */
|
||||
#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 bit microcontroller */
|
||||
#define EM_ST7 68 /* STMicroelectronics ST7 8-bit microcontroller */
|
||||
@ -184,7 +186,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
will have a collision. Instead, pick a random number.
|
||||
|
||||
Normally, each entity or maintainer responsible for a machine with an
|
||||
unofficial e_machine number should eventually ask registry@sco.com for
|
||||
unofficial e_machine number should eventually ask registry@caldera.com for
|
||||
an officially blessed number to be added to the list above. */
|
||||
|
||||
#define EM_PJ_OLD 99 /* picoJava */
|
||||
@ -242,6 +244,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#define EM_XSTORMY16 0xad45
|
||||
|
||||
/* FRV magic number - no EABI available??. */
|
||||
#define EM_CYGNUS_FRV 0x5441
|
||||
/* See the above comment before you add a new EM_* value here. */
|
||||
|
||||
/* Values for e_version. */
|
||||
@ -299,6 +303,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
#define SHT_LOOS 0x60000000 /* First of OS specific semantics */
|
||||
#define SHT_HIOS 0x6fffffff /* Last of OS specific semantics */
|
||||
|
||||
#define SHT_GNU_LIBLIST 0x6ffffff7 /* List of prelink dependencies */
|
||||
|
||||
/* The next three section types are defined by Solaris, and are named
|
||||
SHT_SUNW*. We use them in GNU code, so we also define SHT_GNU*
|
||||
versions. */
|
||||
@ -516,6 +522,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
OS specific values. This is a deliberate special case and we
|
||||
maintain it for backwards compatability. */
|
||||
#define DT_VALRNGLO 0x6ffffd00
|
||||
#define DT_GNU_PRELINKED 0x6ffffdf5
|
||||
#define DT_GNU_CONFLICTSZ 0x6ffffdf6
|
||||
#define DT_GNU_LIBLISTSZ 0x6ffffdf7
|
||||
#define DT_CHECKSUM 0x6ffffdf8
|
||||
#define DT_PLTPADSZ 0x6ffffdf9
|
||||
#define DT_MOVEENT 0x6ffffdfa
|
||||
@ -527,6 +536,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
#define DT_VALRNGHI 0x6ffffdff
|
||||
|
||||
#define DT_ADDRRNGLO 0x6ffffe00
|
||||
#define DT_GNU_CONFLICT 0x6ffffef8
|
||||
#define DT_GNU_LIBLIST 0x6ffffef9
|
||||
#define DT_CONFIG 0x6ffffefa
|
||||
#define DT_DEPAUDIT 0x6ffffefb
|
||||
#define DT_AUDIT 0x6ffffefc
|
||||
|
@ -649,8 +649,8 @@ enum dwarf_call_frame_info
|
||||
#define DW_CIE_VERSION 1
|
||||
|
||||
#define DW_CFA_extended 0
|
||||
#define DW_CFA_low_user 0x1c
|
||||
#define DW_CFA_high_user 0x3f
|
||||
#define DW_CFA_lo_user 0x1c
|
||||
#define DW_CFA_hi_user 0x3f
|
||||
|
||||
#define DW_CHILDREN_no 0x00
|
||||
#define DW_CHILDREN_yes 0x01
|
||||
|
@ -108,6 +108,11 @@ extern enum sh64_elf_cr_type sh64_get_contents_type
|
||||
FIXME: This seems redundant now that we export the interface above. */
|
||||
extern boolean sh64_address_is_shmedia PARAMS ((asection *, bfd_vma));
|
||||
|
||||
extern int _bfd_sh64_crange_qsort_cmpb PARAMS ((const void *, const void *));
|
||||
extern int _bfd_sh64_crange_qsort_cmpl PARAMS ((const void *, const void *));
|
||||
extern int _bfd_sh64_crange_bsearch_cmpb PARAMS ((const void *, const void *));
|
||||
extern int _bfd_sh64_crange_bsearch_cmpl PARAMS ((const void *, const void *));
|
||||
|
||||
/* We put this in elf_section_data (section)->tdata. */
|
||||
struct sh64_section_data
|
||||
{
|
||||
|
@ -44,8 +44,8 @@ START_RELOC_NUMBERS (elf_vax_reloc_type)
|
||||
END_RELOC_NUMBERS (R_VAX_max)
|
||||
|
||||
/* Processor specific flags for the ELF header e_flags field. */
|
||||
#define EF_NONPIC 0x0001 /* Object contains non-PIC code */
|
||||
#define EF_DFLOAT 0x0100 /* Object contains D-Float insn. */
|
||||
#define EF_GFLOAT 0x0200 /* Object contains G-Float insn. */
|
||||
#define EF_VAX_NONPIC 0x0001 /* Object contains non-PIC code */
|
||||
#define EF_VAX_DFLOAT 0x0100 /* Object contains D-Float insn. */
|
||||
#define EF_VAX_GFLOAT 0x0200 /* Object contains G-Float insn. */
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* A Fibonacci heap datatype.
|
||||
Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Daniel Berlin (dan@cgsoftware.com).
|
||||
|
||||
This file is part of GCC.
|
||||
@ -40,7 +40,7 @@ Boston, MA 02111-1307, USA. */
|
||||
#ifndef _FIBHEAP_H_
|
||||
#define _FIBHEAP_H_
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
|
||||
typedef long fibheapkey_t;
|
||||
|
||||
|
@ -1,3 +1,21 @@
|
||||
2002-06-15 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* sim-arm.h (enum sim_arm_regs): Rename sim_arm_regnum.
|
||||
|
||||
2002-06-12 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* sim-arm.h: New file.
|
||||
|
||||
2002-06-08 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* callback.h: Copy to here from directory above.
|
||||
* remote-sim.h: Copy to here from directory above.
|
||||
|
||||
2002-06-01 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* sim-d10v.h (sim_d10v_regs): Expand to include all registers.
|
||||
Update copyright.
|
||||
|
||||
2002-05-23 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* sim-d10v.h: New file. Moved from include/sim-d10v.h.
|
||||
|
@ -1,5 +1,6 @@
|
||||
/* This file defines the interface between the d10v simulator and gdb.
|
||||
Copyright 1999 Free Software Foundation, Inc.
|
||||
|
||||
Copyright 1999, 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
@ -75,26 +76,61 @@ extern unsigned long sim_d10v_translate_addr
|
||||
|
||||
/* The simulator makes use of the following register information. */
|
||||
|
||||
enum sim_d10v_regs
|
||||
{
|
||||
SIM_D10V_R0_REGNUM,
|
||||
SIM_D10V_R1_REGNUM,
|
||||
SIM_D10V_R2_REGNUM,
|
||||
SIM_D10V_R3_REGNUM,
|
||||
SIM_D10V_R4_REGNUM,
|
||||
SIM_D10V_R5_REGNUM,
|
||||
SIM_D10V_R6_REGNUM,
|
||||
SIM_D10V_R7_REGNUM,
|
||||
SIM_D10V_R8_REGNUM,
|
||||
SIM_D10V_R9_REGNUM,
|
||||
SIM_D10V_R10_REGNUM,
|
||||
SIM_D10V_R11_REGNUM,
|
||||
SIM_D10V_R12_REGNUM,
|
||||
SIM_D10V_R13_REGNUM,
|
||||
SIM_D10V_R14_REGNUM,
|
||||
SIM_D10V_R15_REGNUM,
|
||||
SIM_D10V_CR0_REGNUM,
|
||||
SIM_D10V_CR1_REGNUM,
|
||||
SIM_D10V_CR2_REGNUM,
|
||||
SIM_D10V_CR3_REGNUM,
|
||||
SIM_D10V_CR4_REGNUM,
|
||||
SIM_D10V_CR5_REGNUM,
|
||||
SIM_D10V_CR6_REGNUM,
|
||||
SIM_D10V_CR7_REGNUM,
|
||||
SIM_D10V_CR8_REGNUM,
|
||||
SIM_D10V_CR9_REGNUM,
|
||||
SIM_D10V_CR10_REGNUM,
|
||||
SIM_D10V_CR11_REGNUM,
|
||||
SIM_D10V_CR12_REGNUM,
|
||||
SIM_D10V_CR13_REGNUM,
|
||||
SIM_D10V_CR14_REGNUM,
|
||||
SIM_D10V_CR15_REGNUM,
|
||||
SIM_D10V_A0_REGNUM,
|
||||
SIM_D10V_A1_REGNUM,
|
||||
SIM_D10V_SPI_REGNUM,
|
||||
SIM_D10V_SPU_REGNUM,
|
||||
SIM_D10V_IMAP0_REGNUM,
|
||||
SIM_D10V_IMAP1_REGNUM,
|
||||
SIM_D10V_DMAP0_REGNUM,
|
||||
SIM_D10V_DMAP1_REGNUM,
|
||||
SIM_D10V_DMAP2_REGNUM,
|
||||
SIM_D10V_DMAP3_REGNUM,
|
||||
SIM_D10V_TS2_DMAP_REGNUM
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
SIM_D10V_R0_REGNUM = 0,
|
||||
SIM_D10V_CR0_REGNUM = 16,
|
||||
SIM_D10V_A0_REGNUM = 32,
|
||||
SIM_D10V_SPI_REGNUM = 34,
|
||||
SIM_D10V_SPU_REGNUM = 35,
|
||||
SIM_D10V_IMAP0_REGNUM = 36,
|
||||
SIM_D10V_DMAP0_REGNUM = 38,
|
||||
SIM_D10V_TS2_DMAP_REGNUM = 40
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
SIM_D10V_NR_R_REGS = 16,
|
||||
SIM_D10V_NR_A_REGS = 2,
|
||||
SIM_D10V_NR_IMAP_REGS = 2,
|
||||
SIM_D10V_NR_DMAP_REGS = 4,
|
||||
SIM_D10V_NR_CR_REGS = 16
|
||||
};
|
||||
{
|
||||
SIM_D10V_NR_R_REGS = 16,
|
||||
SIM_D10V_NR_A_REGS = 2,
|
||||
SIM_D10V_NR_IMAP_REGS = 2,
|
||||
SIM_D10V_NR_DMAP_REGS = 4,
|
||||
SIM_D10V_NR_CR_REGS = 16
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -105,16 +105,17 @@ struct option
|
||||
declaration without arguments. If it is 0, we checked and failed
|
||||
to find the declaration so provide a fully prototyped one. If it
|
||||
is 1, we found it so don't provide any declaration at all. */
|
||||
#if defined (__GNU_LIBRARY__) || (defined (HAVE_DECL_GETOPT) && !HAVE_DECL_GETOPT)
|
||||
#if !HAVE_DECL_GETOPT
|
||||
#if defined (__GNU_LIBRARY__) || defined (HAVE_DECL_GETOPT)
|
||||
/* Many other libraries have conflicting prototypes for getopt, with
|
||||
differences in the consts, in stdlib.h. To avoid compilation
|
||||
errors, only prototype getopt for the GNU C library. */
|
||||
extern int getopt (int argc, char *const *argv, const char *shortopts);
|
||||
#else /* not __GNU_LIBRARY__ */
|
||||
# if !defined (HAVE_DECL_GETOPT)
|
||||
#else
|
||||
extern int getopt ();
|
||||
# endif
|
||||
#endif /* __GNU_LIBRARY__ */
|
||||
#endif
|
||||
#endif /* !HAVE_DECL_GETOPT */
|
||||
|
||||
extern int getopt_long (int argc, char *const *argv, const char *shortopts,
|
||||
const struct option *longopts, int *longind);
|
||||
extern int getopt_long_only (int argc, char *const *argv,
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* An expandable hash tables datatype.
|
||||
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Vladimir Makarov (vmakarov@cygnus.com).
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
@ -36,7 +36,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
|
||||
#ifndef GTY
|
||||
#define GTY(X)
|
||||
#endif
|
||||
|
||||
/* The type for a hash code. */
|
||||
typedef unsigned int hashval_t;
|
||||
@ -63,12 +67,21 @@ typedef void (*htab_del) PARAMS ((void *));
|
||||
htab_traverse. Return 1 to continue scan, 0 to stop. */
|
||||
typedef int (*htab_trav) PARAMS ((void **, void *));
|
||||
|
||||
/* Memory-allocation function, with the same functionality as calloc().
|
||||
Iff it returns NULL, the hash table implementation will pass an error
|
||||
code back to the user, so if your code doesn't handle errors,
|
||||
best if you use xcalloc instead. */
|
||||
typedef PTR (*htab_alloc) PARAMS ((size_t, size_t));
|
||||
|
||||
/* We also need a free() routine. */
|
||||
typedef void (*htab_free) PARAMS ((PTR));
|
||||
|
||||
/* Hash tables are of the following type. The structure
|
||||
(implementation) of this type is not needed for using the hash
|
||||
tables. All work with hash table should be executed only through
|
||||
functions mentioned below. */
|
||||
|
||||
struct htab
|
||||
struct htab GTY(())
|
||||
{
|
||||
/* Pointer to hash function. */
|
||||
htab_hash hash_f;
|
||||
@ -80,7 +93,7 @@ struct htab
|
||||
htab_del del_f;
|
||||
|
||||
/* Table itself. */
|
||||
PTR *entries;
|
||||
PTR * GTY ((use_param (""), length ("%h.size"))) entries;
|
||||
|
||||
/* Current size (in entries) of the hash table */
|
||||
size_t size;
|
||||
@ -99,9 +112,9 @@ struct htab
|
||||
of collisions fixed for time of work with the hash table. */
|
||||
unsigned int collisions;
|
||||
|
||||
/* This is non-zero if we are allowed to return NULL for function calls
|
||||
that allocate memory. */
|
||||
int return_allocation_failure;
|
||||
/* Pointers to allocate/free functions. */
|
||||
htab_alloc alloc_f;
|
||||
htab_free free_f;
|
||||
};
|
||||
|
||||
typedef struct htab *htab_t;
|
||||
@ -111,14 +124,14 @@ enum insert_option {NO_INSERT, INSERT};
|
||||
|
||||
/* The prototypes of the package functions. */
|
||||
|
||||
extern htab_t htab_create PARAMS ((size_t, htab_hash,
|
||||
htab_eq, htab_del));
|
||||
extern htab_t htab_create_alloc PARAMS ((size_t, htab_hash,
|
||||
htab_eq, htab_del,
|
||||
htab_alloc, htab_free));
|
||||
|
||||
/* Backward-compatibility functions. */
|
||||
extern htab_t htab_create PARAMS ((size_t, htab_hash, htab_eq, htab_del));
|
||||
extern htab_t htab_try_create PARAMS ((size_t, htab_hash, htab_eq, htab_del));
|
||||
|
||||
/* This function is like htab_create, but may return NULL if memory
|
||||
allocation fails, and also signals that htab_find_slot_with_hash and
|
||||
htab_find_slot are allowed to return NULL when inserting. */
|
||||
extern htab_t htab_try_create PARAMS ((size_t, htab_hash,
|
||||
htab_eq, htab_del));
|
||||
extern void htab_delete PARAMS ((htab_t));
|
||||
extern void htab_empty PARAMS ((htab_t));
|
||||
|
||||
|
@ -73,12 +73,12 @@ extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC;
|
||||
declaration without arguments. If it is 0, we checked and failed
|
||||
to find the declaration so provide a fully prototyped one. If it
|
||||
is 1, we found it so don't provide any declaration at all. */
|
||||
#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || (defined (HAVE_DECL_BASENAME) && !HAVE_DECL_BASENAME)
|
||||
#if !HAVE_DECL_BASENAME
|
||||
#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (HAVE_DECL_BASENAME)
|
||||
extern char *basename PARAMS ((const char *));
|
||||
#else
|
||||
# if !defined (HAVE_DECL_BASENAME)
|
||||
extern char *basename ();
|
||||
# endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* A well-defined basename () that is always compiled in. */
|
||||
|
@ -1,3 +1,28 @@
|
||||
2002-07-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
||||
|
||||
* mips.h (INSN_MIPS16): New define.
|
||||
|
||||
2002-07-08 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* i386.h: Remove IgnoreSize from movsx and movzx.
|
||||
|
||||
2002-06-08 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* a29k.h: Replace CONST with const.
|
||||
(CONST): Don't define.
|
||||
* convex.h: Replace CONST with const.
|
||||
(CONST): Don't define.
|
||||
* dlx.h: Replace CONST with const.
|
||||
* or32.h (CONST): Don't define.
|
||||
|
||||
2002-05-30 Chris G. Demetriou <cgd@broadcom.com>
|
||||
|
||||
* mips.h (OP_SH_ALN, OP_MASK_ALN, OP_SH_VSEL, OP_MASK_VSEL)
|
||||
(MDMX_FMTSEL_IMM_QH, MDMX_FMTSEL_IMM_OB, MDMX_FMTSEL_VEC_QH)
|
||||
(MDMX_FMTSEL_VEC_OB, INSN_READ_MDMX_ACC, INSN_WRITE_MDMX_ACC)
|
||||
(INSN_MDMX): New constants, for MDMX support.
|
||||
(opcode character list): Add "O", "Q", "X", "Y", and "Z" for MDMX.
|
||||
|
||||
2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
|
||||
|
||||
* dlx.h: New file.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Table of opcodes for the AMD 29000 family.
|
||||
Copyright 1990, 1991, 1993, 1994 Free Software Foundation, Inc.
|
||||
Copyright 1990, 1991, 1993, 1994, 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB and GAS.
|
||||
|
||||
@ -62,11 +62,7 @@ struct a29k_opcode {
|
||||
char *args;
|
||||
};
|
||||
|
||||
#ifndef CONST
|
||||
#define CONST
|
||||
#endif /* CONST */
|
||||
|
||||
static CONST struct a29k_opcode a29k_opcodes[] =
|
||||
static const struct a29k_opcode a29k_opcodes[] =
|
||||
{
|
||||
|
||||
{ "add", 0x14000000, "c,a,b" },
|
||||
@ -282,4 +278,4 @@ static CONST struct a29k_opcode a29k_opcodes[] =
|
||||
if we've run off the end of the table. */
|
||||
};
|
||||
|
||||
CONST unsigned int num_opcodes = (((sizeof a29k_opcodes) / (sizeof a29k_opcodes[0])) - 1);
|
||||
const unsigned int num_opcodes = (((sizeof a29k_opcodes) / (sizeof a29k_opcodes[0])) - 1);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Information for instruction disassembly on the Convex.
|
||||
Copyright 1989, 1993 Free Software Foundation, Inc.
|
||||
Copyright 1989, 1993, 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
@ -17,10 +17,6 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef CONST
|
||||
#define CONST
|
||||
#endif /* CONST */
|
||||
|
||||
#define xxx 0
|
||||
#define rrr 1
|
||||
#define rr 2
|
||||
@ -67,7 +63,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
#define CPUID 20
|
||||
#define TID 21
|
||||
|
||||
CONST char *op[] = {
|
||||
const char *op[] = {
|
||||
"",
|
||||
"v0\0v1\0v2\0v3\0v4\0v5\0v6\0v7",
|
||||
"s0\0s1\0s2\0s3\0s4\0s5\0s6\0s7",
|
||||
@ -92,7 +88,7 @@ CONST char *op[] = {
|
||||
"tid",
|
||||
};
|
||||
|
||||
CONST struct formstr format0[] = {
|
||||
const struct formstr format0[] = {
|
||||
{0,0,rrr,V,S,S}, /* mov */
|
||||
{0,0,rrr,S,S,V}, /* mov */
|
||||
{1,1,rrr,V,V,V}, /* merg.t */
|
||||
@ -159,7 +155,7 @@ CONST struct formstr format0[] = {
|
||||
{4,8,rrr,V,S,V}, /* div.l */
|
||||
};
|
||||
|
||||
CONST struct formstr format1[] = {
|
||||
const struct formstr format1[] = {
|
||||
{11,0,xxx,0,0,0}, /* exit */
|
||||
{12,0,a3,0,0,0}, /* jmp */
|
||||
{13,2,a3,0,0,0}, /* jmpi.f */
|
||||
@ -226,7 +222,7 @@ CONST struct formstr format1[] = {
|
||||
{21,8,a2r,V,0,0}, /* st.l */
|
||||
};
|
||||
|
||||
CONST struct formstr format2[] = {
|
||||
const struct formstr format2[] = {
|
||||
{28,5,rr,A,A,0}, /* cvtw.b */
|
||||
{28,6,rr,A,A,0}, /* cvtw.h */
|
||||
{29,7,rr,A,A,0}, /* cvtb.w */
|
||||
@ -357,7 +353,7 @@ CONST struct formstr format2[] = {
|
||||
{4,8,rr,S,S,0}, /* div.l */
|
||||
};
|
||||
|
||||
CONST struct formstr format3[] = {
|
||||
const struct formstr format3[] = {
|
||||
{32,3,rr,V,V,0}, /* cvtd.s */
|
||||
{31,4,rr,V,V,0}, /* cvts.d */
|
||||
{33,4,rr,V,V,0}, /* cvtl.d */
|
||||
@ -424,7 +420,7 @@ CONST struct formstr format3[] = {
|
||||
{43,8,rr,S,S,0}, /* neg.l */
|
||||
};
|
||||
|
||||
CONST struct formstr format4[] = {
|
||||
const struct formstr format4[] = {
|
||||
{46,0,nops,0,0,0}, /* nop */
|
||||
{47,0,pcrel,0,0,0}, /* br */
|
||||
{48,2,pcrel,0,0,0}, /* bri.f */
|
||||
@ -435,7 +431,7 @@ CONST struct formstr format4[] = {
|
||||
{50,1,pcrel,0,0,0}, /* brs.t */
|
||||
};
|
||||
|
||||
CONST struct formstr format5[] = {
|
||||
const struct formstr format5[] = {
|
||||
{51,5,rr,V,V,0}, /* ldvi.b */
|
||||
{51,6,rr,V,V,0}, /* ldvi.h */
|
||||
{51,7,rr,V,V,0}, /* ldvi.w */
|
||||
@ -454,7 +450,7 @@ CONST struct formstr format5[] = {
|
||||
{52,8,rxr,S,V,0}, /* stvi.l */
|
||||
};
|
||||
|
||||
CONST struct formstr format6[] = {
|
||||
const struct formstr format6[] = {
|
||||
{53,0,r,A,0,0}, /* ldsdr */
|
||||
{54,0,r,A,0,0}, /* ldkdr */
|
||||
{55,3,r,S,0,0}, /* ln.s */
|
||||
@ -521,7 +517,7 @@ CONST struct formstr format6[] = {
|
||||
{83,4,r,S,0,0}, /* atan.d */
|
||||
};
|
||||
|
||||
CONST struct formstr format7[] = {
|
||||
const struct formstr format7[] = {
|
||||
{84,5,r,V,0,0}, /* sum.b */
|
||||
{84,6,r,V,0,0}, /* sum.h */
|
||||
{84,7,r,V,0,0}, /* sum.w */
|
||||
@ -556,11 +552,11 @@ CONST struct formstr format7[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr formatx[] = {
|
||||
const struct formstr formatx[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr format1a[] = {
|
||||
const struct formstr format1a[] = {
|
||||
{91,0,imr,A,0,0}, /* halt */
|
||||
{92,0,a4,0,0,0}, /* sysc */
|
||||
{18,6,imr,A,0,0}, /* ld.h */
|
||||
@ -595,7 +591,7 @@ CONST struct formstr format1a[] = {
|
||||
{41,7,imr,A,0,0}, /* lt.w */
|
||||
};
|
||||
|
||||
CONST struct formstr format1b[] = {
|
||||
const struct formstr format1b[] = {
|
||||
{18,4,imr,S,0,0}, /* ld.d */
|
||||
{18,10,imr,S,0,0}, /* ld.u */
|
||||
{18,8,imr,S,0,0}, /* ld.l */
|
||||
@ -630,7 +626,7 @@ CONST struct formstr format1b[] = {
|
||||
{41,7,imr,S,0,0}, /* lt.w */
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format0[] = {
|
||||
const struct formstr e0_format0[] = {
|
||||
{10,3,rrr,S,V,V}, /* sub.s */
|
||||
{10,4,rrr,S,V,V}, /* sub.d */
|
||||
{4,3,rrr,S,V,V}, /* div.s */
|
||||
@ -697,7 +693,7 @@ CONST struct formstr e0_format0[] = {
|
||||
{4,16,rrr,V,S,V}, /* div.l.f */
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format1[] = {
|
||||
const struct formstr e0_format1[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{94,0,a3,0,0,0}, /* tst */
|
||||
{95,0,a3,0,0,0}, /* lck */
|
||||
@ -764,7 +760,7 @@ CONST struct formstr e0_format1[] = {
|
||||
{21,16,a2r,V,0,0}, /* st.l.f */
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format2[] = {
|
||||
const struct formstr e0_format2[] = {
|
||||
{28,5,rr,V,V,0}, /* cvtw.b */
|
||||
{28,6,rr,V,V,0}, /* cvtw.h */
|
||||
{29,7,rr,V,V,0}, /* cvtb.w */
|
||||
@ -895,7 +891,7 @@ CONST struct formstr e0_format2[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format3[] = {
|
||||
const struct formstr e0_format3[] = {
|
||||
{32,11,rr,V,V,0}, /* cvtd.s.f */
|
||||
{31,12,rr,V,V,0}, /* cvts.d.f */
|
||||
{33,12,rr,V,V,0}, /* cvtl.d.f */
|
||||
@ -962,7 +958,7 @@ CONST struct formstr e0_format3[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format4[] = {
|
||||
const struct formstr e0_format4[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -973,7 +969,7 @@ CONST struct formstr e0_format4[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format5[] = {
|
||||
const struct formstr e0_format5[] = {
|
||||
{51,13,rr,V,V,0}, /* ldvi.b.f */
|
||||
{51,14,rr,V,V,0}, /* ldvi.h.f */
|
||||
{51,15,rr,V,V,0}, /* ldvi.w.f */
|
||||
@ -992,7 +988,7 @@ CONST struct formstr e0_format5[] = {
|
||||
{52,16,rxr,S,V,0}, /* stvi.l.f */
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format6[] = {
|
||||
const struct formstr e0_format6[] = {
|
||||
{0,0,rxl,S,CIR,0}, /* mov */
|
||||
{0,0,lr,CIR,S,0}, /* mov */
|
||||
{0,0,lr,TOC,S,0}, /* mov */
|
||||
@ -1059,7 +1055,7 @@ CONST struct formstr e0_format6[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e0_format7[] = {
|
||||
const struct formstr e0_format7[] = {
|
||||
{84,13,r,V,0,0}, /* sum.b.f */
|
||||
{84,14,r,V,0,0}, /* sum.h.f */
|
||||
{84,15,r,V,0,0}, /* sum.w.f */
|
||||
@ -1094,7 +1090,7 @@ CONST struct formstr e0_format7[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format0[] = {
|
||||
const struct formstr e1_format0[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -1161,7 +1157,7 @@ CONST struct formstr e1_format0[] = {
|
||||
{4,23,rrr,V,S,V}, /* div.l.t */
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format1[] = {
|
||||
const struct formstr e1_format1[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -1228,7 +1224,7 @@ CONST struct formstr e1_format1[] = {
|
||||
{21,23,a2r,V,0,0}, /* st.l.t */
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format2[] = {
|
||||
const struct formstr e1_format2[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -1359,7 +1355,7 @@ CONST struct formstr e1_format2[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format3[] = {
|
||||
const struct formstr e1_format3[] = {
|
||||
{32,18,rr,V,V,0}, /* cvtd.s.t */
|
||||
{31,19,rr,V,V,0}, /* cvts.d.t */
|
||||
{33,19,rr,V,V,0}, /* cvtl.d.t */
|
||||
@ -1426,7 +1422,7 @@ CONST struct formstr e1_format3[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format4[] = {
|
||||
const struct formstr e1_format4[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -1437,7 +1433,7 @@ CONST struct formstr e1_format4[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format5[] = {
|
||||
const struct formstr e1_format5[] = {
|
||||
{51,20,rr,V,V,0}, /* ldvi.b.t */
|
||||
{51,21,rr,V,V,0}, /* ldvi.h.t */
|
||||
{51,22,rr,V,V,0}, /* ldvi.w.t */
|
||||
@ -1456,7 +1452,7 @@ CONST struct formstr e1_format5[] = {
|
||||
{52,23,rxr,S,V,0}, /* stvi.l.t */
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format6[] = {
|
||||
const struct formstr e1_format6[] = {
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
{0,0,0,0,0,0},
|
||||
@ -1523,7 +1519,7 @@ CONST struct formstr e1_format6[] = {
|
||||
{0,0,0,0,0,0},
|
||||
};
|
||||
|
||||
CONST struct formstr e1_format7[] = {
|
||||
const struct formstr e1_format7[] = {
|
||||
{84,20,r,V,0,0}, /* sum.b.t */
|
||||
{84,21,r,V,0,0}, /* sum.h.t */
|
||||
{84,22,r,V,0,0}, /* sum.w.t */
|
||||
|
@ -163,7 +163,7 @@ struct dlx_opcode
|
||||
char *args;
|
||||
};
|
||||
|
||||
static CONST struct dlx_opcode dlx_opcodes[] =
|
||||
static const struct dlx_opcode dlx_opcodes[] =
|
||||
{
|
||||
/* Arithmetic and Logic R-TYPE instructions. */
|
||||
{ "nop", (ALUOP|NOPF), "N" }, /* NOP */
|
||||
|
@ -121,9 +121,9 @@ static const template i386_optab[] = {
|
||||
{"movslq", 2, 0x63, X, Cpu64, NoSuf|Modrm|Rex64, { Reg32|WordMem, Reg64, 0} },
|
||||
/* Intel Syntax next 5 insns */
|
||||
{"movsx", 2, 0x0fbe, X, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, WordReg, 0} },
|
||||
{"movsx", 2, 0x0fbf, X, Cpu386, w_Suf|Modrm|IgnoreSize, { Reg16|ShortMem, Reg32, 0} },
|
||||
{"movsx", 2, 0x0fbf, X, Cpu386, w_Suf|Modrm, { Reg16|ShortMem, Reg32, 0} },
|
||||
{"movsx", 2, 0x0fbe, X, Cpu64, b_Suf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
|
||||
{"movsx", 2, 0x0fbf, X, Cpu64, w_Suf|Modrm|IgnoreSize|Rex64, { Reg16|ShortMem, Reg64, 0} },
|
||||
{"movsx", 2, 0x0fbf, X, Cpu64, w_Suf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
|
||||
{"movsx", 2, 0x63, X, Cpu64, l_Suf|Modrm|Rex64, { Reg32|WordMem, Reg64, 0} },
|
||||
|
||||
/* Move with zero extend. */
|
||||
@ -135,11 +135,11 @@ static const template i386_optab[] = {
|
||||
{"movzwq", 2, 0x0fb7, X, Cpu64, NoSuf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
|
||||
/* Intel Syntax next 4 insns */
|
||||
{"movzx", 2, 0x0fb6, X, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, WordReg, 0} },
|
||||
{"movzx", 2, 0x0fb7, X, Cpu386, w_Suf|Modrm|IgnoreSize, { Reg16|ShortMem, Reg32, 0} },
|
||||
{"movzx", 2, 0x0fb7, X, Cpu386, w_Suf|Modrm, { Reg16|ShortMem, Reg32, 0} },
|
||||
/* These instructions are not particulary usefull, since the zero extend
|
||||
32->64 is implicit, but we can encode them. */
|
||||
{"movzx", 2, 0x0fb6, X, Cpu386, b_Suf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
|
||||
{"movzx", 2, 0x0fb7, X, Cpu386, w_Suf|Modrm|IgnoreSize|Rex64, { Reg16|ShortMem, Reg64, 0} },
|
||||
{"movzx", 2, 0x0fb7, X, Cpu386, w_Suf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
|
||||
|
||||
/* Push instructions. */
|
||||
{"push", 1, 0x50, X, CpuNo64, wl_Suf|ShortForm|DefaultSize, { WordReg, 0, 0 } },
|
||||
|
@ -133,6 +133,16 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
#define OP_MASK_SEL 0x7 /* The sel field of mfcZ and mtcZ. */
|
||||
#define OP_SH_CODE19 6 /* 19 bit wait code. */
|
||||
#define OP_MASK_CODE19 0x7ffff
|
||||
#define OP_SH_ALN 21
|
||||
#define OP_MASK_ALN 0x7
|
||||
#define OP_SH_VSEL 21
|
||||
#define OP_MASK_VSEL 0x1f
|
||||
|
||||
/* Values in the 'VSEL' field. */
|
||||
#define MDMX_FMTSEL_IMM_QH 0x1d
|
||||
#define MDMX_FMTSEL_IMM_OB 0x1e
|
||||
#define MDMX_FMTSEL_VEC_QH 0x15
|
||||
#define MDMX_FMTSEL_VEC_OB 0x16
|
||||
|
||||
/* This structure holds information for a particular instruction. */
|
||||
|
||||
@ -220,13 +230,21 @@ struct mips_opcode
|
||||
"f" 32 bit floating point constant
|
||||
"l" 32 bit floating point constant in .lit4
|
||||
|
||||
MDMX instruction operands (note that while these use the FP register
|
||||
fields, they accept both $fN and $vN names for the registers):
|
||||
"O" MDMX alignment offset (OP_*_ALN)
|
||||
"Q" MDMX vector/scalar/immediate source (OP_*_VSEL and OP_*_FT)
|
||||
"X" MDMX destination register (OP_*_FD)
|
||||
"Y" MDMX source register (OP_*_FS)
|
||||
"Z" MDMX source register (OP_*_FT)
|
||||
|
||||
Other:
|
||||
"()" parens surrounding optional value
|
||||
"," separates operands
|
||||
|
||||
Characters used so far, for quick reference when adding more:
|
||||
"<>(),"
|
||||
"ABCDEFGHIJLMNPRSTUVW"
|
||||
"ABCDEFGHIJLMNOPQRSTUVWXYZ"
|
||||
"abcdfhijklopqrstuvwxz"
|
||||
*/
|
||||
|
||||
@ -297,6 +315,10 @@ struct mips_opcode
|
||||
#define INSN_MULT 0x40000000
|
||||
/* Instruction synchronize shared memory. */
|
||||
#define INSN_SYNC 0x80000000
|
||||
/* Instruction reads MDMX accumulator. XXX FIXME: No bits left! */
|
||||
#define INSN_READ_MDMX_ACC 0
|
||||
/* Instruction writes MDMX accumulator. XXX FIXME: No bits left! */
|
||||
#define INSN_WRITE_MDMX_ACC 0
|
||||
|
||||
/* Instruction is actually a macro. It should be ignored by the
|
||||
disassembler, and requires special treatment by the assembler. */
|
||||
@ -317,9 +339,14 @@ struct mips_opcode
|
||||
#define INSN_ISA64 0x00000400
|
||||
|
||||
/* Masks used for MIPS-defined ASEs. */
|
||||
#define INSN_ASE_MASK 0x0000f000
|
||||
|
||||
/* MIPS 16 ASE */
|
||||
#define INSN_MIPS16 0x00002000
|
||||
/* MIPS-3D ASE */
|
||||
#define INSN_MIPS3D 0x00004000
|
||||
/* MDMX ASE */
|
||||
#define INSN_MDMX 0x00008000
|
||||
|
||||
/* Chip specific instructions. These are bitmasks. */
|
||||
|
||||
|
@ -31,10 +31,6 @@
|
||||
#define PARAMS(x) x
|
||||
#endif
|
||||
|
||||
#ifndef CONST
|
||||
#define CONST const
|
||||
#endif
|
||||
|
||||
#define MAX_GPRS 32
|
||||
#define PAGE_SIZE 4096
|
||||
#undef __HALF_WORD_INSN__
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* List implementation of a partition of consecutive integers.
|
||||
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by CodeSourcery, LLC.
|
||||
|
||||
This file is part of GCC.
|
||||
@ -40,7 +40,7 @@
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
#include <stdio.h>
|
||||
|
||||
struct partition_elem
|
||||
|
@ -1,354 +0,0 @@
|
||||
/* This file defines the interface between the simulator and gdb.
|
||||
Copyright 1993, 1994, 1996, 1997, 1998, 2000
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program 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 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
#if !defined (REMOTE_SIM_H)
|
||||
#define REMOTE_SIM_H 1
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* This file is used when building stand-alone simulators, so isolate this
|
||||
file from gdb. */
|
||||
|
||||
/* Pick up CORE_ADDR_TYPE if defined (from gdb), otherwise use same value as
|
||||
gdb does (unsigned int - from defs.h). */
|
||||
|
||||
#ifndef CORE_ADDR_TYPE
|
||||
typedef unsigned int SIM_ADDR;
|
||||
#else
|
||||
typedef CORE_ADDR_TYPE SIM_ADDR;
|
||||
#endif
|
||||
|
||||
|
||||
/* Semi-opaque type used as result of sim_open and passed back to all
|
||||
other routines. "desc" is short for "descriptor".
|
||||
It is up to each simulator to define `sim_state'. */
|
||||
|
||||
typedef struct sim_state *SIM_DESC;
|
||||
|
||||
|
||||
/* Values for `kind' arg to sim_open. */
|
||||
|
||||
typedef enum {
|
||||
SIM_OPEN_STANDALONE, /* simulator used standalone (run.c) */
|
||||
SIM_OPEN_DEBUG /* simulator used by debugger (gdb) */
|
||||
} SIM_OPEN_KIND;
|
||||
|
||||
|
||||
/* Return codes from various functions. */
|
||||
|
||||
typedef enum {
|
||||
SIM_RC_FAIL = 0,
|
||||
SIM_RC_OK = 1,
|
||||
SIM_RC_UNKNOWN_BREAKPOINT = 2,
|
||||
SIM_RC_INSUFFICIENT_RESOURCES = 3,
|
||||
SIM_RC_DUPLICATE_BREAKPOINT = 4
|
||||
} SIM_RC;
|
||||
|
||||
|
||||
/* The bfd struct, as an opaque type. */
|
||||
|
||||
struct _bfd;
|
||||
|
||||
|
||||
/* Main simulator entry points. */
|
||||
|
||||
|
||||
/* Create a fully initialized simulator instance.
|
||||
|
||||
(This function is called when the simulator is selected from the
|
||||
gdb command line.)
|
||||
|
||||
KIND specifies how the simulator shall be used. Currently there
|
||||
are only two kinds: stand-alone and debug.
|
||||
|
||||
CALLBACK specifies a standard host callback (defined in callback.h).
|
||||
|
||||
ABFD, when non NULL, designates a target program. The program is
|
||||
not loaded.
|
||||
|
||||
ARGV is a standard ARGV pointer such as that passed from the
|
||||
command line. The syntax of the argument list is is assumed to be
|
||||
``SIM-PROG { SIM-OPTION } [ TARGET-PROGRAM { TARGET-OPTION } ]''.
|
||||
The trailing TARGET-PROGRAM and args are only valid for a
|
||||
stand-alone simulator.
|
||||
|
||||
On success, the result is a non NULL descriptor that shall be
|
||||
passed to the other sim_foo functions. While the simulator
|
||||
configuration can be parameterized by (in decreasing precedence)
|
||||
ARGV's SIM-OPTION, ARGV's TARGET-PROGRAM and the ABFD argument, the
|
||||
successful creation of the simulator shall not dependent on the
|
||||
presence of any of these arguments/options.
|
||||
|
||||
Hardware simulator: The created simulator shall be sufficiently
|
||||
initialized to handle, with out restrictions any client requests
|
||||
(including memory reads/writes, register fetch/stores and a
|
||||
resume).
|
||||
|
||||
Process simulator: that process is not created until a call to
|
||||
sim_create_inferior. FIXME: What should the state of the simulator
|
||||
be? */
|
||||
|
||||
SIM_DESC sim_open PARAMS ((SIM_OPEN_KIND kind, struct host_callback_struct *callback, struct _bfd *abfd, char **argv));
|
||||
|
||||
|
||||
/* Destory a simulator instance.
|
||||
|
||||
QUITTING is non-zero if we cannot hang on errors.
|
||||
|
||||
This may involve freeing target memory and closing any open files
|
||||
and mmap'd areas. You cannot assume sim_kill has already been
|
||||
called. */
|
||||
|
||||
void sim_close PARAMS ((SIM_DESC sd, int quitting));
|
||||
|
||||
|
||||
/* Load program PROG into the simulators memory.
|
||||
|
||||
If ABFD is non-NULL, the bfd for the file has already been opened.
|
||||
The result is a return code indicating success.
|
||||
|
||||
Hardware simulator: Normally, each program section is written into
|
||||
memory according to that sections LMA using physical (direct)
|
||||
addressing. The exception being systems, such as PPC/CHRP, which
|
||||
support more complicated program loaders. A call to this function
|
||||
should not effect the state of the processor registers. Multiple
|
||||
calls to this function are permitted and have an accumulative
|
||||
effect.
|
||||
|
||||
Process simulator: Calls to this function may be ignored.
|
||||
|
||||
FIXME: Most hardware simulators load the image at the VMA using
|
||||
virtual addressing.
|
||||
|
||||
FIXME: For some hardware targets, before a loaded program can be
|
||||
executed, it requires the manipulation of VM registers and tables.
|
||||
Such manipulation should probably (?) occure in
|
||||
sim_create_inferior. */
|
||||
|
||||
SIM_RC sim_load PARAMS ((SIM_DESC sd, char *prog, struct _bfd *abfd, int from_tty));
|
||||
|
||||
|
||||
/* Prepare to run the simulated program.
|
||||
|
||||
ABFD, if not NULL, provides initial processor state information.
|
||||
ARGV and ENV, if non NULL, are NULL terminated lists of pointers.
|
||||
|
||||
Hardware simulator: This function shall initialize the processor
|
||||
registers to a known value. The program counter and possibly stack
|
||||
pointer shall be set using information obtained from ABFD (or
|
||||
hardware reset defaults). ARGV and ENV, dependant on the target
|
||||
ABI, may be written to memory.
|
||||
|
||||
Process simulator: After a call to this function, a new process
|
||||
instance shall exist. The TEXT, DATA, BSS and stack regions shall
|
||||
all be initialized, ARGV and ENV shall be written to process
|
||||
address space (according to the applicable ABI) and the program
|
||||
counter and stack pointer set accordingly. */
|
||||
|
||||
SIM_RC sim_create_inferior PARAMS ((SIM_DESC sd, struct _bfd *abfd, char **argv, char **env));
|
||||
|
||||
|
||||
/* Fetch LENGTH bytes of the simulated program's memory. Start fetch
|
||||
at virtual address MEM and store in BUF. Result is number of bytes
|
||||
read, or zero if error. */
|
||||
|
||||
int sim_read PARAMS ((SIM_DESC sd, SIM_ADDR mem, unsigned char *buf, int length));
|
||||
|
||||
|
||||
/* Store LENGTH bytes from BUF into the simulated program's
|
||||
memory. Store bytes starting at virtual address MEM. Result is
|
||||
number of bytes write, or zero if error. */
|
||||
|
||||
int sim_write PARAMS ((SIM_DESC sd, SIM_ADDR mem, unsigned char *buf, int length));
|
||||
|
||||
|
||||
/* Fetch register REGNO storing its raw (target endian) value in the
|
||||
LENGTH byte buffer BUF. Return the actual size of the register or
|
||||
zero if REGNO is not applicable.
|
||||
|
||||
Legacy implementations ignore LENGTH and always return -1.
|
||||
|
||||
If LENGTH does not match the size of REGNO no data is transfered
|
||||
(the actual register size is still returned). */
|
||||
|
||||
int sim_fetch_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf, int length));
|
||||
|
||||
|
||||
/* Store register REGNO from the raw (target endian) value in BUF.
|
||||
Return the actual size of the register or zero if REGNO is not
|
||||
applicable.
|
||||
|
||||
Legacy implementations ignore LENGTH and always return -1.
|
||||
|
||||
If LENGTH does not match the size of REGNO no data is transfered
|
||||
(the actual register size is still returned). */
|
||||
|
||||
int sim_store_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf, int length));
|
||||
|
||||
|
||||
/* Print whatever statistics the simulator has collected.
|
||||
|
||||
VERBOSE is currently unused and must always be zero. */
|
||||
|
||||
void sim_info PARAMS ((SIM_DESC sd, int verbose));
|
||||
|
||||
|
||||
/* Run (or resume) the simulated program.
|
||||
|
||||
STEP, when non-zero indicates that only a single simulator cycle
|
||||
should be emulated.
|
||||
|
||||
SIGGNAL, if non-zero is a (HOST) SIGRC value indicating the type of
|
||||
event (hardware interrupt, signal) to be delivered to the simulated
|
||||
program.
|
||||
|
||||
Hardware simulator: If the SIGRC value returned by
|
||||
sim_stop_reason() is passed back to the simulator via SIGGNAL then
|
||||
the hardware simulator shall correctly deliver the hardware event
|
||||
indicated by that signal. If a value of zero is passed in then the
|
||||
simulation will continue as if there were no outstanding signal.
|
||||
The effect of any other SIGGNAL value is is implementation
|
||||
dependant.
|
||||
|
||||
Process simulator: If SIGRC is non-zero then the corresponding
|
||||
signal is delivered to the simulated program and execution is then
|
||||
continued. A zero SIGRC value indicates that the program should
|
||||
continue as normal. */
|
||||
|
||||
void sim_resume PARAMS ((SIM_DESC sd, int step, int siggnal));
|
||||
|
||||
|
||||
/* Asynchronous request to stop the simulation.
|
||||
A nonzero return indicates that the simulator is able to handle
|
||||
the request */
|
||||
|
||||
int sim_stop PARAMS ((SIM_DESC sd));
|
||||
|
||||
|
||||
/* Fetch the REASON why the program stopped.
|
||||
|
||||
SIM_EXITED: The program has terminated. SIGRC indicates the target
|
||||
dependant exit status.
|
||||
|
||||
SIM_STOPPED: The program has stopped. SIGRC uses the host's signal
|
||||
numbering as a way of identifying the reaon: program interrupted by
|
||||
user via a sim_stop request (SIGINT); a breakpoint instruction
|
||||
(SIGTRAP); a completed single step (SIGTRAP); an internal error
|
||||
condition (SIGABRT); an illegal instruction (SIGILL); Access to an
|
||||
undefined memory region (SIGSEGV); Mis-aligned memory access
|
||||
(SIGBUS). For some signals information in addition to the signal
|
||||
number may be retained by the simulator (e.g. offending address),
|
||||
that information is not directly accessable via this interface.
|
||||
|
||||
SIM_SIGNALLED: The program has been terminated by a signal. The
|
||||
simulator has encountered target code that causes the the program
|
||||
to exit with signal SIGRC.
|
||||
|
||||
SIM_RUNNING, SIM_POLLING: The return of one of these values
|
||||
indicates a problem internal to the simulator. */
|
||||
|
||||
enum sim_stop { sim_running, sim_polling, sim_exited, sim_stopped, sim_signalled };
|
||||
|
||||
void sim_stop_reason PARAMS ((SIM_DESC sd, enum sim_stop *reason, int *sigrc));
|
||||
|
||||
|
||||
/* Passthru for other commands that the simulator might support.
|
||||
Simulators should be prepared to deal with any combination of NULL
|
||||
or empty CMD. */
|
||||
|
||||
void sim_do_command PARAMS ((SIM_DESC sd, char *cmd));
|
||||
|
||||
/* Call these functions to set and clear breakpoints at ADDR. */
|
||||
|
||||
SIM_RC sim_set_breakpoint PARAMS ((SIM_DESC sd, SIM_ADDR addr));
|
||||
SIM_RC sim_clear_breakpoint PARAMS ((SIM_DESC sd, SIM_ADDR addr));
|
||||
SIM_RC sim_clear_all_breakpoints PARAMS ((SIM_DESC sd));
|
||||
|
||||
/* These functions are used to enable and disable breakpoints. */
|
||||
|
||||
SIM_RC sim_enable_breakpoint PARAMS ((SIM_DESC sd, SIM_ADDR addr));
|
||||
SIM_RC sim_disable_breakpoint PARAMS ((SIM_DESC sd, SIM_ADDR addr));
|
||||
SIM_RC sim_enable_all_breakpoints PARAMS ((SIM_DESC sd));
|
||||
SIM_RC sim_disable_all_breakpoints PARAMS ((SIM_DESC sd));
|
||||
|
||||
|
||||
/* Provide simulator with a default (global) host_callback_struct.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure does not take a SIM_DESC argument as it is
|
||||
used before sim_open. */
|
||||
|
||||
void sim_set_callbacks PARAMS ((struct host_callback_struct *));
|
||||
|
||||
|
||||
/* Set the size of the simulator memory array.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure does not take a SIM_DESC argument as it is
|
||||
used before sim_open. */
|
||||
|
||||
void sim_size PARAMS ((int i));
|
||||
|
||||
|
||||
/* Single-step simulator with tracing enabled.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
THIS PROCEDURE IS EVEN MORE DEPRECATED THAN SIM_SET_TRACE
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure returns: ``0'' indicating that the simulator should
|
||||
be continued using sim_trace() calls; ``1'' indicating that the
|
||||
simulation has finished. */
|
||||
|
||||
int sim_trace PARAMS ((SIM_DESC sd));
|
||||
|
||||
|
||||
/* Enable tracing.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure returns: ``0'' indicating that the simulator should
|
||||
be continued using sim_trace() calls; ``1'' indicating that the
|
||||
simulation has finished. */
|
||||
|
||||
void sim_set_trace PARAMS ((void));
|
||||
|
||||
|
||||
/* Configure the size of the profile buffer.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure does not take a SIM_DESC argument as it is
|
||||
used before sim_open. */
|
||||
|
||||
void sim_set_profile_size PARAMS ((int n));
|
||||
|
||||
|
||||
/* Kill the running program.
|
||||
THIS PROCEDURE IS DEPRECIATED.
|
||||
GDB and NRUN do not use this interface.
|
||||
This procedure will be replaced as part of the introduction of
|
||||
multi-cpu simulators. */
|
||||
|
||||
void sim_kill PARAMS ((SIM_DESC sd));
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* !defined (REMOTE_SIM_H) */
|
@ -1,5 +1,5 @@
|
||||
/* Sorting algorithms.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Mark Mitchell <mark@codesourcery.com>.
|
||||
|
||||
This file is part of GCC.
|
||||
@ -31,7 +31,7 @@ Boston, MA 02111-1307, USA. */
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
|
||||
/* Sort an array of pointers. */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* A splay-tree datatype.
|
||||
Copyright 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||
Copyright 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Mark Mitchell (mark@markmitchell.com).
|
||||
|
||||
This file is part of GCC.
|
||||
@ -34,7 +34,7 @@ Boston, MA 02111-1307, USA. */
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <ansidecl.h>
|
||||
#include "ansidecl.h"
|
||||
|
||||
/* Use typedefs for the key and data types to facilitate changing
|
||||
these types, if necessary. These types should be sufficiently wide
|
||||
|
19
ltcf-cxx.sh
19
ltcf-cxx.sh
@ -250,11 +250,17 @@ case $host_os in
|
||||
;;
|
||||
hpux*)
|
||||
if test $with_gnu_ld = no; then
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
case "$host_cpu" in
|
||||
ia64*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_shlibpath_var=no ;;
|
||||
*)
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' ;;
|
||||
esac
|
||||
hardcode_direct=yes
|
||||
hardcode_libdir_separator=:
|
||||
export_dynamic_flag_spec='${wl}-E'
|
||||
fi
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes # Not in the search PATH, but as the default
|
||||
# location of the library.
|
||||
|
||||
@ -283,7 +289,14 @@ case $host_os in
|
||||
if test $with_gnu_ld = no; then
|
||||
case "$host_os" in
|
||||
hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
|
||||
*) archive_cmds='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;;
|
||||
*)
|
||||
case "$host_cpu" in
|
||||
ia64*)
|
||||
archive_cmds='$LD -b +h $soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' ;;
|
||||
*)
|
||||
archive_cmds='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
else
|
||||
|
Loading…
x
Reference in New Issue
Block a user