Commit Graph

3454 Commits

Author SHA1 Message Date
thorpej 5903d82b00 Pretty-print the machine-dependent NetBSD ELF core note types. 2002-01-09 05:02:44 +00:00
thorpej 3699fe0e3a Add support for printing of NetBSD ELF core file note types. 2002-01-09 04:46:31 +00:00
wdk f401e7e08b getopt_long option list was incorrect. Apply rev 1.20 diffs from
binutils-current respository.

    2001-06-24  H.J. Lu  <hjl@gnu.org>
        * objcopy.c (strip_main): Revert the change made on 2001-05-30
        by accident.
        (copy_main): Apply the the change made to strip_main on
        2001-05-30 by accident.

strip now passes the argument list as documented.
2002-01-08 06:58:32 +00:00
wiz 6041ec37c2 then -> than.
Diffs already sent back to binutils maintainers.
2002-01-07 14:54:09 +00:00
wiz ca93d68d44 then -> than. 2002-01-07 14:47:37 +00:00
thorpej 92aa2889ec Use mips* rather than mipsel* or mipseb* to set gdb_host_cpu. From
gdb-current.
2002-01-04 21:45:54 +00:00
thorpej 1e7aef64f9 Set gdb_host_cpu to "mips" if mipsel. 2002-01-04 18:41:42 +00:00
thorpej 65b12946ac Overhaul, and add support for ELF core files. 2002-01-04 06:19:31 +00:00
thorpej 6c4e00eadf Apply the patch from:
http://gcc.gnu.org/ml/gcc-patches/2000-06/msg00389.html

ChangeLog for this change (which was never committed to the master
GCC sources; the bug still exists in GCC 3.x!):

2000-05-09  Ethan Solomita  ethan@cs.columbia.edu

	* config/mips/mips.h (FUNCTION_PROFILER): Deal with
	the case where jal is expanded as a macro.

This is done by removing the .reorder/.noreorder, and moving the
call to _mcount to after the stack adjust, thereby letting the
assembler deal with the delay slot, etc.

This fixes profiling with libraries built -mabicalls (default on
NetBSD).

I can't believe how long this problem has been discussed-but-not-fixed
on the GCC mailing list...
2002-01-04 05:29:39 +00:00
cgd 6d4088dbde Convert this code to use read/write rather than mmap followed by read
into the mmap'd region.  (reviewed by thorpej.)

This is done to facilitate use as a host tool on not-necessarily-NetBSD
host systems.  Specifically, it works around problems discovered on
linux (mostly tested on 2.4.2-smp / RH 7.1, but also seen on other
variants) in which mmap(...MAP_SHARED...) on NFS files doesn't work
properly:

74 [hardy] RAMDISK.EB % uname -a
Linux hardy 2.4.2-2smp #1 SMP Sun Apr 8 20:21:34 EDT 2001 i686 unknown
75 [hardy] RAMDISK.EB % cat /etc/issue

Red Hat Linux release 7.1 (Seawolf)
Kernel 2.4.2-2smp on a 2-processor i686

76 [hardy] RAMDISK.EB % df .
Filesystem           1k-blocks      Used Available Use% Mounted on
fs:/home/cgd
                     104857600  98764968   6092632  95% /home/cgd
77 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:41 PST 2001
a1f35f085f130983892933df92d23be4  netbsd
78 [hardy] RAMDISK.EB % nbmdsetimage netbsd ~/proj-local/rd
79 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:49 PST 2001
740cbfb0a8432b7d3a6bf3421655e270  netbsd
80 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:51 PST 2001
a8c60aae879ead6893f074e83c23d70a  netbsd
81 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:54 PST 2001
a8c60aae879ead6893f074e83c23d70a  netbsd
82 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:55 PST 2001
a1f35f085f130983892933df92d23be4  netbsd
83 [hardy] RAMDISK.EB % date ; md5sum netbsd
Thu Dec 27 17:31:57 PST 2001
a1f35f085f130983892933df92d23be4  netbsd
84 [hardy] RAMDISK.EB %

("isn't that cool?")
2002-01-03 06:21:47 +00:00
tron 2ece7637b1 Add "_eh.c" to list of files which are supposed to get cleaned. 2002-01-02 09:17:48 +00:00
thorpej 2135cbaadd Oops, this is NOT a C++ program. 2002-01-01 05:16:18 +00:00
thorpej d68ee9d8e3 Per a suggestion from matthew green, PROG_CXX takes the place of
PROG for C++ programs.
2002-01-01 01:38:25 +00:00
thorpej a156b86123 Set PROG_CXX since these are C++ programs. 2002-01-01 00:27:33 +00:00
thorpej 89b1a9ca73 Introduce 3 new MK* variables that have effect in the USE_NEW_TOOLCHAIN
case:

	MKBFD	If set to "no", disables building of libbfd, libiberty,
		and all things that depend on them (binutils/gas/ld, gdb,
		dbsym, mdsetimage).

	MKGDB	If set to "no", disables bulding of gdb.

	MKGCC	If set to "no", disables building of gcc and the
		gcc-related libraries (libg2c, libgcc, libobjc, libstdc++).

These are useful for building platforms for which either of the following
situations are true:

	(1) You have no userland from which to run toolchain2netbsd
	    in order to build the appropriate toolchain build framework.

	(2) The platform which you are building requires a newer set
	    of tools than are currently in the tree (e.g. x86-64, ia64).
2001-12-31 23:04:11 +00:00
mrg d750ba5f81 this is really libstdc++ 2.8.0 2001-12-30 17:21:19 +00:00
tv f14c689431 Fix %{p*:} botch, as described in toolchain/15024. (What specs need is an
if/then/else type construct....)
2001-12-29 20:24:37 +00:00
lukem efcc9a4c9d * Add user-controlled mk.conf variables
- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)


The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed
2001-12-28 01:32:37 +00:00
mycroft 913449a520 Disable the atexit(_IO_cleanup) for two good reasons:
1) There is already a destructor that does this.  The atexit() is superfluous.
2) If libstdc++ is loaded dynamically by dlopen() and then is removed by
   dlclose(), the pointer is no longer valid and the program would core dump
   at exit() time.  (This caused xmms to core dump at exit when xmms-sid was
   installed, for example.)
NOTE: THIS NEEDS TO BE APPLIED TO THE `TOOLCHAIN' VERSION.
2001-12-24 16:38:19 +00:00
matt 46cf0c1543 Incorporate some gcc3.0 vax.md changes 2001-12-24 01:56:55 +00:00
matt c9073b0a26 Expand VAX ELF relocs into new style (with comments). Nuke OSABI shit. 2001-12-24 01:55:32 +00:00
thorpej 0146257365 Set NOMAN correctly. From Andrew Brown. 2001-12-21 08:06:15 +00:00
thorpej 3778dfc4fd Build as "protoize" and "unprotoize" respectively, not "gcc" (!!). 2001-12-21 08:03:35 +00:00
thorpej f7fd432381 Fixes to alpha_next_pc() (for software single-step):
* jump-format jumps: the target is in RB, so use the RB bits in
  the insn, not the RA bits.
* branch-format displacements are 21 bits; extract all of them, and
  sign-extend correctly.
* For conditional branches, we need to determine whether or not
  the branch is actually taken.
2001-12-21 07:58:47 +00:00
matt fb5f3f3500 Minimal changes/files to get gdb for vax building under the new toolchain. 2001-12-21 06:36:10 +00:00
thorpej 4644cdb471 Implement software single stepping, and enable it for NetBSD/alpha. 2001-12-21 02:57:38 +00:00
thorpej 38b00971f1 Update for Alpha emulation change. 2001-12-21 02:03:20 +00:00
thorpej 1c899ee8d9 Update for changes to alphanbsd-nat.c. 2001-12-21 01:57:42 +00:00
thorpej 011356e8eb Major overhaul, plus support ELF core files. 2001-12-21 01:57:06 +00:00
yamt 3dd7e76ccf fix typo. (.o in SRCS) 2001-12-20 22:18:50 +00:00
thorpej d103096c14 Fixup VERSION. 2001-12-20 18:26:30 +00:00
scw 568cb5d556 Revert the last change following yesterday's commit to ../netbsd.h
(Hi Jason!)
2001-12-20 18:14:35 +00:00
rearnsha 2bc7fae481 Avoid generating code sequences that might cause alignment faults. 2001-12-20 00:50:27 +00:00
thorpej c3af5af42b Redo previous differently: Put the ASM_DECLARE_OBJECT_NAME
and ASM_FINISH_DECLARE_OBJECT macros in <alpha/netbsd.h>,
and remove ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_OBJECT_NAME,
ASM_FINISH_DECLARE_OBJECT, and ASM_DECLARE_FUNCTION_SIZE from
<netbsd.h>.
2001-12-20 00:18:01 +00:00
tv 4c9a2ef7d3 * Add protoize and unprotoize. (Closes PR 6894.)
* Regen files with proper OS names and version numbers.

* Clean up toolchain2netbsd somewhat, to get it ready to be cross-host
  compatible (more work to be done here, but it's getting closer).

* Add framework for gdbreplay and gdbserver, but hold off on enabling these
  by default until low-nbsd.c is verified to work everywhere.
2001-12-19 23:54:16 +00:00
thorpej 19241b97b5 Recent change to <netbsd.h> broke ASM_DECLARE_FUNCTION_NAME. Re-define
it here to what it should be.
2001-12-19 23:30:53 +00:00
rearnsha 0e644c95f7 Implement ATPCS stack-alignment rules, and enable on arm-netbsdelf
configuration.
2001-12-19 23:14:50 +00:00
tv 14691f972b Remove COPTS+=-g. This should be set by the builder, not this Makefile. 2001-12-19 21:55:48 +00:00
tv 0a1ba8ecaa When NETBSD_NATIVE, use the appropriate version of libgcc for the compile
mode:  libgcc_pic.a for -shared, and libgcc_p.a for -p[g].
2001-12-19 21:38:24 +00:00
tv a3aeedcdb7 Tag all version strings with "nb1" to make FSF/binutils/gcc/gdb people
happy.  (This flags the version as deviating from the official FSF
distribution inside the NetBSD source tree.)
2001-12-19 21:32:49 +00:00
tv 7fb95bfb35 Remove iostdio.h from the list of system-installed headers; intended to
address parts of PR toolchain/14896.  This header file is nonstandard
(and doesn't even exist in gcc 3.0); an out-of-the-box gcc build also
doesn't provide the missing functions.  So just drop the .h completely.
2001-12-19 20:52:11 +00:00
scw 37f114189c G/C some #define's which are already in ../netbsd.h.
Gets libgcc compiling again.
2001-12-19 18:14:20 +00:00
thorpej 06811a827d Go back to the nop/unop pattern, and pick up rev. 1.35 from the
master FSF sources (rth):

	* config/tc-alpha.c (alpha_handle_align): Encode unop with RB as $sp.
2001-12-18 00:33:35 +00:00
thorpej cc4beed398 From the master FSF sources, rev. 1.7 (rth):
* alpha-opc.c (unop): Encode with RB as $sp.
2001-12-18 00:31:52 +00:00
thorpej c7af981281 Make a note about what "nop" and "unop" actually are. 2001-12-17 01:51:44 +00:00
thorpej e93b1005a7 Apply rev 1.4 of gnu/dist/gcc/config/sh/sh.h:
fix REGISTER_MOVE_COST bug (gcc original rev. 1.43):

> *sh.h (REGISTER_MOVE_COST): Change PR_REG to PR_REGS
2001-12-16 18:56:45 +00:00
thorpej 3274936f9b Apply rev 1.3 of gnu/dist/gcc/config/sh/sh.h (fix ASM_OUTPUT_REG_PUSH
and ASM_OUTPUT_REG_POP):

fix two bugs:
	- cc1 dumps core when "-pg" is used
	- gas produces a syntax error
2001-12-16 18:54:10 +00:00
thorpej d63c80c2c6 Apply rev. 1.2 of gnu/dist/gcc/config/sh/sh.h:
set DWARF_LINE_MIN_INSTR_LENGTH to 2 because the length of instruction
is fixed to 16bits.
2001-12-16 18:50:16 +00:00
thorpej c8a285e813 Apply rev. 1.7 of gnu/dist/config/sh/sh.c:
apply gcc original rev. 1.59:

 > * config/sh/sh.c (prepare_scc_operands): Apply force_reg to
 > sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't
 > const0_rtx.
2001-12-16 18:47:47 +00:00
thorpej ff7287ad08 Apply change from rev 1.5 of gnu/dist/gcc/config/sh.c:
fix output_ieee_ccmpeq() bug:

- 2nd argument is not rtx but rtx *
- return value of output_ieee_ccmpeq is not void but char *
2001-12-16 18:38:19 +00:00