Jeff Law [Wed, 2 Jul 1997 18:13:00 +0000 (18:13 +0000)]
* interp.c (sim_engine_run): Reset the ZERO register to zero
regardless of FEATURE_WARN_ZERO.
Jeff Law [Wed, 2 Jul 1997 17:57:56 +0000 (17:57 +0000)]
* gencode.c (FEATURE_WARNINGS): Remove FEATURE_WARN_ZERO.
Fix for pr12402 (c/h from toshiba).
Ian Lance Taylor [Wed, 2 Jul 1997 16:05:55 +0000 (16:05 +0000)]
* config/obj-coff.c (fixup_segment): Never subtract section
address from PC relative reloc which will be fully resolved.
Jeff Law [Tue, 1 Jul 1997 21:22:38 +0000 (21:22 +0000)]
* ecoff.c (page_type): Renamed from page_t to avoid conflict
with hpux10 header files.
Bob Manson [Tue, 1 Jul 1997 01:33:58 +0000 (01:33 +0000)]
* config/arm-ice.exp: New file.
Michael Snyder [Tue, 1 Jul 1997 00:57:19 +0000 (00:57 +0000)]
Mon Jun 30 17:54:51 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* mips-tdep.c (mips_push_arguments): special-case handling for
odd-sized struct parameters passed in registers / on stack.
Michael Snyder [Mon, 30 Jun 1997 22:32:20 +0000 (22:32 +0000)]
Mon Jun 30 15:30:38 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* mips-tdep.c (mips_push_arguments): tweak alignment of small
structs passed in registers for little-endian non-EABI mode.
Michael Snyder [Mon, 30 Jun 1997 20:08:11 +0000 (20:08 +0000)]
Mon Jun 30 13:05:39 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* breakpoint.c (frame_in_dummy): use generic dummy if available.
(check_duplicates, clear_command): compare sections only if
doing overlay debugging.
Ian Lance Taylor [Mon, 30 Jun 1997 19:52:58 +0000 (19:52 +0000)]
* configure.in, Makefile.in: Treat tix like itcl.
Ian Lance Taylor [Mon, 30 Jun 1997 18:30:55 +0000 (18:30 +0000)]
* elf32-m68k.c (howto_table): Use complain_overflow_bitfield, not
complain_overflow_signed, for 32 bit PC relative relocations.
Ian Lance Taylor [Mon, 30 Jun 1997 16:38:17 +0000 (16:38 +0000)]
From Jason Merrill <jason@cygnus.com>:
* read.c (do_align): If BFD_ASSEMBLER, only use NOP_OPCODE if
SEC_CODE is set.
* config/tc-i386.h (md_maybe_text): Define.
(md_do_align): Use md_maybe_text.
Ian Lance Taylor [Mon, 30 Jun 1997 16:05:51 +0000 (16:05 +0000)]
finish upgrade to automake 1.2
Jeff Law [Mon, 30 Jun 1997 15:06:50 +0000 (15:06 +0000)]
* mips-opc.c (mips_builtin_opcodes): Add "pinteh", "pexeh" and
"pexew" as synonyms for "pintoh", "pexoh", "pexow".
pr12399.
Bob Manson [Mon, 30 Jun 1997 04:24:17 +0000 (04:24 +0000)]
* gdb.base/overlays.exp: Preliminary fixes; temporarily disabled
until it has been modified to work with the new testsuite.
* gdb.*/*.exp: Instead of causing 1 unresolved test when the
testcase won't compile, cause all of the testcases in the file to
fail instead.
* lib/gdb.exp(gdb_suppress_entire_file): New procedure.
(gdb_clear_suppressed): New procedure.
(gdb_stop_suppressing_tests): Only clear suppress_flag if
it contains a positive value.
Bob Manson [Sun, 29 Jun 1997 23:26:33 +0000 (23:26 +0000)]
Check in correct file (config/m32r-stub.exp)
Bob Manson [Sun, 29 Jun 1997 04:05:41 +0000 (04:05 +0000)]
* lib/gdb.exp(default_gdb_start): Use gdb_opts host feature.
Ian Lance Taylor [Sun, 29 Jun 1997 03:21:56 +0000 (03:21 +0000)]
* aclocal.m4, configure, Makefile.in: Rebuild with automake 1.2.
Bob Manson [Sat, 28 Jun 1997 20:32:31 +0000 (20:32 +0000)]
* gdb.c++/virtfunc.exp: Remove setting of libs variable.
Fred Fish [Sat, 28 Jun 1997 06:10:06 +0000 (06:10 +0000)]
* buildsym.h (struct subfile): Add debugformat member.
(record_debugformat): Declare global function.
* buildsym.c (start_subfile): Initialize debugformat member
to NULL.
(record_debugformat): New function to record the format.
(end_symtab): Copy format into symtab debugformat member.
(end_symtab): Free subfile debugformat member.
* symmisc.c (free_symtab): Free debugformat when freeing
symtab.
* symfile.c (allocate_symtab): Initialize the new debugformat
member for new symtabs.
* symtab.h (struct symtab): Add debugformat member.
* source.c (source_info): Print the debug format.
* os9kread.c (os9k_process_one_symbol): Call record_debugformat
with "OS9".
* hpread.c (hpread_expand_symtab): Call record_debugformat
with "HP".
(hpread_process_one_debug_symbol): Ditto.
* dbxread.c (process_one_symbol): Call record_debugformat
with "stabs".
* coffread.c (coff_start_symtab): Call record_debugformat
with "COFF".
* xcoffread.c (read_xcoff_symtab): Call record_debugformat
with "XCOFF".
* dwarfread.c (read_file_scope): Call record_debugformat
with "DWARF 1".
* dwarf2read.c (read_file_scope): Call record_debugformat
with "DWARF 2".
* dstread.c (dst_end_symtab): Set debugformat to be
"Apollo DST".
* mdebugread.c (new_symtab): Set debugformat to be "ECOFF".
Fred Fish [Sat, 28 Jun 1997 06:03:43 +0000 (06:03 +0000)]
* lib/gdb.exp (setup_xfail_format): New function.
(get_debug_format): New function to get debug format.
(debug_format): New global variable to hold last value set
by get_debug_format.
* gdb.base/list.exp: Call get_debug_format and expect some
tests to fail for DWARF 1 and COFF formats.
* gdb.c++/ptype.exp: Ditto.
* gdb.c++/classes.exp: Ditto.
* gdb.c++/cplusfuncs.exp: Ditto.
* gdb.c++/inherit.exp: Ditto.
* gdb.c++/templates.exp: Ditto.
* gdb.c++/virtfunc.exp: Ditto.
Michael Snyder [Sat, 28 Jun 1997 04:07:56 +0000 (04:07 +0000)]
Fri Jun 27 21:05:45 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* mips-tdep.c (mips_push_arguments): handle alignment of
integer and struct args on stack for mips64 big-endian.
Michael Snyder [Sat, 28 Jun 1997 02:23:30 +0000 (02:23 +0000)]
Fri Jun 27 19:19:12 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-mips.h (USE_STRUCT_CONVENTION): MIPS_EABI returns
structs in a register wherever possible.
Michael Meissner [Fri, 27 Jun 1997 23:19:15 +0000 (23:19 +0000)]
Remove brokeness in PowerPC asm
Andrew Cagney [Fri, 27 Jun 1997 08:33:16 +0000 (08:33 +0000)]
Add test for dbt/rtd instructions
Ian Lance Taylor [Thu, 26 Jun 1997 19:27:42 +0000 (19:27 +0000)]
More tweaks. Add windres documentation.
Ian Lance Taylor [Thu, 26 Jun 1997 18:21:02 +0000 (18:21 +0000)]
* rcparse.y: Add a couple of missing semicolons (accepted by bison
but not byacc).
Ian Lance Taylor [Thu, 26 Jun 1997 18:00:57 +0000 (18:00 +0000)]
* Makefile.in (WINDRES): New variable.
(WINDRES_FOR_TARGET): New variable.
(BASE_FLAGS_TO_PASS): Add WINDRES_FOR_TARGET.
(EXTRA_HOST_FLAGS): Add WINDRES.
(EXTRA_TARGET_FLAGS): Add WINDRES.
(EXTRA_GCC_FLAGS): Add WINDRES.
($(DO_X)): Pass down WINDRES.
($(CONFIGURE_TARGET_MODULES)): Set WINDRES when configuring.
* configure: Treat WINDRES like DLLTOOL, and WINDRES_FOR_TARGET like
DLLTOOL_FOR_TARGET.
Ian Lance Taylor [Thu, 26 Jun 1997 17:54:35 +0000 (17:54 +0000)]
* scripttempl/pe.sc: Put .rsrc after .reloc. Put input .rsrc
sections in the output .rsrc section.
Ian Lance Taylor [Thu, 26 Jun 1997 17:53:57 +0000 (17:53 +0000)]
* windres.c (main): Quit if we didn't get any resources.
* rescoff.c (write_coff_file): Don't free the relocation array
until after we've closed the BFD.
Ian Lance Taylor [Thu, 26 Jun 1997 16:08:17 +0000 (16:08 +0000)]
* ld-elfvers/vers.exp: Use egrep rather than grep when looking for
an alternation. From Greg Margo <gmargo@dl.com>.
Ian Lance Taylor [Thu, 26 Jun 1997 16:06:03 +0000 (16:06 +0000)]
* elflink.h (elf_link_add_object_symbols): When a version
indirection symbol is overridden, make the original symbol point
at the real overriding symbol.
Ian Lance Taylor [Thu, 26 Jun 1997 15:40:41 +0000 (15:40 +0000)]
* elf.c (bfd_elf_string_from_elf_section): Check for an invalid
string index.
Ian Lance Taylor [Thu, 26 Jun 1997 05:27:56 +0000 (05:27 +0000)]
* elflink.h (elf_link_output_extsym): Use the right section for a
common symbol.
* elf32-mips.c (mips_elf_link_output_symbol_hook): If a common
symbol was in .scommon, mark it as SHN_MIPS_SCOMMON.
PR 12697.
Ian Lance Taylor [Thu, 26 Jun 1997 00:59:44 +0000 (00:59 +0000)]
* resbin.c: New file.
* rclex.l, rcparse.y, rescoff.c, resrc.c, windres.c, windres.h:
Numerous fixes and improvements.
* Makefile.in: Rebuild dependencies.
(CFILES): Add resbin.c.
(WINDRES_OBJS): Add resbin.o.
Felix Lee [Wed, 25 Jun 1997 22:35:14 +0000 (22:35 +0000)]
* ppc-opc.c (extract_nsi): make unsigned expression signed before
negating it.
(UNUSED): remove one level of parens, so MSVC doesn't choke on
nesting depth when all the macros are expanded.
Felix Lee [Wed, 25 Jun 1997 22:20:22 +0000 (22:20 +0000)]
* configure.in: configure sim before gdb for win32-x-ppc
Brendan Kehoe [Wed, 25 Jun 1997 19:24:03 +0000 (19:24 +0000)]
Move gperf into the toplevel, from libg++.
* configure.in (target_tools): Add target-gperf.
(native_only): Add target-gperf.
* Makefile.in (all-target-gperf): New target, depend on
all-target-libg++.
(configure-target-gperf): Empty rule.
(ALL_TARGET_MODULES): Add all-target-gperf.
(CONFIGURE_TARGET_MODULES): Add configure-target-gperf.
(CHECK_TARGET_MODULES): Add check-target-gperf.
(INSTALL_TARGET_MODULES): Add install-target-gperf.
(CLEAN_TARGET_MODULES): Add clean-target-gperf.
Ian Lance Taylor [Wed, 25 Jun 1997 16:49:19 +0000 (16:49 +0000)]
Wed Jun 25 12:48:41 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* configure.host (m68*-*-linux*libc1*): Renamed from
`m68*-*-linux*'.
(m68*-*-linux*): New configuration for use with GNU libc 2.
Ian Lance Taylor [Wed, 25 Jun 1997 16:47:59 +0000 (16:47 +0000)]
Wed Jun 25 12:47:22 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* ld-shared/shared.exp: Add setup_xfail for m68k-linux on tests
with non PIC shared libraries.
Ian Lance Taylor [Wed, 25 Jun 1997 16:45:12 +0000 (16:45 +0000)]
Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* elflink.h (elf_merge_symbols): Resolve indirect and warning
symbols before checking for new symbols.
Ian Lance Taylor [Wed, 25 Jun 1997 16:43:48 +0000 (16:43 +0000)]
Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H.
Bob Manson [Wed, 25 Jun 1997 16:29:59 +0000 (16:29 +0000)]
* lib/gdb.exp(default_gdb_exit): Don't give an error if the remote
host doesn't have a currently-open connection.
* config/sparclet.exp: Cleanups and fixes to make it generic for
any gdb stub target. Handle cases where gdb doesn't respond when
interrupted in a sane fashion.
* config/m32r.exp: Load sparclet.exp instead of trying to do the
same thing in a totally different way.
* config/monitor.exp: Pass in timeouts to gdb_expect instead of
setting "timeout".
(gdb_start): We set the global gdb_prompt variable in
default_gdb_init now.
Jeff Law [Tue, 24 Jun 1997 19:45:17 +0000 (19:45 +0000)]
* interp.c (sim_resume): Clear State.exited.
(sim_stop_reason): If State.exited is nonzero, then indicate that
the simulator exited instead of stopped.
* mn10300_sim.h (struct _state): Add exited field.
* simops.c (syscall): Set State.exited for SYS_exit.
Fixes problem found bin Felix.
Ian Lance Taylor [Tue, 24 Jun 1997 15:22:35 +0000 (15:22 +0000)]
* coffgen.c (coff_object_p): Read the f_opthdr bytes from the
file, not aoutsz bytes (they are different in XCOFF .o files).
Ian Lance Taylor [Tue, 24 Jun 1997 14:34:47 +0000 (14:34 +0000)]
comment fix
Ian Lance Taylor [Tue, 24 Jun 1997 02:28:03 +0000 (02:28 +0000)]
* elflink.h (elf_merge_symbol): In the case of a new defined
symbol overriding an old defined symbol, return the hash table
entry which we modify, even if it is the target of an
indirection.
(elf_link_add_object_symbols): If the real name of the symbol gets
overridden, convert the versioned symbol into an indirect symbol
to the real symbol.
Ian Lance Taylor [Mon, 23 Jun 1997 22:06:29 +0000 (22:06 +0000)]
* elflink.h (elf_merge_symbol): New static function, broken out of
elf_link_add_object_symbols.
(elf_link_add_object_symbols): Call it.
Jeff Law [Mon, 23 Jun 1997 17:56:05 +0000 (17:56 +0000)]
Remove CYGNUS LOCAL markers for mn10200.
Ian Lance Taylor [Mon, 23 Jun 1997 00:08:54 +0000 (00:08 +0000)]
Another windres snapshot. Can now read the COFF resources directory,
although it doesn't yet parse out the binary format.
Ian Lance Taylor [Sun, 22 Jun 1997 23:41:55 +0000 (23:41 +0000)]
* coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to
handle case where COFF filehdr does not immediately follow PE
header.
* coffgen.c (coff_object_p): Remove useless seek to current
location.
Ian Lance Taylor [Sun, 22 Jun 1997 21:35:35 +0000 (21:35 +0000)]
First stab at Windows resource compiler:
* windres.h: New file.
* windres.c: New file.
* resrc.c: New file.
* rcparse.y: New file.
* rclex.l: New file.
* configure.in: Define and substitute BUILD_WINDRES.
* configure: Rebuild.
* Makefile.in: Rebuild dependencies.
(WINDRES_PROG): New variable.
(PROGS): Add @BUILD_WINDRES@.
(HFILES): Add dlltool.h and windres.h.
(CFILES): Add windres.c and resrc.c.
(GENERATED_CFILES): Add rcparse.c and rclex.c.
(WINDRES_OBJS): New variable.
$(WINDRES_PROG): New target.
(rcparse.c, rcparse.h, rclex.c): New targets.
Snapshot. windres can parse and print rc files.
Fred Fish [Sun, 22 Jun 1997 16:40:16 +0000 (16:40 +0000)]
Fix a "ninemoons" email address that slipped in.
Fred Fish [Sun, 22 Jun 1997 16:32:18 +0000 (16:32 +0000)]
Fix one of my "ninemoons" email addresses that slipped in.
Fred Fish [Sun, 22 Jun 1997 16:17:49 +0000 (16:17 +0000)]
* gdb.base/printcmds.exp: Fix "check for floating addition"
regexp to accept results within approx +/- .01 of exact value.
* lib/gdb.exp (gdb_test): Remove unused expect_out global decl.
Fred Fish [Sat, 21 Jun 1997 03:50:11 +0000 (03:50 +0000)]
* sh-tdep.c (sh_skip_prologue): Also recognize fmov insns.
(sh_frame_find_saved_regs): Recognize fmov insns and adjust
stack push count accordingly.
* sh-tdep.c (IS_FMOV, FPSCR_SZ): New defines
Fred Fish [Sat, 21 Jun 1997 03:48:48 +0000 (03:48 +0000)]
Sanitize away sh4 stuff for now.
Fred Fish [Sat, 21 Jun 1997 03:42:10 +0000 (03:42 +0000)]
Minor formatting change (whitespace only).
Brendan Kehoe [Thu, 19 Jun 1997 21:17:20 +0000 (21:17 +0000)]
* configure.in: Don't set ENABLE_MULTILIB, so we'll be passing
--enable-multilib down to subdirs; setting TARGET_SUBDIR was enough.
Mark Alexander [Thu, 19 Jun 1997 15:18:13 +0000 (15:18 +0000)]
* utils.c (floatformat_from_doublest): Improve test for infinity.
Bob Manson [Thu, 19 Jun 1997 04:36:04 +0000 (04:36 +0000)]
(gdb_expect): Add optional timeout parameter, and add timeout
value to various calls.
(gdb_suppress_tests): Only give one warning message per group.
Ian Lance Taylor [Wed, 18 Jun 1997 23:04:29 +0000 (23:04 +0000)]
* linker.c (link_action): Change COMMON_ROW/indr to from CREF to
REFC.
Ian Lance Taylor [Wed, 18 Jun 1997 23:02:58 +0000 (23:02 +0000)]
revert last patch
Fred Fish [Wed, 18 Jun 1997 21:38:57 +0000 (21:38 +0000)]
* dwarfread.c (isreg, optimized_out, offreg, basereg): Move
global variables into the struct dieinfo structure.
(locval): Pass pointer to a dieinfo struct rather than a
pointer to the raw location information. Change prototype.
Set isreg, optimized_out, offreg and basereg as appropriate.
(struct_type): Call locval with dieinfo struct pointer.
(new_symbol): Ditto.
(new_symbol): Call locval and save location before testing
the values of the new dieinfo struct flags, set by locval.
Bob Manson [Wed, 18 Jun 1997 18:13:19 +0000 (18:13 +0000)]
* lib/gdb.exp(gdb_init): Pass our arguments to default_gdb_init
properly.
Ian Lance Taylor [Wed, 18 Jun 1997 15:36:33 +0000 (15:36 +0000)]
* elflink.h (elf_link_add_object_symbols): Don't let a common
symbol in a regular object override a common symbol in a shared
object if the latter was found via an indirect symbol.
Bob Manson [Wed, 18 Jun 1997 05:10:11 +0000 (05:10 +0000)]
lib/gdb.exp(gdb_expect): Handle getting a value for $timeout
more gracefully.
Brendan Kehoe [Tue, 17 Jun 1997 22:31:59 +0000 (22:31 +0000)]
* configure.in (is_cross_compiler): If we're building
mips-sgi-irix6* native, turn on ENABLE_MULTILIB and set TARGET_SUBDIR.
forces it to build libiberty w/ the newly built compiler, solving the
n32 vs o32 problem doing the tests
Ian Lance Taylor [Tue, 17 Jun 1997 21:03:18 +0000 (21:03 +0000)]
* sparc-opc.c: The fcmp v9a instructions take an integer register
as a destination, not a floating point register. From Christian
Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>.
Peter Schauer [Tue, 17 Jun 1997 20:33:18 +0000 (20:33 +0000)]
* procfs.c (proc_set_exec_trap, procfs_init_inferior, procfs_wait,
unconditionally_kill_inferior): Undo Oct 26 1996 and Apr 26 1997
changes to trace PRFS_STOPTERM and handle PR_DEAD.
These changes tried to work around a problem with an early DU 4.0
release, but they trigger subtle timing dependent kernel bugs
in older OSF/1 releases.
Bob Manson [Tue, 17 Jun 1997 20:11:04 +0000 (20:11 +0000)]
* lib/gdb.exp(gdb_expect): Declare errorInfo and errorCode
as global variables.
Tom Tromey [Tue, 17 Jun 1997 18:27:02 +0000 (18:27 +0000)]
* Makefile.in (all-sn): Depend on all-grep.
Ian Lance Taylor [Tue, 17 Jun 1997 15:56:09 +0000 (15:56 +0000)]
* cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging
symbols, skip N_ABS symbols with debugging storage classes.
PR 12630.
Also a couple of warning and formatting fixes.
Fred Fish [Tue, 17 Jun 1997 14:01:37 +0000 (14:01 +0000)]
* dwarfread.c (new_symbol): Use SYMBOL_VALUE_ADDRESS, instead of
SYMBOL_VALUE, to set the value of LOC_STATIC symbols.
Mark Alexander [Tue, 17 Jun 1997 02:11:42 +0000 (02:11 +0000)]
* infrun.c (wait_for_inferior): Mark registers as invalid when
stepping over an instruction that triggered a watchpoint.
* remote-mips.c: Numerous changes to support hardware breakpoints
and watchpoints on LSI MiniRISC and TinyRISC boards.
* mips-tdep.c: Move MIPS16-related macros to config/mips/tm-mips.h.
(mips_breakpoint_from_pc): Account for different breakpoint
instructions used by PMON and IDT monitor.
* config/mips/tm-embed.h: Enable hardware breakpoints on embedded
MIPS targets.
* config/mips/tm-mips.h: Define breakpoint instructions for
PMON and IDT monitor. Move MIPS16-related macros here from
mips-tdep.c.
Bob Manson [Tue, 17 Jun 1997 00:08:20 +0000 (00:08 +0000)]
* lib/gdb.exp: Close connection to remote host if gdb doesn't
initialize.
(default_gdb_init): New procedure; allow gdb_init to be overridden
by a target configuration file.
(gdb_expect): Pass the timeout to remote_expect.
* config/dos.exp(dos_wait): Add timeout parameter.
* lib/remote.exp(remote_expect): Add timeout parameter.
(remote_wait): Ditto.
(standard_wait): Ditto. Also give up if the program outputs
more than 512,000 bytes.
* config/vxworks.exp: Use timeout parameter instead of setting
timeout variable.
* config/dos.exp: Ditto.
* config/ddb.exp: Ditto.
* lib/mondfe.exp: Ditto.
* lib/rlogin.exp: Ditto.
* lib/telnet.exp: Ditto.
* config/base68k.exp: Ditto.
* config/i386-bozo.exp: Ditto.
* config/gdb-comm.exp: Ditto.
* config/gdb_stub.exp: Ditto.
* config/i960.exp: Ditto.
* config/ddb-ether.exp: Ditto.
* config/sim.exp: Ditto.
* lib/g++.exp(g++_init): Use g++_include_flags instead of making
up the includes ourselves.
Ian Lance Taylor [Mon, 16 Jun 1997 23:33:49 +0000 (23:33 +0000)]
whitespace tweaks
Ian Lance Taylor [Mon, 16 Jun 1997 23:21:18 +0000 (23:21 +0000)]
Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
* scripttempl/elfppc.sc: Correct .rela.sdata entries.
* scripttempl/elfppc.sc: Put the PLT between the small and large
BSS segments.
* emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
program base of 0x02000000 is recommended...' because otherwise
shared libraries are less efficient. We use 0x01800000 because
otherwise it's impossible to branch to location 0, for instance if
you have an undefined weak symbol.
Ian Lance Taylor [Mon, 16 Jun 1997 23:17:22 +0000 (23:17 +0000)]
Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
* config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
calculate relocations to any external symbol, because we might be
linking a shared object and the symbol might be overriden or moved
(for instance, moved into a static executable's .bss section).
(GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
* config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
be calculated by the assembler.
* config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
whose destination lies in the same file, by ignoring the @plt or
@local and aiming the branch at its destination.
Ian Lance Taylor [Mon, 16 Jun 1997 23:10:46 +0000 (23:10 +0000)]
* configure.in: Use mh-ppcpic and mt-ppcpic for powerpc*-* targets.
Ian Lance Taylor [Mon, 16 Jun 1997 23:09:46 +0000 (23:09 +0000)]
Mon Jun 16 19:06:41 1997 Geoff Keating <geoffk@ozemail.com.au>
* mh-ppcpic: New file.
* mt-ppcpic: New file.
Ian Lance Taylor [Mon, 16 Jun 1997 23:05:27 +0000 (23:05 +0000)]
Mon Jun 16 18:56:27 1997 Geoff Keating <geoffk@ozemail.com.au>
* elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL*
relocs in shared libraries which refer to local symbols. Cope
with addend when processing a GOT relocation.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols
for sections that the linker didn't create.
(ppc_elf_finish_dynamic_sections): Only try to write out a section
symbol if it was created in ppc_elf_size_dynamic_sections.
(ppc_elf_relocate_section): Complain if we have to generate a reloc
relative to a section for which we didn't output a symbol.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up. PLT
relocs are 'rela' relocs, like everything else. .rela.plt is not
a read-only section, so we don't have to special-case it.
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the
.rela.bss section are (of course) 'rela' relocs not 'rel' relocs.
* elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot.
(ppc_elf_relocate_section): @got offsets are 4 from start of the
actual .got section.
* elflink.c (_bfd_elf_create_got_section): The three reserved
words start from the symbol '_GLOBAL_OFFSET_TABLE_'.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5
characters, not 4.
* elf32-ppc.c (ppc_elf_check_relocs): Use
_bfd_elf_create_got_section to create the GOT rather than
ppc_elf_create_linker_section. Create the '.rela.got' section
ourselves.
(ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a
symbol has a GOT entry.
(ppc_elf_relocate_section): Record when a symbol is used through
the GOT, and allocate space in the GOT for each such symbol.
(ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff.
(ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT
stuff.
* elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be
treated in a similar way to ADDR16_HA relocs.
(ppc_elf_relocate_section): PLTREL24 relocs do not get copied into
shared objects; the linker must deal with them.
(ppc_elf_create_linker_section): Stop setting
_GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused
LINKER_SECTION_PLT stuff.
(ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff.
(ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT
section, not ELF-specific calls.
(elf_backend_plt_not_loaded): Set to 1.
(elf_backend_got_symbol_offset): Set to 4.
* elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member
for when ld.so fills in the PLT; and 'got_symbol_offset' member.
* elflink.c (_bfd_elf_create_dynamic_sections): Apply
plt_not_loaded member.
(_bfd_elf_create_got_section): Apply got_symbol_offset.
* elfxx-target.h (elf_backend_plt_not_loaded): Set default to
'loaded'.
(elf_backend_G_O_T_offset): Set default to 0.
(elfNN_bed): Set added fields.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting
DT_RELENT in shared objects; should be DT_RELAENT.
* elf32-ppc.c (ppc_elf_relocate_section): Propagate
R_PPC_ADDR16_HA relocs to shared objects. Cope with case where
such a reloc (in a non-shared object) refers to a symbol that's
not defined.
Ian Lance Taylor [Mon, 16 Jun 1997 20:09:35 +0000 (20:09 +0000)]
* config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
signed operand, sign extend a 32 bit value to the host size.
Permits dubious usage like
addi %r6,%r6,0xfffffeff
to assemble on a 64 bit host as it does on a 32 bit host.
Ian Lance Taylor [Mon, 16 Jun 1997 19:47:53 +0000 (19:47 +0000)]
* Makefile.in (CFLAGS): Subsitute from configure script. From
Jeff Makey <jeff@cts.com>.
Ian Lance Taylor [Mon, 16 Jun 1997 19:46:12 +0000 (19:46 +0000)]
* configure: Set CFLAGS and CXXFLAGS, and substitute them into
Makefile. From Jeff Makey <jeff@cts.com>.
* Makefile.in: Add comment for CFLAGS and CXXFLAGS.
Ian Lance Taylor [Mon, 16 Jun 1997 19:34:28 +0000 (19:34 +0000)]
credit
Ian Lance Taylor [Mon, 16 Jun 1997 19:34:04 +0000 (19:34 +0000)]
* Makefile.in (CC, CFLAGS): Substitute from configure script.
Ian Lance Taylor [Mon, 16 Jun 1997 19:32:15 +0000 (19:32 +0000)]
* Makefile.am (INCLUDES): Add -DDEBUG.
* Makefile.in: Rebuild.
Ian Lance Taylor [Mon, 16 Jun 1997 19:24:23 +0000 (19:24 +0000)]
* elf32-i386.c (elf_i386_relocate_section): When generating a
shared library, do the relocation if the input section is not
allocated in memory.
Ian Lance Taylor [Mon, 16 Jun 1997 18:55:52 +0000 (18:55 +0000)]
* Makefile.in (DISTBISONFILES): Remove.
(taz): Don't futz with DISTBISONFILES. Change BISON to use
$(DEFAULT_YACC).
Ian Lance Taylor [Mon, 16 Jun 1997 18:45:30 +0000 (18:45 +0000)]
Mon Jun 16 14:42:14 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* elfcode.h (put_signed_word): Define.
(get_signed_word): Define.
(elf_swap_reloca_in): Use get_signed_word for the r_addend field.
(elf_swap_reloca_out): Use put_signed_word for the r_addend
field.
* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
bfd_get_signed_32 to set the r_addend field.
* elf64-mips.c (mips_elf64_swap_reloca_in): Use
bfd_h_get_signed_64 to set the r_addend field.
Ian Lance Taylor [Mon, 16 Jun 1997 18:41:19 +0000 (18:41 +0000)]
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
(elf_fix_symbol_flags): New static function, broken out of
elf_adjust_dynamic_symbol.
(elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
(elf_link_assign_sym_version): Likewise. Permit a symbol to be
forced local even if NEEDS_PLT is set. When forcing a symbol to
be local, clear NEEDS_PLT.
(elf_link_output_extsym): Remove unused local bed.
Ian Lance Taylor [Mon, 16 Jun 1997 18:34:35 +0000 (18:34 +0000)]
* gas/m68k/pcrel.d: Update for m68k disassembler changes.
* gas/m68k/operands.d: Likewise.
Ian Lance Taylor [Mon, 16 Jun 1997 18:31:32 +0000 (18:31 +0000)]
* m68k-dis.c (print_insn_arg): Print case 7.2 using %pc@()
syntax. From Roman Hodek
<rnhodek@faui22c.informatik.uni-erlangen.de>.
Ian Lance Taylor [Mon, 16 Jun 1997 18:14:13 +0000 (18:14 +0000)]
* i386-dis.c (twobyte_has_modrm): Fix pand.
Ian Lance Taylor [Mon, 16 Jun 1997 18:11:38 +0000 (18:11 +0000)]
Mon Jun 16 14:10:00 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* i386.h: Fix pand opcode.
Ian Lance Taylor [Mon, 16 Jun 1997 18:09:28 +0000 (18:09 +0000)]
Mon Jun 16 14:08:38 1997 Michael Taylor <mbt@mit.edu>
* i386-dis.c (dis386_twobyte): Fix pand and pandn.
Ian Lance Taylor [Mon, 16 Jun 1997 18:00:10 +0000 (18:00 +0000)]
Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
expression.
* config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
of obj_copy_symbol_attributes.
Ian Lance Taylor [Mon, 16 Jun 1997 17:31:46 +0000 (17:31 +0000)]
* config/tc-i386.c (i386_operand): Use alloca rather than a fixed
buffer size to make a copy of the symbol.
Ian Lance Taylor [Mon, 16 Jun 1997 16:56:22 +0000 (16:56 +0000)]
Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ldlang.c (lang_place_undefineds): Add \n in einfo call.
(lang_size_sections): Likewise.
* ldlex.l: Likewise.
* emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
* emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
Likewise.
(check_sections): Likewise.
(gld${EMULATION_NAME}_after_allocation): Likewise.
* emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
Likewise.
* mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
* mpw-idtmips.c (gldmipsidt_after_open): Likewise.
(check_sections): Likewise.
(gldmipsidt_after_allocation): Likewise.
Ian Lance Taylor [Mon, 16 Jun 1997 16:50:43 +0000 (16:50 +0000)]
Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ldemul.c (ldemul_choose_mode): Remove unused einfo argument.