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).
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.
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.
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...
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.
* 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.
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>.
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.
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.
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).
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.
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.
* 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.)
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).
and place it in i386nbsd-tdep.c (new file).
- Move solib.o from TDEPFILES to NATDEPFILES (solib.c requires target
headers, namely <link_elf.h>).
Fixes build of cross-gdb pointed at i386--netbsd target.
libraries that have their dependencies recorded via NEEDED/RPATH so
that the location of the dependent libraries doesn't have to be supplied.
This closes bin/14583 by myself.
OK'd by Todd Vierling <tv@netbsd.org>
The Postfix SMTP server maintains a record of SMTP conversations
for debugging purposes. Depending on local configuration details
this record is mailed to the postmaster whenever an SMTP session
terminates with errors.
During code maintenance, a stupid error was introduced into the
code due to which the SMTP session log could grow to an unreasonable
size. This stupid error made Postfix vulnerable to a memory
exhaustion attack.
left unimplemented, and postfix daemon could become an open relay for
IPv6 connectivity. it seems that we need to torture-test IPv6 patch outside
of the tree more.
From moley@wide.ad.jp
changes to configuration stuff to (a) recognize `mipseb', and (b) build a
BE-default GCC on mipseb. gprof and gdb still not done.
WARNING: Binutils 2.11.2 (maybe earlier) changed the MIPS ABI, so any
shared libs built by this toolchain WILL NOT WORK without either a whack
to BFD to fix that or a patch to ld_elf.so to work around it. I need to
chase the binutils folks on this issue still.
That said, the new toolchain seems to work quite well once the ABI change
is worked around/fixed -- I'm committing from a machine running a user-
land built with the new compiler.
a 26-bit target), split R15 into PC and CPSR. Similarly, when storing
registers, copy CPSR back into R15 if CPSR indicates a 26-bit mode.
This makes single-stepping work correctly on arm26.
Also, when fetching registers, set arm_apcs_32 based on the mode the target's
in. This removes the need to kludge it manually. The variable should really
be lost entirely, and arm-tdep.c should look at the mode bits in CPSR, but
the ARM Linux target is horribly broken in this area, and will either need
fixing or working around.
support to GDB ARM targets in general, and make corresponding changes to
NetBSD-specific code.
The first half of this has already been send to gdb-patches by Richard.
The second half is irrelevant to them since they don't yet have NetBSD/arm
support in their tree yet.
1: Don't include arm-convert.o. arm-convert.s contains only comments, and our
build procedure can't cope with .s files.
2: Add "check_format" and "core_sniffer" entries to netbsd_core_fns, the same
as in i386nbsd_nat.c.
The first of these will need toolchain2netbsd to be re-run. While these
changes let GDB compile, I haven't tried running it on an ARM ELF system yet.
Make sure that each va_start has one and only one matching va_end,
especially in error cases.
If the va_list is used multiple times, do multiple va_starts/va_ends.
If a function gets va_list as argument, don't let it use va_end (since
it's the callers responsibility).
Improved by comments from enami and christos -- thanks!
Heimdal/krb4/KAME changes already fed back, rest to follow.
Inspired by, but not not based on, OpenBSD.
__GNUC__ automatically.
Note that this is probably not the Right solution; we should fix any in-tree
uses of /usr/bin/cpp to use $CC -E. However, this is being added for now
for backwards compatibility.
2000-08-16 Andrew Macleod <amacleod@cygnus.com>
* elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate
four extra entries at the beginning of the .rela.plt section.
(sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt
section to account for the four reserved entries in the .plt section.
does this Right (without even the overwrite-with-whitespace kludge), we
don't need to worry about breaking anything here. Both -C and -CC will
result in full lint-capable comments.
proper fully qualified ANSI type.
XXX: Cast it again to a (void *) because libedit's readline emulation thinks
that rl_completion_entry_function should be a (CPFunction *) -- perhaps more
correct, but it breaks compatibility. libedit might be better to change to
conform to what readline wants.
relative to the start of the section rather than the location of the
relocation. This made differences of two symbols in different files stop
working.
I believe GCC never generates this kind of relocation, which is why this bug
hasn't surfaced before.
This patch has been sent to <bug-gnu-utils@gnu.org>.
support for "__main" (really __gccmain for mips), and the ctors/dtors
lists associated with this.
- add -G to SWITCH_TAKES_ARG(), so `-G 0' works as well as `-G0'
- add support for .init, .fini and .rodata (const) sections (basically
merging the generic ELF support with the MIPS support.)
kernel links and runs happily now.
DWARF_FRAME_RETURN_COLUMN and INCOMING_RETURN_ADDR_RTX so GCC doesn't think
we have dwarf2 unwind info support. now this mostly works, though c++
exceptions seem to bus error...
and it's only an annoyance when checking out of CVS. Hopefully later
versions of GCC will be smarter with autoconf and use @AUTOCONF@ parameters
(which can be replaced with `true').
(fixes warning in toplev.c). As far as the appropriate code is concerned in
toplev.c, these values are const; they're initialized exactly once beforehand.
- Kill KERNEL_U_ADDR stuff, etc. [gwr]
- Provide a descriptive error message if "-k" is used. [gwr]
- Use NO_SOLIB to turn off inclusion of "solib.h". [msaitoh]