13673 Commits

Author SHA1 Message Date
6fd48357ec Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
* scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
	* emulparams/armpe.sh: Run PE script.
1995-08-22 14:38:01 +00:00
740e802827 * tm-hppa.h (EXTRACT_RETURN_VALUE): Fix for FP values. 1995-08-22 09:52:33 +00:00
90df364f49 * tm-hppa.h (STORE_RETURN_VALUE): Fix to work with -msoft-float
calling conventions too.  Use the TYPE of the return value, not
	its length to determine if it should also be copied into the
	floating point registers.
1995-08-22 08:13:34 +00:00
7e72b115ad * tm-hppa.h (PROLOGUE_FIRSTLINE_OVERLAP): Delete. Causes more
problems than it fixes.
	* hppa-tdep.c (skip_prologue): If we exit the main loop without
	finding all the register saves, retry again without looking for
	the registers we could not find the first time.

Better fix for 7768.
1995-08-22 08:04:15 +00:00
06997b9a10 new routine xstrerror for better vms error handling; gas fixed to use it 1995-08-22 07:34:00 +00:00
53499500e0 vms changes 1995-08-22 07:06:13 +00:00
4fc0cfa530 turn on -O2 1995-08-22 07:04:48 +00:00
9162a94eff (coff_write_object_contents): Initialze link_data if not set. 1995-08-22 06:54:07 +00:00
bed1eef3b6 Opps. Fix thinko in last change. 1995-08-22 06:51:47 +00:00
80d28979c5 * gdb.base/funcargs.exp: Avoid ever setting more than 8
breakpoints in the inferior at any given time by making
	two groups of breakpoints for call2*, call6* and call7*
	tests.
1995-08-22 06:36:40 +00:00
c85ff3a363 * hppa-tdep.c (frame_chain_valid): Handle systems where "$START$"
calls "main" directly.
	(skip_prologue): Always assume arguments were saved into the stack
	since GCC will do so without setting the magic Args_Saved bit in
	the unwind descriptor.
1995-08-22 05:43:30 +00:00
011d93b38d Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
* ldmain.c (main): Remove PE stuff.
	* lexsup.c (options): Load more PE options.
	(set_pe_value): New function.
1995-08-22 01:54:56 +00:00
739484a321 * dlltool.c (options): image-base is a synonym for rva. 1995-08-22 01:42:11 +00:00
229ba4b362 * ldmain.c (main): Remove PE stuff.
* lexsup.c (options): Load more PE options.
	(set_pe_value): New function.
1995-08-22 01:32:11 +00:00
7494201cbf * libcoff-in.h (coff_data_type.link_info): New field. 1995-08-22 01:21:52 +00:00
e2936fc40b * internal.h: (internal_filehdr): Moved PE stuff into
internal_extra_pe_filehdr.
	(internal_aouthdr): Moved PE stuff into
	interanl_extra_pe_aouthdr.

	* bfdlink.h (struct bfd_link_info): Remove PE stuff.
1995-08-22 01:13:43 +00:00
e9614321da Mon Aug 21 17:49:28 1995 steve chamberlain <sac@slash.cygnus.com>
* bfd-in.h (bfd_link_subsystem): Turn enum into #defines.
	(bfd_link_pe_info_dval): New
	(bfd_link_stack_heap): Renamed and massaged into bfd_link_pe_info.
	* bfd-in2.h: rebuilt.
	* bfd.c (NT_subsystem, NT_stack_heap): Deleted.
	* coffcode.h (pe_value): New function.
	(fill_pe_header_info): New function.
	(coff_write_object_contents): Use new function.
	* cofflink.c (coff_final_link_info): Remove pe randomness.
	(dores_com): Update info in bfd_link_pe_info_dval.
	(process_embedded_commands): Use the bfd_link_pe_info_dval.
	(_bfd_coff_final_link): Remove PE stuff, initialize
	coff_data->link_info.
	* coffswap.h (coff_swap_[aout|filehdr]_out): Use indirect PE pointer.
	(coff_swap_scnhdr_out): Use real imagebase.
	* libcoff (coff_data_type.link_info): New field.
1995-08-22 01:02:23 +00:00
259d19c2be * m68k-opc.c (m68k_opcode_aliases): Add bhib as an alias for bhis,
and likewise for the other branches.  Add bhs as an alias for bcc,
	and likewise for the size variants.  Add dbhs as an alias for
	dbcc.
1995-08-21 21:34:54 +00:00
a5e03353ae * as.c (parse_args): Accept --defsym SYM=VALUE.
* doc/as.texinfo, doc/as.1: Document --defsym.
1995-08-21 21:18:57 +00:00
4026c1222f * read.c (read_a_source_file): In MRI mode, don't end the
statement inside a quotation.
	(s_space): Don't warn about a zero repeat count in MRI mode.
	* config/tc-m68k.c (crack_operand): In MRI mode, don't count
	parentheses inside quotes.
	(md_assemble): In MRI mode, anything after the operands field is a
	comment.
	(parse_mri_control_operand): Adjust start and stop to remove
	spaces.
	(s_mri_for): Likewise.
1995-08-21 21:05:06 +00:00
9821fda925 * app.c (do_scrub_next_char): If LEX_IS_STRINGQUOTE or
LEX_IS_ONECHAR_QUOTE is seen in	state 10, preserve one space.
1995-08-21 21:03:50 +00:00
bb8e4e4d95 * remote-udi.c (udi_wait): Mask off high bits of stop reason.
* remote-udi.c (fetch_register): For unfetchable regs, pretend it's
	done. Fix a bug.
1995-08-21 18:56:04 +00:00
96dbd10de8 * gas/macros/*: New tests for macros. 1995-08-21 18:45:08 +00:00
d2f661bd18 * gasp/pl3.out: Update for changes in commented source output when
LOCAL is used.
1995-08-21 18:42:09 +00:00
95074dc362 * doc/as.texinfo: Document irp, irpc, macro, and rept. MRI mode
now supports macros, ifc, ifnc, irp, irpc, rept, and endr, without
	using gasp.
1995-08-21 18:37:10 +00:00
7e047ac2c1 Add support for macros.
* as.c: Include sb.h and macro.h.
	(max_macro_next): New global variable.
	(main): Call macro_init.
	(macro_expr): New static function.
	* as.h (max_macro_nest): Declare.
	* read.c (line_label): Rename from mri_line_label.  Change all
	uses.
	(potable): Add exitm, irp, irpc, macro, mexit, rept.
	(read_a_source_file): Always clear line_label at the start of a
	line, not just when flag_mri or LABELS_WITHOUT_COLONS.  Fixup
	MRI/LABELS_WITHOUT_COLONS handling.  In MRI mode, permit label:
	equ val.  Set line_label when calling colon.  In MRI mode, a
	leading '.' does not imply a pseudo-op.  Check for macro expansion
	before calling md_assemble.
	(s_irp): New function.
	(get_line_sb): New static function.
	(s_macro): New function.
	(s_mexit): New function.
	(s_rept): New function.
	* read.h (line_label): Rename from mri_line_label.
	(s_irp, s_rept): Declare.
	(s_macro, s_mexit): Declare.
	* input-scrub.c: Include sb.h.
	(sb_index, from_sb): New static variables.
	(macro_nest): New static variable.
	(struct input_save): Add sb_index and from_sb fields.  Change
	next_saved_file field to be struct input_save *.
	(next_saved_file): Changed to be struct input_save *.
	(input_scrub_push): Change to return type struct input_save *.
	Save sb_index and from_sb.
	(input_scrub_pop): Change parameter type to struct input_save *.
	Restore sb_index and from_sb.
	(input_scrub_include_sb): New function.
	(input_scrub_next_buffer): Handle reading from from_sb.
	(bump_line_counters): Only increment lines if not using from_sb.
	* config/tc-m68k.c (opt_table): Add nest.
	(opt_nest): New static function.
	* gasp.c: Include sb.h and macro.h.  Move all sb related functions
	and definitions to sb.h and sb.c.  Move all macro related
	functions and definitions to macro.h and macro.c.
	* sb.h, sb.c: New files, extracted from gasp.c.
	* macro.h, macro.c: Likewise.
	* Makefile.in (OBJS): Add sb.o and macro.o
	(GASPOBJS): Define.
	(gasp.new): Depend upon $(GASPOBJS).  Use $(GASPOBJS) to link.
	(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
	(gasp.o): Depend upon sb.h and macro.h.
	(sb.o): New target.
	(macro.o): New target.
	(as.o): Depend upon sb.h and macro.h.
	(input-scrub.o): Depend upon sb.h.
	(read.o): Depend upon sb.h and macro.h.
1995-08-21 18:35:11 +00:00
7172e2266f * app.c (do_scrub_begin): In MRI mode, set lex of ' to
LEX_IS_STRINGQUOTE.
1995-08-21 18:19:21 +00:00
075e616c28 * cond.c (get_mri_string): New static function.
(s_ifc): New function.
1995-08-21 18:18:56 +00:00
840886d875 Allow @HA, @L, and @H on constant expressions. 1995-08-21 17:47:01 +00:00
68807a39e4 * linker.c (link_action): If an undefined reference follows an
undefined weak reference, change the type to undefined.
	* elflink.h (elf_link_add_archive_symbols): Don't record an
	undefined weak reference as defined, in case it turns into a real
	undefined reference later in the same archive.
1995-08-21 15:12:34 +00:00
fa296a0c44 * Makefile.in (install): Remove "brokensed" hack, unnecessary now
that we're using autoconf.
	(uninstall): Likewise.
1995-08-21 06:49:42 +00:00
c2d8063d3b * config/tc-arm.c (md_reloc_size): Add const to declaration. 1995-08-20 22:56:02 +00:00
2757dc2534 Sun Aug 20 09:59:00 1995 steve chamberlain <sac@slash.cygnus.com>
Modified to generate archives and objects rather than .s files.
	* dlltool.c (run) New function.
 	(gen_exp_file, gen_lib_file): Use run.
	(workout_prefix): New.
	(usage): Document new options.
	(main): Parse new options.
1995-08-20 17:01:27 +00:00
715682510e * gdb.base/funcargs.exp: Fix typos introduced by Aug 15 change.
* gdb.base/callfuncs.c (main):  Use struct_val1 to inhibit xlc
	from optimizing it away.
	* gdb.base/callfuncs.exp:  Remove rs6000-*-* xfails for
	"call inferior func with struct".
1995-08-20 14:03:45 +00:00
f61f41d929 Wire up the breakpoint window so that it works. Also, fix a typo that
kept the breakpoints in the source window from updating when enabled or
disabled.
1995-08-20 00:26:54 +00:00
d0af548446 * gasp/gasp.exp (gasp_test): Call prune_system_crud on the output
of diff.
	* lib/gas-defs.exp: Define prune_system_crud if it is not already
	defined.
1995-08-19 21:37:43 +00:00
2447e9afab * gdbtypes.c (recursive_dump_type): Add dont_print_type_obstack
to inhibit infinite recursion when printing aggregate types.
1995-08-19 08:21:23 +00:00
69c626a9aa * dcache.c (dcache_write_line): Write dirty lines right. 1995-08-19 00:54:12 +00:00
ca2329727e * read.c (s_include): In MRI mode, don't expect quotes around the
file name.
	* listing.c (listing_title): Don't require the title to be quoted.
1995-08-18 15:15:28 +00:00
65d860fc28 * gasp/mri/*.out: Use ;, not !, for the comment character. 1995-08-18 15:10:35 +00:00
f8d6e6cd08 * gasp.c (include_print_where_line): Always subtract 1 from
linecount before printing it.
	(process_file): In MRI mode, lines beginning with '*' or '!' are
	comments.
	(do_reg): In MRI mode, don't require parentheses.
	(do_include): In MRI mode, don't requires quotes.  If the file can
	not be found in the include path, try opening it in the current
	directory.  Print the file name correctly in the error message.
	(chartype_init): In MRI mode, set FIRSTBIT for '.'.
	(main): Set comment_char to ';' when entering MRI mode.
1995-08-18 15:09:57 +00:00
b4ec75e09f * config/tc-m68k.c: Include subsegs.h.
(m68k_ip): Pass 64 rather than -1 to add_Fix in 'B' 'B' case.
	(md_pcrel_from): If fx_pcrel_adjust is 64, use -1 instead.
You can't portably store negative numbers in a char.
1995-08-18 15:02:56 +00:00
673e1bab44 * sparc-tdep.c (isbranch): Fix typo which caused wrong
target addresses for annulled branches.
1995-08-18 13:27:21 +00:00
0c0e50a478 use "ar ts" for RANLIB on hp300 1995-08-18 01:51:53 +00:00
eb7f87c5c8 Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
* emultempl/{armpe.sc, i386pe.sc}: Deleted.
	* emultempl/pe.sc: New file performs generic PE support and sorts
	archive members.
	* emulparams/{armpe.sh,i386pe.sh}: Use new file.
	* scripttempl/{armpe.sc, i386pe.sc}: Deleted
	* scripttempl/pe.sc: New.
	* Makefile.in: Use new files.
b
1995-08-17 22:53:56 +00:00
ed67cfa226 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
(.strings,.ctors,.dtors): Likewise.
1995-08-17 21:49:40 +00:00
ff31ebda50 * coff-sh.c (sh_relax_section): Cast value for used_by_bfd field to PTR, not
coff_section_tdata pointer, since PTR is the real type of the field.
* cofflink.c (_bfd_coff_read_internal_relocs): Ditto.
1995-08-17 21:00:14 +00:00
80152a2019 * configure: Add Makefile.tem to list of files to remove in trap handler. 1995-08-17 20:04:38 +00:00
92962c7188 Add support for linking SPARC SunOS PIC compiled code.
* sunos.c (SPARC_PLT_PIC_WORD0): Define.
	(SPARC_PLT_PIC_WORD1, SPARC_PLT_PIC_WORD2): Define.
	(struct sunos_link_hash_entry): Add got_offset and plt_offset
	fields.
	(struct sunos_link_hash_table): Add dynamic_sections_created and
	dynamic_sections_needed fields.
	(sunos_link_hash_newfunc): Initialize new fields.
	(sunos_link_hash_table_create): Initialize new fields.
	(sunos_create_dynamic_sections): New static function, broken out
	of sunos_add_dynamic_symbols.
	(sunos_add_dynamic_symbols): Call sunos_create_dynamic_sections.
	(sunos_add_one_symbol): Call sunos_create_dynamic_sections.
	(bfd_sunos_size_dynamic_sections): Call sunos_scan_relocs before
	checking whether we need to set up the dynamic link information.
	Define __GLOBAL_OFFSET_TABLE if anything referred to it.
	(sunos_scan_std_relocs): Call sunos_create_dynamic_sections.  Use
	plt_offset field; only put symbol in .plt if it is not defined by
	a regular object.
	(sunos_scan_ext_relocs): Likewise.  Handle base relative relocs.
	(sunos_scan_dynamic_symbol): Store dynobj in local variable.
	(sunos_write_dynamic_symbol): Check plt_offset rather than
	checking whether symbol is in .plt section.  If symbol is defined
	in a regular object file, use SPARC_PLT_PIC_WORD[012], and don't
	add a JMP_TBL reloc.
	(sunos_check_dynamic_reloc): Add contents and relocationp fields.
	If plt_offset is set, redirect relocation to PLT.  If this is a
	base relative reloc, redirect relocation to GOT.  Check
	dynamic_sections_needed field rather than whether dynobj is set.
	(sunos_finish_dynamic_link): Check dynamic_sections_needed field
	rather than whether dynobj is set.  Don't die if .need and .rules
	sections were not created.
	* aoutx.h (howto_table_ext): Mark PC10, PC22, and JMP_TBL entries
	PC relative.  Mark PC10 complain_overflow_dont.  Mark PC22 and
	JMP_TBL complain_overflow_signed.
	(NAME(aout,final_link)): If info->shared is set, set DYNAMIC.
	(aout_link_input_section_std): Call check_dynamic_reloc for all
	relocs.  Pass contents and &relocation.  Don't warn about an
	undefined symbol until check_dynamic_reloc has been called.  Don't
	warn about an undefined symbol for a base relative reloc.
	(aout_link_input_section_ext): Likewise.  For a base relative
	reloc, always treat r_index as an index into the symbol table.
	* libaout.h (struct aout_backend_data): Add contents and
	relocation argument to check_dynamic_reloc entry point.
	(struct aoutdata): Add local_got_offsets field.
1995-08-17 19:30:46 +00:00
1ce8a30f17 * config/pa/tm-hppa.h (PROLOGUE_FIRSTLINE_OVERLAP): Define.
Yes, this dusty old macro is really the right thing to do when you've
got a port which performs scheduling on prologues...  Fixes latest
mentor gdb PR.
1995-08-17 04:01:24 +00:00