Commit graph

18220 commits

Author SHA1 Message Date
Ian Lance Taylor
16262668ac * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
(md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.

	* config/tc-mips.c (append_insn): Output jump instruction as a
	pair of 2 byte instructions, rather than as a single 4 byte
	instruction.

start-sanitize-r5900
	* config/tc-mips.c (md_begin): Correct test of mips_5900.
	(mips_ip): Don't check INSN_ISA for a macro.

end-sanitize-r5900
1997-02-11 20:56:00 +00:00
Ian Lance Taylor
b0c0b41ab1 * gas/mips/mips16.d: Update for change in disassembly output. 1997-02-11 20:47:25 +00:00
Ian Lance Taylor
2ea116f49b * mips-dis.c (_print_insn_mips): Set bytes_per_chunk and
display_endian.
	(print_insn_mips16): Likewise.
1997-02-11 20:46:14 +00:00
Ian Lance Taylor
e7886d4ba1 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
.mips16.call.* in .text.
1997-02-11 20:34:57 +00:00
Ian Lance Taylor
a4183ba5c9 * elf32-mips.c (reloc_type): Add R_MIPS16_GPREL.
(elf_mips16_gprel_howto): New static variable.
	(mips16_gprel_reloc): New static function.
	(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL.
	(mips_info_to_howto_rel): Handle R_MIPS16_GPREL.
	(mips_elf_relocate_section): Handle R_MIPS16_GPREL.
	* reloc.c (BFD_RELOC_MIPS16_GPREL): Define.
	* bfd-in2.h, libbfd.h: Rebuild.
1997-02-11 20:30:12 +00:00
Michael Meissner
37404956b4 New version from Andrew; Portability fixes on top of that 1997-02-11 20:19:28 +00:00
Jeff Law
3d6ab69f35 * gdb.base/watchpoint.exp: Don't expect a failure when calling
a function with a watchpoint enabled on the mn10200.
1997-02-11 19:54:45 +00:00
David Edelsohn
b9c5ee689d * elf32-m32r.c (elf_m32r_howto_table): Change partial_inplace to true
for R_M32R_{16,32,24,HI16_ULO,HI16_SLO,LO16}.
1997-02-11 19:45:51 +00:00
Jeff Law
25de138b06 * mn10200-tdep.c (mn10200_push_arguments): Stack only needs to
be two byte aligned.  Round argument sizes up to two byte boundary.
        Write out args in two byte hunks.
        (mn10200_push_return_address): Implement.
        * config/mn10200/tm-mn10200.h (EXTRACT_RETURN_VALUE): Abort for
        structures > 8 bytes (temporary).
        (STORE_RETURN_VALUE): Likewise.
        (CALL_DUMMY): No longer undefine.
        (USE_STRUCT_CONVENTION): Use for args > 8 bytes.
        (REG_STRUCT_HAS_ADDR): Define.
Inferior function calls for the mn10200.
1997-02-11 19:31:29 +00:00
Michael Meissner
f9114af581 Fix warnings when compiling callback.c 1997-02-11 18:56:35 +00:00
Michael Meissner
c45adab0b9 Silence warnings in ppc simulator 1997-02-11 18:48:40 +00:00
Jeff Law
9e40b4f147 * gdb.stabs/weird.exp: Don't quit if "weird.s" doesn't exist
before trying to create it!
1997-02-11 18:24:21 +00:00
Gavin Romig-Koch
276c2d7dc8 Add r5900 1997-02-11 13:26:34 +00:00
Dawn Perchik
a7f081a5be * gas/mips/itbl-test.c: Add copyright message and fix indentation. 1997-02-11 08:22:27 +00:00
Dawn Perchik
c674507349 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
config/itbl-mips.h: Add copyright message and fix indentation.
1997-02-11 08:11:03 +00:00
Bob Manson
dba77cd79b * config/vx.exp: Use hostname instead of netport.
* config/vxworks.exp: New file.

	* gdb.base/a2-run.exp: Change vxworks cases to use gdb_spawn_id.

	* config/monitor.exp(gdb_target_monitor): Look for a prompt from
 	gdb before assuming everything worked. Send a ^C if a timeout
	occurs.

Random fixes for vxworks and d10v.
1997-02-11 06:38:22 +00:00
Mark Alexander
7061bb0ef3 * mips-tdep.c (non_heuristic_proc_desc): New function.
(find_proc_desc): Move non-heuristic proc search code into separate
	function.
	(gdb_print_insn_mips): Use non-heuristic method to find procedure
	descriptor, to avoid prologue examination when disassembling.
	* remote-mips.c: Add support for new "lsi" target (LSI MiniRISC
	aka MicroMeteor board).
	(mips_exit_debug): Prevent protocol reinitialization if an error
	occurs while exiting debug mode.
1997-02-11 02:48:55 +00:00
Dawn Perchik
8e5c905e99 * itbl-ops.c: New file. Add support for dynamically read
instruction registers, opcodes and formats.  Build internal table
	for new instructions and provide callbacks for assembler and
	disassembler.
	* itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
	spec table.
	* itbl-ops.h: New file.  Header file for itbl support.
	* config/itbl-mips.h: New file.  Mips specific definitions for
	itbl support.
1997-02-11 02:07:57 +00:00
Dawn Perchik
242ce3d857 * itbl-test.c: New file. Stand-alone assembler and dissassembler for
itbl support.
1997-02-11 01:57:34 +00:00
Dawn Perchik
a3c2c0f44e * gas/mips/itbl: New file. Instruction Spec for testing --itbl option.
* gas/mips/itbl.s: New file.  Assembly with ne2w instructions specified
	in itbl.
1997-02-11 01:21:14 +00:00
Bob Manson
6a590607fc * lib/gdb.exp(gdb_test): Check the result of send_gdb. Use
$gdb_spawn_id directly.

Checking for errors actually helps. *sigh*
1997-02-11 00:49:17 +00:00
Jeff Law
a698d0d06f * mn10200-tdep.c: Remove lots of debugging printfs, update/improve
comments, formatting, etc.  Plus other minor fixes for problems
        I found during my first pass over the mn10200 port.
        (mn10200_analyze_prologue): New function.
        (mn10200_frame_chain, mn10200_init_extra_frame_info): Use it.
        * config/mn10200/tm-mn10200.h: Lots of updates/improvements to
        comments, formatting, etc.  Minor fixes for problems I found during
        my first pass over the mn10200 port.
        (TARGET_*_BIT): Define appropriately for ints, long longs, doubles and
        pointers.
        (REGISTER_VIRTUAL_TYPE): Define as a long.
        (EXTRACT_RETURN_VALUE): Rework to deal with long ints living
        in register pairs.
        (STORE_RETURN_VALUE): Similarly.
Checking in my initial changes, prologue scanning, etc.
Current gdb testsuite results:

                === gdb Summary ===

# of expected passes       3684
# of expected failures     40
# of unexpected failures   6
1997-02-10 23:56:56 +00:00
Jeff Law
efaf2b5892 * blockframe.c (generic_get_saved_regs): Remove unused variable
"addr".
        * breakpoint.c (frame_in_dummy): Move struct breakpoint *b decl
        inside #ifdef CALL_DUMMY.
        (watch_command_1): Initialize target_resources_ok.
        * command.c (do_setshow_command): Provide dummy initialization
        for "match".
        * valops.c (find_function_addr): Move function & prototype inside
        #ifdef CALL_DUMMY.
        (value_arg_coerce): Similarly.
        (value_of_variable): Provide dummy initialization of "frame".
Lint.
1997-02-10 23:15:37 +00:00
Jeff Law
66e7ce0add * gdb.base/exprs.exp: Delete bogus/incorrect (and probably
redundant) test.
1997-02-10 22:24:53 +00:00
Stu Grossman
40dffa42ba * gdbtk.c (call_wrapper): Clear running_now if an error occurs.
This fixes PR 11323, where gdbtk stops responding if an error occurs.
1997-02-10 21:52:46 +00:00
Jeff Law
797b43f662 * gdb.base/recurse.exp: Relax final value test for 'b' so that
it doesn't lose for 16bit integer systems.
1997-02-10 18:30:03 +00:00
Fred Fish
ba35784cc8 Add tic80 directory to keep_these_too or lose_these_too. 1997-02-10 17:36:26 +00:00
Fred Fish
394de41870 * tic80.h (tic80_symbol_to_value): Change prototype to match
change in function, added class parameter.
1997-02-10 17:34:59 +00:00
Fred Fish
c37555c141 * tic80-opc.c (tic80_symbol_to_value): Changed to accept
a symbol class that restricts translation to just that
	class (general register, condition code, etc).
1997-02-10 17:16:28 +00:00
Fred Fish
86fdcdafd1 * xcoffread.c (RECORD_MINIMAL_SYMBOL): Add NULL asection* parameter
to prim_record_minimal_symbol_and_info call that was missed in Jan 3
	change.
	(scan_xcoff_symtab): Ditto.
1997-02-10 15:59:01 +00:00
Fred Fish
11effa691a * emulparams/tic80coff.sh: New (dummy) file for TIc80.
* scripttempl/tic80coff.sc: New (dummy) file for TIc80.
	* Makefile.in (etic80coff.c): Add target and rule to build it.
	* configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
1997-02-10 01:17:14 +00:00
Mark Alexander
32dab60312 * remote-mips.c (common_breakpoint): Prevent 64-bit addresses
from being sent to 32-bit targets by masking off upper bits.
	* mips-tdep.c (heuristic_proc_start): Mask off upper 32 bits
	of PC on 32-bit targets.
	(mips16_heuristic_proc_desc): Recognize 'addiu s1,sp,n' as a
	frame setup instruction.
	(mips32_heuristic_proc_desc): Fix warning found by gcc -Wall.
	(mips16_skip_prologue): Recognize 'addiu s1,sp,n' as a valid
	prologue instruction.  Fix warnings and bugs found by gcc -Wall.
	* buildsym.c (finish_block): Improve handling of overlapping blocks;
	fixes problem on MIPS16 printing function arguments.
1997-02-09 17:36:49 +00:00
Michael Meissner
754a678408 Fix circular dependency 1997-02-09 01:37:55 +00:00
Peter Schauer
e7e98487ba * dwarf2read.c (dwarf2_linkage_name): New function to get
the linkage name of a die from DW_AT_MIPS_linkage_name or
	DW_AT_name.
	(read_func_scope, dwarf2_add_field, dwarf2_add_member_fn,
	new_symbol):  Use it instead of accessing DW_AT_name.
	(read_partial_die):  Use DW_AT_MIPS_linkage name as name of the
	partial die if present.
	(dwarf2_add_member_fn):  Make a copy of physname on the type obstack.
1997-02-08 09:16:26 +00:00
Bob Manson
dfe6379731 Changes to replace references to "prune_system_crud" with
"prune_warnings".
1997-02-08 01:03:37 +00:00
Ian Lance Taylor
ba4a45946c * elflink.h (elf_link_input_bfd): If we've discarded a section,
the output section will be the absolute section; don't print an
	assertion message for that case when doing a relocateable link.
PR 11647.
1997-02-07 17:40:24 +00:00
Jeff Law
c301abbdbb * blockframe.c (generic_frame_chain_valid): If the new frame
is not INNER_THAN the old frame, then it's not valid.
1997-02-07 17:07:49 +00:00
Jeff Law
a7355c4d87 * config/tc-mn10200.c (md_assemble): If a constant operand won't
fit into the constant field of a relaxable operand, then it does
        not match.
Fixes mn10200/other.s failures due to new relaxing code.
1997-02-07 16:54:05 +00:00
Jeff Law
28ec59b4cf * gdb.fortran/types.exp: If the target doesn't support "double"
data types, then expect "real" types to only be 4 bytes.
1997-02-07 16:40:39 +00:00
Jeff Law
2f54eeea76 * gdb.c++/virtfunc.exp: Expect failure for virtual function
call tests if the target doesn't support inferior function calls.
1997-02-07 16:34:55 +00:00
Jeff Law
ad9f858a45 * gdb.base/printcmds.exp: Allow minor deviation in FP values
in printf tests.
1997-02-07 16:32:42 +00:00
Jeff Law
e58035e374 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
a jsr target in a different section just like a jsr to
        an undefined target.
Bug triggerd by c++ tests.
1997-02-07 03:09:52 +00:00
Fred Fish
cceb79baa8 * tic80-opc.c (tic80_operands): Add REG_0_E, REG_22_E,
and REG_DEST_E for register operands that have to be
	an even numbered register.  Add REG_FPA for operands that
	are one of the floating point accumulator registers.
	Add TIC80_OPERAND_MASK to flags for ENDMASK operand.
	(tic80_opcodes): Change entries that need even numbered
	register operands to use the new operand table entries.
	Add "or" entries that are identical to "or.tt" entries.
1997-02-07 00:38:44 +00:00
Fred Fish
12e8f8af1f * tic80.h (TIC80_OPERAND_ENDMASK): Add for flagging TIc80
endmask fields, which are somewhat weird in that 0 and 32 are
	treated exactly the same.
1997-02-07 00:28:19 +00:00
Jeff Law
6382554a6c * gdb.base/help.exp: Disable "help set", "help show", and
"help support".  Simplify regexp for "help stack".
They're causing timeouts, overruns, etc again.
1997-02-06 22:47:57 +00:00
Martin Hunt
33a795ddf3 Thu Feb 6 14:14:59 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* objdump.c (disassemble_bytes): Added code to allow some control
 	over the way raw instructions are displayed.
1997-02-06 22:22:37 +00:00
Ian Lance Taylor
da0bce9c27 * interp.c (mips16_entry): Add support for floating point cases.
(SignalException): Pass floating point cases to mips16_entry.
	(ValueFPR): Don't restrict fmt_single and fmt_word to even
	registers.
	(StoreFPR): Likewise.  Also, don't clobber fpr + 1 for fmt_single
	or fmt_word.
	(COP_LW): Pass fmt_word rather than fmt_uninterpreted to StoreFPR,
	and then set the state to fmt_uninterpreted.
	(COP_SW): Temporarily set the state to fmt_word while calling
	ValueFPR.
1997-02-06 22:19:05 +00:00
Ian Lance Taylor
e900e695a2 * elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define.
(struct mips_elf_link_hash_entry): Add new fields fn_stub,
	need_fn_sub, call_stub, and call_fp_stub.
	(struct mips_elf_link_hash_table): Add field mips16_stubs_seen.
	(mips_elf_link_hash_newfunc): Initialize new fields.
	(mips_elf_link_hash_table_create): Likewise.
	(mips_elf_relocate_section): Redirect relocations to use mips16
	stubs when appropriate.
	(mips_elf_check_relocs): Attach stub sections to the appropriate
	symbol.  Set need_fn_stub when appropriate.
	(mips_elf_always_size_sections): New static function.
	(mips_elf_check_mips16_stubs): New static function.
	(elf_backend_always_size_sections): Define.
	* elf-bfd.h (struct elf_obj_tdata): Add local_stubs field.
1997-02-06 22:15:37 +00:00
Ian Lance Taylor
258b1f5d18 * elflink.h (elf_link_input_bfd): Discard local symbols that are
attached to sections which are not being included in the link.
1997-02-06 22:02:51 +00:00
Ian Lance Taylor
6927c24d3c * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
against any mips16 symbols, not just externally visible ones.
	(md_apply_fix): Corresponding change.
1997-02-06 21:54:07 +00:00