Commit Graph

352 Commits

Author SHA1 Message Date
Ken Raeburn
9a048e4868 changes so far 1993-12-01 23:00:57 +00:00
Ian Lance Taylor
4032d3f09e * config/tc-mips.c (macro): From wilson@cygnus.com: for M_L_DAB,
set coproc before doing goto ld.
1993-12-01 19:26:45 +00:00
Jeff Law
44c0de5363 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
(pa_process_exit, pa_procend): Call it for ELF objects.
1993-12-01 18:43:53 +00:00
Ian Lance Taylor
777ad64d69 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
case.  See comment.
1993-12-01 17:13:12 +00:00
Jeff Law
335d35c8bc * write.c (TC_FORCE_RELOCATION): Provide a default definition.
(fixup_segment): Allow the target machine to specify that a
        relocation must be generated for a particular fixup.  Remove
        #ifndef TC_HPPA hack.

        * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.

        * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
        be NULL.  Only fixup_segment is supposed to do that.
        (hppa_force_relocation): New function.
1993-11-30 21:43:15 +00:00
Ian Lance Taylor
c751ad1914 * Makefile.in (stabs.o): Added dependencies. 1993-11-30 16:25:18 +00:00
Ian Lance Taylor
018f2bba3f * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab. 1993-11-30 16:23:33 +00:00
Jeff Law
278cd007b4 * app.c (do_scrub_next_char): Output a TAB before any
.app* directive.
1993-11-28 21:16:24 +00:00
Jeff Law
81413fa20b * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
exists before trying to peek at its name.
	(pa_space): Do not call pa_align_subseg.  See hppa/unsorted/align3.s
	for testcase.
	(pa_align_subseg): Delete unused/unwanted function.
1993-11-28 20:15:21 +00:00
Jeff Law
385ce4337d * read.c (read_a_source_file): Fix test for when to stick a colon
on the end of a label.  Make code conditional on either MRI or
        LABELS_WITHOUT_COLONS.

        * app.c (do_scrub_next_char): If a line begins with whitespace, leave
        the single whitespace character alone.  Eat all others.

        * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
1993-11-28 06:54:04 +00:00
Jeff Law
31a385d17a * config/tc-hppa.c (pa_procend): Do not call process_exit.
(exit_processing_complete): Delete unwanted variable and all
        references.
1993-11-24 09:24:39 +00:00
Ian Lance Taylor
c5953036d8 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
Changed to not actually build the external symbol information, as
	that is now done by the ECOFF back end.
	(ecoff_build_debug): Changed accordingly.
	* ecoff.h (obj_ecoff_set_ext): Declare.   obj-format.c function
	called by ecoff_setup_ext.
	* config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
	set corresponding pointer to NULL.  Don't set raw_size and
	raw_syments.
	(obj_ecoff_set_sym_index): Removed.
	(obj_ecoff_set_ext): New function.
	* config/obj-ecoff.h (obj_set_sym_index): Don't define.
	(obj_ecoff_set_sym_index): Don't declare.
	* config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
	elf_set_index): New functions used for ECOFF_DEBUGGING.
	(elf_frob_file): Reworked ECOFF debug generation to use
	new functions in bfd/ecofflink.c.
1993-11-24 07:42:03 +00:00
Ian Lance Taylor
e0209756f8 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
(yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
	already set.  Fixes .def var; .val external_var; .scl 3; .endef.
	(adjust_stab_section): Make static.  Declare return type.  Remove
	unused variables.

	* config/tc-i386.h: Declare tc_coff_fix2rtype and
	tc_coff_sizemachdep.
1993-11-19 21:37:50 +00:00
Ken Raeburn
0669e04793 sparc-coff related changes 1993-11-19 20:04:07 +00:00
Ian Lance Taylor
29cc5816c5 Various entries. 1993-11-18 19:10:20 +00:00
Jeff Law
c5e9ccd030 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check. 1993-11-17 04:40:15 +00:00
Jeff Law
3e330968cd * config/tc-hppa.[ch]: Fix assorted trivial indention problems. 1993-11-13 01:08:50 +00:00
Jeff Law
4a1b59ef72 * config/obj-som.c (obj_som_version): Add missing ';'.
(som_frob_file): Delete whitespace at EOL.
1993-11-13 00:54:15 +00:00
Ken Raeburn
f3b6e1f2b1 version number updated following 2.2 release 1993-11-12 23:44:55 +00:00
Jeff Law
f2eed8840d * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
field selector, rather than an int.  All uses of field selectors
	fixed.
	(tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
	(md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
	field.
1993-11-12 22:54:41 +00:00
Jeff Law
a721c80b05 * config/tc-hppa.c (pa_type_args): For .import statements,
silently ignore attempt to change the symbol type for a function
        from ST_ENTRY to ST_CODE on .import
1993-11-11 23:51:20 +00:00
Ian Lance Taylor
ca16b5e55a * write.h (fixS): Rename fx_callj field to fx_tcbit.
* write.c, config/obj-coff.c, config/obj-coffbfd.c,
	config/tc-i960.c: Corresponding changes.
1993-11-10 22:06:06 +00:00
Jeff Law
7420b02b8d * Makefile.in (distclean): Delete config-stamp and config.h 1993-11-09 09:57:02 +00:00
Jeff Law
f41f3d72ec * config/tc-hppa.c (evaluate_absolute): Avoid relying on
ANSI-C features.
1993-11-09 09:52:59 +00:00
Jeff Law
48153d49ce * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
Accept new argument "is_export".  All callers changed.  When
        processing a .export directive for a function, do not allow
        the user to set the type to "CODE", instead warn and set the
        type to "ENTRY".
1993-11-09 08:51:02 +00:00
Ian Lance Taylor
9226253a41 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
Lemon <mellon@pepper.ncd.com>).
	(mips_ip): Permit odd numbered floating point registers if -mips3.
1993-11-08 17:09:18 +00:00
David Edelsohn
5308785003 * configure.in: Remove h8300h, we have multilib now. 1993-11-08 15:48:42 +00:00
David Henkel-Wallace
5f8a378823 netware target support. 1993-11-08 14:22:06 +00:00
Jeff Law
513f04711d * First cut at cleaning up PA instruction parsing.
* config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
	insn structure as an argument, and a pointer to a string.  All
	callers changed.  Always read any field selector here.  Call
	evaluate absolute to get a return value.
	(evaluate_absolute): Addept pointer to insn structure as its
	argument.  All callers changed.
	(INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
	into an instruction and continuing the main pa_ip loop.
	(CHECK_FIELD): New macro for simple range checking of fields.
	(pa_ip): Delete unused variables.  Use INSERT_FIELD_AND_CONTINUE
	and CHECK_FIELD.  All immediate fields now pass through
	pa_get_absolute_expression which will also handle field selectors.
	Delete dead code.  Simplify.
	(md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
	applied are in range.  Use bfd_put_32 rather than inserting each
	byte of the fixed instrution into the buffer ourselves.
1993-11-07 20:33:18 +00:00
Jeff Law
3e411021cc * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
it was PA specific and is no longer needed (it's now handled
        within the PA backend).
        * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
        * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
        a fixup is $global$ change it to NULL as $global$ is really only
        needed long enough to determine the base type of relocation to use.
1993-11-07 20:08:19 +00:00
Jeff Law
240cbc571f * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined. 1993-11-07 09:15:13 +00:00
Jeff Law
163aac84be * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
for 'z' operands (target of ble branch).
1993-11-07 09:03:59 +00:00
Jeff Law
18c4f112b4 * config/tc-hppa.c: (update_subspace): Fix type and name of last
parameter.  All callers fixed.
        (md_begin, pa_chk_field_selector, pa_entry): Lint.
1993-11-07 07:23:52 +00:00
Jeff Law
1cc248d263 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
to default state after it's been used.
1993-11-07 06:43:24 +00:00
Jeff Law
88eb7ea6b2 * config/obj-som.c (obj_som_init_stab_section): Change
space/subspace sort keys for the stab sections so as to avoid
        bugs in the hp linker and pxdb.
1993-11-05 20:11:19 +00:00
Jeff Law
0f894895a1 * write.c (chain_frchains_together): Update pointer to last
frag for a segment in the seginfo structure.
1993-11-05 01:01:18 +00:00
Jeffrey Wheat
de074576ce Changed RUNTESTFLAGS to RUNTEST_FLAGS 1993-11-04 17:36:24 +00:00
Jeff Law
d6e524f308 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
predefined register table.
	(pa_parse_number): Handle %rp in common register shortcut code.
	Consistently set return value to -1 for an error.  Clean up error
	messages and only print them when "print_errors" is true.  Handle
	empty string case like the HP assembler -- assume a value of
	zero.
1993-11-03 06:21:14 +00:00
Ken Raeburn
25270a1ca7 log my expr.c change 1993-11-02 23:44:59 +00:00
Jeff Law
20cee6d8bd * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
standard hpux include files to pick up various function decls.
1993-11-02 23:39:55 +00:00
Ian Lance Taylor
efe8ef02b2 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
well as MIPS ECOFF.
	(get_stab_string_offset): Remove unused variable aligned.
1993-11-02 23:15:58 +00:00
Jeff Law
aa14e86394 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
stdio.h.  Delete bogus declaration of free.  Get path to
        alloca-conf.h right.
1993-11-02 23:07:54 +00:00
Jeff Law
ff852e1177 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
so GAS can attach unwind descriptor information to a BFD symbol.
	* config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
	descriptor information to the BFD symbol.
	(md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
	they are simply markers.  Make R_HPPA_UNWIND_* handling OBJ_ELF
	dependent.
	(pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
	(pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
	(pa_exit): Likewise, but built a R_HPPA_EXIT relocation.  Do not
	build "end-of-function" symbols for SOM, they are not needed.
1993-11-02 08:06:23 +00:00
Jeff Law
a50e9b5506 * config/tc-hppa.c (process_exit): Create temporary symbols with
correct prefixes so they can be eliminated later.
1993-11-02 06:43:11 +00:00
Jeff Law
49fc68a13f * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
(pa_callinfo): Insert framesize into the unwind information as
	soon as it's available.
	(pa_build_unwind_subspace): Do not insert framesize into the unwind
	information here.
1993-11-02 06:38:20 +00:00
Jeff Law
c43d56f78c * Add support for marker type relocations. These mark areas
of interest to the linker.  ENTRY/EXIT relocations for SOM are
	an example of marker relocations.
	* write.c (write_relocs): Instead of assuming size of a relocation
	is 4 bytes, pick up the size from relocation itself.
	(fixup_segment): Do not complain that a value is too small for
	marker relocations.
1993-11-02 06:31:36 +00:00
Jeff Law
009dc5e1e5 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
* expr.c (operand): Set sy_used for any symbol used as an operand.
	(expr): Likewise for any symbol used in an expression.
	* config/tc-hppa.h (tc_frob_symbol): Define.  Punt imported
	symbols which are never used and absolute symbols which local scope.
1993-11-02 06:10:52 +00:00
Jeff Law
f197d7eb66 * config/obj-som.h (obj_frob_file): Define.
* config/obj-som.c (obj_som_init_stab_section): Set alignment
	of stab sections.  Make space for the special stab entry.
	(adjust_stab_sections): Adjust the special entry in the
	stabs section.
	(som_frob_file): New function.  Simply calls adjust_stab_sections
	for each section.
1993-11-02 05:37:58 +00:00
Ian Lance Taylor
bca9cf0b9e * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
(mips_pic, mips_cprestore_offset): New static variables.
	(md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
	Ignore .bgnb and .endb.
	(gp_reference): _gp_disp is never addressed off GP.
	(macro_build): Ignore macros while searching for insn.  For cases
	i, j, and o, accept the reloc type as an argument rather than
	assuming BFD_RELOC_LO16.  Don't try to convert BFD_RELOC_LO16 to
	BFD_RELOC_MIPS_GPREL.  Added new case a.
	(set_at, load_register, macro): Changed calls to macro_build to
	pass new argument for i, j and o cases.
	(macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A.  These require
	special handling when generating SVR4 PIC code.
	(mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
	rather than hard coded constants.
	(md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
	BFD_RELOC_MIPS_CALL16.
	(s_option): Set mips_pic based on .option picN.
	(s_abicalls): New function; set mips_pic to 2.
	(s_cpload): New function; handle .cpload.
	(s_cprestore): New function; handle .cprestore.

	* config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
	.endb and .verstamp, setting them to s_ignore.
1993-11-01 23:27:05 +00:00
Jeff Law
47f45d6636 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
field.  Define SUBSPACE_DEFINED accessor macro.
	(pa_subspace): Allow user to override subspace attributes for
	built-in subspaces.  Set ssd_defined at the end of fcn -- that
	way the attributes can only be changed once.  Pass newly allocated
	name to is_defined_subspace, not a pointer to the input line.
	Fix typo in space/subspace rework.
	(is_defined_subspace): Delete unused 2nd arg.  All callers changed.

	* config/tc-hppa.c (pa_import): If currently in the text segment
	and a symbol is imported without type information, set BSF_FUNCTION
	for the symbol.
1993-10-31 18:49:26 +00:00