Jeff Law [Wed, 11 Dec 1996 06:20:40 +0000 (06:20 +0000)]
* gas/mn10300/basic.exp: Update after endianness changes to
the assembler.
Jeff Law [Wed, 11 Dec 1996 06:19:43 +0000 (06:19 +0000)]
* config/tc-mn10300.c (md_assemble): Update to handle endianness
issues correctly.
Jeff Law [Tue, 10 Dec 1996 22:10:07 +0000 (22:10 +0000)]
* simops.c (REG0_4): Define.
Use REG0_4 for indexed loads/stores.
Fixes bugs exposed after minor codegen improvements in the compiler.
Martin Hunt [Tue, 10 Dec 1996 21:53:34 +0000 (21:53 +0000)]
Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c (write_2_short): Remove code that called
parallel_ok() when the programmer specified parallel instructions.
Ian Lance Taylor [Tue, 10 Dec 1996 21:18:38 +0000 (21:18 +0000)]
* config/tc-mips.c (append_insn): Make sure there is enough room
in a frag after a mips16 instruction to switch it with a jump
instruction.
Jeff Law [Tue, 10 Dec 1996 20:34:14 +0000 (20:34 +0000)]
* mn10200-opc.c (mn10200_opcodes): "mov imm8,d0" is a format 2
instruction. Fix opcode field for "movb (imm24),dn".
Stuff found by the testsuite.
Jeff Law [Tue, 10 Dec 1996 20:06:33 +0000 (20:06 +0000)]
* gas/mn10200/{mov1.s,mov2.s,mov3.s,mov4.s,movx.s}: New tests.
* gas/mn10200/{movb.s, movbu.s}: Likewise.
* gas/mn10200/basic.exp: Run them.
We correctly assemble & insert operands for all mn10200 instructions.
Jim Wilson [Tue, 10 Dec 1996 19:39:55 +0000 (19:39 +0000)]
For NEC 4100/4300 project
* gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits.
* interp.c (CHECKHILO): Define away.
(simSIGINT): New macro.
(membank_size): Increase from 1MB to 2MB.
(control_c): New function.
(sim_resume): Rename parameter signal to signal_number. Add local
variable prev. Call signal before and after simulate.
(sim_stop_reason): Add simSIGINT support.
(sim_warning, sim_error, dotrace, SignalException): Define as stdarg
functions always.
(sim_warning): Delete call to SignalException. Do call printf_filtered
if logfh is NULL.
(AddressTranslation): Add #ifdef DEBUG around debugging message and
a call to sim_warning.
Jeff Law [Tue, 10 Dec 1996 19:33:48 +0000 (19:33 +0000)]
* config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
* config/tc-mn10300.c (md_assemble): Likewise.
Found by mn10200 gas testsuite.
Jeff Law [Tue, 10 Dec 1996 19:13:07 +0000 (19:13 +0000)]
* mn10200-opc.c (mn10200_operands): Fix insertion position
for DI operand.
Found by gas testsuite.
Ian Lance Taylor [Tue, 10 Dec 1996 16:38:22 +0000 (16:38 +0000)]
* config/tc-mips.c (mips16_extended_frag): Give an error for an
attempt to use a non absolute symbol in an extending frag.
Michael Meissner [Tue, 10 Dec 1996 16:12:48 +0000 (16:12 +0000)]
New revision from Andrew
Ian Lance Taylor [Tue, 10 Dec 1996 03:47:41 +0000 (03:47 +0000)]
* app.c (do_scrub_chars): At the end of a C comment, pass space to
UNGET rather than PUT. Set old_state before setting state to -2.
PR 11229.
Geoffrey Noer [Tue, 10 Dec 1996 01:41:16 +0000 (01:41 +0000)]
Mon Dec 9 17:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: more small register fixes
* mn10300-tdep.c: filled in from another target
David Edelsohn [Tue, 10 Dec 1996 01:32:17 +0000 (01:32 +0000)]
* monitor.c (monitor_insert_breakpoint): Handle bi-endian machines.
Mark Alexander [Tue, 10 Dec 1996 00:15:46 +0000 (00:15 +0000)]
* config/mips/tm-mips.h: Get rid of call-dummy code.
Minor changes to make pre-ANSI compilers happy.
Mark Alexander [Tue, 10 Dec 1996 00:14:48 +0000 (00:14 +0000)]
* config/mips/tm-mips.h: Get rid of call-dummy code.
Minor changes to make pre-ANSI compilers happy.
* mips-tdep.c: Minor changes to make pre-ANSI compilers happy.
(mips_push_arguments): Rewrite to partially support EABI.
(mips_pc_in_call_dummy): New function.
* infcmd.c: Include symfile.h to get prototype of entry_point_address,
which fixes 64-bit sign extension bug on MIPS.
Jeff Law [Tue, 10 Dec 1996 00:14:35 +0000 (00:14 +0000)]
* gas/mn10200/*.s: New tests for the mn10200 assembler.
* gas/mn10200/basic.exp: Run them.
Tests for all instructions except mov*.
Fred Fish [Mon, 9 Dec 1996 23:58:07 +0000 (23:58 +0000)]
* gdb.texinfo, refcard.tex: Restore author credit
Jeff Law [Mon, 9 Dec 1996 23:53:37 +0000 (23:53 +0000)]
* config/tc-mn10200.c: Flesh out assembler support for MN10200.
* config/tc-mn10200.h: Likewise.
Actually assembles some mn10200 stuff (everything but mov* instructions!)
Jeff Law [Mon, 9 Dec 1996 23:48:15 +0000 (23:48 +0000)]
* mn10200-opc.c: Create mn10200 opcode table.
* mn10200-dis.c: Flesh out mn10200 disassembler. Not ready,
but moving along nicely.
Checkpointing today's mn10200 work.
Ian Lance Taylor [Mon, 9 Dec 1996 23:34:20 +0000 (23:34 +0000)]
* config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
when extending because the value is exactly maxtiny + 1.
Ian Lance Taylor [Mon, 9 Dec 1996 23:26:15 +0000 (23:26 +0000)]
* config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
arguments, and store them. Adjust other RELAX_MIPS16 macros.
(RELAX_MIPS16_USER_SMALL): Define.
(RELAX_MIPS16_USER_EXT): Define.
(mips16_small, mips16_ext): New static variables.
(append_insn): Pass mips16_small and mips16_ext to
RELAX_MIPS16_ENCODE.
(mips16_ip): Set mips16_small and mips16_ext.
(mips16_immed): Don't check mips16_autoextend.
(mips16_extended_frag): Check USER_SMALL and USER_EXT.
Ian Lance Taylor [Mon, 9 Dec 1996 22:11:24 +0000 (22:11 +0000)]
* write.c (write_relocs): Print an error for an out of range
fixup, rather than calling abort.
* as.c (main): Unlink the output file if there are errors while
generating the fixups.
Geoffrey Noer [Mon, 9 Dec 1996 09:11:45 +0000 (09:11 +0000)]
additional register stuff
Geoffrey Noer [Mon, 9 Dec 1996 08:33:27 +0000 (08:33 +0000)]
Mon Dec 9 00:14:49 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: fix register names
* mn10300-tdep.c: new skeleton tdep for mn10300
David Edelsohn [Mon, 9 Dec 1996 02:27:59 +0000 (02:27 +0000)]
* callback.c: #include <stdlib.h>
(os_error): New function.
(default_callback): Add os_error.
David Edelsohn [Mon, 9 Dec 1996 02:06:42 +0000 (02:06 +0000)]
* remote-sim.h: Update some comments.
* remote-sim.c (gdb_os_error): New function.
(init_callbacks): Fix initializing of gdb_callback. Add gdb_os_error.
(gdb_os_printf_filtered): Use gdb_stdout, not stdout.
David Edelsohn [Mon, 9 Dec 1996 01:12:03 +0000 (01:12 +0000)]
* callback.h (host_callback): New member `error'.
Peter Schauer [Sun, 8 Dec 1996 12:35:28 +0000 (12:35 +0000)]
* Makefile.in (ALL_MACHINES): Add mips16-opc.o.
Peter Schauer [Sun, 8 Dec 1996 08:38:34 +0000 (08:38 +0000)]
* irix5-nat.c (supply_gregset, fill_gregset): Handle gregsets
from O32 and N32 ABI.
(xfer_link_map_member): Work around problem with alignments
in struct obj when compiling GDB under N32 ABI.
Jeff Law [Sat, 7 Dec 1996 16:54:57 +0000 (16:54 +0000)]
* simops.c (REG0_16): Fix typo.
J.T. Conklin [Sat, 7 Dec 1996 00:54:51 +0000 (00:54 +0000)]
* m68k-opc.c (m68k_opcodes): Revert change to use < and >
specifiers for fmovem* instructions.
Jeff Law [Sat, 7 Dec 1996 00:36:50 +0000 (00:36 +0000)]
Add missing semicolons in last change.
Ian Lance Taylor [Sat, 7 Dec 1996 00:32:05 +0000 (00:32 +0000)]
* config/tc-mips.c (mips16_extended_frag): Don't call
S_GET_VALUE.
(md_convert_frag): Call resolve_symbol_value before calling
S_GET_VALUE, and don't add in the frag address.
Ian Lance Taylor [Fri, 6 Dec 1996 23:51:01 +0000 (23:51 +0000)]
* config/tc-mips.c (mips16_immed): Add file and line parameters,
and use them when reporting errors. Change all callers.
Jeff Law [Fri, 6 Dec 1996 22:51:44 +0000 (22:51 +0000)]
* elf32-mn10300.c (elf_symbol_leading_char): Define.
Jeff Law [Fri, 6 Dec 1996 22:44:30 +0000 (22:44 +0000)]
* config/tc-mn10300.c: Fix various gcc -Wall warnings.
Remove '$' prefixing for registers.
Jeff Law [Fri, 6 Dec 1996 22:40:31 +0000 (22:40 +0000)]
* mn10300-dis.c (disassemble): Remove '$' register prefixing.
Jeff Law [Fri, 6 Dec 1996 22:39:18 +0000 (22:39 +0000)]
* gas/mn10300/*.s: Remove '$' register prefixing.
Ian Lance Taylor [Fri, 6 Dec 1996 22:35:01 +0000 (22:35 +0000)]
* mips16-opc.c: Change opcode for entry/exit to avoid conflicting
with dsrl.
Jeff Law [Fri, 6 Dec 1996 22:23:37 +0000 (22:23 +0000)]
* elf32-mn10300.c: Add some comments.
Still cleaning up.
Ian Lance Taylor [Fri, 6 Dec 1996 22:22:52 +0000 (22:22 +0000)]
* ieee.c (parse_ieee_bb): Always initialize namcopy to avoid gcc
warning about uninitialized variable.
(ieee_read_cxx_class): Likewise, for pf.
(ieee_enum_type): Likewise, for i.
Ian Lance Taylor [Fri, 6 Dec 1996 22:20:24 +0000 (22:20 +0000)]
* ihex.c (ihex_scan): Always initialize buf before jumping to
error_return.
(ihex_read_section): Likewise.
Jeff Law [Fri, 6 Dec 1996 22:04:12 +0000 (22:04 +0000)]
* mn10300-opc.c: Add some comments explaining the various
operands and such.
* mn10300-dis.c (disassemble): Fix minor gcc -Wall warnings.
Jeff Law [Fri, 6 Dec 1996 21:49:27 +0000 (21:49 +0000)]
* simops.c: Call abort for any instruction that's not currently
simulated.
Jeff Law [Fri, 6 Dec 1996 21:47:21 +0000 (21:47 +0000)]
* simops.c: Define accessor macros to extract register
values from instructions. Use them consistently.
Jeff Law [Fri, 6 Dec 1996 21:33:48 +0000 (21:33 +0000)]
* interp.c: Delete unused global variable "OP".
(sim_resume): Remove unused variable "opcode".
* simops.c: Fix some uninitialized variable problems, add
parens to fix various -Wall warnings.
Fixing assorted -Wall problems.
Jeff Law [Fri, 6 Dec 1996 21:20:17 +0000 (21:20 +0000)]
Opps. Forgot something in last change.
Jeff Law [Fri, 6 Dec 1996 21:19:37 +0000 (21:19 +0000)]
* gencode.c (write_header): Add "insn" and "extension" arguments
to the OP_* declarations.
(write_template): Similarly for function templates.
* interp.c (insn, extension): Remove global variables. Instead
pass them as arguments to the OP_* functions.
* mn10300_sim.h: Remove decls for "insn" and "extension".
* simops.c (OP_*): Accept "insn" and "extension" as arguments
instead of using globals.
Starting to clean things up.
Mark Alexander [Fri, 6 Dec 1996 17:44:23 +0000 (17:44 +0000)]
* add valops.c to list of files to be sanitized for d10v
Martin Hunt [Fri, 6 Dec 1996 09:13:25 +0000 (09:13 +0000)]
Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
* config/tc-d10v.c (md_assemble): Check to see if prev_seg
is initialized before using it.
(d10v_cleanup): No longer uses its argument, so make it void.
* config/tc-d10v.h (d10v_cleanup): Change prototype.
Jeff Law [Fri, 6 Dec 1996 07:57:21 +0000 (07:57 +0000)]
* simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"
Fixes remaining hangs while running c-torture execution tests.
Only 12 c-torture execution failures left:
* 920625-1.c fails all 6 execution tests.
* 960521-1.c fails all 6 execution tests.
Stan Shebs [Fri, 6 Dec 1996 07:37:24 +0000 (07:37 +0000)]
* d10v-tdep.c: Add support for examination and interpretation
of instruction trace buffer.
(trace, untrace, info trace, tdisassemble): New commands.
Jeff Law [Fri, 6 Dec 1996 05:35:00 +0000 (05:35 +0000)]
* elf32-mn10300.c (elf_mn10300_howto_table): Don't set partial-
inplace for most relocs.
Jeff Law [Fri, 6 Dec 1996 05:30:24 +0000 (05:30 +0000)]
* simops.c: Fix thinkos in last change to "inc dn".
Michael Meissner [Fri, 6 Dec 1996 04:46:19 +0000 (04:46 +0000)]
Fix recent breakage
Ian Lance Taylor [Thu, 5 Dec 1996 23:34:59 +0000 (23:34 +0000)]
modify last patch
David Edelsohn [Thu, 5 Dec 1996 22:30:45 +0000 (22:30 +0000)]
(TM_PRINT_INSN_MACH): Redefine for sparclet.
David Edelsohn [Thu, 5 Dec 1996 22:26:44 +0000 (22:26 +0000)]
* tm-sparclet.h (TM_PRINT_INSN_MACH): Redefine for sparclet.
David Edelsohn [Thu, 5 Dec 1996 22:09:15 +0000 (22:09 +0000)]
* config/sparc/tm-sparclet.h (TARGET_BYTE_ORDER): Undef.
(TARGET_BYTE_ORDER_SELECTABLE): Define.
(BREAKPOINT): Undef.
({BIG,LITTLE}_BREAKPOINT): Define.
David Edelsohn [Thu, 5 Dec 1996 22:04:46 +0000 (22:04 +0000)]
* config/h8300/h8300.mt (SIM): Change to ../sim/h8300/libsim.a.
* config/h8500/h8500.mt (SIM): Change to ../sim/h8500/libsim.a.
Entries missing from Nov. 20 change.
J.T. Conklin [Thu, 5 Dec 1996 20:12:47 +0000 (20:12 +0000)]
* m68k-dis.c (print_insn_arg): Handle new < and > operand
specifiers.
* m68k-opc.c (m68k_opcodes): Simplify table by using < and >
operand specifiers in fmovm* instructions.
Ian Lance Taylor [Thu, 5 Dec 1996 18:47:22 +0000 (18:47 +0000)]
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
use hold_rel unless SEC_ALLOC is set for the reloc section.
(gld${EMULATION_NAME}_place_section): Only set hold_rel if
SEC_ALLOC is set.
PR 11174.
Ian Lance Taylor [Thu, 5 Dec 1996 18:47:03 +0000 (18:47 +0000)]
* elflink.h (elf_link_add_object_symbols): Calling check_relocs
even if SEC_ALLOC is not set.
* elf32-i386.c (elf_i386_check_relocs): Don't check SEC_ALLOC
when deciding whether to copy a reloc into a shared object.
(elf_i386_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
(elf32_sparc_relocate_section): Likewise.
* elf32-i386.c (elf_i386_check_relocs): Don't set SEC_ALLOC in a
reloc section if it is not set in the source section.
* elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
* elf.c (bfd_section_from_shdr): Mark a reloc section associated
with a SEC_DEBUGGING section as SEC_DEBUGGING.
PR 11174.
Ian Lance Taylor [Thu, 5 Dec 1996 16:06:14 +0000 (16:06 +0000)]
* write.c (fixup_segment): Don't discard the symbol for a PC
relative fixup to an absolute symbol.
PR 11204.
Geoffrey Noer [Thu, 5 Dec 1996 00:55:29 +0000 (00:55 +0000)]
Wed Dec 4 16:53:05 1996 Geoffrey Noer <noer@cygnus.com>
* configure.in: don't avoid building gdb for mn10300 any more
* Makefile.in: double-quote GCC_FOR_TARGET line in EXTRA_GCC_FLAGS
instead of single-quoting it.
Geoffrey Noer [Thu, 5 Dec 1996 00:37:33 +0000 (00:37 +0000)]
fixed sanitize files
Geoffrey Noer [Thu, 5 Dec 1996 00:36:45 +0000 (00:36 +0000)]
Wed Dec 4 16:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/mn10300.mt
* config/mn10300/tm-mn10300.h: new config files for mn10300
processor
Martin Hunt [Wed, 4 Dec 1996 23:47:30 +0000 (23:47 +0000)]
Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
with multiple sections.
Martin Hunt [Wed, 4 Dec 1996 23:47:16 +0000 (23:47 +0000)]
Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
with multiple sections.
Michael Meissner [Wed, 4 Dec 1996 21:12:01 +0000 (21:12 +0000)]
Update .Sanitize files
Ian Lance Taylor [Wed, 4 Dec 1996 19:53:09 +0000 (19:53 +0000)]
* ppc-opc.c (insert_li): Give an error if the offset has the two
least significant bits set.
PR 11201.
Michael Meissner [Wed, 4 Dec 1996 19:19:15 +0000 (19:19 +0000)]
#if 0 some code that is not used yet
Jeff Law [Wed, 4 Dec 1996 18:02:00 +0000 (18:02 +0000)]
* simops.c: "add imm,sp" does not effect the condition codes.
"inc dn" does effect the condition codes.
Just something I noticed.
Ian Lance Taylor [Wed, 4 Dec 1996 18:01:48 +0000 (18:01 +0000)]
* config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
no-mips-16 to no-mips16.
(s_mipsset): Accept .set mips16 and .set nomips16.
Michael Meissner [Wed, 4 Dec 1996 15:42:14 +0000 (15:42 +0000)]
Allow foo@suffix+constant relocations
Jason Merrill [Wed, 4 Dec 1996 13:10:04 +0000 (13:10 +0000)]
* configure.in: Don't use --with-stabs on IRIX 6.
Jeff Law [Wed, 4 Dec 1996 05:00:49 +0000 (05:00 +0000)]
* simops.c: Treat both operands as signed values for
"div" instruction.
Fixes another dozen c-torture execution failures.
Michael Meissner [Wed, 4 Dec 1996 04:26:04 +0000 (04:26 +0000)]
Add -m{,no-}solaris support to enable/disable solaris comments & setting ppc flags
Rob Savoye [Wed, 4 Dec 1996 00:56:56 +0000 (00:56 +0000)]
* configure.in: Look for libtermcap.a.
* Makefile.in: Only link in -ltermcap if it exists.
* erc32.c: Update to version 2.6a. Fix uart handling.
* exec.c: Update to version 2.6a. Add sparclite support.
* float.c: Update to version 2.6a. Convert comments to
preprocessor warnings. Add __setfpucw() for i385 hosts so floating
point exceptions work.
* func.c: Update to version 2.6a. Fix uart handling, add support
for user error traps.
* help.c: Update to version 2.6a. Add help note on user error
traps.
* interf.c: Update to version 2.6a. Fix uart handling, and add
sparclite support.
* examples/gccx: Use sparclite cross compiler, not native gcc.
* examples/srt0.S: Use "mov" rather than "wr" for manipulating
the psr register.
Jeff Law [Wed, 4 Dec 1996 00:42:01 +0000 (00:42 +0000)]
* simops.c: Fix simulation of division instructions.
Fix typos/thinkos in several "cmp" and "sub" instructions.
Another couple dozen c-torture failures fixed.
Michael Snyder [Tue, 3 Dec 1996 19:44:51 +0000 (19:44 +0000)]
Tue Dec 3 11:38:14 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* blockframe.c: add macro USE_GENERIC_DUMMY_FRAMES to enable/disable
code for generic call_dummy frames.
* config/h8300/tm-h8300.h: turn on USE_GENERIC_DUMMY_FRAMES
* config/m32r/tm-m32r.h: turn on USE_GENERIC_DUMMY_FRAMES
* config/sh/tm-sh.h: turn on USE_GENERIC_DUMMY_FRAMES
* config/v850/tm-v850.h: turn on USE_GENERIC_DUMMY_FRAMES
David Edelsohn [Tue, 3 Dec 1996 17:15:36 +0000 (17:15 +0000)]
* configure.in (m32r): Build gdb, libg++ now.
Brendan Kehoe [Mon, 2 Dec 1996 22:29:55 +0000 (22:29 +0000)]
fix sanitize typo
Jeff Law [Mon, 2 Dec 1996 20:12:08 +0000 (20:12 +0000)]
* simomps.c: Fix carry bit handling in "sub" and "cmp"
instructions.
Another dozen execution failures fixed.
Jeff Law [Mon, 2 Dec 1996 19:35:55 +0000 (19:35 +0000)]
* simops.c: Fix "mov imm8,an" and "mov imm16,dn".
Fixes 80 or so c-torture execution failures. 400 to go.
Ian Lance Taylor [Mon, 2 Dec 1996 18:18:33 +0000 (18:18 +0000)]
* cofflink.c (_bfd_coff_generic_relocate_section): Print an error
message for bfd_reloc_outofrange, rather than aborting. From
Philippe De Muyter <phdm@info.ucl.ac.be>.
Ian Lance Taylor [Mon, 2 Dec 1996 17:30:09 +0000 (17:30 +0000)]
comment fix
Ian Lance Taylor [Mon, 2 Dec 1996 17:15:05 +0000 (17:15 +0000)]
* cofflink.c (_bfd_coff_final_link): If there aren't any relocs in
a relocateable link, don't try to process them. From Heinz Wrobel
<wrobel@lpr.e-technik.tu-muenchen.de>.
Jeff Law [Mon, 2 Dec 1996 08:35:20 +0000 (08:35 +0000)]
* simops.c: Fix overflow computation for many instructions.
Fixes several hangs in the c-torture execution tests. Also fixes about
40 failures.
Jeff Law [Mon, 2 Dec 1996 07:44:50 +0000 (07:44 +0000)]
* elf32-mn10300.c (mn10300_info_howto): Renamed from
mn10300-Info_howto_rel. Tweak reloc argument to be an
Elf32_Internal_Rela.
(USE_RELA): Define instead of USE_REL.
(elf_info_to_howto, elf_info_howto_rel): Corresponding changes.
Jeff Law [Mon, 2 Dec 1996 07:41:52 +0000 (07:41 +0000)]
* config/tc-mn10300.c (tc_gen_reloc): Get the addend from
fx_offset, not fx_addnumber.
Along with some simulator, compiler, bfd changes this fixes 90 or so
c-torture execution failures.
Jeff Law [Mon, 2 Dec 1996 07:38:10 +0000 (07:38 +0000)]
* simops.c: Fix "movdm, an", "movbu dm, (an)", and "movhu dm, (an)".
Along with some compiler, bfd, assembler changes this fixes 90 or so
c-torture execution failures.
Jeff Law [Mon, 2 Dec 1996 04:50:26 +0000 (04:50 +0000)]
* config/tc-mn10300.h (tc_fix_adjustable): Don't do any
reloc adjustments.
reloc adjusting is of minimal value, and quite problematical for
machines which do linker relaxing...
Jeff Law [Mon, 2 Dec 1996 04:23:37 +0000 (04:23 +0000)]
* simops.c: Fix "mov am, dn".
Fixes more c-torture problems.
Jeff Law [Sun, 1 Dec 1996 23:10:04 +0000 (23:10 +0000)]
* simops.c: Fix more bugs in "add imm,an" and
"add imm,dn".
Fixes a half-dozen (of several hundred :( c-torture failures.
Geoffrey Noer [Sun, 1 Dec 1996 08:46:59 +0000 (08:46 +0000)]
Sun Dec 1 00:40:46 1996 Geoffrey Noer <noer@cygnus.com>
* configure.tgt: add new mn10300 entry
Peter Schauer [Sun, 1 Dec 1996 08:43:48 +0000 (08:43 +0000)]
* vax-tdep.c (vax_print_insn, print_insn_arg): Use info functions
for printing. From Valeriy Ushakov <uwe@ptc.spbu.ru>.
Peter Schauer [Sun, 1 Dec 1996 08:33:39 +0000 (08:33 +0000)]
Add support for Irix 6.2 native O32 and N32 ABI.
* config.in, configure.in, configure: Check for <objlist.h>.
* configure.tgt: Handle mips*-sgi-irix6* like irix5 for now.
* cp-valprint.c (cp_print_value_fields): Use SYMBOL_VALUE_ADDRESS
instead of SYMBOL_BLOCK_VALUE to get the address of a static member.
* dwarf2read.c: Turn warnings and recoverable errors into complaints,
add new complaints where appropriate.
gcc -Wall cleanup.
(struct line_head): Change line_base from char to int to avoid
problems with compilers whose plain char is represented by an
unsigned char.
(struct partial_die_info): Add is_declaration field.
(dwarf2_tmp_obstack): New obstack for allocating temporary storage
used during symbol reading.
(cu_header_offset): New variable for resolving relative reference
dies.
(optimized_out, basereg, islocal, frame_base_reg, frame_base_offset):
New interface variables for decode_locdesc.
(struct dwarf2_pinfo): New structure for communication between
psymtab and symtab reading, passed via pst->read_symtab_private.
(dwarf2_has_info, dwarf2_build_psymtabs): Accept objects files
without line number sections.
(dwarf2_build_psymtabs_hard): Initialize temporary obstack
for symbol reading.
Allocate and initialize pst->read_symtab_private.
Relocate pst->textlow and pst->texthigh with baseaddr.
(scan_partial_symbols): Do not add DW_AT_declaration symbols
to the partial symbol table.
Add file scope enumerator symbols to the partial symbol table.
Fix typo in highpc computation.
If we didn't find a lowpc, set it to highpc to avoid complaints
from `maint check.
(add_partial_symbol): Relocate symbol values with baseaddr.
Add static DW_TAG_subprogram and DW_TAG_variable symbols to the
minimal symbol table.
Obtain symbol values for DW_TAG_variable symbols from the location
descriptor, skip symbols with missing location desciptors.
Skip symbols for aggregate types without children.
Handle enumerator symbols.
(dwarf2_psymtab_to_symtab): Issue symbol reading message if verbose.
(psymtab_to_symtab_1): Set local variables from
pst->read_symtab_private, set cu_header_offset and baseaddr.
Initialize temporary obstack for symbol reading, initialize
buildsym and add a cleanup to really_free_pendings.
Relocate highpc with baseaddr when calling end_symtab.
If the compilation is from a C file generated by language
preprocessors, do not set the symtab language if it was already
deduced by start_subfile.
Removed verbose sorting symbol table message.
(process_die): Handle DW_TAG_ptr_to_member_type and
DW_TAG_reference_type.
Use read_subroutine_type to get the function type for
DW_TAG_subprogram before calling read_func_scope.
(read_file_scope): Initialize file name to <unknown>, start_subfile
expects a non-NULL name.
If we didn't find a lowpc, set it to highpc to avoid complaints
from finish_symbol.
Relocate lowpc and highpc with baseaddr.
Get rid of Irix6.2 native cc compile machine prefix in comp_dir.
Zero out ftypes for each new compilation unit (may be different
language or different objfile).
Accept compilation units without line number information, pass
comp_dir to decode_lines.
(read_func_scope): Initialize function name to <unknown> to avoid
core dumps when DW_AT_name is missing.
Relocate lowpc and highpc with baseaddr.
Handle DW_AT_frame_base, keep result for DW_OP_fbreg operations.
Pass function type to new_symbol.
(read_lexical_block_scope): Relocate lowpc and highpc with baseaddr.
(read_structure_scope): Set TYPE_TAG_NAME, not TYPE_NAME.
Handle DW_TAG_class_type.
Copy fields to type_obstack, release temporary storage for fields.
Don't add symbol if die is a stub die and has no children.
Handle C++ static member fields.
(read_enumeration): Set TYPE_TAG_NAME, not TYPE_NAME.
Copy fields to type_obstack, release temporary storage for fields.
Let new_symbol handle the symbol creation for enumerators
instead of handcrafting a symbol.
Determine signedness of enum type from enumerators.
(dwarf_read_array_type): Handle variable length arrays.
Use lookup_pointer_type instead of handcrafting a type.
Create array type only if a DW_TAG_subrange_type was found.
(read_tag_pointer_type, read_tag_reference_type):
Use lookup_pointer_type and lookup_reference_type instead
of handcrafting a type.
(read_tag_ptr_to_member_type): New function to handle
DW_TAG_ptr_to_member_type.
(read_subroutine_type): Handle parameter dies.
Use lookup_function_type instead of handcrafting a type.
(read_typedef): Allocate a TYPE_CODE_TYPEDEF type for the typedef.
(read_base_type): If the type has a name, use init_type to create
a new type instead of second guessing a fundamental type.
(read_comp_unit): Reset die reference table before building
a new one.
(dwarf2_read_section): Read section contents into psymbol_obstack.
(dwarf2_read_abbrevs): Handle unterminated abbreviations
for a compile unit gracefully.
(read_partial_die): Zero partial die before reading its info.
Handle DW_AT_declaration.
Fix typo in handling of DW_FORM_block4.
(read_full_die): Fix typo in handling of DW_FORM_block4.
(read_1_signed_byte, read_2_signed_bytes, read_4_signed_bytes):
New routines to get signed values from a buffer.
(read_n_bytes, read_string): Allocate storage from the temporary
obstack. If the host char size permits it, return pointer
to buffer instead of allocating storage.
(set_cu_language): Handle DW_LANG_Mips_Assembler.
(dwarf_attr): Return NULL if reference die for DW_AT_specification
or DW_AT_abstract_origin die is not found.
(record_minimal_symbol): Removed, replaced with a direct call to
prim_record_minimal_symbol, it now handles saving the string itself.
(convert_locdesc): Removed, partial symtab reading now uses
decode_locdesc.
(dwarf_attr): Use dwarf2_get_ref_die_offset to get the absolute
offset for the die reference.
(dwarf_decode_lines): Complain if the line section info is missing.
Use read_1_signed_byte to extract lh.line_base to avoid
problems with compilers whose plain char is represented by an
unsigned char.
Add cleanups for allocated temporary storage.
Start a subfile for the first file in the state machine.
Fix off by one problem with dirs.dirs access.
Use comp_dir when directory index is 0.
Support multiple sequences (from Jason Merrill <jason@cygnus.com>).
(dwarf2_start_subfile): Try to keep line numbers from identical
absolute and relative file names in a common subfile.
(new_symbol): Allocate symbol and symbol name on the symbol_obstack.
Set SYMBOL_LINE from DW_AT_decl_line if present.
Set SYMBOL_TYPE from passed type if not NULL.
Change DW_TAG_variable symbol types with missing type entries
to a sensible type.
Handle optimized_out, offreg and islocal storage classes.
Add external symbols with type information whose address isn't
known as LOC_UNRESOLVED symbols.
Synthesize typedefs for C++ classes, structs, unions and enumerations.
Handle DW_TAG_enumerator symbols, complain for unrecognized
symbol tags.
(die_type): A missing DW_AT_type represents a void type.
Use dwarf2_get_ref_die_offset to get the absolute offset for
the die reference.
(die_containing_type): New function to build type from
DW_AT_containing_type attribut.
(read_type_die): Handle DW_TAG_ptr_to_member_type.
Treat DW_TAG_subprogram like DW_TAG_subroutine_type.
(dwarf_base_type): Fix typo with creation of FT_UNSIGNED_SHORT
fundamental type.
(create_name): Removed, symbol name allocation is now done
in new_symbol.
(dump_die): Use print_address_numeric to print a CORE_ADDR.
(dwarf2_empty_die_ref_table): New function to clear the die
reference table.
(dwarf2_get_ref_die_offset): New function to get the absolute
die offset from a die reference attribute.
(decode_locdesc): Complete rewrite using a stack, code mostly
borrowed from dwarfread.c:locval.
(dwarf_alloc_type): Removed, replaced by direct calls to alloc_type.
(dwarf_alloc_block): Allocate block on temporary obstack.
* elfread.c (elf_symtab_read): When handling Irix dynamic symbols,
skip section name symbols and relocate all others.
(elf_symfile_read): Build dwarf2 psymtab even if offset is non-zero.
* irix5-nat.c (fetch_core_registers): Handle core_reg_sect
from N32 executables. Call registers_fetched after extracting
the registers.
(obj_list_variant, struct link_map, LM_OFFSET, LM_ADDR): New
definitions to enable support of O32 and N32 format objlists.
(struct so_list): New members offset, so_name and lmstart to
eliminate dependencies from the objlist format used.
(solib_map_sections, symbol_add_stub, solib_add,
info_sharedlibrary_command, solib_address, clear_solib): Use
so_name and LM_OFFSET.
(first_link_map_member): Rewrite to enable support of O32 and N32
format objlists.
(next_link_map_member, xfer_link_map_member): New functions to
support O32 and N32 format objlists.
(find_solib): Use first_link_map_member, next_link_map_member and
xfer_link_map_member.
(solib_create_inferior_hook): Use TARGET_SIGNAL_* instead of
host signal numbers.
* mdebugread.c (parse_partial_symbols, handle_psymbol_enumerators):
Pass CORE_ADDR variant to add_psymbol_to_list.
* mips-tdep.c (heuristic_proc_desc): Stop examining the prologue
if we encounter a positive stack adjustment. Handle `move $30,$sp'.
Handle `sd reg,offset($sp)' for 32 bit ABIs.
* symmisc.c (dump_msymbols, print_partial_symbols): Use
print_address_numeric to print a SYMBOL_VALUE_ADDRESS.
(dump_symtab): Print compilation directory if it is not NULL.
* valops.c (search_struct_field, value_struct_elt_for_reference):
Use SYMBOL_VALUE_ADDRESS instead of SYMBOL_BLOCK_VALUE to get the
address of a static member.