Per Bothner [Fri, 3 Oct 1997 23:05:12 +0000 (23:05 +0000)]
* c-lang.h, cp-valprint.c (static_field_print): Make non-static.
* parse.c, parser-defs.h (length_of_subexp): Make non-static.
* jv-exp.y (FieldAccess): Handle dollar-VARIABLE as primary.
(ArrayAccess): Likewise. Also remove warnings.
(CastExpression): Implement (typename) UnaryExpression.
(push_qualified_expression_name): Fix small bug.
* jv-lang.c: Use TYPE_TAG_NAME, not TYPE_NAME for class names.
(_initialize_jave_language): Fix typo (jave -> java).
(java_language): Java does *not* have C-style arrays.
(java_class_from_object): Make more general (and complicated).
(java_link_class_type): Fix typo "super" -> "class". Handle arrays.
(java_emit_char, java_printchar): New function.
(evaluate_subexp_java case BINOP_SUBSCRIPT): Handle Java arrays.
* jv-valprint.c (java_value_print): Implement printing of Java arrays.
(java_print_value_fields): New function.
(java_val_print): Better printing of TYPE_CODE_CHAR, TYPE_CODE_STRUCT.
* config/tc-mips.c: Undef OBJ_COPY_SYMBOL_ATTRIBUTES before
including obj-elf.h in OBJ_MAYBE_ELF case.
(mips_target_format): Return NULL after abort to avoid warning.
* objcopy.c (set_times): New static function, replacing
make_same_dates.
(strip_main): If preserve_dates, stat the input file before
copying it, and call set_times afterward.
(copy_main): Likewise.
Make ld -s work on AIX:
* xcofflink.c (xcoff_link_add_symbols): Don't create the .debug
section if we are stripping.
(bfd_xcoff_size_dynamic_sections): Don't set the .debug section
size if we are stripping.
(_bfd_xcoff_bfd_final_link): Don't set SEC_RELOC or rel_filepos,
and don't write out relocs, if we are stripping.
(xcoff_link_input_bfd): Don't set up reloc if we are stripping.
(xcoff_write_global_symbol): Don't write out symbol or reloc if we
are stripping.
Mark Alexander [Fri, 3 Oct 1997 16:58:31 +0000 (16:58 +0000)]
* config/mips/tm-mips.h (MAKE_MSYMBOL_SPECIAL): Force MIPS16
addresses to be odd.
(MIPS_FPU_SINGLE_REGSIZE, MIPS_FPU_DOUBLE_REGSIZE): Define.
* mips-tdep.c (mips_extract_return_value): Doubles aren't
returned in FP0 if FP registers are single-precision only.
start-sanitize-r5900
* config/mips/tm-r5900.h (MIPS_LAST_FP_ARG_REGNUM): Redefine
to disable use of FP registers for function arguments.
end-sanitize-r5900
* elf32-sparc.c (sparc_elf_wdisp16_reloc): Cast to bfd_byte *, not
char *, when calling bfd_get_32 and bfd_put_32.
* sunos.c (sunos_scan_dynamic_symbol): Cast contents to char *
when calling strcpy.
Andrew Cagney [Fri, 3 Oct 1997 00:03:35 +0000 (00:03 +0000)]
Rewrite simulator floating point module. Do not rely on host FP
implementation. Add preliminary support for different IEEE-754
rounding modes. Implement SQRT in software.
Update TiC80 simulator.
Add sim-fpu -> TestFloat interface for testing.
David Edelsohn [Thu, 2 Oct 1997 23:55:22 +0000 (23:55 +0000)]
* reloc.c (bfd_check_overflow): New function.
(bfd_perform_relocation, bfd_install_relocation): Use it.
(BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
(BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* ldlang.c (wild_doit): Rewrite flag handling for clarity. If we
are not adding the first input section, and SEC_READONLY is clear
on the output section, then don't copy it from the input section.
If SEC_READONLY is not set on the input section, then clear it on
the output section.
* configure.tgt (mips*-sgi-irix[56]*): Use elf32bsmip rather than
elf32bmip.
(mips*el-*-linux*): Change elf32lmip to elf32lsmip and elf32bmip
to elf32bsmip.
(mips*-*-linux*): Likewise.
* emulparams/elf32bsmip.sh: New file; just like elf32bmip.sh, but
setting ENTRY to __start.
* emulparams/elf32lsmip.sh: New file; just like elf32lmip.sh, but
setting ENTRY to __start.
* scripttempl/elf.sc: Always set ENTRY to _start if it was not
already set.
* Makefile.am ($(BFD_H)): Change stmp-bfd.h to stmp-bfd-h.
(stmp-bfd-h): Rename from stmp-bfd.h.
(BFD_H_FILES, LIBBFD_H_FILES, LIBCOFF_H_FILES): New variables.
($(srcdir)/bfd-in2.h): Just depend upon stmp-bin2-h.
(stmp-bin2-h): New target.
($(srcdir)/libbfd.h): Just depend upon stmp-lbfd-h.
(stmp-lbfd-h): New target.
($(srcdir)/libcoff.h): Just depend upon stmp-lcoff-h.
(stmp-lcoff-h): New target.
(CLEANFILES): Change stmp-bfd.h to stmp-bfd-h. Add stmp-bin2.h,
stmp-lbfd-h, and stmp-lcoff-h.
* Makefile.in: Rebuild.
Mark Alexander [Tue, 30 Sep 1997 06:20:59 +0000 (06:20 +0000)]
* mips-tdep.c (set_reg_offset): New function.
(mips16_heuristic_proc_desc): Calculate offsets of registers
saved by entry pseudo-op after rest of prologue has been read.
Use set_reg_offset to ignore all but the first save of a given
register.
(mips32_heuristic_proc_desc): Initialize frame adjustment value.
* remote-sim.c (gdbsim_store_register): Don't update registers
that have a null or empty name.
* findvar.c (read_register_bytes): Don't fetch registers
that have a null or empty name.
Mark Alexander [Fri, 26 Sep 1997 19:42:55 +0000 (19:42 +0000)]
* config/mips-tm-mips.h (mips_extra_func_info): New frame_adjust
member for storing offset of MIPS16 frame pointer from SP.
* mips-tdep.c: Use RA_REGNUM instead of hardcoded 31 throughout.
(PROC_FRAME_ADJUST): Define.
(mips16_heuristic_proc_desc): Store frame pointer adjustment value.
(get_frame_pointer): Use frame pointer adjustment value when
calculating frame address.
* remote-sim.c (gdbsim_fetch_register): Don't fetch registers
that have a null or empty name.
start-sanitize-tx19
* config/mips/tm-tx19.h (MIPS_DEFAULT_FPU_TYPE): Define.
(REGISTER_NAMES): Redefine to eliminate FP registers.
* config/mips/tm-tx19l.h: Ditto.
end-sanitize-tx19
Stu Grossman [Thu, 25 Sep 1997 01:26:36 +0000 (01:26 +0000)]
* The following block of changes add support for debugging assembly
source files.
* breakpoint.c (resolve_sal_pc): Prevent crash when pc isn't
associated with a function.
* buildsym.c (record_line start_symtab end_symtab): Don't delete
symtabs which only have line numbers (but no other debug symbols).
* dbxread.c (read_dbx_symtab end_psymtab): Ditto.
* remote-sim.c: New functions gdbsim_insert/remove_breakpoint. Use
intrinsic simulator breakpoints if available, otherwise do it the
hard way.
* configure.tgt: Add d30v.
* d30v-tdep.c: New file.
* config/d30v/d30v.mt, config/d30v/tm-d30v.h: New files.
Stu Grossman [Thu, 25 Sep 1997 01:05:31 +0000 (01:05 +0000)]
* remote-sim.h (SIM_RC): Add a bunch of new return codes for
breakpoint stuff.
* Add functions to tell the simulator to set/clear/enable/disable
intrinsic breakpoints.
Stu Grossman [Thu, 25 Sep 1997 00:51:17 +0000 (00:51 +0000)]
* Make-common.in: New files sim-break.c, sim-break.h.
* sim-base.h: Add point to breakpoint list to sim_state_base.
* sim-break.c sim-break.h: New modules that implement intrinsic
breakpoint support.
* sim-module.c: Add breakpoint module.
Ian Lance Taylor [Tue, 23 Sep 1997 23:04:37 +0000 (23:04 +0000)]
* elf.c (map_sections_to_segments): Even if we are not demand
paged, don't put a loadable section after a nonloadable section.
(assign_file_positions_for_segments): Increment the file offset
for a section with contents, even if it is not loadable.
PR 13139.
Ian Lance Taylor [Tue, 23 Sep 1997 21:49:22 +0000 (21:49 +0000)]
* config/tc-mips.c (hilo_interlocks): Change from a static
variable to a macro, so that it varies with the variables upon
which it depends.
(gpr_interlocks, cop_interlocks): Likewise.
(md_begin): Don't initialize them.
Felix Lee [Tue, 23 Sep 1997 18:08:09 +0000 (18:08 +0000)]
* sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
an hour.
* sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
if (0) { 1 % 0; }
* sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
(SIGBUS) define for Windows.
* sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
* sim-resume.c: define SIGTRAP for windows.
* sim-xcat.h: use token pasting if ALMOST_STDC.