Commit Graph

3482 Commits

Author SHA1 Message Date
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
scw f87b859f0d After a discussion with Richard Henderson (rth at redhat dot com), add
the patch I posted to tech-toolchain@netbsd.org as a workaround for the
GOT bug whereby the callee-saved register %a5 can be trashed in certain
optimised -fPIC functions.

This may yet need to be fixed a different way, pending input from
Andreas Schwab on his change in revison 1.33 of this file in the
FSF source...

In the meantime, I've built and installed several NetBSD shared libraries
(including libc) with my change and found no problems.
2001-12-16 18:28:15 +00:00
thorpej 037cacf7e2 Define __NO_LEADING_UNDERSCORES__, since this sh-elf toolchain doesn't
use them.
2001-12-16 18:09:46 +00:00
thorpej 75acdbe31a Undo a local change inherited from our local binutils 2.9 that
is not needed in binutils 2.11.
2001-12-16 17:50:56 +00:00
thorpej f6e3c2a3da Make this compile. Still needs work. 2001-12-16 07:26:22 +00:00
thorpej 583334b6ca Avoid infinite #include recursion. 2001-12-16 07:19:42 +00:00
thorpej c17876b1d2 Use the elf64alpha_nbsd linker emulation. 2001-12-16 04:26:17 +00:00
thorpej 7a362db4f3 After discussing the entry point issue w/ rth@redhat.com, add an
elf64alpha_nbsd linker emulation that sets the entry point correctly
for NetBSD.
2001-12-16 04:06:51 +00:00
thorpej e3e5021be2 We need the versions of ASM_DECLARE_FUNCTION_NAME and
ASM_DECLARE_FUNCTION_SIZE from <alpha/alpha.h>, but <netbsd.h>
re-defines them.  So, re-define them again here to what
we need.
2001-12-16 04:02:48 +00:00
thorpej 72a263b8f7 Catch up with other Alpha-ELF changes. This will get cleaned up
even more somtime soon.
2001-12-16 03:09:19 +00:00
thorpej 80ed7d6a42 Clean up a bunch of the ELF support (looks like there was some sort
of merge error), and make the function/object type/size macros work
with the Alpha.
2001-12-16 03:07:59 +00:00
thorpej 85d454e712 Reset ENTRY to __start (this was changed to _start in rev 1.5
of this file in the master FSF sources; I obviously disagree
with the change, since it was apparently made to appease one
particular OS, even though previous binutils releases had been
made with ENTRY=__start, and have brought it up on
binutils@sources.redhat.com).
2001-12-15 17:55:39 +00:00
thorpej f589c8c881 Make sure SET_ASM_OP is undefined; the Alpha assembler uses .set
for assembler options.
2001-12-15 16:49:57 +00:00
thorpej 3faae759ba Allow a new-toolchain build to be done without actually building
the target "native toolchain" if BOOTSTRAP_NEW_TOOLCHAIN is set.

This is important if you don't have any userland at all, and you're
trying to make one from which you can run toolchain2netbsd.
2001-12-15 03:37:36 +00:00
thorpej 9b744bba67 Descend into dbsym. 2001-12-15 03:23:39 +00:00
thorpej 6ed87749ed Add support for building sh-*-netbsdelf (elf32-sh-big) and
shle-*-netbsdelf (elf32-sh-little).
2001-12-15 02:18:24 +00:00
thorpej 17f1178fc6 More toolchain2netbsd output for the Alpha, after coaxing
toolchain2netbsd to actually spit it out.
2001-12-14 22:29:12 +00:00
thorpej 01768cb6da Update to reflect latest toolchain2netbsd. 2001-12-14 22:26:03 +00:00
thorpej 2812f0e978 Kludge to make old toolchain builds work again after the NOxxx changes. 2001-12-14 16:55:14 +00:00
thorpej 2e065d7d6f Revert previous after further discussion w/ Todd. 2001-12-14 16:54:08 +00:00
thorpej 74ed46fbb4 Commit the results of running toolchain2netbsd on the Alpha. 2001-12-14 07:12:09 +00:00
thorpej 8937074afd Add an alpha*-*-netbsd* target. 2001-12-14 06:52:06 +00:00
thorpej 7482fd8b1e Remove the case that excludes gdb from alpha-*-netbsd*. 2001-12-14 06:51:08 +00:00
thorpej 6464462736 Remove the code that supports the old PLT format (the code for that
is not present in the master FSF version of this file).
2001-12-14 01:15:08 +00:00
thorpej 5ddefb1229 Garbage-collect the code that created old-format PLT entires.
The NetBSD/alpha ld.elf_so understands both formats, now.
2001-12-14 01:12:24 +00:00
thorpej 4c49d5310f No need to explicitly pull in bsd.own.mk. 2001-12-13 00:31:39 +00:00
thorpej 2152080e67 No need to pull in bsd.own.mk explicitly. 2001-12-13 00:30:28 +00:00
thorpej 7a3fcb2adf Convert unaligned relocs to aligned relocs if they happen to be
aligned.  Corresponds to part of rev 1.21 of this file in the
master FSF sources.

Thanks to Michael Rauch <mrauch@netbsd.org> for fishing out the patch.
2001-12-13 00:21:57 +00:00
thorpej d043d0d483 Revert previous, as was done so in the master FSF sources. The
original problem will be fixed in a forthcoming commit.
2001-12-13 00:18:50 +00:00
lukem 1b6c4afd64 move NOxxx= 2001-12-12 23:53:31 +00:00
lukem ad15078862 move NOxxx= 2001-12-12 23:46:45 +00:00
lukem df91d4a185 move NOxxx= 2001-12-12 23:09:13 +00:00
lukem 0a3f147fdd move NOLINT 2001-12-12 23:08:26 +00:00
thorpej 39c9a8ba17 We apparently must now set NOLINT= *BEFORE* including bsd.own.mk. 2001-12-12 23:00:50 +00:00
thorpej 5722ce0152 Make LIB2FUNCS_EH work like the rest of LIB2FUNCS, and clean
up the special rules required to build those objects.
2001-12-12 17:27:50 +00:00
lukem b0b0a32ad7 Set NOxxx= before <bsd.own.mk> is pulled in (even indirectly).
Otherwise the appropriate MKxxx=no won't be defined .
2001-12-12 12:24:19 +00:00
lukem 4c650ea52b we need a .c file to build _eh.{o,so,po} from, so add libgcc2.c back
in as a source for the rules.
2001-12-12 09:30:55 +00:00
lukem 22cf1d253e pull in <bsd.own.mk> after NOLINT is defined, so that MKLINT=no is
correctly determined
2001-12-12 08:58:45 +00:00
tv 8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
thorpej cf11c3964c Fix building of _eh.o and friends. 2001-12-11 23:43:04 +00:00
thorpej 59ee8a3dfb Update for new sparcnbsd-nat.c 2001-12-11 04:04:35 +00:00
thorpej e787c227a0 New NetBSD/sparc GDB native dependent module, cloned from the new
sp64nbsd-nat.c.  (new-toolchain was using the SunOS 4 native module!)
2001-12-11 04:03:55 +00:00
thorpej cef2225213 Correct a warning message. 2001-12-11 03:59:52 +00:00
thorpej ed865aec36 Make absolutely sure that MACHINE is no in the environment when
the linker scripts are generated.
2001-12-11 03:56:24 +00:00
thorpej 4cb0691e2a Set G_EMUL to elf32lmip. 2001-12-11 03:55:47 +00:00
thorpej b149da874b Clone from mipseb.mk 2001-12-11 03:45:06 +00:00
thorpej cebf842aa6 Update for changes to sp64nbsd-nat.c 2001-12-10 23:19:59 +00:00
thorpej 02be0ec37b * Massive overhaul, including sharing the code that supplies registers
with both the inferior and core targets.
* Add support for ELF core files.

Similar changes for 32-bit sparc forthcoming.
2001-12-10 22:43:34 +00:00
thorpej 09c0648a6e Fix a typo in fetch_core_registers() which caused the integer regs
to get scribbled over.
2001-12-10 17:52:51 +00:00
gmcgarry b44fadc911 Add mipsel gdb build framework from mipseb. Compile-tested only. 2001-12-10 06:32:45 +00:00
gmcgarry 28cc8c307b Add G_GCOV_OBJS so gcov compiles. 2001-12-10 06:16:01 +00:00
thorpej ef3e78deb9 * Clean up the way registers are supplied to the debugger proper.
* Add support for ELF core files.
2001-12-09 23:30:58 +00:00
thorpej 58b0ec8af6 * Clean up the way registers are provided to the debugger proper.
* Add support for ELF core files.
2001-12-09 23:29:47 +00:00
thorpej ecd90c39d1 Add support for ELF core files. 2001-12-09 23:26:51 +00:00
thorpej 24ae1eda13 Add support for NetBSD-style ELF core file notes. 2001-12-09 23:24:34 +00:00
thorpej e40269dc73 Define HAVE_SSE_REGS. 2001-12-08 07:34:40 +00:00
scw 56e14dc08b Add a fetch_kcore_registers() function.
Pasted from our m68k's gdb.old source.

Fixes an m68k new-toolchain build problem initially reported by
Americ Vincent on tech-toolchain.
2001-12-07 22:12:29 +00:00
jmc 8e9f3cf335 Account for possible alignment space before the exception table pointer when
dealing with the "eh" frames
2001-12-07 02:41:13 +00:00
jmc 39faa9cf1e Make sure the reloc for __EXCEPTION_TABLE__ in the "eh" exception frames is
fully aligned for the given arch. The sparc64 ld can't handle unaligned
relocs.
2001-12-07 02:40:36 +00:00
fredette 3ec17be693 Applied a strength-reduction patch from gcc-current. The patch
is in their revision 1.186, from schwab@suse.de, and said:

  Don't call reg_used_between_p if the insn from BL2 is after
  the insn from BL.

This fixes a cc1 SEGV on sys/dev/scsipi/ch.c rev 1.48 under -O2 or -Os,
seen on m68k and vax.
2001-12-06 18:50:34 +00:00
rafal b28234c5b3 Catch up to the thorpe-o-tiller:
| Move solib.o from TDEPFILES to NATDEPFILES (solib.c requires target
| headers, namely <link_elf.h>).
|
| Fixes build of cross-gdb.
2001-12-06 12:31:16 +00:00
thorpej 4cac6e8609 * Overhaul:
* move the code that supplies the integer and FP registers into
    separate functions, rather than duplicating the code for the
    ptrace and core file cases.
  * Use supply_register() rather than just copying directly into
    the register array and calling registers_fetched().  This way,
    only the registers actually supplied are marked as valid within
    the debugger.
* Add support for SSE/SSE2 registers via the PT_{GET,SET}XMMREGS
  ptrace(2) request.

(Blocked on the FSF assignment clerk for feeding this back to
the master GDB sources.)
2001-12-06 02:07:03 +00:00
rafal af3c956093 Make sure to strip {,_}[A-Z]* from NetBSD release names as well, so we get
OS as netbsd and not netbsdZ or netbsd_ALPHA.
2001-12-05 22:37:40 +00:00
rafal 7919399e4a Since gprof builds on mips platforms happily, add a mips*-*-netbsd* case
that doesn't add it to noconfigdirs.
2001-12-05 05:56:57 +00:00
rafal 9307d1bdb2 Add toolchain2netbsd generated files for gdb build on mipseb. 2001-12-05 05:50:43 +00:00
rafal 9b61c2acc2 Fix up `netbsdY' or `netbsdZ' in various places where toolchain2netbsd
stripped netbsd1.5[YZ] to netbsd[YZ].  toolchain2netbsd should probably
be whacked to DTRT as well.
2001-12-05 05:49:41 +00:00
rafal 49df24a942 Add MIPS (both target and host) support to the NEW_TOOLCHAIN GDB, based on
the 4.17 NetBSD support from our tree.  Original port by Chris Sekiya, with
minimal tweaks and cleanups by me (mainly: build bi-endian by default, add
NetBSD kcore support back).
2001-12-05 05:31:44 +00:00
martin 9bf1f40cf9 Back out replacing gawk by nawk - James Chacon already fixed gawk for
sparc64.

Sorry, next time I'll catch up with mails first.
2001-12-03 22:28:19 +00:00
martin ea1d800137 Hack: do not build gawk on sparc64 - it is known to not work when compiled
with the new toolchain.
2001-12-03 22:14:09 +00:00
jmc d08eaff246 While gcc may automatically add -fexecptions to c++ code it will only do that
for files named .cc or .C. _eh gets generated into a .c file so we need
explicit rules for it's targets (.o .po and .so) to compile it correctly.

Without this exceptions just plain don't work. Nothing ever gets caught.
2001-12-02 12:23:52 +00:00
jmc dad5e6ef6d Add ${CONFIG_SHELL-/bin/sh} in front of all calls to $ac_config_sub.
Makes sure things don't break when execute permission doesn't exist
2001-12-02 04:52:41 +00:00
jmc e134e4e037 Add sh in front of all calls to move-if-change as it might no have execute
permission turned on
2001-12-02 04:10:11 +00:00
jmc 3508f7583d Need -msoft-quad-float on sparc64 as double->int promote to quad math. 2001-12-02 03:06:55 +00:00