Commit Graph

40356 Commits

Author SHA1 Message Date
Jim Blandy a9dd42f197 * s390-tdep.c (struct frame_extra_info): new member:
'stack_bought_valid'.
(s390_get_frame_info): Set fextra_info->stack_bought_valid if we
initialize fextra_info->stack_bought.
(s390_frameless_function_invocation): Don't trust the value of
fextra_info_ptr->stack_bought unless
fextra_info->stack_bought_valid is set.
2003-07-02 19:20:55 +00:00
Jim Blandy 4bc8c58814 New S390 prologue analyzer.
* s390-tdep.c (struct prologue_value, enum pv_boolean): New types.
(pv_set_to_unknown, pv_set_to_constant, pv_set_to_register,
pv_constant_last, pv_add, pv_add_constant, pv_subtract,
pv_logical_and, pv_is_identical, pv_is_register, pv_is_array_ref,
compute_x_addr, s390_on_stack, s390_store,
s390_get_signal_frame_info): New functions.
(S390_NUM_SPILL_SLOTS): New macro.
(s390_get_frame_info): Rewritten.
(is_arg_reg): Deleted.

Break out the decoding of S/390 instructions into separate
functions, to make it more legible, and easier to check
against the spec.
* s390-tdep.c (is_ri, is_ril, is_rr, is_rre, is_rs, is_rse,
is_rx, is_rxe): New functions.
(op1_aghi, op2_aghi, op1_ahi, op2_ahi, op_ar, op_basr, op1_bras,
op2_bras, op_l, op_la, op1_larl, op2_larl, op_lgr, op1_lghi,
op2_lghi, op1_lhi, op2_lhi, op_lr, op_nr, op_ngr, op_s, op_st,
op_std, op1_stg, op2_stg, op_stm, op1_stmg, op2_stmg, op_svc): New
enums for opcode values.  (Is this an improvement?)
2003-07-02 19:05:56 +00:00
Michael Snyder f0861129d5 2003-06-24 Michael Snyder <msnyder@redhat.com>
* sim-main.h (SIM_WIFSTOPPED, SIM_WSTOPSIG): Define.
	* compile.c (sim_resume): Use the above to return stop signal.
2003-07-02 19:04:58 +00:00
Andrew Cagney fd13a04acf 2003-07-02 Andrew Cagney <cagney@redhat.com>
* i386-tdep.c: Revert change committed as part of trad-frame code
	below.
2003-07-02 17:20:24 +00:00
Daniel Jacobowitz 3f8091c1f6 * breakpoint.c (insert_catchpoint): Make static. 2003-07-02 16:24:00 +00:00
Andreas Jaeger c1da67ba85 * x86-64-tdep.c (x86_64_push_arguments): Align stack to 16-byte
before the call.
	Set %rax only to number of SSE registers used.
2003-07-02 07:45:57 +00:00
Alan Modra 772119ce53 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't allow _savef* and
_restf* to be satisfied by shared libs, and always force them local.
	(toc_adjusting_stub_needed): Avoid scanning linker created sections.
	Correct test for "bl".
	(ppc64_elf_relocate_section <R_PPC64_TLS>): Correct test for
	primary opcode 31.
2003-07-02 07:41:51 +00:00
Thiemo Seufer 65968516b9 * gas/mips/set-arch.d: Fix GPR names and show raw insns. 2003-07-02 00:40:12 +00:00
Alan Modra 70f25c551c daily update 2003-07-02 00:00:05 +00:00
gdbadmin 9e238987be *** empty log message *** 2003-07-02 00:00:02 +00:00
Andreas Schwab 8dd5115e3f * ia64-tdep.c (ia64_push_dummy_call): Define as combination of
former ia64_push_arguments and ia64_push_return_address, and use
	regcache functions instead of read/write_register.
	(ia64_gdbarch_init): Set push_dummy_call instead of
	deprecated_push_arguments and deprecated_push_return_address.
2003-07-01 22:32:36 +00:00
DJ Delorie b6da3fa883 merge from gcc 2003-07-01 21:17:41 +00:00
Jakub Jelinek bdf4d63a1d * readelf.c (dynamic_segment_ia64_val): Print address and newline
for sections by default.  Comment fix.
2003-07-01 15:54:15 +00:00
Martin Schwidefsky bac0268913 * s390-dis.c (s390_extract_operand): Add support for long displacements.
* s390-mkopc.c (s390_opcode_cpu_val): Add support for cpu type z990.
        * s390-opc.c (D20_20): Add define for 20 bit displacements.
        (INSTR_RRF_R0RR, INSTR_RSL_R0RD, INSTR_RSY_RRRD, INSTR_RSY_RURD,
        INSTR_RSY_AARD, INSTR_RXY_RRRD, INSTR_RXY_FRRD, INSTR_SIY_URD): Add
        new instruction formats.
        (MASK_RRF_R0RR, MASK_RSL_R0RD, MASK_RSY_RRRD, MASK_RSY_RURD,
        MASK_RSY_AARD, MASK_RXY_RRRD, MASK_RXY_FRRD, MASK_SIY_URD): Likewise.
        (s390_opformats): Likewise.
        * s390-opc.txt: Add new instructions for cpu type z990. Add missing
        hfp instructions. Add missing instructions pgin, pgout and xsch.
2003-07-01 14:47:58 +00:00
Martin Schwidefsky c72a8f697c * s390.h (s390_opcode_cpu_val): Add enum for cpu type z990. 2003-07-01 14:46:57 +00:00
Martin Schwidefsky 89af415b3f * s390.h (elf_s390_reloc_type): Add long displacement relocations
R_390_20, R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20.
2003-07-01 14:46:26 +00:00
Martin Schwidefsky 933fbc29d6 * config/tc-s390.c (md_parse_option): Add cpu type z990.
(md_begin): Add minimal cpu type logic for instructions with different
        binary format depending on the cpu.
        (md_assemble): Remove check for minimal cpu.
        (s390_insert_operand): Add support for long displacements.
        (md_gather_operands): Likewise.
        (tc_s390_fix_adjustable): Likewise.
        (tc_s390_force_relocation): Likewise.
        (md_apply_fix3): Likewise.
2003-07-01 14:45:37 +00:00
Martin Schwidefsky bd1ea41b84 * elf32-s390.c (s390_elf_ldisp_reloc): New prototype.
(s390_tls_reloc): New function.
        (elf_howto_table): Add long displacement relocations R_390_20,
        R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20.
        (elf_s390_reloc_type_lookup): Likewise.
        (elf_s390_check_relocs): Likewise.
        (elf_s390_gc_sweep_hook): Likewise.
        (elf_s390_relocate_section): Likewise.
        * elf64-s390.c: Same changes as for elf32-s390.c.
        * reloc.c: Add long displacement relocations BFD_RELOC_390_20,
        BFD_RELOC_390_GOT20, BFD_RELOC_390_GOTPLT20 and
        BFD_RELOC_390_TLS_GOTIE20.
        * bfd-in2.h: Regenerate.
        * libbfd.h: Likewise.
2003-07-01 14:44:59 +00:00
Andreas Jaeger a2229c2308 * x86-64-tdep.c (x86_64_push_arguments): Align stack to 16-byte
before the call.
	Set %rax only to number of SSE registers used.
2003-07-01 13:56:13 +00:00
Andrew Cagney 3b3850e852 2003-07-01 Andrew Cagney <cagney@redhat.com>
* trad-frame.h: Update comments, a -1 .addr is reserved.
	(trad_frame_value_p, trad_frame_addr_p): Declare.
	(trad_frame_reg_p): Declare.
	(trad_frame_set_value): Rename trad_frame_register_value.
	(trad_frame_set_unknown): Declare.
	* trad-frame.c (trad_frame_realreg_p): New function.
	(trad_frame_addr_p, trad_frame_value_p): New function.
	(trad_frame_set_unknown): New function.
	(trad_frame_alloc_saved_regs): Initialize .addr to -1, not zero.
	(trad_frame_prev_register): Use trad_frame_realreg_p,
	trad_frame_addr_p and trad_frame_value_p.
	(trad_frame_set_value): Rename trad_frame_register_value.
	* d10v-tdep.c (d10v_frame_unwind_cache): Use trad_frame_addr_p
	and trad_frame_set_value.
2003-07-01 13:25:19 +00:00
DJ Delorie 39071cb835 merge from gcc 2003-07-01 01:12:46 +00:00
Jim Blandy 4d819d0ef5 Patch from IBM (authors unspecified, probably Ulrich Weigand and
Gerhard Tonn) for argument passing on the S/390 and S/390x:
* s390-tdep.c (S390_STACK_FRAME_OVERHEAD): This is always space
for 16 registers, and then 32 more bytes.
(S390_STACK_PARAMETER_ALIGNMENT, S390_NUM_FP_PARAMETER_REGISTERS):
New macros.
(is_double_arg): The s390x doesn't handle DOUBLE_ARGS specially.
Move up in the file, since it's now used by is_simple_arg.
(is_simple_arg): Don't assume registers are four bytes long.
Exclude all double arguments.  Extended floats are not simple
args.
(is_power_of_two): New function.
(pass_by_copy_ref): Call is_power_of_two, and check that the
length fits in a register, rather than listing all the acceptable
sizes.  Extended floats are not passed by reference.
(s390_push_arguments): Don't assume registers are four bytes long.
Reserve an argument register to point to the buffer for structures
returned by value.  Use S390_NUM_FP_PARAMETER_REGISTERS and
S390_STACK_FRAME_OVERHEAD.
2003-07-01 00:05:37 +00:00
gdbadmin a75928a5c5 *** empty log message *** 2003-07-01 00:00:32 +00:00
Alan Modra 34fef7f4d8 daily update 2003-07-01 00:00:05 +00:00
Bob Wilson 902695bc2a * xtensa-config.h (XCHAL_HAVE_CONST16, XCHAL_HAVE_ABS,
XCHAL_HAVE_ADDX, XCHAL_HAVE_L32R): Define.
2003-06-30 21:56:32 +00:00
Chris Demetriou 1a2c1fadc9 2003-06-30 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (s_mipsset): Implement -march= handling
        differently.
2003-06-30 21:54:19 +00:00
Andreas Schwab 1ad828f198 * utils.c (internal_vproblem): Use xvasprintf, not xasprintf, to
format error message.
2003-06-30 21:40:05 +00:00
Joel Brobecker 39b00981ac * sparc-tdep.c (stop_after_trap): Remove declaration, not used. 2003-06-30 16:55:31 +00:00
David Carlton 7a20f2c262 Fix indentation of previous commit. 2003-06-30 16:23:29 +00:00
David Carlton b2a7f303a2 2003-06-30 David Carlton <carlton@kealia.com>
Band-aid for PR c++/1245.
	* Makefile.in (cp-support.o): Depend on complaints_h.
	* cp-support.c: Include complaints.h.  Add declaration for
	find_last_component.
	(cp_find_first_component): Separate code into
	cp_find_first_component_aux.
	(cp_find_first_component_aux): Call demangled_name_complaint.
	(demangled_name_complaint): New.

2003-06-30  David Carlton  <carlton@kealia.com>

	* gdb.c++/maint.exp (test_invalid_name): New.
	(test_first_component): Add tests for invalid names.
2003-06-30 16:21:16 +00:00
Andrew Cagney a257b5bbf7 2003-06-30 Andrew Cagney <cagney@redhat.com>
* remote.c (remote_write_bytes): Explicitly compute and then use
	the payload size.  Update comments to reflect.  Fixes problem of
	GDB not sending small packets as found by Fred Fish.
2003-06-30 15:50:52 +00:00
Andrew Cagney 0a2cfde49a 2003-06-30 Andrew Cagney <cagney@redhat.com>
* remote.c (remote_async_wait): Fix -Wformat problem.
2003-06-30 15:03:07 +00:00
Thiemo Seufer 17a2f25124 * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary
prototypes and casts. Replace PTR with void *. Reformat.
	* config/tc-mips.h: Likewise.
2003-06-30 12:44:25 +00:00
Alan Modra 6344efa4f2 * config/tc-ia64.c (note_register_values): Warning fix.
* config/tc-mips.c (append_insn): Likewise.
2003-06-30 04:10:48 +00:00
Alan Modra 113202d6bc * cpu-ia64-opc.c (ext_imms_scaled): Don't sign extend using shifts.
(ins_imms, ins_immsm1u4): Likewise.  Warning fix.
2003-06-30 04:09:27 +00:00
Michael Chastain 3c6cb4a1a4 2003-06-29 Michael Chastain <mec@shout.net>
* gdb.c++/inherit.exp (test_print_svi_classes): Accept gdb
	output of '<VTT for class>' for virtual base classes.
2003-06-30 00:12:09 +00:00
gdbadmin 36f443e9a8 *** empty log message *** 2003-06-30 00:00:32 +00:00
Alan Modra f1f18543ca daily update 2003-06-30 00:00:05 +00:00
Andrew Cagney 3fcb85483c 2003-06-29 Andrew Cagney <cagney@redhat.com>
* remote.c (remote_wait): Call error, and not warning, when the
	packet is corrupt.
	(remote_async_wait): Ditto.
2003-06-29 21:17:22 +00:00
Daniel Jacobowitz 9f9970a3e9 * sparc-tdep.c (sparc_y_regnum): Make external again. 2003-06-29 21:15:24 +00:00
Daniel Jacobowitz f1c2644b92 * gdb.base/completion.exp: Tab-complete "complet" instead of
"compl".
	* gdb.base/complex.exp, gdb.base/complex.c: New files.
2003-06-29 20:32:23 +00:00
Daniel Jacobowitz 180803508c * gdb.base/constvars.exp: Remove most xfails for GCC 3.x.
* gdb.base/volatile.exp: Likewise.
2003-06-29 20:01:59 +00:00
Thiemo Seufer fef14a4289 * ld-mips-elf/elf-rel-got-n64-linux.d: New file.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: New file.
	* ld-mips-elf/mips-elf.exp: Use the new files for Linux.
2003-06-29 19:41:33 +00:00
Daniel Jacobowitz 83a8cccaa8 * cli/cli-logging.c (pop_output_files): Add void to function
definition.
2003-06-29 19:41:14 +00:00
Daniel Jacobowitz f56973f819 * gdb.threads/print-threads.exp (test_all_threads): Add kfail for
gdb/1265.
2003-06-29 19:29:42 +00:00
Andreas Jaeger a6f5b2c3bf * xcoff.h (struct __rtinit ): Convert to ISO C90 prototypes.
* ecoff.h: Convert to ISO C90 prototypes.  Replace PTR by void *.
2003-06-29 13:52:02 +00:00
Andreas Jaeger fd6ba1fc70 * mmix.h: Convert to ISO C90 prototypes.
* mips.h: Likewise.

	* reloc-macros.h (START_RELOC_NUMBERS): Convert to ISO C90
	prototype.
	(RELOC_NUMBER): Remove !__STDC__ code.
2003-06-29 13:51:25 +00:00
Andrew Cagney d2cf594a90 2003-06-29 Andrew Cagney <cagney@redhat.com>
* frame.c (frame_register_unwind): Use unsigned char when dumping
	the buffer contents.
2003-06-29 13:27:26 +00:00
Alan Modra c58b95236c Convert to C90 and a few tweaks. 2003-06-29 10:06:40 +00:00
Andreas Jaeger 58611256d8 Add forgotten ChangeLog snippet for last elf64-x86-64.c patch. 2003-06-29 10:02:24 +00:00