Commit Graph

1192 Commits

Author SHA1 Message Date
matt
572f2bb969 Teach gcc to emit register prefixes (though unless its ELF, the register
prefix is NULL).
2002-02-23 21:02:49 +00:00
matt
bc49a6eede Fix long time codegen bug. Only the COMPARE, ADD, MINUS operations actually
set the C(arry) bit appropriately.  All other leave it in an indeterminate
(to GCC) state.  Mark that by setting CC_NO_OVERFLOW.  Change vax.md emission
of branches that use the C bit to use OUTPUT_JUMP so that if CC_NO_OVERFLOW is
set, branches that would normally use the C bit use opcodes that don't use the
C bit (jgtru -> jneq && jlssu -> jeql).  Delete the cmpdi pattern.
2002-02-23 18:36:52 +00:00
matt
13828b4c70 Implement a cmpdi pattern so gcc won't try to help us. The good news is
that's it's smaller.  Not sure about faster.
2002-02-22 06:03:36 +00:00
matt
6238aa6c4f Back out change to NOTICE_CC_UPDATE. It has really bad side effects.
I'll fix this another way.
2002-02-22 06:02:33 +00:00
matt
eb2926091c movl doesn't modify the C bit in the PSL so make sure to communicate that
fact to the gcc optimizer so it doesn't emit the wrong branch instructions.
2002-02-21 19:31:36 +00:00
matt
90b4581807 Ahhh! Use tc_fix_adjustable to make gas not resolve symbols into segment
based references for weak or external symbols.
2002-02-21 07:30:32 +00:00
matt
1b65728579 Gegneralize the PLT/GOT processing to properly emit relocs even for symbols
in the segment/file so that they linker can resolve them for shared libraries.
2002-02-21 06:59:16 +00:00
mrg
71bd5d8f3c make this build cross by not splitting NATDEPFILES across a line with a
line continuation char (\)...
2002-02-21 03:24:50 +00:00
matt
ffefe31a4b When calling weak or global symbols in the same segment, make sure to use
RELAX encoding what can be transmorgified into a PLT reloc.
2002-02-21 00:18:43 +00:00
matt
1bb7ff7e99 Don't emit GOT slots for local symbols since the VAX can always refer to
via PC relative addressing.
2002-02-20 18:52:23 +00:00
matt
e9ecffcaf2 When emitting a GOT reloc, use the frag symbol since we want the
external name, not where it lives in this object (which would happen
in the symbol was defined locally).  All, don't use offset but addnumber.
2002-02-20 18:50:40 +00:00
matt
9fcb3b5a86 If the symbol is weak or external and this is a PCREL reference,
generate a fragment instead of fixup.  This allows us to convert
to a GOT or PLT reference which can be resolved externally.
2002-02-20 08:12:43 +00:00
matt
1927769e7a Don't use PCC_STATIC_STRUCT_RETURN.
Use movab/pushab when moving LABEL_REFs.
2002-02-20 03:06:37 +00:00
thorpej
7efea97070 Make sure that non-symbolic GOT references are converted back to
PC32 relocs for -Bstatic or -Bsymbolic links.

From Matt Thomas.
2002-02-19 06:16:35 +00:00
thorpej
b56d2fc557 Add support for ELF core files. 2002-02-19 05:05:09 +00:00
thorpej
a962d1ba86 Do not -Dunix or -Darm, as they are namespace-invasive, and cause
variants of those CPP symbols to be defined that are contrary to
NetBSD's conventions.

Fixes building Xaw on ARM ELF.
2002-02-12 16:32:39 +00:00
thorpej
1be69ad723 Fix typos in CC1_SPEC: -no-mindirect -> -mno-indirect 2002-02-11 00:02:12 +00:00
mrg
e694f74c6e pull across kcore_fetch_registers() from gnu/dist/gdb/sparcnbsd-nat.c, and
add kcore-nbsd.c to NATDEPFILES in nbsd{,elf}.mh.  regen defs.mk and init.c.

pity kcore-nbsd.c isn't in the FSF tree yet...
2002-02-10 01:32:56 +00:00
chs
dcee4d2ab2 bring forward a change from the old gdb:
Define IN_SIGTRAMP() as nbsd_in_sigtramp(), a new function which knows
how to find the address of the signal trampoline at runtime, thus allowing
one gdb binary to work on all NetBSD/m68k machines.
2002-02-09 19:37:38 +00:00
ross
cc9d651712 LP64 tweak 2002-02-03 05:53:07 +00:00
perry
9944f8fbe3 resolve conflicts 2002-02-03 03:27:17 +00:00
perry
9834dfda1c Postfix 1.1.3 2002-02-03 03:10:53 +00:00
perry
ecf26eb9de add defaults for install parameters to stop errors 2002-02-03 02:20:05 +00:00
perry
00f7fe97b4 resolve conflicts 2002-02-02 23:54:35 +00:00
perry
5cf194aa6d not part of release 1.1.2 2002-02-02 23:27:32 +00:00
perry
6f59dc7aeb Postfix 1.1.2
(Postfix releases are now numbered -- 1.1.2 means 1.1, patchlevel 2.)
Lots of new features, same great security.
2002-02-02 23:10:24 +00:00
tv
3bf9a18e1c Remove extraneous declarations of yyparse() and yylex(). 2002-01-30 20:44:54 +00:00
tv
355d5a06c1 Restore rev. 1.2 (revert reversion). Fixes recent cc1obj bomb. 2002-01-30 15:16:06 +00:00
thorpej
1e51e492fd Sync NetBSD piece with gcc-current. 2002-01-29 18:52:09 +00:00
tv
c2f713900d Revert previous; please don't regen .y output using BSD yacc for a file that
should be run through Bison.
2002-01-29 08:12:10 +00:00
thorpej
89458c3940 * Clean up XFmode avoidance.
* If avoiding XFmode, force REAL_ARITHMETIC anyway (which will use
  the software FP emulation).
2002-01-29 01:02:06 +00:00
thorpej
7cf69379df Don't try using XFmode on the 68010. XXX We'd like to make this
determination at compiler run-time, but we can't do that right now.
2002-01-28 22:50:06 +00:00
thorpej
74474e4e91 Patch posted to binutils@sources.redhat.com by Matt Fredette
(should make it into stock binutils as soon as Matt's copyright
assignment paperwork is finalized):

bfd:
	* elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
	EF_M68000.

binutils:
	* readelf.c (get_machine_flags): Recognize EF_M68000.

gas:
	* config/tc-m68k.c (md_show_usage): No longer display a
	hard-coded "68020" for the default CPU, instead display the
	canonical name of the true, configured default CPU.
	(m68k_elf_final_processing): Mark objects for sub-68020
	CPUs with the new EF_M68000 flag.

include/elf:
	* m68k.h (EF_M68000): Define.
2002-01-28 21:39:07 +00:00
thorpej
f3121769a7 Add support for m68010-*-netbsdelf* using the existing m68k/netbsd-elf
configuration.
2002-01-28 21:10:51 +00:00
thorpej
872ed866f5 Set the machine architecture in the bfd structure before
parsing the program headers.
2002-01-27 20:12:09 +00:00
thorpej
bc7317ef89 Slightly simplified version of a patch I just submitted to the
master binutils sources that fix gprof for LP64 platforms and
also fix some problems with cross-gprof:

        * TODO: Remove "host architecture pointer size" item.
        * gmon.h (GMON_HDRSIZE_BSD44_32): Define.
        (GMON_HDRSIZE_BSD44_64): Ditto.
        (GMON_HDRSIZE_OLDBSD_32): Ditto.
        (GMON_HDRSIZE_OLDBSD_64): Ditto.
        (struct raw_phdr): Wrap in #if 0, keeping it for
        documentation purposes only.
        (struct old_raw_phdr): Likewise.
        (struct raw_arc): Likewise.  Change type/size of
        "count" member to long match 4.4BSD.
        * gmon_io: Update copyright years.
        (gmon_io_read_64): New function.
        (gmon_io_read_vma): Use bfd_arch_bits_per_address to
        determine target pointer size.  Use gmon_io_read_32
        and gmon_io_read_64.
        (gmon_io_write_64): New function.
        (gmon_io_write_vma): Use bfd_arch_bits_per_address to
        determine target pointer size.  Use gmon_io_write_32
        and gmon_io_write_64.
        (get_vma): Remove.
        (put_vma): Ditto.
        (gmon_read_raw_arc): New function.
        (gmon_write_raw_arc): New function.
        (gmon_out_read): Do not use struct raw_phdr or
        struct old_raw_phdr to read the gmon header.  Use
        gmon_read_raw_arc to read call graph records.
        (gmon_out_write): Do not use struct raw_phdr or
        struct old_raw_phdr to write the gmon header.  Use
        gmon_write_raw_arc to write call graph records.

This makes the GMON_PTR_SIZE constant obsolete, however I have not
included the changes to the autoconf machinery that eliminate that
constant completely in order to minimize the changes here (they
will be picked up when we import Binutils 2.12 when it is released).
2002-01-26 23:57:59 +00:00
mrg
f2f685f22a * pull across fixes for PSIM from gdb-current on NetBSD:
2001-03-04  Andrew Cagney  <ac131313@redhat.com>
	* emul_netbsd.c [WITH_NetBSD_HOST]: Include <sys/mount.h> and
	<errno.h>.
	(do_stat): Only do SYS test when SYS_stat defined.
	(do_sigprocmask): Ditto for SYS_sigprocmask.
	(do_fstat): Ditto for SYS_fstat.
	(do_getdirentries): Ditto for SYS_getdirentries.
	(do_lstat): Ditto for SYS_lstat.

	2001-01-15  Geoffrey Keating  <geoffk@redhat.com>
	* emul_netbsd.c (do_open): Translate the flag parameter to the
	open syscall to the numbers supported by the host.

* part of port-powerpc/14307

	2001-10-19  Andrew Cagney  <ac131313@redhat.com>
	* configure.in: When Linux or NetBSD, enable PowerPC simulator.
	* configure: Re-generate.
2002-01-22 12:28:49 +00:00
mrg
858c824a54 * part of port-powerpc/14307: add psim support for nbsd & linux powerpc
gdb targets.

	2001-10-18  Andrew Cagney  <ac131313@redhat.com>
	* config/powerpc/nbsd.mt (SIM_OBS, SIM): Define.
	* config/powerpc/linux.mt (SIM, SIM_OBS): Ditto
2002-01-22 12:25:56 +00:00
thorpej
3ef3a0aa2f Be a little more careful when calling _mcount() (to prevent
clobbering $27).
2002-01-22 02:09:39 +00:00
tv
0d0a440269 Kill this directory so that it's more amenable to a case insensitive fs. 2002-01-21 20:50:13 +00:00
thorpej
2667ee3c74 Fix handling of FP registers. 2002-01-18 22:00:11 +00:00
thorpej
6c608f3110 When removing a single-step breakpoint, fix-up the PC, since GDB does
not do for us in this case.

This fixes all sorts of random lossage with the new Alpha GDB, which,
as far as I can tell, works just fine now.
2002-01-18 06:15:32 +00:00
thorpej
47193736cf NetBSD does not mark the outermost frame, so define FRAME_CHAIN_VALID
to func_frame_chain_valid() so that the traceback will stop at the
entry point.
2002-01-18 04:30:54 +00:00
thorpej
7be6f45635 Comment out token after #endif. 2002-01-18 04:15:02 +00:00
tv
f7bea0ea1e Some sanity fixes (including a possible buffer overflow in makeinfo), plus
some fixed proper support for Cygwin hosts.
2002-01-16 17:22:37 +00:00
wiz
589623fe7c Add a trailing dot. 2002-01-13 11:44:27 +00:00
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