fa4beb7e8f
non-negated condition completers. Add support for addb pseudo-op which accepts both negated and non-negated completers.
5831 lines
223 KiB
Text
5831 lines
223 KiB
Text
Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_ip): addb[tf] should only accept
|
|
non-negated condition completers. Add support for addb pseudo-op
|
|
which accepts both negated and non-negated completers.
|
|
|
|
Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* configure.in (rs6000*): Use cpu_type ppc.
|
|
(ppc-*-aix*): New target; use coff and force bfd_gas.
|
|
* config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
|
|
(RS/6000) support. At the moment, only XCOFF is supported.
|
|
|
|
* config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
|
|
(S_SET_DATA_TYPE): Likewise.
|
|
(coff_last_function): Renamed from local static last_functionP in
|
|
coff_frob_symbol and made externally visible.
|
|
(coff_frob_symbol): New local static set_end; use it to try to
|
|
avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
|
|
* config/obj-coff.h (S_SET_DATA_TYPE): Declare.
|
|
(SA_SET_SYM_ENDNDX): Declare.
|
|
(coff_last_function): Declare.
|
|
|
|
* expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
|
|
equivalent to `.' to mean the current location.
|
|
|
|
* read.c (LEX_BR): If not defined, define as 0.
|
|
(lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
|
|
|
|
* symbols.c (symbol_new): If tc_canonicalize_symbol_name is
|
|
defined, call it with preserved_copy_of_name. If
|
|
tc_symbol_new_hook is defined, call it on the new symbol.
|
|
(symbol_find_base): If tc_canonicalize_symbol_name is defined,
|
|
call it on a copy of the name argument.
|
|
|
|
* write.c (write_object_file): Simplified usage of obj_frob_symbol
|
|
and tc_frob_symbol. Always call both if the symbol is going to be
|
|
output.
|
|
|
|
* write.c (relax_segment): Use %ld rather than %d when printing
|
|
fragP->fr_var, and cast it to long.
|
|
|
|
Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
|
|
* subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
|
|
fix_root and fix_tail.
|
|
(segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
|
|
field.
|
|
* write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
|
|
fix_tailP based on frchain_now, not seg_info (now_seg).
|
|
(chain_frchains_together_1): Chain the subsegment relocs together.
|
|
* subsegs.c (subseg_change): Don't clear fix_tail field.
|
|
(subseg_get): Likewise.
|
|
* literal.c (add_to_literal_pool): Look through the relocs via
|
|
frchain_now, not seginfo.
|
|
|
|
Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
|
|
ecoff_undefined to ecoff_extern_size.
|
|
* config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
|
|
* config/tc-mips.c (s_extern): Set ecoff_extern_size to the
|
|
external symbol size, rathern than setting the symbol value.
|
|
(md_estimate_size_before_relax): Check both ecoff_extern_size and
|
|
symbol value to see if GP referencing can be used.
|
|
* ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
|
|
ecoff_undefined.
|
|
(ecoff_frob_symbol): Don't check ecoff_undefined.
|
|
(ecoff_build_symbols): Get size of an undefined symbol from
|
|
sym->ecoff_extern_size, not S_GET_VALUE (sym).
|
|
|
|
Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* Makefile.in: Avoid bug in losing hpux sed.
|
|
|
|
Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (file_mips_isa): New static variable.
|
|
(md_begin): Set it.
|
|
(s_mipsset): Add support for .set mipN to set the ISA level.
|
|
|
|
* gasp.c (kinfo): Fully bracket initializer.
|
|
|
|
Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* gasp.c (malloc): Don't declare, since host.h or system header
|
|
files may declare it differently.
|
|
|
|
* config/atof-ieee.c (int_to_gen): Now static.
|
|
|
|
* config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
|
|
ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
|
|
|
|
Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
|
|
|
|
* gasp.c: Include host.h.
|
|
|
|
Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_ip): Make an unsupported instruction a
|
|
warning, not an error.
|
|
|
|
* config/obj-coff.c (dot_text_symbol, dot_data_symbol,
|
|
dot_bss_symbol): Don't define if BFD_ASSEMBLER.
|
|
(obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
|
|
arguments.
|
|
(coff_line_base): Renamed from line_base. Changed all uses.
|
|
(coff_add_linesym): Renamed from add_line_sym. Made non-static.
|
|
Changed all uses.
|
|
* config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
|
|
(S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
|
|
BFD_ASSEMBLER.
|
|
(coff_line_base): Declare.
|
|
(coff_add_linesym): Declare if BFD_ASSEMBLER.
|
|
* config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
|
|
now takes more arguments.
|
|
|
|
Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
|
|
|
|
* as.c (statistics_flag): Renamed from quiet_flag.
|
|
(main): Get statistics with --statistics instead of -noquiet.
|
|
|
|
Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
|
|
|
|
* Makefile.in: Support for Gnu ASsembler Preprocessor.
|
|
* gasp.c: New file.
|
|
* read.c (s_lcomm): Align lcomm data.
|
|
* config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
|
|
from different sections.
|
|
|
|
Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* write.c (write_object_file): If tc_frob_file is defined, call it
|
|
just before calling obj_frob_file.
|
|
* config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
|
|
(references changed), and made non-static.
|
|
(getExpression): Return void.
|
|
(select_gp_value): Abort if gp_value is non-zero. Delete call to
|
|
non-existent bfd_set_gp_value.
|
|
(alpha_validate_fix): Function deleted.
|
|
(alpha_frob_symbol): Function deleted.
|
|
(alpha_local_label): Function deleted.
|
|
(alpha_frob_file): Renamed from alpha_end.
|
|
* config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
|
|
alpha_local_label, alpha_end): Declarations deleted.
|
|
(alpha_gp_value, alpha_frob_file): Declare.
|
|
(tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
|
|
(LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
|
|
(md_convert_frag): Simplified slightly.
|
|
(tc_frob_file): New macro.
|
|
|
|
* read.c (do_align): New function, most of guts of s_align_*
|
|
functions. Look for md_do_align macro, give it a chance to bypass
|
|
all but recording of section alignment.
|
|
(s_align_bytes, s_align_ptwo): Call do_align.
|
|
(s_lcomm) [TC_ALPHA]: Align object to largest power of two that
|
|
divides object size.
|
|
|
|
* frags.c (frag_align_pattern): New function.
|
|
(frag_align): Rewrite for clarity.
|
|
|
|
* config/tc-vax.c (md_assemble): Handle O_constant expression.
|
|
(vip_begin): Returns pointer to const char. Cast hash_insert arg
|
|
to PTR to avoid compiler complaints about const.
|
|
(md_begin): Local variable errtxt must point to const.
|
|
|
|
* configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
|
|
bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
|
|
the last has an existing host support file. Do handle vax-bsd and
|
|
vax-ultrix targets.
|
|
|
|
Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-coff.c (obj_coff_section_header_append): Do not
|
|
declare if BFD_ASSEMBLER.
|
|
(stack_pop): Correct test for stack underflow.
|
|
(obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
|
|
obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
|
|
type of ignored argument to avoid gcc warning.
|
|
(align): Removed unused function.
|
|
|
|
Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
|
|
files, based on port of gas-1.38 contributed by CMU, using a.out
|
|
variant. Updated for gas-2.x and ECOFF. Floating-point constants
|
|
are still broken, bootstrap testing incomplete.
|
|
|
|
* literal.c: Comment changes.
|
|
|
|
* listing.c (listing_source_file): Check for null listing_tail
|
|
before indirecting through it.
|
|
|
|
* expr.h (struct expressionS): Added struct tag.
|
|
|
|
* as.h: If __GNUC__ and inline are both undefined, define inline
|
|
away.
|
|
|
|
* write.c (cvt_frag_to_fill): Don't assume that fr_var for
|
|
rs_align or rs_org frags will be 1.
|
|
(relax_segment): For rs_align, if fr_var is not 1, complain if
|
|
required padding is not a multiple of the size of the pad pattern.
|
|
(fixup_segment): Leave gp-relative relocations alone. For pcrel
|
|
relocations referring to the same segment, clear fx_pcrel when
|
|
clearing fx_addsy.
|
|
* as.h: Adjust comments on rs_align.
|
|
|
|
* atof-generic.c: Some reformatting.
|
|
(atof_generic): Be careful when mixing signed/unsigned values of
|
|
different sizes.
|
|
|
|
* write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
|
|
Query the fx_done field instead of fx_addsy to see if the fixup
|
|
still needs to be applied. Set fx_done and clear fx_addsy both,
|
|
for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
|
|
will only clear fx_addsy, and set fx_done accordingly after
|
|
returning.
|
|
* config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
|
|
* config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
|
|
with no fx_addsy.
|
|
|
|
* symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
|
|
Deleted.
|
|
(symbol_begin): Moved to end of file, so function inlining can
|
|
work better.
|
|
(fb_label_count, fb_label_max): Default C static initializers are
|
|
sufficient.
|
|
* symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
|
|
Declarations deleted.
|
|
* config/obj-coff.c (dot_text_symbol, dot_data_symbol,
|
|
dot_bss_symbol): Defined here, static.
|
|
|
|
* config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
|
|
including aout/aout64.h.
|
|
|
|
* write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
|
|
don't write out a section symbol even if it's used in a
|
|
relocation; assume relocations will handle section numbers
|
|
somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
|
|
it's true use.
|
|
(EMIT_SECTION_SYMBOLS): Default to 1.
|
|
(adjust_reloc_syms): Don't create a new symbol for an absolute
|
|
reference; just use the absolute section symbol.
|
|
(write_relocs): Make printout of reloc values dependent on flag
|
|
DEBUG3, not DEBUG2.
|
|
* config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
|
|
* config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
|
|
|
|
Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (lex_type): No longer make '{' a valid character for
|
|
symbol names.
|
|
|
|
* as.c (main): Print long values using %ld.
|
|
|
|
* messages.c (as_warn_internal): New static function.
|
|
(as_warn, 3 versions): Use as_warn_internal.
|
|
(as_warn_where, 3 versions): New function.
|
|
* as.h (as_warn_where): Declare.
|
|
|
|
Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
|
|
|
|
* as.c (quiet_flag): New flag.
|
|
(main): If -noquiet given, display execution time and memory used.
|
|
|
|
Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
|
|
|
|
Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* ecoff.c (ecoff_frob_symbol): New function. Put undefined
|
|
symbols of known size in the undefined section. Put small common
|
|
symbols in a .scommon section.
|
|
* ecoff.h (ecoff_frob_symbol): Declare.
|
|
* config/obj-ecoff.h (obj_frob_symbol): Define.
|
|
* config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
|
|
obj_elf_frob_symbol): Removed unused functions.
|
|
* config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
|
|
unused macros.
|
|
(obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
|
|
of unused functions.
|
|
(obj_frob_symbol): Define if ECOFF_DEBUGGING.
|
|
|
|
* tc-mips.c (g_switch_seen): New static variable.
|
|
(md_parse_option): Set g_switch_seen for -G option.
|
|
(s_option): If creating PIC code, force the GP size to be 0. Warn
|
|
if -G switch used with a non-zero value.
|
|
|
|
* symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
|
|
comparing against bfd_com_section.
|
|
|
|
Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
|
|
section.
|
|
|
|
Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* expr.c (operand): For floating point operand with unusual fp
|
|
char from FLT_CHARS, preserve the character. Patch from Lisa
|
|
Repka.
|
|
|
|
Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (md_pseudo_table): Add all data allocation
|
|
pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
|
|
|
|
Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
|
|
C_FCN assume .val has been set to .
|
|
|
|
Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
|
|
confuses GDB for some unknown reason.
|
|
* cofnig/obj-som.c: Likewise.
|
|
|
|
Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* literal.c (add_to_literal_pool): Handle duplicates of values
|
|
already written to literal pool.
|
|
|
|
Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
|
|
with explicitly marked stabs through BFD: if a symbol marked
|
|
N_UNDF | N_EXT is in the absolute section, move it to the
|
|
undefined section; move a symbol marked N_INDR into
|
|
bfd_ind_section and set the BSF_INDIRECT flag; set the
|
|
BSF_WARNING flag for a symbol makred N_WARNING.
|
|
|
|
Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* ecoff.h (ecoff_set_gp_prolog_size): Declare.
|
|
* ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
|
|
|
|
Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
|
|
and 'f' template operand.
|
|
|
|
* config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
|
|
and '2' in copr and sfu instruction templates.
|
|
|
|
Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* as.h (subseg_force_new): Add prototype.
|
|
|
|
Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* app.c (do_scrub_next_char): Allow lines like " foolab :".
|
|
|
|
* read.c (emit_expr): Fix computation of mask.
|
|
* config/obj-elf.c (obj_elf_section): Fix loop termination test.
|
|
|
|
Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* ecoff.c (ecoff_set_gp_prolog_size): New function.
|
|
(current_file_idx): New static variable.
|
|
(add_file): Use and increment current_file_idx instead of indx
|
|
parameter.
|
|
|
|
* struc-symbol.h (struct symbol): Make all bitfields unsigned.
|
|
|
|
* config/tc-i960.c (i960_validate_fix): Added argument
|
|
add_symbolPP. Indirect through it to get "add_symbolP".
|
|
* config/tc-i960.h (i960_validate_fix): Supply prototype.
|
|
(TC_VALIDATE_FIX): Pass address of add_symbolP.
|
|
|
|
* configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
|
|
(i386-*-netbsd0.8): New target, like 386bsd.
|
|
|
|
* configure.in: Set BFDDEF in Makefile to "define" or "undef".
|
|
* Makefile.in (config.h): Protect against multiple inclusions.
|
|
Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
|
|
(ALL_CFLAGS): Omit $(BFDDEF).
|
|
* as.h: Include config.h.
|
|
(struct symbol): Added forward declaration.
|
|
(add_to_literal_pool): Fix declaration.
|
|
* as.c: Don't include config.h.
|
|
|
|
* literal.c (add_to_literal_pool): Take symbol and addend as
|
|
arguments, instead of expression, for now. Fix calculation of
|
|
offset to return.
|
|
|
|
* subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
|
|
literal_pool_size.
|
|
|
|
Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
|
|
|
|
* subsegs.c (subseg_get): Accept new argument "force_new". If
|
|
set then a new segment is always created. All callers changed.
|
|
(subseg_force_new): New function. Similar to subseg_new, but
|
|
always force a new segment to be created.
|
|
|
|
* config/obj-som.c (som_frob_file): Call adjust_code_sections
|
|
for each section.
|
|
(adjust_code_sections): New function. Adjusts the VMA for all the
|
|
$CODE$ subspaces.
|
|
|
|
* config/tc-hppa.c (md_assemble): Also handle creating a fixup
|
|
for the unwind descriptors if a function's label follows the
|
|
.PROC and .ENTRY directives.
|
|
(pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
|
|
is done elsewhere. Don't create a fixup for the unwind
|
|
descriptors if the function's label has not been defined yet.
|
|
(pa_proc): For SOM, place each procedure within a new $CODE$
|
|
subspace. Adjust the segment and frag for the associated
|
|
function label if it exists.
|
|
|
|
Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
|
|
(hppa_fix_new): Initialize segment field.
|
|
(md_apply_fix): Do nothing for pc-relative fixup which involves
|
|
crossing a segment boundary.
|
|
(pa_procend): Undefine the current label after handling .PROC
|
|
and .PROCEND directives.
|
|
(dummy_symbol): Make type "symbolS *". Change references as
|
|
appropriate.
|
|
|
|
Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (read_a_source_file): Cast array argument to unsigned
|
|
char.
|
|
* write.c (adjust_reloc_syms): Remove unused variable symseginfo.
|
|
(write_object_file): Don't define punt_it if it won't be used.
|
|
(fixup_segment): Don't define skip if it won't be used.
|
|
|
|
* config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
|
|
(mips_target_format): Declare.
|
|
* config/tc-mips.c (mips_target_format): Define with appropriate
|
|
default definition.
|
|
(md_parse_option): If -EL or -EB is used, change byte_order and
|
|
mips_target_format as appropriate.
|
|
|
|
Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* app.c (do_scrub_next_char): Another attempt to fix bugs
|
|
dealing with labels without colons (for HPPA and MRI).
|
|
|
|
Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* expr.c (integer_constant): Fix computation of too_many_digits.
|
|
Variable digit_2 renamed to start. Fix check for whether number
|
|
will fit in 32 bits.
|
|
* read.c (emit_expr): Use valueT instead of long.
|
|
|
|
Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.c: If TC_MIPS, include elf/mips.h.
|
|
(special_sections): Define.
|
|
(obj_elf_special_section): Get default types and attributes from
|
|
list of special sections.
|
|
* config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
|
|
|
|
* config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
|
|
sections to be close together.
|
|
|
|
* config/tc-mips.c (macro): Corrected $at warnings in a couple of
|
|
spots.
|
|
|
|
* listing.c (listing_prev_line): New function.
|
|
* listing.c: Include subsegs.h.
|
|
(listing_prev_line): New function.
|
|
(calc_hex): Reset byte_in_frag to zero for each new frag.
|
|
* config/tc-mips.c (append_insn): Call listing_prev_line after
|
|
emitting nop instructions.
|
|
* Makefile.in (listing.o): Depends upon subsegs.h.
|
|
|
|
Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
|
|
here. Handle case where label may be defined after the .PROC.
|
|
(pa_proc): It is not an error if the procedure's label isn't
|
|
defined before the .PROC directive.
|
|
|
|
Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* config/te-netbsd.h: New file.
|
|
* config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
|
|
a.out-netbsd-386 for this configuration.
|
|
|
|
Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
|
|
with the associated stabs information.
|
|
(ecoff_build_symbols): Never set the type of stabs symbols to
|
|
st_Global. Don't update the symbol index or ifd if the gas symbol
|
|
is not the same as the ECOFF symbol (which is now the case for
|
|
stabs symbols).
|
|
|
|
Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
|
|
|
|
* config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
|
|
splits the function.
|
|
(macro2): New function, if LOSING_COMPILER defined.
|
|
|
|
Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (fill_section): Don't ever fill past the
|
|
end of a section. (write_object_file): Temporary fix - setup
|
|
stdoutput.
|
|
|
|
Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
|
|
non-pcrel_offset relocations.
|
|
|
|
Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
|
|
without .set noat.
|
|
|
|
Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* literal.c: New file.
|
|
* Makefile.in (REAL_SOURCES, OBJS): List it.
|
|
|
|
* as.h (DEBUG): Don't define.
|
|
(struct expressionS, struct fix): Declare in case they're used in
|
|
prototypes.
|
|
(add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
|
|
|
|
* config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
|
|
in bfd.
|
|
|
|
* subsegs.c (subseg_get): New function. Creates segment if
|
|
needed, returns pointer, but doesn't change current segment.
|
|
(subseg_new): Use it.
|
|
|
|
Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
|
|
|
|
* Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
|
|
* config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
|
|
* app.c, flonum.h, hex-value.c (const): Change #if to be more
|
|
portable.
|
|
|
|
Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
|
|
|
|
* config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
|
|
micro-kernel.
|
|
|
|
Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* write.c (write_relocs): bfd_perform_relocation now takes an
|
|
additional argument, to return an error string (which we ignore).
|
|
|
|
Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* write.h (struct fix): Field tc_fix_data should be type PTR, not
|
|
void*, for compatibility with non-ANSI compilers. Added
|
|
single-bit field "fx_done".
|
|
|
|
Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
|
|
|
|
* tc-hppa.c (pre_defined_registers): Convert to lower case.
|
|
Delete spurious register names "%r4L", etc.
|
|
(selector_table): Sort and convert to lower case.
|
|
(cons_fix_new_hppa): `reloc_type' => `rel_type'.
|
|
(pa_ip): Always use strcmp for non-text and strcasecmp for text.
|
|
(reg_name_search): Rewrite to call strcasecmp only once per
|
|
iteration.
|
|
(pa_chk_field_selector): Rewrite to use binary search.
|
|
(pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
|
|
(pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
|
|
sensitive comparisons.
|
|
(pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
|
|
(pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
|
|
case sensitive comparison for all symbolic names.
|
|
(pa_subspace): Canonicalize strncasecmp arg to lower case.
|
|
(pa_subspace_start): Use case sensitive comparison for symbolic names.
|
|
|
|
Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
|
|
symbol is present (i.e., relocation against absolute), create a
|
|
phony local symbol, and use it in the reloc.
|
|
(fixup_segment): When adjusting a reloc with an absolute symbol,
|
|
have TC_FORCE_RELOCATION control clearing add_symbolP too.
|
|
* config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
|
|
|
|
* symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
|
|
and BSF_GLOBAL, since they're the same.
|
|
|
|
* as.c (main): Only invoke md_end if it's defined as a macro.
|
|
* tc.h (md_end): Don't declare it.
|
|
* config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
|
|
anything.
|
|
* config/tc-vax.c (vip_end): Deleted null function.
|
|
* config/tc-mips.c (md_mips_end): Renamed from md_end.
|
|
* config/tc-mips.h (md_mips_end): Declare.
|
|
(md_end): New macro, calls md_mips_end.
|
|
|
|
* write.c (write_object_file): Don't close output file.
|
|
* as.c (main): Close output file (if needed) after calling
|
|
listing_print, which should be after calling write_object_file,
|
|
which sets the frag addresses.
|
|
|
|
* config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
|
|
obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
|
|
obj_coff_val): Add unused int argument to satisfy prototypes; goes
|
|
with Ian's 10 Sep changes.
|
|
(S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
|
|
S_SET_STORAGE_CLASS): Now function instead of macros.
|
|
(obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
|
|
(tag_insert): Local var ERROR_STRING is const. Use "const" not
|
|
"CONST" for argument NAME. Fixed prototype.
|
|
(coff_frob_symbol): Removed explicit "#if 1" directive. If
|
|
S_IS_EXTERNAL, set storage class to C_EXT.
|
|
(s_get_name): Use "const" not "CONST".
|
|
* config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
|
|
S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
|
|
(obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
|
|
BFD_ASSEMBLER, define as macro that aborts.
|
|
(obj_extra_stuff, tc_headers_hook): Declare only for
|
|
non-BFD_ASSEMBLER.
|
|
(coff_frob_symbol): Fix prototype.
|
|
|
|
Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
|
|
reversed.
|
|
|
|
Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (md_begin): Initialize "dummy_label".
|
|
(tc_gen_reloc, SOM version): For relocations which have no symbol,
|
|
set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
|
|
|
|
Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* read.c (lex_type): No longer make '[' a valid character for
|
|
symbol names.
|
|
|
|
* config/tc-vax.c (tc_aout_fix_to_chars): Local variable
|
|
NBYTES_R_LENGTH now const.
|
|
|
|
* config/obj-*.c, config/tc-*.c: Omit superfluous "return"
|
|
statements at ends of functions. Don't check for null return from
|
|
hash_new, since it won't return at all if there's no memory
|
|
available. Also, check for null return from hash_insert, rather
|
|
than zero-length string, as success indicator.
|
|
|
|
* subsegs.c (section_symbol): New function.
|
|
* subsegs.h (section_symbol): Declare.
|
|
* write.c (adjust_reloc_syms): Use it.
|
|
|
|
Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* Makefile.in (RUNTEST): New variable.
|
|
(CHECKFLAGS): Pass it down.
|
|
|
|
* ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
|
|
unused for now, but supplied by Alpha OSF1 compiler.
|
|
|
|
* as.h: Protect against multiple inclusions.
|
|
(int_to_gen): Don't declare.
|
|
|
|
* config/atof-vax.c (atof_vax): NULL is not a valid character
|
|
constant.
|
|
|
|
Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* configure.in (hppa*-*-osf*): Do not consider this a developmental
|
|
configuration.
|
|
|
|
* config/tc-hppa.c (md_apply_fix): Handle cases where no
|
|
relocation will be emitted for 32bit formats.
|
|
|
|
Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
|
|
for any of the 'T' field selectors.
|
|
|
|
Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-h8500.c (build_bytes): Get reloc type right for a
|
|
%page operation. (md_assemble): Don't modify input_line_pointer.
|
|
(mdcoff_sizemachdep): New function.
|
|
* config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
|
|
* config/tc-z8k.c (get_operand): Delete bogus check.
|
|
|
|
Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
|
|
|
|
* write.c (number_to_chars_*): Delete bogus range check.
|
|
|
|
* output-file.c (TARGET_ARCH): No default.
|
|
|
|
Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
|
|
|
|
* config/tc-sh.c (md_convert_frag): Truncate disps before calling
|
|
md_number_to_chars. (md_assemble): Don't modify
|
|
input_line_pointer.
|
|
|
|
Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
|
|
|
|
Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
|
|
Breaks with the HP compilers.
|
|
|
|
* config/tc-hppa.c (struct call_info): Remove fields which were
|
|
set but never used. Remove all code which sets those fields.
|
|
(struct subspace_dictionary_chain): Likewise.
|
|
(struct space_dictionary_chain): Likewise.
|
|
(pa_desc): Delete useless function. Delete all references.
|
|
(hppa_tc_make_sections): No need to count the number of symbols for
|
|
the symbol extension section.
|
|
|
|
Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/obj-som.c (obj_som_version): Pass version string to
|
|
SOM BFD backend.
|
|
(obj_som_copyright): New function. Much like obj_som_version.
|
|
|
|
* config/tc-hppa.c (obj_copyright): Define as appropriate for
|
|
SOM and ELF.
|
|
(pa_copyright): Just a stub now.
|
|
|
|
* config/obj-som.c (obj_read_begin_hook): Delete unused function.
|
|
* config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
|
|
(TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
|
|
|
|
* config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
|
|
expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
|
|
relocations for selecting the current rounding mode.
|
|
|
|
* config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
|
|
e_rlsel field selectors.
|
|
|
|
Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.h: If ECOFF_DEBUGGING, undef
|
|
SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
|
|
OBJ_PROCESS_STAB to call ecoff_stab.
|
|
* config/obj-elf.c: Don't compile obj_elf_init_stab_section if
|
|
INIT_STAB_SECTION is not defined.
|
|
|
|
Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
|
|
(md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
|
|
Fix comments in various places. Always return a value.
|
|
Avoid dereferencing a NULL fx_addsy.
|
|
(hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
|
|
|
|
Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
|
|
|
|
* tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
|
|
be either 0 or 2 (no static link or static link required). Always
|
|
assume no static link.
|
|
|
|
Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
|
|
dependent on howto fields, not on format flavour.
|
|
|
|
* struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
|
|
defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
|
|
macros are defined.
|
|
* config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
|
|
(TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
|
|
(sy_tc, sy_obj): Define so that the fields look like they used to,
|
|
until all references get changed.
|
|
|
|
* write.c (fixup_segment): Lots of variables no longer register.
|
|
Reordered some code for easier reading.
|
|
* config/obj-coff.c (obj_coff_dim): dim_index no longer register.
|
|
Deleted superfluous return statement.
|
|
(obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
|
|
obj_coff_val, tag_init, tag_insert): Deleted superfluous return
|
|
statement.
|
|
(align, obj_coff_section): Deleted debugging printfs.
|
|
* config/tc-i386.c (md_assemble): Discard some register decls.
|
|
Use assignment rather than memcpy to copy template.
|
|
(op_hash, reg_hash, prefix_hash): Default C initialization of
|
|
statics is sufficient.
|
|
* config/tc-sparc.c (print_insn): Array Reloc is now const, and
|
|
points to const.
|
|
|
|
* config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
|
|
TE_LYNX; use coff-sparc otherwise.
|
|
[USE_NATIVE_HEADERS]: Delete this code; it isn't used.
|
|
|
|
* write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
|
|
before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
|
|
returning. Remove some i960-coff-specific code.
|
|
(TC_ADJUST_RELOC_COUNT): Default to doing nothing.
|
|
* config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
|
|
(i960_validate_fix): Declare.
|
|
(TC_VALIDATE_FIX): Define.
|
|
* config/tc-i960.c (i960_validate_fix): New function.
|
|
|
|
* write.c (number_to_chars_littleendian): New function. Write out
|
|
bytes in little endian order, doing size and range checking.
|
|
(number_to_chars_bigendian): New function, similar.
|
|
* write.h: Declare them.
|
|
* config/tc-*.c (md_number_to_chars): Use them.
|
|
* config/tc-vax.c (md_apply_fix): Ditto.
|
|
* config/tc-i386.c (md_apply_fix): Ditto.
|
|
|
|
* config/obj-coff.c: Rearranged code for handling line number
|
|
data.
|
|
(line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
|
|
since the usage is different from non-BFD_ASSEMBLER case.
|
|
(in_function, clear_function, set_function): New macros, to
|
|
combine some of the functionality implemented in differnet ways in
|
|
BFD_ASSEMBLER and non-... code. Used in other functions that used
|
|
to check function_lineoff &c.
|
|
(obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
|
|
one for not. Non-BFD_ASSEMBLER version now has temporary variable
|
|
to contain char* pointer pointed to by char** argument. Always
|
|
follow CROSS_COMPILE code; easier to read that way.
|
|
(obj_coff_ln): Don't call add_lineno or c_line_new if appline is
|
|
set.
|
|
(obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
|
|
".bf", it's been done elsewhere.
|
|
(coff_frob_symbol): If ilne number data is pending, call
|
|
add_linesym to flush it.
|
|
(coff_frob_file): Don't do that here.
|
|
* config/obj-coff.h (coff_frob_file): Declare.
|
|
(obj_frob_file): Define, to call it.
|
|
|
|
* config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
|
|
md_estimate_size_before_relax: Define them as macros calling
|
|
as_fatal.
|
|
* config/tc-sparc.c: Don't define them as functions.
|
|
|
|
* configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
|
|
|
|
Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* Makefile (clean): Depend on clean-here.
|
|
|
|
Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
|
|
|
|
* config/ho-go32.h: Include fopen-bin.h.
|
|
* as.h: If FOPEN_WB isn't defined, include fopen-same.h.
|
|
* output-file.c (output_file_create): Use FOPEN_WB instead of "w".
|
|
* input-file.c (input_file_open): Use FOPEN_RT instead of "r".
|
|
* listing.c (file_info): Use FOPEN_RB instead of "rb".
|
|
* read.c (s_include): Use FOPEN_RT instead of "r".
|
|
|
|
* stabs.c: Include obstack.h.
|
|
|
|
* tc.h (md_create_long_jump): Don't declare if it's already
|
|
defined as a macro.
|
|
(md_create_short_jump, md_estimate_size_before_relax): Ditto.
|
|
|
|
* messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
|
|
of strerror. Clear bfd_error.
|
|
|
|
* config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
|
|
defined.
|
|
|
|
Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
|
|
(pa_process_exit, pa_procend): Call it for ELF objects.
|
|
|
|
Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
|
|
case. See comment. From wilson@cygnus.com: for M_L_DAB, set
|
|
coproc before doing goto ld.
|
|
|
|
Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* Makefile.in (stabs.o): Added dependencies.
|
|
|
|
* config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
|
|
|
|
Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* app.c (do_scrub_next_char): Output a TAB before any
|
|
.app* directive.
|
|
|
|
* 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.
|
|
|
|
Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_procend): Do not call process_exit.
|
|
(exit_processing_complete): Delete unwanted variable and all
|
|
references.
|
|
|
|
Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
|
|
Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_def_subspaces): Only create the unwind
|
|
subspace for ELF. In the SOM world, the linker is responsible
|
|
for creating the unwind subspaces.
|
|
|
|
Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
|
|
Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (write_object_file): Disable obj_check_file_symbols
|
|
hook; only back end using it wasn't using it correctly.
|
|
(write_object_file): Always call obj_frob_symbol and
|
|
tc_frob_symbol; always retain symbol if it's used by a relocation,
|
|
regardless of what these routines indicate.
|
|
* config/obj-coff.c (coff_frob_symbol): Renamed from
|
|
coff_check_file_symbols.
|
|
* config/obj-coff.h (obj_check_file_symbols): Deleted.
|
|
(coff_frob_symbol): Declare.
|
|
(obj_frob_symbol): Call it.
|
|
|
|
* config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
|
|
obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
|
|
(c_section_header): Ditto. Delete superfluous return at end of
|
|
function.
|
|
|
|
* config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
|
|
coff-sparc-lynx.
|
|
(SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
|
|
too.
|
|
(c_section_header): Rewrite prototype so that it contains no
|
|
preprocessing directives. Don't declare it at all if
|
|
BFD_ASSEMBLER.
|
|
|
|
* configure.in (sparc*-*-lynxos): New target, using coff and
|
|
BFD_ASSEMBLER.
|
|
|
|
* stabs.c: New file.
|
|
* Makefile.in (REAL_SOURCES, OBJS): List it.
|
|
* read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
|
|
get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
|
|
Moved to new file.
|
|
|
|
* config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
|
|
files.
|
|
|
|
Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* configure.in (mips-*-irix5*): New target. Use elf and mips-big.
|
|
* config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
|
|
(obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
|
|
pseudo-ops.
|
|
(obj_read_begin_hook): If ECOFF_DEBUGGING, call
|
|
ecoff_read_begin_hook.
|
|
(obj_symbol_new_hook): If ECOFF_DEBUGGING, call
|
|
ecoff_symbol_new_hook.
|
|
(obj_elf_init_stab_section): Cast alloca result.
|
|
(elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
|
|
information and write it out into .mdebug section.
|
|
* config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
|
|
(TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
|
|
(ECOFF_DEBUGGING): Define if TC_MIPS.
|
|
(TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
|
|
fields required by ECOFF.
|
|
* config/tc-mips.c: Check ECOFF_DEBUGGING rather than
|
|
OBJ_ECOFF in many cases.
|
|
(mips_any_noreorder): New variable.
|
|
(mips_cprestore_offset): Initialize to -1.
|
|
(mips_frame_reg): New variable.
|
|
(RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
|
|
RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
|
|
(md_pseudo_table): Handle "gpword" and "cpadd".
|
|
(md_begin): Initialize ok to false. If OBJ_ELF, set alignment
|
|
of text, data and bss sections to 4. Set alignment of
|
|
.reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
|
|
section.
|
|
(ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
|
|
check.
|
|
(append_insn, macro_build, macro_build_lui): Take place
|
|
argument. Changed all callers.
|
|
(append_insn): If appending a nop, don't emit one.
|
|
(macro_build): Changed assertion for 'i', 'j', 'o' case.
|
|
(gp_reference): Removed.
|
|
(load_address): New function.
|
|
(macro): If mips_noreorder is used, set mips_any_noreorder.
|
|
Extensive changes to handle GP and PIC symbols differently.
|
|
Build both possible code choices using a variant frag, and
|
|
make a final decision at the end of assembly when all
|
|
information is known. Added PIC support for all symbol
|
|
references.
|
|
(mips_ip): Don't permit anything but a number after $ for a
|
|
coprocessor register. Don't use .lit4 or .lit8 sections when
|
|
generating PIC code. If OBJ_ELF, set alignment of .lit4 or
|
|
.lit8 section to 4.
|
|
(md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
|
|
(s_change_sec): Set alignment of ELF .rodata or .sdata section
|
|
to 4.
|
|
(s_mipsset): If .set noreorder, set mips_any_noreorder.
|
|
(s_cpload): Ignore .cpload if not generating PIC code. Warn
|
|
if .cpload is not in noreorder section.
|
|
(s_cprestore): Ignore .cprestore if not generating PIC code.
|
|
(s_gpword, s_cpadd): New functions.
|
|
(tc_get_register): Added frame argument; if true, set
|
|
mips_frame_reg to return value. Changed all callers.
|
|
(md_estimate_size_before_relax): Don't error out, but instead
|
|
determine how much a frag should grow.
|
|
(tc_gen_reloc): Return multiple relocs if appropriate, as
|
|
determined by md_estimate_size_before_relax.
|
|
(md_convert_frag): New function.
|
|
(mips_elf_final_processing): Set ELF header flags based on
|
|
mips_any_noreorder and mips_pic.
|
|
* config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
|
|
(MAX_RELOC_EXPANSION): Define to be 3.
|
|
(md_relax_frag): Define to be 0.
|
|
(md_convert_frag): Don't define.
|
|
(tc_get_register): Changed declaration.
|
|
|
|
* ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
|
|
support generating ECOFF debugging information for MIPS ELF
|
|
targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
|
|
handling of external symbols: it now always generates exactly
|
|
those external symbols that are defined in the global symbol list.
|
|
* Makefile.in (REAL_SOURCES): Added ecoff.c.
|
|
(REAL_HEADERS): Added ecoff.h.
|
|
(OBJS): Added ecoff.o.
|
|
(ecoff.o): New target.
|
|
* config/obj-ecoff.c: Almost entirely moved into ecoff.c.
|
|
Remaining code mostly just calls ecoff.c code.
|
|
* config/obj-ecoff.h: Define ECOFF_DEBUGGING.
|
|
(TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
|
|
struct localsym.
|
|
(obj_read_begin_hook, obj_symbol_new_hook): Define to call
|
|
functions in ecoff.c.
|
|
(ecoff_stab): Don't declare (now declared in ecoff.h).
|
|
(obj_set_sym_index): Define.
|
|
(obj_ecoff_set_sym_index): Declare.
|
|
|
|
* frags.h (frag_grow): Declare.
|
|
* frags.c (frag_grow): Made non-static.
|
|
|
|
* write.c (is_dnrange): Do not define if md_relax_frag is defined.
|
|
(relax_segment): If md_relax_frag is defined, use it to handle a
|
|
frag of type rs_machine_dependent rather than looking through
|
|
md_relax_table.
|
|
|
|
* read.c (read_a_source_file): If we find a bad pseudo-op,
|
|
do a continue to go on to the next line rather than a break.
|
|
Removed duplicate bad pseudo-op code which was never executed.
|
|
|
|
* read.c (s_lcomm): Do not require a comma after the name.
|
|
|
|
* subsegs.h (segment_info_type): Changed hadone field to bitfield.
|
|
Added bss bitfield.
|
|
* as.c (perform_an_assembly_pass): Set bss flag for bss_section.
|
|
* read.c (s_lcomm): Set bss flag for .sbss section if used.
|
|
* write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
|
|
bss section. Set SEC_RELOC if there are any relocations, even for
|
|
a zero size section.
|
|
|
|
* write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
|
|
data offset on reloc[0]->address rather than reloc[j]->address, so
|
|
that multiple relocs can affect different memory locations.
|
|
|
|
* write.c (chain_frchains_together, relax_and_size_seg,
|
|
adjust_reloc_syms, write_relocs): Make third argument PTR, not
|
|
char *, to match definition of bfd_map_over_sections.
|
|
|
|
* app.c (do_scrub_next_char): Don't interpret a comment character
|
|
as starting a CPP line directive unless it is a '#' and is the
|
|
very first characters on the line (i.e., do not permit leading
|
|
whitespace).
|
|
|
|
* messages.c (identify): Make file argument non-const, to match
|
|
callers.
|
|
|
|
Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
|
|
|
|
Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
|
|
|
|
* config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
|
|
* config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
|
|
relocs.
|
|
|
|
Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.[ch]: Fix assorted trivial indention problems.
|
|
* config/obj-som.c (obj_som_version): Add missing ';'.
|
|
(som_frob_file): Delete whitespace at EOL.
|
|
|
|
Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* Makefile.in (VERSION): Updated following 2.2 release.
|
|
|
|
Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
|
|
Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* Makefile.in (distclean): Delete config-stamp and config.h
|
|
|
|
* config/tc-hppa.c (evaluate_absolute): Avoid relying on
|
|
ANSI-C features.
|
|
|
|
* 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".
|
|
|
|
Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
(macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
|
|
|
|
Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* configure.in: Remove h8300h, we have multilib now.
|
|
|
|
Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
|
|
|
|
* configure.in: Support generic netware as being ELF format.
|
|
Recognise unixware if the user supplies it.
|
|
|
|
Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
* 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.
|
|
|
|
* config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
|
|
|
|
* config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
|
|
for 'z' operands (target of ble branch).
|
|
|
|
Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
* config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
|
|
to default state after it's been used.
|
|
|
|
Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* write.c (chain_frchains_together): Update pointer to last
|
|
frag for a segment in the seginfo structure.
|
|
|
|
Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
|
|
|
|
* Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
|
|
|
|
Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
|
|
|
|
* write.c (fixup_segment): Handle conversion of subtraction to
|
|
pc-relative addressing even if pc-relative flag is already set.
|
|
|
|
* config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
|
|
declare either.
|
|
|
|
* doc/Makefile.in (distclean): Delete intermediate files from dvi
|
|
build, but not the dvi or info files.
|
|
* Makefile.in (clean-here): New target; cleans up current
|
|
directory only.
|
|
(distclean): Use it instead of clean.
|
|
|
|
* read.c (s_xstab): Don't use alloca.
|
|
|
|
* messages.c (identify): New routine; print message identifying
|
|
following messages as coming from assembler.
|
|
(as_show_where, as_bad_internal, as_bad_where): Call it.
|
|
(as_fatal): Don't need to identify program any more.
|
|
|
|
Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
|
|
Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
* config/ho-hpux.h: Do not include ho-sysv.h. Instead include
|
|
standard hpux include files to pick up various function decls.
|
|
|
|
* 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.
|
|
|
|
Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
|
|
|
|
* expr.c (operand): Fix checks for characters following "0b" or
|
|
"0f".
|
|
|
|
Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
|
|
* config/tc-hppa.c (process_exit): Create temporary symbols with
|
|
correct prefixes so they can be eliminated later.
|
|
|
|
* 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.
|
|
|
|
* 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.
|
|
|
|
* 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.
|
|
|
|
* 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.
|
|
|
|
Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* 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.
|
|
|
|
Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* 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.
|
|
* write.c (relax_and_size_seg): Correct test to determine if
|
|
the section's size was rounded up.
|
|
|
|
* config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
|
|
can properly set all the SOM symbol types.
|
|
* config/tc-hppa.c (pa_symbol_type): New enum to represent the
|
|
symbol types which can be set from an IMPORT/EXPORT statement.
|
|
(pa_export_args): Set the pa_symbol_type type based on arguments.
|
|
If defined, call obj_set_symbol_type to pass this information on
|
|
to the BFD backend.
|
|
|
|
* read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
|
|
stab section we make.
|
|
(s_stab_generic): Likewise.
|
|
|
|
Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* Allow backends to override the value of the fake label.
|
|
* write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
|
|
assume backends will define LOCAL_LABEL if anything other than
|
|
'L' is used to denote a local label.
|
|
(FAKE_LABEL_NAME): New macro. Defines the default name used for
|
|
the "fake" label.
|
|
* expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
|
|
and instead simply use the string defined by FAKE_LABEL_NAME.
|
|
(operand): Likewise.
|
|
* read.c (s_stab_generic): Likewise.
|
|
* config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
|
|
known to be a local label.
|
|
* config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
|
|
(LOCAL_LABEL, FAKE_LABEL_NAME): Define.
|
|
* config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
|
|
(LOCAL_LABEL, FAKE_LABEL_NAME): Define.
|
|
* config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
|
|
(LOCAL_LABEL, FAKE_LABEL_NAME): Define.
|
|
|
|
Rework space/subspace handling in PA code to fully support
|
|
SOM spaces/subspaces.
|
|
* config/tc-hppa.c (USE_ALIASES): New object-format dependent define
|
|
to control the use of space/subspace name aliases.
|
|
(update_subspace): Accept space chain entry for containing space
|
|
as a new parameter. All callers changed.
|
|
(pa_get_label): Use current_space rather than pa_segment_to_space.
|
|
(pa_define_label): Likewise.
|
|
(pa_undefine_label): Likewise.
|
|
(md_begin): Change into the (possibly modified) text_section.
|
|
(pa_parse_space_stmt): Create a new segment/space if create_flag
|
|
is true, and the space name is not one of the two predefined spaces.
|
|
(pa_subspace): Use current_space rather than a lookup via
|
|
pa_segment_to_space. Reset BFD section flags as required by
|
|
the .subspace directive. Likewise for the section alignment.
|
|
Pass the current space to update_subspace and create_new_subspace.
|
|
(pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
|
|
is true. When not using aliases, create a BFD section for each
|
|
subspace encountered. When not using aliases replace the default
|
|
text, data, and bss segments with new ones.
|
|
(create_new_subspace): When not using aliases each subspace has a
|
|
section/segment and subsegments are not needed, so set the subsegment
|
|
to zero.
|
|
|
|
* config/tc-hppa.c (pa_parse_space_stmt): If needed, call
|
|
obj_set_section_attributes to pass space attributes to the
|
|
BFD backend.
|
|
(create_new_space): Likewise.
|
|
(create_new_subspace): Likewise for subspace attributes using
|
|
obj_set_subsection_attributes.
|
|
(update_subspace): Likewise for subspace attributes using
|
|
obj_set_subsection_attributes.
|
|
|
|
* config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
|
|
for $TEXT$ and $PRIVATE$ from the default space structure.
|
|
|
|
* config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
|
|
as appropriate for the given type.
|
|
|
|
* config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
|
|
SOM relocations.
|
|
|
|
* config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
|
|
redefinition.
|
|
|
|
* config/obj-som.[ch]: New files for SOM support. Note SOM
|
|
support is not yet complete in GAS or BFD.
|
|
|
|
* config/ho-hppabsd.h: Delete IO* macros, they are defined in
|
|
stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
|
|
and string.h.
|
|
|
|
Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* Allow backends to override the section names used for embedded
|
|
stabs support. Needed for SOM.
|
|
* read.c (STAB_SECTION_NAME): Default the name of the stab section
|
|
to ".stab".
|
|
(STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
|
|
(get_stab_string_offset): Is now passed the full name for the
|
|
stab string section rather than a name prefix. All references
|
|
changed.
|
|
(s_stab_generic): New argument for the stab string section name.
|
|
all references changed.
|
|
(s_xstab): Append "str" to the stab section name to get the
|
|
stab string section name.
|
|
* config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
|
|
to stab section name to get the stab string section name. Pass
|
|
the full name of the stab string section to get_stab_string_offset.
|
|
* config/obj-elf.c (obj_elf_init_stab_section): Likewise.
|
|
|
|
* config/tc-hppa.c (md_begin): Disable "-R" option to fold
|
|
textand data segments. Warn user "-R" is unsupported on the
|
|
PA.
|
|
|
|
Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
|
|
|
|
* config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
|
|
.align and .ALIGN directives.
|
|
|
|
* config/tc-hppa.c (pa_space): Do not report an error for a .space
|
|
directive which does not define a "well-known" space and does
|
|
not include a space number as an argument.
|
|
|
|
* config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
|
|
"defined", "loadable", "code_only" and "space_index" fields.
|
|
(pa_def_spaces): Correct initialization of the "spnum", "defined",
|
|
and "private" fields.
|
|
|
|
* write.h (struct fix): Add new tc_fix_data field for the various
|
|
backends to attach machine dependent fixup information to.
|
|
* write.c (fix_new_internal): Initialize new tc_fix_data field.
|
|
* config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
|
|
fx_next fields.
|
|
(hppa_find_hppa_fix): Delete unnecessary function. Fix all
|
|
callers to get HPPA fixup information from the tc_fix_data field
|
|
in the GAS fixup.
|
|
(hppa_fix_root): Delete unnecessary variable.
|
|
(fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
|
|
|
|
* config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
|
|
function. Fix all callers.
|
|
(subspace_dictionary_chain): Delete unused ssd_start_sym field.
|
|
|
|
* config/tc-hppa.c (hppa_fix_adjustable): New function to determine
|
|
if a particular fixup is adjustable.
|
|
* config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
|
|
perform the real work.
|
|
|
|
* config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
|
|
of OBJ_XXX conditionals.
|
|
(MAX_RELOC_EXPANSION): Likewise.
|
|
|
|
* config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
|
|
callers. Now returns log2 (N) for positive N which are an exact
|
|
power of two or -1 for an error.
|
|
|
|
* config/tc-hppa.c (pa_callinfo): Range check values provided for
|
|
ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
|
|
inserting them into the unwind table.
|
|
|
|
* config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
|
|
(hppa_gen_reloc_type): New object format dependent macro.
|
|
(pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
|
|
conditional. The code can (and will) be shared between SOM & ELF
|
|
formats in the near future.
|
|
(cons_fix_new_hppa, md_apply_fix_1): Likewise.
|
|
(pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
|
|
(tc_gen_reloc): Use hppa_gen_reloc rather than an object format
|
|
specific call.
|
|
|
|
* config/tc-hppa.c (pa_comm): Set the segment for a common symbol
|
|
to bfd_und_section.
|
|
|
|
* config/obj-elf.h (obj_elf_version): Add extern prototype.
|
|
|
|
* configure.in (hppa-*-bsd*): New configuration.
|
|
BFD is always used for GAS generating SOM objects.
|
|
|
|
* write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
|
|
adjustment is rejected by the target machine.
|
|
|
|
* config/tc-hppa.c (pa_big_cons): Delete function and its
|
|
declaration. All callers changed to use pa_cons.
|
|
|
|
* write.c (fixup_segment): Fix indention and open/close brace
|
|
problem.
|
|
|
|
From Pete Hoogenboom:
|
|
* config/tc-hppa.c (md_atof): Return a NULL on success rather than
|
|
an empty string.
|
|
|
|
* config/tc-hppa.c (pa_parse_space_stmt): Advance
|
|
input_line_poitner when an invalid argument is encountered.
|
|
|
|
Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-a29k.c (md_begin): When opcodes are mashed together in
|
|
the table, require that the one without bit 0x1000000 set come
|
|
first. Require further that it be case 'b' or 'P'. The a29k
|
|
opcode table already meets these constraints.
|
|
(machine_ip): When handling case 'i' or 'A', make sure that the
|
|
appropriate opcode really exists by looking at the next entry in
|
|
the opcode table.
|
|
|
|
Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
|
|
fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
|
|
|
|
* config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
|
|
after a .ent directive.
|
|
|
|
* config/tc-mips.c (mips_ip): Handle '>' case (shift amount
|
|
between 32 and 63 for double shift instruction). Do & 0x1f rather
|
|
than % 32.
|
|
(printInsn): Handle '>'.
|
|
|
|
Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
|
|
number in the right place. Untested. Probably does not work for
|
|
cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
|
|
|
|
* config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
|
|
an illegal offset of 0 or -1.
|
|
|
|
* config/obj-elf.c (obj_elf_init_stab_section): Align .stab
|
|
section to a longword boundary.
|
|
|
|
Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
|
|
|
|
From Jeff Law:
|
|
* config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
|
|
HPPA_R_ADDEND.
|
|
|
|
Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
* config/tc-sh.c (build_Mbytes): Write the relocs to the correct
|
|
address. (md_assemble): Make error handling a bit more graceful.
|
|
(md_apply_fix): Don't warn on non aligned displacement.
|
|
|
|
* config/tc-z8k.c (get_specific, built_bytes): Understand all the
|
|
aspects of lda.
|
|
|
|
Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
|
|
|
|
* doc/Makefile.in (install-info): Use "$<*" so VPATH will find
|
|
as.info* even if they're in $(srcdir) (e.g., for FSF
|
|
distributions).
|
|
|
|
* write.c (write_relocs): For relocs that are pc_relative and
|
|
pcrel_offset and not partial_inplace, adjust reloc->addend to
|
|
compensate for a bfd_perform_relocation bug.
|
|
|
|
* config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
|
|
* config/tc-sparc.c: Ditto.
|
|
(tc_gen_reloc): Include fx_offset for pcrel fixups.
|
|
|
|
Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
|
|
|
|
* tc-mips.c (md_pseudo_table): Add dword pseudo op.
|
|
|
|
Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* messages.c: replaced all variables called Format with 'format',
|
|
for consistency throughout
|
|
|
|
* configure.in: handle mips*- instead of mips, mips*el for little
|
|
endian configurations
|
|
|
|
Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* input-scrub.c (physical_input_file, logical_input_file,
|
|
physical_input_line, logical_input_line): Made static.
|
|
(as_where): Return current file name and line number, don't print
|
|
them out.
|
|
* messages.c (as_show_where): New static function. Other
|
|
functions use it instead of as_where.
|
|
(as_bad_internal): New static function.
|
|
(as_bad): Use as_bad_internal.
|
|
(as_bad_where): New function, like as_bad but taking a file name
|
|
and line number.
|
|
* as.h (as_bad_where): Declare.
|
|
(as_where): Change prototype for new arguments.
|
|
* write.h (fixS): Added fields fx_file and fx_line.
|
|
* write.c (fix_new_internal): Save file and line number in fix.
|
|
(fixup_segment): Use as_bad_where, not as_bad.
|
|
* input-file.c (f_in, file_name): Made static.
|
|
* cond.c (struct file_line): Just use file and line fields.
|
|
(s_else): Use as_where and as_bad_where, not get_file_line and
|
|
set_file_line.
|
|
(get_file_line, set_file_line): Removed.
|
|
* listing.c (listing_newline): Use as_where.
|
|
* config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
|
|
* config/obj-ecoff.c (add_file): Use as_where.
|
|
* config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
|
|
* config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
|
|
* config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
|
|
|
|
Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-m68k.h: Don't define REGISTER_PREFIX or
|
|
OPTIONAL_REGISTER_PREFIX if either is already defined.
|
|
|
|
* config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
|
|
|
|
* configure.in: Set bfd_gas for all sparc targets. Added facility
|
|
for keeping or rejecting configurations still under development;
|
|
default is to assume production environment, and reject configs
|
|
still being worked on. Mark Elf configurations (except sparc and
|
|
i386) as developmental. Deleted cases matching some generic names
|
|
in favor of more specific names. (E.g., when we get Alpha
|
|
support, we'll still only support VMS for Vax.)
|
|
|
|
* config/tc-sparc.h (md_end): New macro.
|
|
* config/tc-sparc.c (md_end): Function deleted.
|
|
(BFD_RELOC_*): Delete macros that used to help keep the non-bfd
|
|
version compiling. All sparc targets will use bfd now.
|
|
* tc.h (md_end): Don't declare if it's defined as a macro.
|
|
|
|
Changes from Jeff Law and Peter Hoogenboom:
|
|
|
|
* read.c (next_char_of_string): Limit octal character constants to
|
|
three digits.
|
|
|
|
* config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
|
|
against placing additional object-file dependent code here. Warn
|
|
against contaminating all of GAS with the internals of tc-hppa.c
|
|
through inclusion of tc-hppa.h. Delete all forward declarations
|
|
for functions only used within tc-hppa.c, likewise for structures,
|
|
variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
|
|
conditional code in a few small places.
|
|
|
|
* config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
|
|
structures, global variables, forward declarations together.
|
|
Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
|
|
conditional code -- try to group conditional code together
|
|
into a few places. Make all functions and variables which
|
|
are only used within tc-hppa.c static. PARAMize all functions.
|
|
Add comments to functions. Delete unused functions, variables,
|
|
#defines, etc. Delete unused members within structures. Delete
|
|
ldil;ble hacks -- it is believed they were installed to work
|
|
around old gas bugs. Avoid using mixed case for local
|
|
functions, variables, and structures. Fix formatting problems
|
|
not found by GNU-indent. Add FIXME notices for things which
|
|
should be worked on the near future. Delete lots of old
|
|
useless (1.36 PA-SOM) code.
|
|
|
|
* config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
|
|
field of the fixS structure. Needed to build unwind
|
|
descriptors correctly.
|
|
|
|
* write.c: (fixup_segment): Allow expressions such as
|
|
sym1-sym2+const as long as sym2 is $global$.
|
|
|
|
* write.c (adjust_reloc_syms): Provide a hook so that a target
|
|
cpu configuration can reject certain relocation reductions.
|
|
* tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
|
|
which do not involve function symbols.
|
|
|
|
* config/tc-hppa.h: Reindent with GNU-indent. Delete references
|
|
to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
|
|
STAB_FIXUP macro.
|
|
* config/tc-hppa.c: Likewise.
|
|
|
|
* config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
|
|
of elf32_symbol_type.
|
|
(pa_export_args): Likewise.
|
|
(elf_hppa_final_processing): Likewise.
|
|
(pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
|
|
anymore?)
|
|
(hppa_tc_make_sections): Do not declare elf_get_symtab_map any
|
|
ore.
|
|
|
|
* config/tc-hppa.c: (md_section_align): Align all sections to
|
|
a multiple of the section alignment rather than always a
|
|
multiple of 8.
|
|
|
|
* config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
|
|
bits are zero (eg they specify no relocations), then do not even
|
|
bother adding their entries to thesymextn section.
|
|
|
|
Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
|
|
option, which is used by the SunOS make default .s.o rule.
|
|
|
|
Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
|
|
m68k_aout_machtype.
|
|
* config/tc-m68k.c (omagic): Remove obsolete and unused variable.
|
|
(m68k_aout_machtype): New variable, if OBJ_AOUT.
|
|
(md_assemble): Initialize m68k_aout_machtype based on
|
|
current_architecture, if OBJ_AOUT.
|
|
(md_parse_option): Remove obsolete reference to omagic.
|
|
|
|
Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
|
|
(s_option): Ignore .option O* and .option pic*.
|
|
(s_ent): Skip whitespace between symbol and optional digit.
|
|
(my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
|
|
|
|
* app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
|
|
characters in state 6.
|
|
* read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
|
|
hexidecimal digits.
|
|
|
|
* config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
|
|
for ELF by hacking around bizarre bfd_perform_relocation behaviour
|
|
that I don't dare change.
|
|
|
|
Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
|
|
|
|
* config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
|
|
call strchr for each character to see if it is a special char,
|
|
instead add a second loop over special_chars. Set alignment
|
|
of text, data and bss sections to 4.
|
|
(pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
|
|
used again.
|
|
(reloc): Don't return 8 and 16 bit non-PC relative relocations on
|
|
ELF, since the ELF object format does not have these type of
|
|
relocations. Change the abort into as as_bad and return
|
|
BFD_RELOC_NONE to silence compiler warnings.
|
|
(md_assemble): Keep track of the instruction size. Allow white
|
|
space between the $ and the constant for compatibility with older
|
|
gases and other assemblers.
|
|
(i386_operand): Skip spaces between $ and expression.
|
|
(tc_gen_reloc): Don't allow anything but 32 bit relocations on
|
|
ELF. Convert abort into an as_bad and assert into as_fatal.
|
|
|
|
Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
|
|
sub_symbolP is in the current segment, convert to a PC-relative
|
|
fixup and discard the symbol.
|
|
|
|
Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
|
|
for st_StaticProc just like st_Proc.
|
|
|
|
* write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
|
|
so that OBJ_BOUT doesn't forget to adjust all the fragments in the
|
|
.bss section.
|
|
|
|
Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
|
|
(mips_regmask_frag): New static variable, if OBJ_ELF.
|
|
(md_begin): If OBJ_ELF, create .reginfo section and set
|
|
mips_regmask_frag to a frag.
|
|
(mips_elf_final_processing): New function, if OBJ_ELF. Set
|
|
mips_regmask_frag to register mask information.
|
|
* config/tc-mips.h (elf_tc_final_processing): New macro, defined
|
|
if OBJ_ELF.
|
|
|
|
Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* messages.c (as_fatal): Use myname when printing messages.
|
|
|
|
* config/tc-i960.c (md_begin): Use null pointer, not empty string,
|
|
as initial "return" value in case hashing isn't needed.
|
|
|
|
* config/tc-a29k.c (md_atof): Return null, not empty string, on
|
|
success.
|
|
* config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
|
|
config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
|
|
config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
|
|
config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
|
|
|
|
Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
fix for pr 3571
|
|
* config/tc-h8300.c (get_specific): Special action if 8 bit
|
|
address seen. (check_operand): Don't complain if truncating top
|
|
bits of an 8 bit address. (build_bytes): Allow an immediate and
|
|
an absolute in the same insn.
|
|
|
|
Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* write.c (write_contents): Don't crash if seginfo is NULL.
|
|
|
|
* config/obj-ecoff.c (ecoff_frob_file): Write out register masks
|
|
by modifying .reginfo section, not by directly modifying BFD
|
|
backend data.
|
|
|
|
Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* config/ho-sunos.h: remove extern time declaration
|
|
|
|
Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* messages.c (as_fatal): Do mention that it's the assembler that
|
|
got the fatal error.
|
|
|
|
Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
|
|
hold register masks.
|
|
(md_begin): Initialize them to zero.
|
|
(append_insn): Update mips_gprmask and mips_cprmask. Also add
|
|
register variables pinfo and prev_pinfo.
|
|
* config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
|
|
* config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
|
|
and cprmask from mips_gprmask and mips_cprmask.
|
|
|
|
* config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
|
|
* config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
|
|
(various): Change all references to GP references to apply if
|
|
GPOPT, not if OBJ_ECOFF.
|
|
(s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
|
|
instead of .rdata. If OBJ_ELF, set section flags for .rodata and
|
|
.sdata sections.
|
|
(s_frame, s_loc, s_mask): Comment out entire functions, rather
|
|
than just body. They're not used anyhow.
|
|
* configure.in: Set cpu_type to mips for mips*. Accept
|
|
mips-*-elfl* and mips-*-elf*.
|
|
|
|
Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
|
|
|
|
* config/obj-elf.c (obj_elf_common): Allow the alignment field to
|
|
not be specified.
|
|
|
|
Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (cons_fix_new_mips): New function. Turn
|
|
BFD_RELOC_64 into BFD_RELOC_32.
|
|
* config/tc-mips.h (TC_CONS_FIX_NEW): Define.
|
|
(cons_fix_new_mips): Declare.
|
|
|
|
Changes to let cons handle bignums like general expressions.
|
|
* expr.h (expressionS): New field X_unsigned.
|
|
* expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
|
|
unary minus case.
|
|
(expr) Fix typo resultP to right if missing operand. Set
|
|
X_unsigned to 1 when building new expression.
|
|
* read.c (potable): Make "octa" and "quad" call cons, not
|
|
big_cons.
|
|
(cons): Handle bignums. If given an O_constant (small integer) to
|
|
fill a big space, turn it into a bignum.
|
|
(parse_bitfield_cons): Set X_unsigned field.
|
|
(bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
|
|
Removed.
|
|
* read.h (big_cons): Remove prototype.
|
|
* symbols.c (resolve_symbol_value): Don't give a warning if a
|
|
symbol in expr_section can not be resolved.
|
|
(S_SET_VALUE): Clear X_unsigned.
|
|
* write.c (write_object_file): If resolve_symbol_value failed on a
|
|
symbol we are writing out, give a warning.
|
|
* config/tc-h8500.c (parse_reglist): Set X_unsigned.
|
|
* config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
|
|
call pa_cons, not pa_big_cons.
|
|
(pa_big_cons): Remove.
|
|
* config/tc-hppa.h (pa_big_cons): Remove declaration.
|
|
* config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
|
|
not big_cons.
|
|
|
|
Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* doc/as.texinfo (Copying): new node, to handle the recent changes
|
|
in the texinfo/gpl.texinfo file
|
|
|
|
Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (big_cons): Handle "0" correctly.
|
|
|
|
* config/tc-mips.c (md_begin): Set target_big_endian correctly.
|
|
|
|
Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
|
|
have pc-relative fixup.
|
|
(md_parse_option): Move "-k" case down near "-pic" case.
|
|
|
|
* configure.in: Alphabetize list of cpu type alternatives. Enable
|
|
OS values of "linux*elf*" and "linux*coff*" to select those
|
|
formats, with linux emulation. Don't bother checking for upper-
|
|
or mixed-case versions of "ose".
|
|
|
|
Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
* config/z8k.c (md_pseudo_table): add "unseg".
|
|
|
|
Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
|
|
found while extending the dissassembler.
|
|
|
|
Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
|
|
|
|
* configure.in: Split i386 LynxOS out from other coff targets,
|
|
add a specific Lynx emulation.
|
|
Add m68k LynxOS target.
|
|
* config/tc-i386.c: Define specific Lynx target format.
|
|
* config/tc-m68k.c: Define specific Lynx target format.
|
|
* config/te-lynx.h: New file.
|
|
|
|
* config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
|
|
"coff-{i386,m68k}" if TARGET_FORMAT already defined.
|
|
(INIT_STAB_SECTION): Define.
|
|
* config/obj-coffbfd.c: Include <time.h>.
|
|
(write_object_file): Look for .stab sections and call
|
|
adjust_stab_section.
|
|
(adjust_stab_section): New function, fills in the first symbol
|
|
of a stab section with number of symbols and string table size.
|
|
(obj_coff_init_stab_section): New function, creates the initial
|
|
symbol for a stab section.
|
|
|
|
Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/atof-vax.c (md_atof): Return null on success instead of
|
|
empty string.
|
|
* config/atof-tahoe.c (md_atof): Ditto.
|
|
* read.c (float_cons): Expect a null pointer for success, not an
|
|
empty string.
|
|
|
|
* hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
|
|
on success, instead of empty string. All callers changed.
|
|
|
|
* config/tc-vax.c: Use PARAMS in declarations.
|
|
(vip_op): Use NULL instead of empty string for success in error
|
|
and warning fields.
|
|
|
|
Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
|
|
in different defined segments.
|
|
|
|
* write.c (relax_segment): Localize "aim" variable. If
|
|
DIFF_EXPR_OK, don't impose checks on symbol segment types.
|
|
(fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
|
|
segment, convert to a PC-relative fixup and discard the symbol.
|
|
|
|
* config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
|
|
(md_parse_option) [TE_SUN3]: Set it for "-k".
|
|
(m68k_ip): Generate proper fixup for mode 7.3.
|
|
* config/tc-m68k.h (DIFF_EXPR_OK): Define.
|
|
|
|
Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
|
|
earlier in the file.
|
|
(insop, add_exp): Now defined as functions, for readability.
|
|
(insop): Now takes two arguments; callers changed.
|
|
|
|
Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* config/tc-m88k.c (get_o6): new function.
|
|
(get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
|
|
get_vec9, getval, get_pcr, calcop, match_name): make static and
|
|
prototype.
|
|
(s_file): remove extraneous forward decl.
|
|
(md_begin): add const to retval decl.
|
|
(calcop): cope with instructions without arguments. Handle 'o'
|
|
type argument, the o6 field of the prot insn.
|
|
(md_estimate_size_before_relax): return a dummy value.
|
|
|
|
* config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
|
|
in bits 10 through 7. flt.[dxs]s requires an r register in the
|
|
second argument. New instruction lda.x. New instruction muls
|
|
(alias for mul).
|
|
|
|
Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* Makefile.in (distclean): Recurse like clean.
|
|
* doc/Makefile.in (distclean): New target.
|
|
|
|
* config/tc-mips.c (md_begin): Set BFD architecture and machine
|
|
based on MIPS ISA level.
|
|
|
|
Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* as.c (main): "exhausted", not "exhuasted".
|
|
|
|
* struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
|
|
* write.c (adjust_reloc_syms): Set sy_used_in_reloc.
|
|
(write_object_file): Never strip symbols with sy_used_in_reloc
|
|
set.
|
|
|
|
* config/obj-elf.c (obj_elf_section): Rewrote to handle both
|
|
Solaris and SVR4 style .section pseudo-ops.
|
|
(obj_elf_ident): Set SEC_READONLY for .comment section.
|
|
* config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
|
|
generating a reloc, don't apply a fix.
|
|
|
|
Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (relax_align): Now static.
|
|
|
|
Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (get_stab_string_offset): Make non-static. Make
|
|
arguments const. Don't align strings to 4 byte boundaries.
|
|
* read.h: Declare get_stab_string_offset.
|
|
* config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
|
|
SEC_LOAD for progbits section.
|
|
(obj_elf_init_stab_section): New function.
|
|
(adjust_stab_sections): Add casts to avoid warnings.
|
|
* config/obj-elf.h (INIT_STAB_SECTION): Call
|
|
obj_elf_init_stab_section.
|
|
(OBJ_PROCESS_STAB): Removed definition.
|
|
|
|
Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.h (S_GET_SIZE): Define.
|
|
(obj_frob_forward_symbol): Define.
|
|
* config/tc-i386.c (line_comment_chars): Initialize in all cases.
|
|
|
|
Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* tc.h: Declare tc_gen_reloc differently depending upon
|
|
RELOC_EXPANSION_POSSIBLE.
|
|
* config/obj-elf.c (obj_elf_section): Only set flags when first
|
|
creating the section.
|
|
|
|
Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (append_insn): Don't swap a trap instruction
|
|
with a branch.
|
|
|
|
Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
|
|
set previous_section and previous_subsection and then call s_data
|
|
and s_text, respectively.
|
|
(obj_pseudo_table): Add data and text.
|
|
(obj_elf_section): Add SEC_LOAD to default initialization of
|
|
flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
|
|
SEC_ALLOC for "alloc" string. Don't bother trying to find the
|
|
section; just use subseg_new.
|
|
|
|
* read.c (change_to_section): Removed. This is now done by
|
|
subseg_new.
|
|
(get_stab_string_offset): Rearranged somewhat. Create the section
|
|
using subseg_new. Store the string index in seg_info, rather than
|
|
in a static variable. Force the first string to be empty. Use
|
|
frag_more rather than FRAG_APPEND_1_CHAR.
|
|
(s_stab_generic): Rewrote.
|
|
* subsegs.h (segment_info_type): Added stabu union.
|
|
* subsegs.c (subseg_new): Initialize stab_string_size to 0.
|
|
* config/obj-aout.c: Don't include aout/stab_gnu.h.
|
|
(obj_aout_stab, obj_aout_desc): Removed.
|
|
(obj_pseudo_table): Removed desc and stabX entries.
|
|
* config/obj-bout.c: Same changes as config/obj-aout.c.
|
|
* config/obj-bout.h (S_SET_TYPE): Define.
|
|
(tc_bout_fix_to_chars): Declare.
|
|
* config/obj-coff.c (obj_coff_stab): Removed.
|
|
(obj_pseudo_table): Removed desc and stabX entries.
|
|
* config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
|
|
* config/obj-coffbfd.c (current_stab_symbol): Removed.
|
|
* config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
|
|
n_other, n_desc and n_value fields.
|
|
(S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
|
|
(MAKE_STAB_SYMBOL): Removed.
|
|
* config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
|
|
Changed arguments and removed parsing code.
|
|
(obj_pseudo_table): Removed stabX entries.
|
|
* config/obj-ecoff.h (ecoff_stab): Declare.
|
|
(OBJ_PROCESS_STAB): Define.
|
|
* config/obj-elf.c: Don't include aout/stab_gnu.h.
|
|
(obj_elf_stab, obj_elf_xstab, obj_elf_desc,
|
|
elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
|
|
Removed.
|
|
(obj_pseudo_table): Removed desc, stabX and xstabs entries.
|
|
(obj_elf_version): Use subseg_new, not bfd_make_section. Don't
|
|
set SEC_LOAD for .note section.
|
|
(adjust_stab_sections): Get frag pointer from seg_info, rather
|
|
than looking through frags.
|
|
* config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
|
|
(SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
|
|
Define.
|
|
* config/obj-vms.c (obj_aout_stab): Removed.
|
|
(obj_pseudo_table): Removed stabX entries.
|
|
* config/obj-vms.h (S_SET_TYPE): Define.
|
|
|
|
* as.h: Declare listing.
|
|
* read.c: Don't declare listing.
|
|
(emit_expr): Cast fix_new_exp argument.
|
|
(parse_bitfield_cons): Correct printf format.
|
|
* symbols.c (symbol_new): Add cast to avoid warning.
|
|
* write.h: Declare text_last_frag and data_last_frag.
|
|
* config/obj-bout.c (obj_bout_line): Added dummy argument.
|
|
* config/obj-coffbfd.c: Add some casts to avoid warnings.
|
|
* config/tc-a29k.c: Likewise.
|
|
* config/tc-i960.c: Likewise. Also fully bracket structure
|
|
initializations, fix printf formats, and remove unused variables.
|
|
|
|
Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (s_desc): Only compile and use if S_SET_DESC is defined.
|
|
* struc-symbol.h: Declare verify_symbol_chain and
|
|
verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
|
|
* symbols.c (verify_symbol_chain): Removed useless expression.
|
|
* write.c (headers, the_object_file): Only use if not
|
|
BFD_ASSEMBLER and not BFD.
|
|
(fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
|
|
not BFD.
|
|
(merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
|
|
not OBJ_AOUT).
|
|
* write.h: Declare relax_segment.
|
|
* config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
|
|
static.
|
|
(stack_top): Commented out, since it's not used.
|
|
Fixed up pseudo-op functions to take an ignored int argument.
|
|
(size_section): Added default BAD_CASE to switch.
|
|
Changed bzero calls to memset.
|
|
* config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
|
|
(s), not on s itself.
|
|
* config/tc-a29k.c (s_use): Take ignored int argument. Only
|
|
define if OBJ_COFF is not defined.
|
|
* config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
|
|
argument signed again.
|
|
* config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
|
|
argument.
|
|
(m68k_ip): Fully bracket initialization of archs.
|
|
Correct several formats for __LINE__ to be %d rather than %s.
|
|
(init_table): Fully bracket initialization.
|
|
Cast values larger than 0x7f assigned to fr_opcode to char.
|
|
|
|
* subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
|
|
Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
|
|
section name, and subseg_set always takes a segT. Changed all
|
|
callers as appropriate.
|
|
* config/obj-coffbfd.c (change_to_section): Renamed to
|
|
obj_coff_add_segment. Corrected. Made callers use subseg_new.
|
|
* config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
|
|
Define.
|
|
|
|
Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
|
|
|
|
Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.h (S_SET_SIZE): Actually set the size.
|
|
|
|
Gcc lint.
|
|
* Added a number of casts to function calls.
|
|
* app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
|
|
operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
|
|
read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
|
|
ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
|
|
read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
|
|
(obj_elf_section), config/tc-i386.c (parse_register),
|
|
config/tc-sparc.c (isoctal, s_proc): Cast char
|
|
array indices to unsigned char.
|
|
* app.c (process_escape): Make static. Add prototype. Change
|
|
argument from char to int.
|
|
* as.c: Include output-file.h for prototypes. Comment out unused
|
|
function got_sig.
|
|
* Makefile.in (as.o): Depend on output-file.h.
|
|
* as.h (BAD_CASE): Cast val argument to long, and use %ld.
|
|
(pseudo_typeS): Add prototype to poc_handler field.
|
|
(print_version_id): Add prototype.
|
|
(xmalloc, xrealloc): Change size arguments to unsigned long.
|
|
(do_scrub_next_char): Add prototypes for function arguments.
|
|
(had_errors, had_warnings, scrub_from_file): Remove duplicate
|
|
declarations.
|
|
* atof-generic.c (atof_generic): Make size variables unsigned.
|
|
* cond.c (ignore_input): Removed unused local variable ptr.
|
|
* expr.c (floating_constant, integer_constant): Make static. Add
|
|
prototypes.
|
|
* flonum-copy.c (flonum_copy): Make size variables unsigned.
|
|
* frags.h: Add prototype for frag_init.
|
|
* hash.h, hash.c: Change hash values from char * to PTR, make hash
|
|
strings const, make returned error strings const char *. Added
|
|
prototypes for functions.
|
|
* input-file.h, input-file.c (input_file_buffer_size): Return
|
|
unsigned int.
|
|
* input-scrub.c (buffer_length): Make unsigned.
|
|
(input_scrub_push, input_scrub_pop): Make static.
|
|
* listing.c (list_symbol_table): Cast sprintf argument to unsigned
|
|
long and use %lx. Print name of segment rather than address of
|
|
structure.
|
|
(listing_list, listing_title): Change argument to int.
|
|
(listing_eject, listing_flags, listing_psize): Add int argument.
|
|
* listing.h: Corresponding declaration changes.
|
|
* obj.h (obj_emit_symbols): Rename prototype argument to avoid
|
|
shadowing.
|
|
* read.h: Change get_absolute_expression prototype to return
|
|
offsetT. Add prototype for next_char_of_string. Various
|
|
prototype changes.
|
|
* read.c: Remove prototype for next_char_of_string.
|
|
(pobegin): Make errtxt const. Make new_length, tmp_len and num
|
|
unsigned.
|
|
(s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
|
|
s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
|
|
Change all callers.
|
|
(s_comm): Change temp from valueT to offsetT. Cast to long when
|
|
printing and use %ld (only for error messages anyhow).
|
|
(s_long, s_int): Remove unused functions.
|
|
(cons): Change argument to int.
|
|
(emit_expr): Use %lx when printing longs.
|
|
(get_absolute_expression): Return offsetT, not long.
|
|
(get_stab_string_offset): Comment out unless
|
|
SEPARATE_STAB_SECTIONS.
|
|
(s_stab_generic): Remove unused offset. Define seg_is_new only
|
|
if SEPARATE_STAB_SECTIONS. Use toP only in local block.
|
|
* struc-symbol.h (verify_symbol_chain_2): Add prototype.
|
|
* symbols.c: Remove nested comment.
|
|
(symbol_new): Rename value to valu.
|
|
(colon): Use %ld and cast to long in error message.
|
|
* symbols.h: Remove duplicate verify_symbol_chain declaration.
|
|
* tc.h: Remove unused md_emit_relocations declaration.
|
|
(tc_gen_reloc): Add declaration.
|
|
* write.c (cvt_frag_to_fill): Change first argument name depending
|
|
on BFD_ASSEMBLER.
|
|
(write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
|
|
declarations. Make n unsigned.
|
|
(write_contents): Remove unused i, n, relocs, fixp. Rename frags
|
|
to f to avoid shadowing.
|
|
(write_object_file): Define fragP only if not BFD_ASSEMBLER or not
|
|
WORKING_DOT_WORD. Remove unused keep. Only declare punt and
|
|
punt_it if they will be used. Make i and n unsigned.
|
|
(fixup_segment): Cast to long and use %ld in error message.
|
|
* xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
|
|
* config/obj-aout.h: Remove nested comment. Add prototype for
|
|
obj_aout_frob_symbol.
|
|
(obj_aout_line, obj_aout_desc): Add int argument.
|
|
* config/obj-ecoff.c: Changed build routines to use an unsigned
|
|
offset.
|
|
(add_string): Make len unsigned long.
|
|
(obj_ecoff_stab): Use %lu in error message.
|
|
* config/obj-elf.c (obj_elf_common): Comment out unused label
|
|
allocate_bss.
|
|
(obj_elf_frob_symbol): Return 0 (currently broken).
|
|
(obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
|
|
obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
|
|
obj_elf_line, obj_elf_previous): Add int argument.
|
|
(obj_elf_write_symbol_p): Make static.
|
|
* config/obj-elf.h (obj_elf_write_symbol): Add prototype.
|
|
* config/tc-hppa.h: Remove declarations of functions declared in
|
|
read.h.
|
|
* config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
|
|
(s_bss): Add int argument.
|
|
(fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
|
|
(dummy): Remove unused function.
|
|
(md_assemble): Rename local o to op to avoid shadowing.
|
|
(tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
|
|
* config/tc-m68k.c (s_data1, s_data2): Add int argument.
|
|
* config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
|
|
%ld in error messages.
|
|
* config/tc-sparc.c: Remove duplicate declarations.
|
|
(getExpression): Rewrite condition to avoid empty conditional
|
|
body.
|
|
(s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
|
|
argument.
|
|
|
|
Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
Changes from Jeff Law:
|
|
|
|
* config/tc-hppa.c (md_assemble): Fix typo.
|
|
(pa_ip): Delete unused variables and labels. Do not check for
|
|
unsigned values being < 0, it can't happen.
|
|
(is_same_frag): Return a value in recursive call case.
|
|
(pa_callinfo): Delete unused variables and labels.
|
|
(pa_comm): Likewise.
|
|
(pa_copyright): Likewise.
|
|
(pa_export): Likewise.
|
|
(pa_import): Likewise.
|
|
(pa_param): Likewise.
|
|
(pa_space): Likewise.
|
|
(pa_subspace): Likewise.
|
|
|
|
Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* read.c (get_stab_string_offset, s_stab_generic): If
|
|
BFD_ASSEMBLER, call subseg_set rather than subseg_new.
|
|
|
|
Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
|
|
default flag values.
|
|
|
|
Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
|
|
|
|
* read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
|
|
|
|
* read.c: (s_stab, s_xstab, s_desc): New functions to parse
|
|
various stab-related directives.
|
|
* read.h: (s_stab, s_xstab, s_desc): New function prototypes.
|
|
* write.c: (merge_data_into_text): Fix ifdef tangle.
|
|
* config/obj-coffbfd.c (current_stab_symbol): Fake symbol
|
|
for stab reader to use.
|
|
* config/obj-coffbfdh.h (obj_symbol_type): Added fields for
|
|
stab reader, macros to access.
|
|
|
|
Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
|
|
|
|
* config/tc-hppa.h (struct default_subspace_dict, struct
|
|
default_space_dict): Field "sort" is now unsigned char.
|
|
|
|
* config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
|
|
columns for easier reading.
|
|
(bcmp, index): Deleted USG-specific definitions. Should be dealt
|
|
with in ho-*.h, or in libiberty. Changed mention of index to
|
|
strchr.
|
|
(label_symbolP, label_symbol_defined, callinfo_found,
|
|
within_entry_exit, exit_processing_complete, within_procedure,
|
|
pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
|
|
label_symbols_rootP, pa_get_label, pa_label_is_defined,
|
|
pa_undefine_label): Now static.
|
|
(movers): Now const, in addition to pointing to const data.
|
|
* config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
|
|
pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
|
|
Delete declarations.
|
|
|
|
Merged more changes from Jeff Law and Pete Hoogenboom:
|
|
|
|
* config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
|
|
entries for .stab and .stabstr.
|
|
|
|
* config/obj-elf.c: (elf_stab_symbol_string): Set the
|
|
SEC_LOAD attribute for the .stabstr section.
|
|
(obj_elf_stab_generic): Set the SEC_LOAD attribute for the
|
|
.stab section.
|
|
(obj_elf_stab_generic): Change '#if 1' to '#if 0'.
|
|
(obj_elf_stab_generic): Incorrect byte count on call to
|
|
md_number_to_chars function.
|
|
|
|
* config/tc-hppa.c (hppa_tc_symbol): Static functions need
|
|
argument relocation bits too.
|
|
|
|
* config/tc-hppa.c (pa_stringer): Correctly handle escaping
|
|
characters which should appear unaltered in the output string (for
|
|
example an escaped double-quote).
|
|
|
|
* config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
|
|
initialize name.
|
|
(pa_parse_neg_cmpsub_cmpltr): Likewise.
|
|
(pa_parse_nonneg_add_cmpltr): Likewise.
|
|
(pa_parse_neg_add_cmpltr): Likewise.
|
|
|
|
* config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
|
|
for now.
|
|
(cons_fix_new_hppa): Likewise.
|
|
* config/tc-hppa.c (md_apply_fix): Fix type of valp to match
|
|
prototype.
|
|
|
|
* config/tc-hppa.c: Include libhppa.h.
|
|
|
|
* config/tc-hppa.h: Delete extern declarations of functions
|
|
found in libhppa.h.
|
|
|
|
* config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
|
|
OBJ_ELF conditionals.
|
|
* config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
|
|
on the PA.
|
|
|
|
Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (macro_build): Accept 'z', and ignore it.
|
|
(macro): Use "z,s,t" for div instructions to match corresponding
|
|
change in opcode table.
|
|
(mips_ip): Added 'z'--must be zero register.
|
|
|
|
Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
|
|
tc_gen_reloc correctly.
|
|
|
|
* configure.in: Use "case" instead of "if" when possible. Rewrote
|
|
Makefile editing to reduce work done. Treat "hppa*" as "hppa".
|
|
|
|
Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
|
|
section type of data. 'd' seems to be used for m88k.
|
|
|
|
Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
|
|
s_mips_space): Set insn_label to NULL to avoid changing it at the
|
|
next .align statement.
|
|
(append_insn): Don't swap jal with instruction that sets the
|
|
register that jal sets.
|
|
|
|
Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* configure.in: recognize m88110.
|
|
|
|
Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
Merged changes from Pete Hoogenboom and Jeff Law at Utah:
|
|
* config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
|
|
not be on for .hppa_unwind.
|
|
(md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
|
|
(pa_param): New function to handle .PARAM directives.
|
|
(pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
|
|
functions. Handle '|' for movb; allow movb,n.
|
|
(pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
|
|
version. Handle cases where no completer exists for
|
|
comb,n or addb,n.
|
|
(pa_parse_neg_cmpsub_cmpltr): Handle cases where no
|
|
completer exists for comb,n or addb,n. Make logic
|
|
mirror that of pa_parse_nonneg_cmpsub_cmpltr.
|
|
(pa_parse_nonneg_add_cmpltr): Likewise.
|
|
(pa_parse_neg_add_cmpltr): Likewise.
|
|
* tc-hppa.h (pa_param): Declare.
|
|
|
|
Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
|
|
Added forward declaration.
|
|
|
|
Merged changes from Pete Hoogenboom and Jeff Law at Utah:
|
|
|
|
* config/obj-elf.c (elf_frob_file): Arguments were incorrect on
|
|
call to elf_tc_make_sections.
|
|
(obj_elf_version): A .note section shouldn't have the SEC_ALLOC
|
|
attribute.
|
|
|
|
* config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
|
|
handle symbol extension sections.
|
|
|
|
* config/tc-hppa.c (pa_build_symextn_section): New function to
|
|
create a symbol extension section.
|
|
(pa_export_args): Make call to pa_build_symextn_section.
|
|
(hppa_tc_symbol, hppa_tc_make_sections,
|
|
hppa_tc_make_symextn_section): New functions.
|
|
* config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
|
|
macros.
|
|
|
|
* read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
|
|
BFD_ASSEMBLER branch as well.
|
|
|
|
* config/tc-hppa.h: If ELF is the target object format, define
|
|
some ELF- and hppa-specific types and constants.
|
|
|
|
* config/tc-hppa.c (getExpression): Fix a typo.
|
|
|
|
* read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
|
|
if a `=' is part of an instruction.
|
|
(read_a_source_file): Handle case where end-of-line markers are
|
|
also used within instructions.
|
|
* config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
|
|
|
|
* config/tc-hppa.c (md_apply_fix_1): Keep relocations for
|
|
out-of-range branches/'calls using "bl" or calls which may need
|
|
argument relocation stubs. Do not need/keep relocations for
|
|
conditional branches.
|
|
(elf_hppa_final_processing): Fix calculation of function size.
|
|
|
|
* config/obj-elf.c (obj_elf_version): Mark .note section as
|
|
READONLY.
|
|
|
|
* config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
|
|
address of exp, to expression.
|
|
(pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
|
|
(md_apply_fix_1): Delete unwanted comments.
|
|
(process_exit): Symbols marking the end of a function are always
|
|
BSF_LOCAL.
|
|
|
|
* config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
|
|
(pa_space): Declare and initialize gdb_section.
|
|
|
|
* config/obj-elf.c (elf_frob_file): Change
|
|
elf_tc_final_processing_hook to elf_tc_final_processing.
|
|
|
|
* config/tc-hppa.c (fix_new_hppa): Fix argument list to match
|
|
argument type declarations.
|
|
(getExpression): Fix typo.
|
|
(pa_export_args): Change elf_symbol_type to elf32_symbol_type.
|
|
(elf_hppa_final_processing): Likewise. Name changed from
|
|
elf_hppa_final_processing_hook.
|
|
(start_symbol_root, start_symbol_last): Deleted.
|
|
|
|
* config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
|
|
|
|
* config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
|
|
avoid changing include ordering.
|
|
|
|
* config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
|
|
|
|
Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (set_at): Added unsignedp argument. Use
|
|
load_register.
|
|
(set_at_unsigned): Removed; changed callers to use set_at.
|
|
(load_register): Removed unused ip argument. Changed callers.
|
|
(append_insn): Don't swap branch and branch likely.
|
|
(macro_build): Handle 'u'.
|
|
(load_register): Handle 64 bit constants.
|
|
(macro): Added M_DABS, removed M_ABSU. Numerous changes to
|
|
support 64 bit constants.
|
|
(mips_ip): Use hex constants in range checks for clarity.
|
|
(md_number_to_chars): Support 8 byte values.
|
|
|
|
Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* config/tc-m88k.h: updated copyrights.
|
|
(TC_CONS_RELOC): declare to be RELOC_32.
|
|
|
|
Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_isa): New static variable.
|
|
(md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
|
|
check macros. Set text alignment and GP size here.
|
|
(md_assemble): Don't set text alignment and GP size here.
|
|
(append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
|
|
Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
|
|
a NOP after a branch likely.
|
|
(mips_emit_delays): Don't insert NOPS for load delays if mips_isa
|
|
>= 2.
|
|
(macro): Support r6000 and r4000 macros.
|
|
(mips_ip): Check insn ISA level against mips_isa before using it.
|
|
Added 'x' case for ignored register.
|
|
(md_parse_option): Handle -mipsN and -mcpu=XX.
|
|
|
|
Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
|
|
|
|
Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c (s_local): Function moved and renamed...
|
|
* config/obj-elf.c (obj_elf_local): ...to here.
|
|
* config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
|
|
(obj_pseudo_table): Move handling of ".local".
|
|
|
|
* tc.h (md_parse_option): Don't declare if defined as a macro.
|
|
|
|
* config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
|
|
BFD_RELOC_NONE.
|
|
(md_parse_option): New macro, converted from function.
|
|
* config/tc-i386.c (md_parse_option): Function deleted.
|
|
(comment_chars) [OBJ_ELF]: Include "/".
|
|
(line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
|
|
(md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
|
|
warning.
|
|
(md_assemble, md_estimate_size_before_relax, md_create_long_jump):
|
|
Call reloc for fix_new type, or use correct enumerator, instead of
|
|
always using NO_RELOC.
|
|
(i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
|
|
tests for valid section.
|
|
(md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
|
|
address.
|
|
(md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
|
|
symbol, compensate for location of reloc.
|
|
(reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
|
|
to return zero.
|
|
|
|
Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
|
|
(obj_elf_weak): New function.
|
|
(obj_pseudo_table): Handle ".weak".
|
|
(obj_elf_section): If section directive includes a string, ignore
|
|
it for now. Accept "progbits" flag.
|
|
(obj_elf_type): Accept `@' before flag name.
|
|
|
|
* write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
|
|
condition.
|
|
(fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
|
|
than checking for bfd_com_section directly.
|
|
(fixup_segment): Simplify range check.
|
|
(fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
|
|
test.
|
|
|
|
* symbols.h (S_SET_WEAK): Declare.
|
|
* symbols.c (S_SET_WEAK): New function.
|
|
(S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
|
|
it's not a separate flag any more. Clear BSF_WEAK.
|
|
|
|
* read.c (potable): Treat "string" like "asciz".
|
|
|
|
Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (append_insn): Don't swap branch instructions
|
|
if .set nobopt or .set volatile.
|
|
(gp_reference): .lit8 and .lit4 are accessed via the GP register.
|
|
(macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
|
|
(mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
|
|
* config/obj-ecoff.c: Renamed some variables to avoid shadow
|
|
warnings.
|
|
|
|
Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* config/obj-coff.h (S_IS_COMMON): add missing backslash
|
|
|
|
* configure.in (z8k-*-{coff,sim}): use coffbfd for this target
|
|
|
|
Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_ip): Suggested by
|
|
davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
|
|
names for 'E' and 'G' argument types (coprocessor registers) and
|
|
don't warn if $1 is used on the coprocessor.
|
|
(macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
|
|
|
|
Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
|
|
* config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
|
|
BFD_RELOC_16.
|
|
* config/tc-sparc.h (WORKING_DOT_WORD): Define.
|
|
|
|
Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
|
|
defined or BFD is not.
|
|
(relax_and_size_all_segments): Declare local variable fragP.
|
|
|
|
Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
|
|
bytes with real values, not zeros.
|
|
|
|
Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
|
|
targets, using ecoff and mips-big.
|
|
|
|
* config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
|
|
Johnson): Added case for 'C' for coprocessor instruction codes.
|
|
|
|
Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
|
|
|
|
* read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
|
|
|
|
* write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
|
|
for verifying symbol chain.
|
|
(merge_data_into_text, relax_and_size_all_segments): New
|
|
functions, split out from write_object_file.
|
|
|
|
Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
|
|
debug section is new, allocate an extra 12 bytes at its start. If
|
|
".stabs" type is N_SO, fill in filename symbol field of that first
|
|
entry. Return early if "goof", to simplify later code slightly.
|
|
(adjust_stab_sections): New function.
|
|
(elf_frob_file): Apply adjust_stab_sections to each section.
|
|
|
|
* config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
|
|
static.
|
|
* config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
|
|
* config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
|
|
and "popsection", and call cons for "uaword" and "uahalf".
|
|
|
|
* config/obj-elf.c (obj_elf_version): Use English in error
|
|
messages.
|
|
|
|
Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
|
|
swapping routines and external structure sizes via the
|
|
ecoff_backend information. No longer includes coff/mips.h.
|
|
|
|
Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-ecoff.c (get_tag): Save tag name in permanent memory
|
|
and in hash_ptr->string.
|
|
|
|
* app.c (do_scrub_next_char): Reset state to 0 after .appline if
|
|
file name is not seen.
|
|
|
|
Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* write.c: Don't use short int in a prototype.
|
|
|
|
* expr.c (operand): Make return value simply depend on contents of
|
|
returned expression.
|
|
|
|
Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
|
|
|
|
Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* config/ho-sunos.h: remove some old function decls that conflict
|
|
w/ ANSI, and which weren't needed anyway
|
|
|
|
Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
|
|
and disabled since it breaks Ian's new symbol-value code.
|
|
|
|
* expr.c (integer_constant): Accept more digits if BFD64.
|
|
|
|
Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip): If we have a normal constant when we
|
|
expect a bignum, turn it into a bignum. Output extra zeroes
|
|
before a short bignum, rather than after.
|
|
|
|
Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* symbols.c (symbol_new): Conditionalize verify_symbol_chain call
|
|
on DEBUG_SYMS, not DEBUG.
|
|
(symbol_remove): Likewise.
|
|
(symbol_insert): Likewise.
|
|
|
|
Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_optimize): New static variable.
|
|
(append_insn): If mips_optimize == 0, always insert NOP
|
|
instructions. If mips_optimize < 2, don't swap branches.
|
|
(md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
|
|
|
|
Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* Makefile.in (clean): if testsuite does not exist, then skip it.
|
|
|
|
Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-mips.c (prev_insn_unreordered,
|
|
prev_prev_insn_unreordered): New static variables.
|
|
(append_insn): Don't swap branch instruction if
|
|
prev_prev_insn_unreordered (see comment).
|
|
(mips_no_prev_insn): Clear the unreordered variables.
|
|
(s_mipsset): When turning on reordering, set the unreordered
|
|
variables.
|
|
|
|
Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
|
|
are also magic, and have special default flag settings.
|
|
(obj_elf_frob_symbol): Since the return value from this function
|
|
isn't used, don't bother calling obj_elf_write_symbol_p, since it
|
|
doesn't accomplish anything else.
|
|
|
|
* config/tc-sparc.c (md_section_align): Round up section size only
|
|
for a.out format.
|
|
|
|
* symbols.c: Don't define DEBUG by default.
|
|
|
|
Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* write.c (fix_new_exp): Handle a O_uminus expression.
|
|
|
|
* expr.c (expr): Don't let absolute_section override
|
|
undefined_section for the return value.
|
|
|
|
* read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
|
|
pseudo-op with a poc_handler field of NULL, ignore it and treat it
|
|
as an instruction instead.
|
|
* config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
|
|
poc_handler field.
|
|
|
|
* config/tc-h8500.c (md_begin): Use a local variable when
|
|
initializing md_relax_table to avoid warnings about modifying a
|
|
supposedly const data structure.
|
|
|
|
Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
|
|
|
|
* config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
|
|
is defined.
|
|
|
|
Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
|
|
|
|
* configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
|
|
* configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
|
|
case to set obj_format=elf. Must go before i386-*-sysv* case that
|
|
sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
|
|
*-*-solaris case, and move to before *-sysv* case that wants to
|
|
set obj_format to coff.
|
|
* config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
|
|
'exp->X_op'.
|
|
* config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
|
|
BFD_ASSEMBLER case.
|
|
|
|
Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-aout.c: Include aout/aout64.h.
|
|
(obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
|
|
symbol, so that BFD doesn't tamper with the type.
|
|
|
|
* read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
|
|
up opcodes as pseudo-ops even if they don't start with '.'.
|
|
* config/tc-m88k.h (NO_PSEUDO_DOT): Define.
|
|
* config/tc-m88k.c (md_assemble): Removed special pseudo-op
|
|
handling.
|
|
(md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
|
|
Output the low 16 bits for RELOC_HI16, not the high 16 bits.
|
|
* config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
|
|
r_offset field of the reloc to the fixup offset.
|
|
(fixup_segments): If TC_M88K, don't warn about fixup overflows.
|
|
* doc/as.texinfo: Minor updates.
|
|
|
|
Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* Extensive changes to permit symbols to contain any expression
|
|
type and to delay the computation of the expression until the
|
|
value is actually needed. This permits setting symbols to values
|
|
calculated based on object code size. Expressions were changed to
|
|
no longer be in a section, to stop the overloading of segment and
|
|
expression type that previously occurred.
|
|
|
|
* as.c (big_section, pass1_section, diff_section, absent_section):
|
|
Removed.
|
|
(expr_section): Added (used for dummy symbols which hold
|
|
intermediate expression values).
|
|
(perform_an_assembly_pass): Create expr_section, do not create the
|
|
sections now removed.
|
|
* as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
|
|
SEG_DIFFERENCE. Added SEG_EXPR.
|
|
(SEG_NORMAL): Corresponding changes.
|
|
* subsegs.c (seg_name, subsegs_begin): Changed accordingly.
|
|
* write.c (write_object_file): Ditto.
|
|
* config/obj-aout.c (seg_N_TYPE): Ditto.
|
|
* config/obj-bout.c (seg_N_TYPE): Ditto.
|
|
* config/obj-coff.c (seg_N_TYPE): Ditto.
|
|
* config/obj-coffbfd.c (seg_N_TYPE): Ditto.
|
|
* config/obj-vms.c (seg_N_TYPE): Ditto.
|
|
|
|
* expr.h (operatorT): Moved in from expr.c, added some values.
|
|
(expressionS): Added X_op field, removed X_seg field; renamed
|
|
X_subtract_symbol to X_op_symbol.
|
|
* expr.c: Extensive changes to assign expression types rather than
|
|
sections and to simplify the parsing.
|
|
* write.c (fix_new_internal): New static function.
|
|
(fix_new): Removed sub_symbol argument.
|
|
(fix_new_exp): New function, takes expression argument.
|
|
* write.h: Prototype changes for fix_new and fix_new_exp.
|
|
* cond.c (s_if): Changed accordingly.
|
|
* read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
|
|
parse_repeat_cons, get_segmented_expression,
|
|
get_known_segmented_expression, get_absolute_expression): Ditto.
|
|
* symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
|
|
Ditto.
|
|
* write.c (write_object_file): Ditto.
|
|
* config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
|
|
* config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
|
|
obj_coff_endef, yank_symbols): Ditto.
|
|
* config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
|
|
* config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
|
|
print_insn, md_operand): Ditto.
|
|
* config/tc-h8300.c (parse_exp, colonmod24, check_operand,
|
|
do_a_fix_imm, build_bytes): Ditto.
|
|
* config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
|
|
get_specific, check, insert, md_convert_frag): Ditto.
|
|
* config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
|
|
md_assemble, pa_ip, getExpression, getAbsoluteExpression,
|
|
evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
|
|
process_exit): Ditto.
|
|
* config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
|
|
is_complex): Ditto.
|
|
* config/tc-i386.c (pe, md_assemble, i386_operand,
|
|
md_estimate_size_before_relax, md_create_long_jump): Ditto.
|
|
* config/tc-i860.c (md_assemble, getExpression, print_insn):
|
|
Ditto.
|
|
* config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
|
|
get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
|
|
i960_handle_align): Ditto.
|
|
* config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
|
|
subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
|
|
md_estimate_size_before_relax, md_create_long_jump, get_num):
|
|
Ditto.
|
|
* config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
|
|
md_create_short_jump, md_create_long_jump): Ditto.
|
|
* config/tc-mips.c (md_assemble, append_insn, gp_reference,
|
|
macro_build, macro, my_getExpression): Ditto. Also removed
|
|
get_optional_absolute_expression; just use get_absolute_expression
|
|
instead.
|
|
* config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
|
|
fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
|
|
* config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
|
|
* config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
|
|
Ditto.
|
|
* config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
|
|
print_insn): Ditto.
|
|
* config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
|
|
tip_op, md_assemble): Ditto.
|
|
* config/tc-vax.c (seg_of_operand, md_assemble,
|
|
md_estimate_size_before_relax, md_create_long_jump): Ditto.
|
|
* config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
|
|
|
|
Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
|
|
|
|
* configure.in: i386-lynx is the same as i386-coff
|
|
|
|
Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_previous): New function.
|
|
(previous_section, previous_subsection): New vars.
|
|
(obj_elf_section): Save current place in case DWARF code wants us
|
|
to pop back to it. Handle unquoted section name as well as quoted
|
|
section name. Don't crash on invalid strings.
|
|
(obj_pseudo_table): Handle new pseudos "previous", "2byte", and
|
|
"4byte".
|
|
|
|
* config/obj-elf.h: Don't include struc-symbol.h.
|
|
(obj_elf_frob_symbol): Declare arg as struct symbol *.
|
|
|
|
* tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
|
|
"L" or "_.L_".
|
|
|
|
* write.c (write_relocs): New function, split off from
|
|
write_contents. Use memset instead of bzero.
|
|
(write_object_file): Apply write_relocs to each section before
|
|
applying write_contents.
|
|
|
|
* read.c (read_begin): Call obstack_begin with values closer to 1K
|
|
multiples.
|
|
(read_a_source_file, big_cons, float_cons): Use memcpy instead of
|
|
bcopy.
|
|
|
|
Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
|
|
calculating opP->isiz; this permits the expression size to be
|
|
determined as well, later on.
|
|
|
|
* expr.c (clean_up_expression): Don't cancel the subtraction of
|
|
undefined symbols.
|
|
|
|
* read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
|
|
switch to text section rather than data section.
|
|
|
|
Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
|
|
expression (to take the pc-rel instruction itself into account)
|
|
before using the expression, instead of after.
|
|
|
|
Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* read.c (float_cons): Simplified parsing logic. If
|
|
REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
|
|
|
|
* symbols.c (colon): Rather than a special case for TC_HPPA,
|
|
use new macro tc_frob_label.
|
|
* config/tc-hppa.h (tc_frob_label): Define.
|
|
|
|
* config/tc-mips.c: Many changes to support simple assembler
|
|
optimization.
|
|
(insn_label, prev_insn, prev_prev_insn, dummy_opcode,
|
|
prev_insn_valid, prev_insn_frag, prev_insn_where,
|
|
prev_insn_fixp, prev_insn_is_delay_slot): New static
|
|
variables.
|
|
(insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
|
|
mips_align, s_stringer, s_mips_space): New static functions.
|
|
(mips_define_label): New global function.
|
|
(md_pseudo_table): For "ascii", "asciz", "asciiz", call
|
|
s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
|
|
or 'd'. For "space" call s_mips_space.
|
|
(md_begin): Call mips_no_prev_insn.
|
|
(append_insn): Only insert necessary NOP instructions.
|
|
(macro): Call mips_emit_delays before setting mips_noreorder.
|
|
Increment and decrement mips_noreorder rather than using
|
|
save_reorder_condition. Don't bother to use noreorder in
|
|
M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
|
|
(md_atof): Handle floating point numbers correctly for both
|
|
big and little endian targets.
|
|
(s_align, s_cons): Call mips_align rather than frag_align.
|
|
(s_change_seg, s_cons): Call mips_emit_delays.
|
|
(s_float_cons): Let float_cons do the work.
|
|
(s_mipsset): Call mips_emit_delays when setting noreorder.
|
|
* config/tc-mips.h (tc_frob_label): Define to be
|
|
mips_define_label.
|
|
|
|
* config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
|
|
ecoff_frob_files): Consistently use S_GET_VALUE rather than
|
|
bfd_asymbol_value. Warn if taking difference of symbols in
|
|
different segments.
|
|
|
|
Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
|
|
with a warning.
|
|
|
|
* config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
|
|
by md_pcrel_from if we are relocating against a symbol (we still
|
|
need md_pcrel_from for a PC relative relocation within the same
|
|
file).
|
|
* config/tc-m88k.c (md_pcrel_from): Corrected return value.
|
|
(omagic): Removed unused variable.
|
|
|
|
* Preliminary support for m88k-coff.
|
|
* configure.in (m88k-*-coff*): New target. Use coffbfd and
|
|
m88kcoff.
|
|
* config/m88kcoff.mt: New file.
|
|
* read.c (lex_type): New macro LEX_AT to set lex type of '@'.
|
|
(pseudo_set): Handle difference of symbols in different fragments
|
|
by saving the entire expression as the value of the symbol.
|
|
* symbols.c (resolve_symbol_value): Resolve difference
|
|
expressions.
|
|
* config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
|
|
"sdef" as a synonym for "def".
|
|
* config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
|
|
TARGET_FORMAT.
|
|
(S_IS_LOCAL): Any symbol which includes \001 in the name is local.
|
|
* config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
|
|
m88k port up to date, and to add COFF support.
|
|
|
|
Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
|
|
|
|
* Removed sy_forward and replaced it with an undefined expression
|
|
as the value of a symbol.
|
|
* struc-symbol.h (struct symbol): Removed sy_forward field. Added
|
|
sy_resolved and sy_resolving single bit fields.
|
|
* symbols.c (symbol_new): Don't initialize sy_forward field.
|
|
(resolve_symbol_value): New function to adjust symbol value by
|
|
fragment address, using recursion to resolve forward symbols.
|
|
* symbols.h: Added prototype for new function.
|
|
* read.c (pseudo_set): Set symbolP->sy_value to an undefined
|
|
expression rather than setting symbolP->sy_forward.
|
|
* write.c (write_object_file): Use resolve_symbol_value on
|
|
symbols, keeping the common case (the old behaviour) inline.
|
|
* config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
|
|
handling (subsumed by write.c change).
|
|
* config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
|
|
sy_value rather than sy_forward.
|
|
* config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
|
|
expression segment rather than sy_forward.
|
|
(yank_symbols): Use resolve_symbol_value.
|
|
(crawl_symbols): Removed extra pass over symbols.
|
|
* config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
|
|
config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
|
|
symbols which handled sy_forward; use resolve_symbol_value
|
|
instead.
|
|
* config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
|
|
Define.
|
|
* config/obj-elf.c (obj_elf_stab_generic): Check expression
|
|
segment rather than sy_forward.
|
|
* config/obj-vms.c (VMS_Check_For_Main): Don't initialize
|
|
sy_forward; do initialize sy_resolved and sy_resolving.
|
|
* config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
|
|
|
|
* Changes to keep a full expression as the value of a symbol, not
|
|
just a longword:
|
|
* struc-symbol.h: New field sy_value.
|
|
* as.h: Include expr.h before struc-symbol.h.
|
|
* expr.h: Use struct symbol rather than symbolS.
|
|
* symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
|
|
of sy_value field; compile unconditionally, not just if
|
|
BFD_ASSEMBLER.
|
|
* symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
|
|
* write.c (write_object_file): Set BFD symbol value to gas symbol
|
|
value.
|
|
* config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
|
|
config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
|
|
(S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
|
|
* config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
|
|
* config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
|
|
S_GET_VALUE rather than ost_entry.n_value.
|
|
* config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
|
|
(obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
|
|
config/obj-coffbfd.c (symbol_to_chars): Get value to write out
|
|
using S_GET_VALUE--don't assume it is already set.
|
|
* config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
|
|
symbol value.
|
|
* config/obj-vms.c (various): Don't assign directly to
|
|
S_GET_VALUE; use S_SET_VALUE instead.
|
|
|
|
Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* configure.in: Recognize h8300h.
|
|
|
|
Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
* config/tc-h8500.c (line_comment_chars): Add hash.
|
|
(parse_exp, skip_colonthing, build_bytes): Add support for
|
|
R_H8500_HIGH16 relocation type.
|
|
|
|
Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
|
|
|
|
* config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
|
|
attribute name. Handle `execinstr' attribute.
|
|
|
|
Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
|
|
there is another alternative for the instruction.
|
|
|
|
Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
|
|
|
|
* doc/as.texinfo: updates for H8/300H
|
|
|
|
Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
|
|
|
|
* config/tc-i960.c (md_create_short_jump, md_create_long_jump,
|
|
md_number_to_chars, md_section_align): Adjusted to use valueT,
|
|
addressT, to match tc.h.
|
|
|
|
Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
|
|
independent of format.
|
|
|
|
Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
|
|
|
|
* config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
|
|
|
|
Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
|
|
|
|
* configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
|
|
build; also recognize h8300-*-coff
|
|
|
|
Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
|
|
core just because somebody uses a label before it is defined.
|
|
|
|
* config/mips-opcode.h: Moved to opcode/mips.h.
|
|
* config/tc-mips.c: Include opcode/mips.h rather than
|
|
mips-opcode.h.
|
|
(append_insn): An extra NOP is only needed after instructions
|
|
which set HI or LO, not after instructions which read it.
|
|
(macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
|
|
(macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
|
|
* config/tc-mips.h (struct mips_opcode): Don't define.
|
|
* config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
|
|
Set to $(srcdir)/../include/opcode/mips.h.
|
|
|
|
Get the MIPS assembler up to speed with other gas changes:
|
|
|
|
* config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
|
|
Removed; don't change the symbol value.
|
|
(ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
|
|
bfd_asymbol_value rather than S_GET_VALUE to include section
|
|
vma in symbol value.
|
|
(ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
|
|
doesn't output them. Set the vma of sections.
|
|
* config/obj-ecoff.h: Don't define obj_frob_symbol.
|
|
* config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
|
|
longer necessary.
|
|
(various): use valueT rather than long.
|
|
|
|
Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* as.h (valueT): Typedef moved here.
|
|
* struc-symbol.h (valueT): ...from here.
|
|
* write.c (write_object_file): Locals from_addr, to_addr,
|
|
table_addr are now addressT. Supply prototype for bfd_alloc for
|
|
now.
|
|
(fixup_segment): Local add_number is now valueT. Correct some
|
|
range-checking bugs.
|
|
(relax_align): Type `int' should be sufficient for the exponent.
|
|
(fix_new): Argument offset is type offsetT. Locals size and
|
|
newsize are type valueT.
|
|
* write.h (struct fix): Fields fx_offset and fx_addnumber are now
|
|
type valueT.
|
|
(fix_new): Fix prototype.
|
|
* symbols.c (symbol_new): Symbol value is type valueT.
|
|
(S_SET_VALUE, S_GET_VALUE): Likewise.
|
|
(S_IS_*): Specify int return type explicitly.
|
|
* symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
|
|
prototypes.
|
|
* read.c (s_comm): Values read are type valueT.
|
|
* expr.h (expressionS): Field X_add_number is an offsetT.
|
|
* tc.h (md_create_long_jump, md_create_short_jump,
|
|
md_section_align): Addresses are now type addressT.
|
|
(md_number_to_chars, md_apply_fix): Pass value as valueT.
|
|
* config/tc-i386.c (md_create_short_jump, md_create_long_jump,
|
|
md_number_to_chars, md_section_align): Adjusted.
|
|
* config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
|
|
gcc shut up.
|
|
(md_create_short_jump, md_create_long_jump, md_number_to_chars,
|
|
md_section_align): Adjusted.
|
|
|
|
* config/tc-sparc.c (s_reserve): Permit use for other than a.out
|
|
format.
|
|
(s_common): Handle Solaris-2 version.
|
|
|
|
* config/ho-generic.h (free): Returns void if __STDC__.
|
|
|
|
* config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
|
|
elf_file_symbol): Declare.
|
|
|
|
* expr.c (floating_constant, integer_constant): Now return void.
|
|
|
|
Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* configure.in: Match on sparc*-fujitsu-none rather than
|
|
sparclite*-fujitsu-none.
|
|
|
|
Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* read.c (cons): Conditionalize parsing of expression. Move
|
|
putting value into object file into separate function. Separate
|
|
out MRI and WANT_BITFIELDS cases into separate functions.
|
|
(emit_expr): New function to write data into object file.
|
|
Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
|
|
processor types.
|
|
(parse_bitfield_cons): New function to parse bitfield expressions
|
|
as used by i960 assemblers. Only compiled if
|
|
BITFIELD_CONS_EXPRESSIONS is defined.
|
|
(parse_mri_cons): New function to parse MRI style strings. Only
|
|
compiled if MRI is defined.
|
|
(parse_repeat_cons): New function to parse repeat counts. Only
|
|
compiled if REPEAT_CONS_EXPRESSIONS is defined.
|
|
* read.h (emit_expr): Added declaration of new function.
|
|
* config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
|
|
* config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
|
|
* config/tc-hppa.c (parse_cons_expression_hppa): New function to
|
|
parse a HPPA expression, rather than special case in cons
|
|
function.
|
|
(cons_fix_new_hppa): New function to emit an HPPA fixup, rather
|
|
than special case in emit_expr function.
|
|
* config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
|
|
Define to use new functions from tc-hppa.c.
|
|
* config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
|
|
(WANT_BITFIELDS): Removed; now obsolete.
|
|
* config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
|
|
* config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
|
|
NS32K fixup, rather than special case in emit_expr function.
|
|
* config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
|
|
cons_fix_new_ns32k. Also use PARAMS rather than checking
|
|
__STDC__.
|
|
* config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
|
|
|
|
* write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
|
|
Don't core dump if gas has no information about a section.
|
|
|
|
Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (relax_and_size_seg): Always fully process a section.
|
|
Section size is last frag's (vm)address plus its size. If no
|
|
relocations are present, force SEC_RELOC flag clear.
|
|
(dump_section_relocs): New debugging routine.
|
|
(adjust_reloc_syms): New routine, broken out from write_contents.
|
|
Don't adjust relocs that are already relative to section symbol.
|
|
Look for obj_fix_adjustable macro to know what else to skip,
|
|
instead of obj_write_symbol. Look for section symbol stored in
|
|
section information.
|
|
(write_object_file): Map adjust_reloc_syms over all sections.
|
|
(write_contents): Clear SEC_RELOC flag if no relocations are
|
|
found.
|
|
|
|
* as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
|
|
keep it quiet.
|
|
|
|
* write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
|
|
|
|
Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
|
|
|
|
* Makefile.in (all, dvi, info, install-info, clean-info): do not
|
|
echo recursion lines.
|
|
(install-info, clean-info): collapse into the dvi and info rule.
|
|
|
|
Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
|
|
|
* as.h (strstr): Disable declaration for now.
|
|
(fprint_value, sprint_value): Declare.
|
|
|
|
* subsegs.c (subseg_new_rest): Use memset to clear new frag.
|
|
(subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
|
|
|
|
* expr.c (expr_part): Made sanity checks a.out-specific.
|
|
(expr): Disabled sanity checks.
|
|
|
|
* subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
|
|
section symbol.
|
|
* subsegs.c (subseg_change): Initialize section symbol pointer
|
|
when setting up a new section.
|
|
|
|
* symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
|
|
field back at gas symbol structure.
|
|
|
|
* symbols.c (colon): Cast obstack_next_free value to char* before
|
|
doing arithmetic on it.
|
|
* subsegs.c (subseg_new_rest): Likewise.
|
|
* as.h (frag_now_fix): Likewise.
|
|
|
|
* config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
|
|
calling bfd_make_section_old_way directly, and call subseg_set
|
|
instead of subseg_change. Now returns void.
|
|
(obj_elf_write_symbol): Only check local symbols for now.
|
|
(elf_stab_symbol): Now static and void, and disabled until it
|
|
works completely.
|
|
(obj_elf_size): For expression values, fail silently for now.
|
|
(obj_symbol_new_hook): Do nothing.
|
|
|
|
* config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
|
|
relocation.
|
|
(s_local) [OBJ_ELF]: New function.
|
|
(md_pseudo_table) [OBJ_ELF]: Call it for "local".
|
|
(s_common): Rearrange to handle Solaris .common pseudo, which may
|
|
sometimes use bss space instead of common.
|
|
* config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
|
|
|
|
Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* configure.in: set host config to hpux for hppa*-hp-hpux
|
|
|
|
Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
|
|
|
* app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
|
|
|
|
Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
|
|
|
* subsegs.c (subseg_new): Don't special-case a.out -R flag here.
|
|
* config/obj-aout.c (s_sect): Do it here.
|
|
|
|
* as.h (BAD_CASE): Don't make some lame compilers think we want
|
|
substitution inside strings.
|
|
|
|
* as.c (print_version_id): New function, split off from main.
|
|
(main): Call it.
|
|
* config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
|
|
for -V. Ignore -Q and -s options for now.
|
|
|
|
Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* Makefile.in: make installation & builds work again for crosses
|
|
|
|
Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
|
|
|
* listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
|
|
symbol values correctly.
|
|
|
|
* write.c (write_object_file): Deleted unused variables.
|
|
(fixup_segment): Use sprint_value.
|
|
|
|
* messages.c (sprint_value, fprint_value): New routines.
|
|
|
|
* config/obj-elf.c (elf_stab_symbol): Now returns void.
|
|
(obj_elf_stab_generic): Fix typo in logic.
|
|
|
|
* Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
|
|
|
|
* as.h (addressT, offsetT): New types, using BFD types if
|
|
available.
|
|
(relax_addressT, struct frag): Use them.
|
|
* struc-symbol.h (valueT, struct broken_word): Likewise.
|
|
|
|
* as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
|
|
* subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
|
|
|
|
Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
|
|
|
|
* Makefile.in: canonicalize install.sh; for use within
|
|
this directory (and subdirs)
|
|
|
|
Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
|
|
|
|
* m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
|
|
specified, should have both S1 and S2 fields identical
|
|
If only finding the problem was as fast as fixing the bug !!!!
|
|
|
|
Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (write_contents): Do write out non-loadable sections.
|
|
Debug sections can fall in this category.
|
|
|
|
* read.c (s_app_file): Call elf_file_symbol for ELF files.
|
|
* config/obj-elf.c (elf_file_symbol): New function.
|
|
|
|
* config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
|
|
added argument to specify section base name.
|
|
(obj_elf_stab_generic): Renamed from ..._stab. New argument
|
|
specifies section base name.
|
|
(obj_elf_stab): New function, calls obj_elf_stab_generic with
|
|
".stab" as section base name.
|
|
(obj_elf_xstab): New function, calls obj_elf_stab_generic.
|
|
(obj_elf_type): Handle "object". Use bitwise-or to merge in
|
|
symbol flags rather than simply replacing, so global/local flags
|
|
are preserved.
|
|
(obj_elf_ident): Rewrite.
|
|
|
|
Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* Makefile.in: remove parentdir support; use INSTALL_XFORM
|
|
|
|
Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-i386.c (md_pseudo_table): .align uses a power of two
|
|
for any a.out target, not just Linux and 386BSD.
|
|
* config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
|
|
target.
|
|
|
|
Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
|
|
don't exist or duplicate other inclusions.
|
|
|
|
* config/tc-vax.h (NO_RELOC): Define.
|
|
|
|
Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
|
|
|
|
* gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
|
|
* gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
|
|
char to reg_prefix instead of to 'r'.
|
|
(calcop): Change calls to get_reg.
|
|
(calcop): Handle new case 'x' to set reg_prefix.
|
|
(calcop): Set reg_prefix to 'r' after each call to get_reg.
|
|
(cmpslot): Add 88110 conditions.
|
|
|
|
* gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
|
|
|
|
* gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
|
|
before returning.
|
|
|
|
* gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
|
|
adjacent; mov.s and mov.d swapped.
|
|
(m88k_opcodes): Fix typo `r2' -> `2'.
|
|
|
|
Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
* config/h8300.c: Support for H8/300-H opcodes.
|
|
|
|
* config/obj-coffbfd.c (w_strings): String table length is 4
|
|
bytes, no matter what the host int size is.
|
|
|
|
* configure.in (alpha-*-osf*): New.
|
|
|
|
Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* configure.in (mips-*-ecoffl*): New target; use ecoff and
|
|
mips-lit.
|
|
(mips-*-ecoff*): Added trailing '*'.
|
|
|
|
* config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
|
|
first FDR in a file to be zero.
|
|
|
|
Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* Makefile.in (VERSION): Jump to 2.1.4.
|
|
|
|
* config/ho-hppabsd.h: New file, from Peter Hoogenboom.
|
|
|
|
* config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
|
|
ECOFF format.
|
|
|
|
Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
|
|
separate '851 mmu.
|
|
|
|
* config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
|
|
and routine names. Assuming 32 bits for now.
|
|
|
|
* config/obj-elf.c (elf_frob_file): Look for macro
|
|
elf_tc_final_processing_hook, instead of assuming a function
|
|
always exists.
|
|
* config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
|
|
tc_final_processing_hook.
|
|
* config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
|
|
|
|
* config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
|
|
moved here from obj-elf.h.
|
|
* config/obj-elf.h: Don't include CPU-specific header files.
|
|
|
|
Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
|
|
|
|
* configure.in: configurations should match on 'hppa*' not 'hppa'.
|
|
|
|
* read.c: Add support for HPPA assembly language syntax (denoted
|
|
with '#ifdef TC_HPPA').
|
|
|
|
* symbols.c: Add support for HPPA assembly language syntax (denoted
|
|
with '#ifdef TC_HPPA').
|
|
|
|
* write.c (write_contents): Add support for HPPA-style
|
|
relocations.
|
|
|
|
* config/obj-elf.c: Stab symbols weren't written properly.
|
|
(obj_elf_version):
|
|
(obj_elf_desc):
|
|
(obj_elf_write_symbol):
|
|
(obj_elf_write_symbol_p):
|
|
(obj_elf_frob_symbol):
|
|
(elf_stab_symbol):
|
|
(elf_frob_file):
|
|
|
|
* config/tc-hppa.c: Support for HPPA symbol extension sections.
|
|
Remove some unused code. Support for HPPA assembly language
|
|
syntax.
|
|
|
|
* app.c:
|
|
|
|
* symbols.c:
|
|
|
|
* config/obj-elf.h:
|
|
(obj_write_symbol):
|
|
(obj_frob_file):
|
|
(elf_tc_symbol):
|
|
(elf_tc_make_sections):
|
|
|
|
* config/tc-hppa.h:
|
|
|
|
Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
|
|
hash_new will have succeeded if it returns.
|
|
* config/tc-a29k.c (md_begin): Likewise.
|
|
|
|
* config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
|
|
const.
|
|
(mode_from_disp_size, opcode_suffic_to_type): Now inline under
|
|
gcc.
|
|
(fits_in_{signed,unsigned}_{byte,word}): Likewise.
|
|
|
|
* expr.c: Delete register declarations; gcc ignores them anyways.
|
|
|
|
Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* hash.c (hash_new): Use xmalloc, since many callers don't check
|
|
for failure.
|
|
|
|
Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* frags.c (zero_address_frag, bss_address_frag): These are
|
|
external.
|
|
|
|
* tc.h (md_reloc_size): This is const.
|
|
* config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
|
|
(md_reloc_size): Now const.
|
|
|
|
* config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
|
|
trailing commas.
|
|
* as.h (enum _segT): Ditto.
|
|
|
|
* struc-symbol.h (N_TYPE_seg): This should be const.
|
|
|
|
Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
|
|
|
|
* config/obj-ecoff.c (add_file): Cast file_name to char * in
|
|
listing_source_file call.
|
|
|
|
* config/obj-elf.c (elf_stab_symbol_string): Cast first argument
|
|
of subseg_new call to eliminate const attribute.
|
|
(obj_elf_stab): Ditto.
|
|
(obj_symbol_new_hook): Cast first argument of bzero call to char *.
|
|
|
|
* read.c (s_align_bytes): Properly record alignment.
|
|
|
|
* expr.c (__): Undefine __ macro before use, since OSF/1 uses it
|
|
for the prototype/no prototype macro.
|
|
|
|
* as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
|
|
void.
|
|
|
|
* as.h (relax_stateT enum): Delete trailing comma.
|
|
|
|
Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* app.c (do_scrub_begin): Let line_comment_chars override
|
|
comment_chars.
|
|
(do_scrub_next_char): If a line comment character is not at the
|
|
start of a line, treat it as a comment character if it is one.
|
|
For a CPP line comment use pseudo-op .appline rather than .line.
|
|
* input-scrub.c (logical_input_line): Make int rather than
|
|
unsigned.
|
|
(input_scrub_push, input_scrub_begin): Initialize
|
|
logical_input_line to -1 rather than 0.
|
|
(bump_line_counters): Increment logical_input_line.
|
|
(new_logical_line): If line_number is -2, decrement
|
|
logical_input_line.
|
|
(as_where): Use logical_input_line even if it is 0.
|
|
* read.h (s_app_file prototype): Now takes an int argument.
|
|
* read.c (potable): Make .appfile call s_app_file with 1. New
|
|
.appline pseudo-op calls s_app_line.
|
|
(s_app_file): If .appfile, call new_logical_line with -2 to
|
|
account for newline inserted by do_scrub_next_char. If listing,
|
|
call listing_source_file.
|
|
(s_app_line): New function to handle fake pseudo-op .appline.
|
|
* config/obj-coff.c (obj_pseudo_table): Make .appline call
|
|
obj_coff_ln.
|
|
(obj_coff_ln): Added argument to indicate whether .appline.
|
|
* config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
|
|
obj_coff_ln.
|
|
(obj_coff_ln): Added argument to indicate whether .appline.
|
|
* config/tc-mips.c (s_file): Pass argument to s_app_file.
|
|
|
|
Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
|
|
|
|
Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (md_apply_fix_2): Straighten out check for
|
|
invalid values.
|
|
|
|
Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
|
|
|
* config/tc-h5000.c (build_bytes): Understand @rd mode and build
|
|
relocations correctly.
|
|
|
|
Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
|
|
|
|
* Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
|
|
it's wrong.
|
|
|
|
* config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
|
|
if value is out of range.
|
|
|
|
Patch from Minh Tran-Le:
|
|
* config/tc-i386.c (i386_operand): For in/out port register used
|
|
as base reg, include InOutPortReg in operand type.
|
|
(MATCH): Accept overlap value of InOutPortReg.
|
|
|
|
Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
|
|
Add calls to listing routines to produce combined source/assembler
|
|
listings.
|
|
(obj_ecoff_stab): Create a file pointer if none used yet.
|
|
(ecoff_frob_file): Set symcount to correct value.
|
|
|
|
Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
|
|
|
|
* Makefile.in (VERSION): Bump to version 2.1, in preparation for
|
|
release.
|
|
|
|
* config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
|
|
Define in terms of constants, not C structure sizes.
|
|
|
|
* config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
|
|
|
|
Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-aout.c (obj_header_append): Don't define if it's
|
|
defined as a macro.
|
|
* config/obj-hp300.h (obj_header_append): Define it as a macro.
|
|
* config/obj-hp300.c (hp300_header_append): New function.
|
|
|
|
* Makefile.in (distclean): Don't bother cleaning up doc files;
|
|
they aren't going to be in this directory.
|
|
|
|
Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
|
|
symbols.
|
|
|
|
* tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
|
|
* config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
|
|
|
|
Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
|
|
initialization.
|
|
|
|
* configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
|
|
|
|
Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c (macro): Correct floating point double word
|
|
loads and stores for big endian target.
|
|
|
|
Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
|
|
|
|
* config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
|
|
calls. Deleted some unused code.
|
|
* config/obj-coff.c: Likewise.
|
|
|
|
ELF support, mostly contributed by Utah:
|
|
* config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
|
|
obj_elf_type): Rewrite.
|
|
(obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
|
|
obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
|
|
New functions.
|
|
(obj_elf_ident): Dummy.
|
|
* config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
|
|
TARGET_SYMBOL_FIELDS): New macros.
|
|
(gdb_section): New variable decl.
|
|
|
|
* config/tc-i386.c (md_atof): Return zero, not empty string, on
|
|
success.
|
|
|
|
BFD_ASSEMBLER conditional changes:
|
|
* config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
|
|
Don't define these.
|
|
(SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
|
|
(fetch_coff_debug_section): Ditto.
|
|
(obj_coff_endef): Call fetch_coff_debug_section.
|
|
(struct line_no): New type.
|
|
(c_symbol_merge): New way for copying aux fields.
|
|
(c_dot_file_symbol): Put symbol in absolute section, and set flag
|
|
BSF_DEBUGGING.
|
|
(function_lineoff): New symbol.
|
|
(function_lineoff, text_lineno_number, our_lineno_number,
|
|
lineno_lastP): Don't define.
|
|
(c_line_new): Don't define.
|
|
(obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
|
|
placeholders, until
|
|
line-number recording gets implemented.
|
|
(obj_new_symbol_hook): New code for handling aux fields.
|
|
(add_lineno, add_linesym): New functions.
|
|
(obj_coff_ln): Call add_lineno, not c_line_new.
|
|
(obj_coff_endef): New code for handling symbol names. New lineno
|
|
code. Look for section name "*DEBUG*" for debugging section.
|
|
(align, coff_check_file_symbols, obj_coff_section,
|
|
coff_frob_file): New functions.
|
|
* config/obj-coff.h: Reordered some includes.
|
|
(BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
|
|
DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
|
|
define these.
|
|
(TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
|
|
(SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
|
|
aux entries. Most SA_* macros now use it unconditionally.
|
|
(S_*): Use `bsym' field, and access BFD private data.
|
|
(SF_*): Use `sy_flags' symbol field for most of these.
|
|
(H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
|
|
define.
|
|
(*_section_header): Don't define.
|
|
* config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
|
|
interface.
|
|
(tc_gen_reloc) [I386COFF]: New function.
|
|
(tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
|
|
* config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
|
|
macros.
|
|
|
|
* config/obj-coff.c (stack_init): Don't do assignments inside
|
|
conditions.
|
|
(obj_coff_def): Simplified handling of symbol name a bit.
|
|
(tag_insert): Name argument is now pointer to CONST.
|
|
(obj_crawl_symbol_chain): Commented out.
|
|
|
|
* config/obj-coff.h: Use PARAMS macro in prototypes.
|
|
|
|
* write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
|
|
through frchainP pointer if it is null.
|
|
|
|
* configure.in: Warn if BFD mode is explicitly turned off but is
|
|
required by specified target.
|
|
(mips ecoff targets): Don't need to set bfd_gas here; it gets
|
|
taken care of later.
|
|
|
|
* config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
|
|
field.
|
|
(yank_symbols): Merge symbols only if sy_forward is null.
|
|
|
|
* config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
|
|
defined.
|
|
|
|
* tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
|
|
pointer.
|
|
* config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
|
|
|
|
* config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
|
|
with "." is a local label.
|
|
|
|
* config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
|
|
files.
|
|
|
|
* config/te-linux.h, config/te-386bsd.h: New config files.
|
|
* configure.in (i386-*-linux, i386-*-bsd): Use them.
|
|
* config/tc-i386.h (TARGET_FORMAT): Select format based on target
|
|
environment.
|
|
(DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
|
|
|
|
Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
|
|
to want it that way.
|
|
(ecoff_build_symbols): Turn local st_Proc symbols into
|
|
st_StaticProc symbols. Set index field of external st_Proc and
|
|
st_staticProc symbols correctly.
|
|
* config/tc-mips.h (NO_LISTING): Don't define. People might want
|
|
listings.
|
|
|
|
Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
|
|
files.
|
|
* configure.in (m68k-*-hpux): Use them.
|
|
|
|
* config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
|
|
defined, otherwise zero.
|
|
|
|
* config/aout_gnu.h (OMAGIC): Don't define if already defined.
|
|
|
|
Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-sparc.c (sparc_ip): Allow any abs expression as an
|
|
address space number.
|
|
|
|
Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
|
|
|
|
* config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
|
|
|
|
* config/tc-a29k.c: Include ctype.h.
|
|
(define_some_regs): Added special-purpose registers for 29050.
|
|
|
|
* config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
|
|
|
|
* config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
|
|
(change_to_section): Set it here instead.
|
|
|
|
Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
|
|
|
|
* config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
|
|
hasn't been seen yet.
|
|
(add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
|
|
|
|
Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
|
|
SH.
|
|
|
|
Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* expr.c (operand): Fix unary plus operator (previously was the
|
|
same as '~' operator!).
|
|
|
|
Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (cvt_frag_to_fill): Define even if BFD is defined.
|
|
(write_object_file): Do define if BFD_ASSEMBLER. Invoke
|
|
obj_check_file_symbols if defined. Call verify_symbol_chain_2
|
|
instead of open-coding it. Fix some bugs in patching up symbol
|
|
chain.
|
|
(relax_segment): Make some code we "ought to be able to" use for
|
|
all targets no longer conditionalized on ns32k target; instead, do
|
|
it always, and if the appropriate conditions fail, abort.
|
|
|
|
* symbols.c (DEBUG): Enabled.
|
|
(symbol_new): Make sure bfd_make_empty_symbol works.
|
|
(verify_symbol_chain_2): New funcion; takes one symbol as
|
|
argument, anywhere in the chain.
|
|
(dollar_label*): Use default initializers.
|
|
|
|
* as.c (perform_an_assembly_pass): Call md_begin here...
|
|
(main): ...and not here.
|
|
|
|
* config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
|
|
(tc_frob_symbol): New macro: Get rid of symbols in reg_section.
|
|
|
|
* config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
|
|
(add_fix, add_frag): Now functions instead of macros.
|
|
(m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
|
|
s_data1, s_data2, s_bss): Use new *_section names, for
|
|
compatibility with BFD_ASSEMBLER mode; rewrite switch statements
|
|
to handle non-integral segT.
|
|
(tc_coff_fix2rtype, tc_aout_fix_to_chars,
|
|
tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
|
|
(tc_gen_reloc): New routine for BFD_ASSEMBLER.
|
|
(md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
|
|
md_apply_fix_2; new md_apply_fix definition varies interface
|
|
depending on BFD_ASSEMBLER.
|
|
(md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
|
|
names.
|
|
|
|
* config/obj-vms.c: Include config.h.
|
|
(version_string): Delete declaration.
|
|
(Write_VMS_MHD_Records): Use GAS_VERSION instead.
|
|
(vms_resolve_symbol_redef): New function, taken from VMS code in
|
|
symbols.c.
|
|
(_doprnt): Deleted.
|
|
(VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
|
|
VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
|
|
VMS_Psect_Spec): Fixed to compiler under traditional C.
|
|
* config/obj-vms.h: Use PARAMS macro.
|
|
(vms_resolve_symbol_redef): Declare.
|
|
(RESOLVE_SYMBOL_REDEFINITION): New macro.
|
|
* symbols.c (colon): Remove some VMS-specific code, look for
|
|
RESOLVE_SYMBOL_REDEFINITION macro instead.
|
|
|
|
* config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
|
|
instructions.
|
|
|
|
* config/tc-i386.c: Reordered some functions so inlining might
|
|
work. Use PARAMS in function declarations.
|
|
(reloc): New routine.
|
|
(md_assemble): Rearrange switch statements to work with
|
|
non-integral segT.
|
|
|
|
* struc-symbol.h [BFD_ASSEMBLER]: Undefine
|
|
SYMBOLS_NEED_BACKPOINTERS before defining it.
|
|
|
|
* subsegs.c (subseg_new_rest): Now static.
|
|
|
|
* read.c (pseudo_set): Better error message for difference of
|
|
symbols in different frags.
|
|
|
|
* Makefile.in (check): Pass down some new variables, indicating
|
|
pathname or program name for cc, nm, objdump.
|
|
|
|
* as.h (OUTPUT_FLAVOR): New macro.
|
|
* config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
|
|
|
|
* configure.in: Initialize bfd_gas properly. Warn that ELF
|
|
support is incomplete.
|
|
|
|
Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* read.c (float_cons): Accept null pointer return from md_atof.
|
|
* config/tc-m68k.c (md_atof): Return null for success.
|
|
* config/tc-sparc.c (md_atof): Ditto.
|
|
|
|
Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
|
|
|
|
* doc/as.texinfo: formatting and comment cleanups; show SPARC
|
|
alternative options in same style as other machines; simplify some
|
|
conditional use; include GPL as separate file (from texinfo dir)
|
|
|
|
* doc/Makefile.in: (as.info) include directory containing GPL in
|
|
makeinfo search path
|
|
|
|
* doc/h8.texi: new file; conditional settings for GAS manual
|
|
on Hitachi chips
|
|
|
|
Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
|
|
|
|
* doc/as.texinfo: mention SPARC architecture options.
|
|
|
|
Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* configure.in: Rearranged whitespace in per-host/per-target
|
|
sections. Added hooks for dropping in HPPA support (not included
|
|
yet). Separate out overrides of variables based on target format
|
|
and bfd-gas selection from actual target-specific commands. Add
|
|
error message for recognized but unsupported format name.
|
|
|
|
Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
|
|
symbolic header match cline in FDR; the native linker seems to
|
|
want that.
|
|
|
|
Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* doc/Makefile.in: as.texinfo is in $(srcdir). Use
|
|
$(srcdir)/as.texinfo explicitly in several places
|
|
|
|
Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
|
|
|
|
* doc/Makefile.in: update dvi, clean targets for new source
|
|
file structure
|
|
|
|
Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
|
|
rather than undefining know.
|
|
* configure.in: Match ultrix*, not just ultrix.
|
|
|
|
Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
|
|
|
|
* doc/as.texinfo: converted conditional markup to use new
|
|
Texinfo facilities, avoiding m4.
|
|
|
|
* doc/as-all.texinfo, all.m4, pretex.m4: deleted.
|
|
|
|
* doc/Makefile.in: recast doc configuration to use a link to an
|
|
included texinfo file.
|
|
|
|
* doc/all.texi: settings for generic form of documentation.
|
|
|
|
Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* read.c (cons): Zero out frag when creating reloc.
|
|
|
|
Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c (gp_reference): Certain magic symbols can never
|
|
be referenced off the GP register.
|
|
|
|
* app.c (do_scrub_next_char): Handle states 9 and 10 correctly
|
|
when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
|
|
LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
|
|
|
|
* config/te-irix.h: New file; irix needs a different LOCAL_LABEL
|
|
definition from other MIPS targets.
|
|
* configure.in (mips-*-irix): Use emulation irix.
|
|
|
|
Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-h8500.c: Get relax size of branch instructions right,
|
|
(get_operand): Parse @sp+ correctly.
|
|
|
|
Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
|
|
COFF section header field.
|
|
|
|
* configure.in: Print error message if host or target is not
|
|
supported.
|
|
|
|
* configure.in: If with-bfd-assembler, use obj-coff instead of
|
|
obj-coffbfd.
|
|
|
|
* config/ho-generic.h: Include string.h.
|
|
|
|
Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
|
|
'$' as local, for any object file format.
|
|
|
|
* config/tc-mips.c (macro): Optimizations to branching code and a
|
|
couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
|
|
Campbell).
|
|
|
|
* config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
|
|
* configure.in (mips-sgi-irix*): Set gas_host to irix.
|
|
|
|
Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* subsegs.c (subseg_new): Set output_section of new section.
|
|
* as.c (perform_an_assemly_pass): Don't set output_section here.
|
|
* expr.c (expr_part, expr): Turn off section assertions for ECOFF,
|
|
since it has additional sections.
|
|
* read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
|
|
not bss_section.
|
|
* config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
|
|
ecoff_undefined field.
|
|
* config/obj-ecoff.c (obj_symbol_new_hook): Initialize
|
|
ecoff_undefined field.
|
|
(add_file): If using stabs, just output a stabs symbol rather than
|
|
creating a new fdr.
|
|
(obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
|
|
it with get_absolute_expression, rather than skipping it by hand.
|
|
(obj_ecoff_loc): If using stabs, just output a stabs symbol rather
|
|
than ECOFF line number information.
|
|
(obj_ecoff_stab): Accept non-zero values for stabs line number.
|
|
(ecoff_build_symbols): Set ifilesym correctly. Set storage class
|
|
to small, undefined and/or readonly sections if appropriate.
|
|
Don't output symbol names containing \001 characters.
|
|
(ecoff_frob_file): Make sure at least one fdr is output.
|
|
* config/tc-mips.h: Define TC_MIPS.
|
|
* config/tc-mips.c (g_switch_value): New static variable.
|
|
(md_assemble): Set gp size of output BFD.
|
|
(gp_reference): New function; returns 1 if expression can be
|
|
accesssed via gp. Always returns 0 if not using ECOFF.
|
|
(macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
|
|
possible.
|
|
(macro): Generate sequences using gp if possible.
|
|
(md_parse_option): Ignore -EL and -EB. Parse -G.
|
|
(md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
|
|
(s_change_sec): Handle .rdata and .sdata for ECOFF.
|
|
(s_extern): Mark symbol as external. Set ecoff_undefined field.
|
|
|
|
Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* output-file.c (output_file_create): Don't call as_perror for
|
|
filename rejected by application.
|
|
|
|
* as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
|
|
the output file.
|
|
|
|
* doc/as.texinfo: Don't use @value in node names for the moment;
|
|
references don't appear to work right.
|
|
|
|
* as.h (const, volatile): Put these definitions back, and use
|
|
them.
|
|
|
|
* doc/as.texinfo: First pass at using new texinfo features --
|
|
variables, conditional tests. Far from complete.
|
|
|
|
Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* read.c: Temporary hack to handle some 64-bit constants. This
|
|
should be redone later.
|
|
(target_big_endian): Declare.
|
|
(big_cons): If it's set, reverse order of bytes being copied.
|
|
* config/tc-sparc.c (md_begin): Set target_big_endian.
|
|
|
|
* read.c (s_ignore): Delete declaration of is_end_of_line.
|
|
|
|
* config/obj-coffbfd.c (yank_symbols): Build list of file symbol
|
|
forward pointers properly.
|
|
|
|
Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
|
|
wasn't being stored into scnhdr.
|
|
* config/obj-coffbfd.h: Add prototype of s_get_segment.
|
|
* read.c (TC_START_LABEL): Default definition.
|
|
(read_a_source_file): Use TC_START_LABEL macro to work out
|
|
if a label has been seen.
|
|
|
|
Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
|
|
the bottom (make expands variables in dependencies when the
|
|
dependencies are read, not when they are used).
|
|
|
|
* config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
|
|
a29k .bss section; the mondfe program doesn't like it.
|
|
|
|
Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
|
|
const.
|
|
(current_architecture): Don't need initializer.
|
|
|
|
Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* doc/none.m4: Define Z8000.
|
|
* doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
|
|
texinfo file before recreating it.
|
|
(TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
|
|
this directory.
|
|
(srcdir): Delete second, bogus definition.
|
|
(as.info): Look for as-*.texinfo in current directory rather than
|
|
in $(srcdir).
|
|
(as.dvi): Ditto.
|
|
(dvi): New rule.
|
|
* doc/configure.in: Create links to all as-*.texinfo files in the
|
|
source directory, if that's not the current directory.
|
|
|
|
* configure.in (per-host): Accept MIPS host with BSD version
|
|
number.
|
|
(per-target): Classify i486 as i386. Use generic cpu_type instead
|
|
of target_cpu in selecting format etc.
|
|
|
|
* app.c (do_scrub_next_char): Use .appfile, not .app-file.
|
|
* read.c (potable): Change .app-file to .appfile.
|
|
|
|
* config/ho-decstatn.h: Renamed from ho-decstation.h.
|
|
* configure.in: Adjusted.
|
|
|
|
* config/obj-bfd-sunos.*: Unused; deleted.
|
|
|
|
* Makefile.in (version.c, vers-stamp): Deleted.
|
|
(config.h): Define GAS_VERSION.
|
|
* as.c (version_string): Deleted declaration.
|
|
(main): Look for GAS_VERSION instead.
|
|
|
|
* doc/as.texinfo: Updated description of -a* (listing) options,
|
|
and describe how to pass them through from gcc.
|
|
|
|
* config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
|
|
process relocs if there aren't any relocs to process. Avoids
|
|
malloc/free bug on SCO too.
|
|
|
|
* as.h: Move local include files below system include files, to
|
|
avoid some redefinition complaints on some systems.
|
|
(const, volatile): Don't need these conditionally defined if we
|
|
use CONST and VOLATILE from ansidecl.h.
|
|
(seg_name): Use CONST, not const.
|
|
|
|
Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c: Reindented to GNU standards.
|
|
|
|
Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
|
|
(fixup_segment): Add a29k special case; the linker is not prepared
|
|
to see a segment offset here.
|
|
|
|
* app.c (do_scrub_next_char): Added new state, 10, modifying state
|
|
9 to only keep a space in between identifier characters.
|
|
|
|
Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
|
|
|
|
* Makefile.in: add dvi target; as-$(config).texinfo might live in
|
|
srcdir, might be in objdir.
|
|
|
|
* doc/Makefile.in: dvi depends on as.dvi
|
|
|
|
Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* Makefile.in: add installcheck target
|
|
|
|
Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/tc-mips.c (macro): Use $AT for any floating point load.
|
|
|
|
Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip): For operand type 'M', reject
|
|
bignums, but don't emit error message.
|
|
|
|
Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* Makefile.in (targ-cpu.o): Depend on config.h.
|
|
|
|
Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* app.c (do_scrub_next_char): Added new state, 9, to avoid
|
|
dropping a space immediately following an identifier.
|
|
* expr.c, write.c: Rewrote assert expressions to not use multiple
|
|
lines; I don't think that can be done portably.
|
|
* config/tc-mips.c (macro): Use $AT if target register is zero in
|
|
load instruction, which it can be for a floating point load.
|
|
|
|
Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* write.c (write_contents): Compute the relocs before writing out
|
|
the section contents.
|
|
* config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
|
|
symbol table and values right.
|
|
* config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
|
|
with $L is local.
|
|
* config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
|
|
by the section vma.
|
|
|
|
* config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
|
|
z8k-opc.h, not z8k.h.
|
|
|
|
* config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
|
|
symbol.
|
|
|
|
Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* configure.in: recognize sparc-sun-solaris2* instead of -solaris2
|
|
|
|
Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* expr.c, write.c: Ultrix native 4.2 cc requires assert condition
|
|
to be on a single line.
|
|
|
|
Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* Makefile.in (config.h): Create file, writing out definitions of
|
|
target cpu, alias, and canonical name.
|
|
(ALL_CFLAGS): No longer define TARGET_CPU.
|
|
|
|
* Makefile.in (check): Print a message, instead of quitting
|
|
silently.
|
|
|
|
* as.c (main): Don't catch any signals, for now.
|
|
|
|
* version.c: Deleted.
|
|
* Makefile.in: Generate it, putting in only the version number
|
|
itself.
|
|
(VERSION): New variable.
|
|
* as.c: Include config.h.
|
|
(main): Reformatted version string. Include target alias. Don't
|
|
print if not requested (i.e., unknown -v argument).
|
|
|
|
* as.c (stralloc): Deleted.
|
|
(main): Call strdup instead.
|
|
|
|
* configure.in: Handle all 68300 series chips.
|
|
* config/tc-m68k.c: Include config.h.
|
|
(md_assemble): Assume TARGET_CPU is defined. Accept some 68300
|
|
series cpus as defaults.
|
|
(md_parse_option): Accept some m68300 series CPUs as defaults.
|
|
|
|
Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
|
|
not already defined.
|
|
(main, got_sig): Use them.
|
|
* config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
|
|
values.
|
|
|
|
Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
|
|
support.
|
|
|
|
* config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
|
|
OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
|
|
(struct loc, struct proc, struct file): Moved to tc-mips.c within
|
|
#ifndef OBJ_ECOFF block, since ECOFF uses different versions.
|
|
* config/tc-mips.c: Rearranged for ECOFF support. Added
|
|
prototypes for all static functions. Moved existing minimal
|
|
debugging format support info #ifndef OBJ_ECOFF blocks.
|
|
(macro_build_lui): Eliminated sign_extend argument, because ECOFF
|
|
does not support a non sign extended high 16 bits reloc. Adjusted
|
|
all callers accordingly.
|
|
(tc_get_register): Renamed from get_register, and made non-static.
|
|
|
|
* config/mips-big.mt, config/mips-lit.mt: New files. Define
|
|
TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
|
|
respectively.
|
|
* configure.in (mips-*-bsd*): Use gas_target mips-lit.
|
|
(mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
|
|
obj_format ecoff and gas_target mips-lit or mips-big.
|
|
|
|
Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* version.c: Bump to version 2.0.1.
|
|
|
|
Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* write.c (chain_frchains_together): Check that seg_info (section)
|
|
is not NULL.
|
|
(write_object_file): Call obj_frob_file after setting the symbols,
|
|
not before.
|
|
|
|
Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* Version 2.0 released.
|
|
|
|
Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
|
|
|
|
Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* read.h: Define stringer here.
|
|
read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
|
|
places.
|
|
|
|
Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* read.c (s_space): Multiply repeat count by mult, not fill.
|
|
|
|
Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* read.c: Include ctype.h.
|
|
|
|
Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
Patches from Eric Youngdale:
|
|
* make-gas.com: Find obstack.obj if it's not in the current
|
|
directory.
|
|
* read.c (s_ignore): Don't declare is_end_of_line. It's
|
|
redundant, and triggers a VMS gcc compiler bug.
|
|
|
|
* write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
|
|
current segment as an argument. (Ignored in all cases but VMS.)
|
|
All callers and definitions changed.
|
|
|
|
Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
|
|
case compile again.
|
|
|
|
Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
|
|
so "~0x80" won't be rejected.
|
|
|
|
* config/obj-elf.c: No longer include elf/reloc.h.
|
|
(obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
|
|
(obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
|
|
routines.
|
|
(obj_elf_xstab): New routine.
|
|
(obj_elf_set_size): Call as_warn, not fprintf. Pass desired
|
|
argument to s_ignore. Put "#if 0" around unused code.
|
|
(obj_pseudo_table): Use s_ignore instead of do-nothing routines.
|
|
Call elf_xstabs for .stabs and .xstabs operators.
|
|
|
|
* config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
|
|
|
|
* write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
|
|
present.
|
|
|
|
* configure.in: mips-bsd configuration was missing format spec.
|
|
Should use aout.
|
|
|
|
* Makefile.in (Makefile): Depends on configure.in.
|
|
|
|
* config/tc-mips.c (append_insn): Don't check for alignment of
|
|
frag in memory; alignment of instructions in section is a separate
|
|
matter.
|
|
|
|
* config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
|
|
C availability.
|
|
|
|
* listing.h: Always provide function declarations, not macros, so
|
|
pcc won't lose.
|
|
|
|
Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
|
|
|
|
* CONTRIBUTORS: Update Gilmore entry.
|
|
|
|
Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* frags.c (frag_init): New function.
|
|
(zero_address_frag, bss_address_frag): Now initialized at run
|
|
time.
|
|
* as.c (main): Call frag_init.
|
|
|
|
Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
|
|
Don't unget ch2 if we didn't get it.
|
|
|
|
Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* doc/Makefile.in (TEXIDIR): Updated for new layout.
|
|
|
|
* config/tc-sparc.c (s_common): Add support for ELF version.
|
|
(tc_gen_reloc) [BFD_ASSEMBLER]: New function.
|
|
* config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
|
|
New macros.
|
|
(md_convert_frag): New macro.
|
|
|
|
* config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
|
|
symbol, fix the offset so "+2" isn't required.
|
|
|
|
* config/tc-i960.c (line_comment_chars, line_separator_chars):
|
|
Define as common/bss.
|
|
(op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
|
|
initializers are sufficient.
|
|
|
|
* config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
|
|
(TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
|
|
(S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
|
|
(S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
|
|
* config/obj-aout.c: Use PARAMS macro for declarations. Remove
|
|
"IGNORE_DEBUG" conditional, since both branches are identical.
|
|
Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
|
|
referencing symbol structure members.
|
|
(obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
|
|
|
|
* as.h (struct frag): Reordered a couple of fields for better
|
|
packing.
|
|
|
|
* write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
|
|
section info.
|
|
(write_contents) [BFD_ASSEMBLER]: New function.
|
|
(write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
|
|
fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
|
|
obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
|
|
(fixup_segment): Make sure common-section symbols get treated the
|
|
same as undefined symbols.
|
|
(fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
|
|
bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
|
|
section info.
|
|
* write.h (fix_new): Update prototype.
|
|
|
|
* tc.h (md_operand, md_convert_frag, tc_headers_hook,
|
|
md_section_align, md_undefined_symbol): Don't provide prototypes
|
|
if these are defined as macros.
|
|
(md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
|
|
section passed.
|
|
|
|
* symbols.c (symbol_new): Argument NAME is now pointer to const.
|
|
Simplified STRIP_UNDERSCORE code. Remove assumptions about null
|
|
pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
|
|
BFD symbol.
|
|
(colon): Display other/desc fields of redefined symbol only if
|
|
S_GET_OTHER and S_GET_DESC are defined.
|
|
(symbol_make): Argument NAME is now pointer to const.
|
|
(symbol_find, symbol_find_base): Likewise.
|
|
(S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
|
|
* symbols.h: Fix prototypes for new const arguments. Add
|
|
prototypes for BFD_ASSEMBLER S_* functions.
|
|
|
|
* subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
|
|
for changing to an existing section.
|
|
(subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
|
|
called by subseg_new and subseg_set.
|
|
(subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
|
|
given section name and subseg number.
|
|
(subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
|
|
new section/subsection.
|
|
|
|
* read.c: Don't include ctype.h.
|
|
(cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
|
|
for now; should be machine-dependent.
|
|
|
|
* configure.in: Accept *-*-elf and *-*-solaris* as ELF format
|
|
targets, forcing BFD use.
|
|
|
|
Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c: Use PARAMS macro for static function
|
|
declarations. Use BFD_RELOC_ macros everywhere, with
|
|
compatibility macros declared for non-BFD mode.
|
|
(struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
|
|
instead of enum reloc_type.
|
|
(emit_sparc_reloc): Commented-out function deleted.
|
|
(md_convert_frag): Deleted.
|
|
(tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
|
|
(md_apply_fix): Changed calling sequence (conditionally) for BFD
|
|
version.
|
|
* config/tc-sparc.h (md_convert_frag): New macro.
|
|
|
|
* config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
|
|
not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
|
|
of referencing fields directly.
|
|
|
|
* write.c (cvt_frag_to_fill): New function; extracted from
|
|
write_object_file.
|
|
(write_object_file) [! BFD_ASSEMBLER]: Call it.
|
|
(relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
|
|
and set its size and flags.
|
|
|
|
* struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
|
|
fields with BFD equivalents. Turn on back-pointers, and add
|
|
target-specific fields at end.
|
|
|
|
Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* config/obj-coffbfd.c (fill_section): Don't set vaddr here.
|
|
(write_object_file): Set it here instead, so that fixup_segment
|
|
can see the correct value.
|
|
|
|
Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* write.c (write_object_file): Check for errors and warnings and
|
|
bail out before processing contents.
|
|
(chain_frchains_together_1): New function, does most of the work
|
|
of remove_subsegs.
|
|
(chain_frchains_together) [BFD_ASSEMBLER]: New function.
|
|
(remove_subsegs) [! BFD]: Call it.
|
|
(write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
|
|
structures and routines.
|
|
|
|
* config/obj-elf.*: New files.
|
|
|
|
* config/mips.mt, config/rs6000.mt: Deleted.
|
|
|
|
* config/h8300.mt: Don't specify compiler here.
|
|
|
|
* config/z8k.mt: The z8k code depends on the z8k opcode table,
|
|
not the h8300 one.
|
|
* config/tc-z8k.h: Comment fix.
|
|
|
|
* write.c: Reordered some functions for better inlining.
|
|
(fixup_segment): Linkrelax code is no longer conditional on
|
|
TC_I960.
|
|
|
|
Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
|
|
obj-coffbfd.h}: support for the H8/500
|
|
|
|
Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
|
|
* write.c (write_object_file): Not here.
|
|
(fix_new): Initialize fx_addnumber.
|
|
|
|
* listing.c: Don't include target-cpu.h explicitly, since as.h
|
|
includes it.
|
|
|
|
Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
|
|
*_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
|
|
(struct fix): Reordered fields for compactness and efficiency.
|
|
Converted some logical fields to 1-bit fields.
|
|
|
|
* config/obj-aout.h: Use PARAMS.
|
|
[BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
|
|
N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
|
|
|
|
* read.c: Don't include listing.h; as.h includes it. Removed
|
|
DONTDEF code.
|
|
[BFD_ASSEMBLER]: Include subsegs.h.
|
|
(old_buffer, new_broken_words): Default initialization is
|
|
sufficient.
|
|
|
|
* output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
|
|
to 0, define stdoutput.
|
|
(output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
|
|
Call bfd_set_arch_mach.
|
|
(output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
|
|
bfd_close_all_done. Call bfd_perror on failure.
|
|
(output_file_append) [BFD_ASSEMBLER]: Don't define.
|
|
|
|
* config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
|
|
|
|
* subsegs.h (segment_info_type): Always define. Omit field scnhdr
|
|
if not MANY_SEGMENTS. Define new field bfd_section if
|
|
BFD_ASSEMBLER.
|
|
(seg_info): New macro.
|
|
|
|
* expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
|
|
variables, and some irrelevant comments.
|
|
|
|
* Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
|
|
(LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
|
|
* configure.in: Permit --with-bfd-assembler now, with a warning.
|
|
Variable need_bfd is now a boolean, as is new variable bfd_gas.
|
|
Set BFDDEF and BFDLIB in Makefile when appropriate.
|
|
|
|
* as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
|
|
(main): Refer to flag_always_generate_output instead of
|
|
flagseen['Z'].
|
|
|
|
* as.c (main) [BFD_ASSEMBLER]: Open output bfd.
|
|
(*_section) [BFD_ASSEMBLER]: Define them.
|
|
(perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
|
|
set section flags when appropriate.
|
|
* as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
|
|
section is not absolute, undefined, or an assembler internal one.
|
|
(absolute_section, undefined_section): Always define.
|
|
* expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
|
|
switch statements into if-else trees.
|
|
* symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
|
|
SEG_BSS and SEG_DATA.
|
|
|
|
* as.h (frag_now_fix): New macro.
|
|
* symbols.c (colon): Use it.
|
|
|
|
Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
|
|
|
|
* config/tc-mips.c: Added mips support for mips-dec-bsd.
|
|
* config/tc-mips.h: Added mips support for mips-dec-bsd.
|
|
* config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
|
|
* config/mips-opcode.h: Added mips support for mips-dec-bsd.
|
|
* configure.in: Added mips support for mips-dec-bsd.
|
|
* atof-generic.c: Define TRUE and FALSE if not defined.
|
|
|
|
Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* version.c: Bumped version number to 1.93.05.
|
|
|
|
Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/obj-coff.c (obj_emit_relocations): Don't use #elif.
|
|
(obj_emit_lineno): Don't need return at end of void function.
|
|
(obj_symbol_new_hook): Ditto.
|
|
|
|
* config/tc-m68k.c: Removed some unused code.
|
|
(tc_aout_fix_to_chars): Array nbytes_r_length is now const.
|
|
|
|
* config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
|
|
offset field is set.
|
|
|
|
Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-sparc.c (architecture_requested, warn_on_bump,
|
|
md_relax_table): Use default zero initialization.
|
|
(s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
|
|
latter, instead of selecting with preprocessor conditionals.
|
|
|
|
Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* configure.in: recognise all sparclite variants
|
|
|
|
Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
|
|
accidentally changed to use subseg_change where it should have
|
|
been subseg_new.
|
|
|
|
Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* expr.c (operand): If character other than comma or newline is a
|
|
logical end-of-line character, use the newline case.
|
|
From Eric Youngdale:
|
|
(operand): Set X_add_number field for floating-point numbers.
|
|
(operand): Treat zero byte as end-of-operand.
|
|
|
|
* configure.in (per-target): Look for with_bfd_assembler option.
|
|
For now, only accept "no", until the merge is done.
|
|
|
|
Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
|
|
* as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
|
|
config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
|
|
* read.c: Finish conversion to S_* macros in the VMS only
|
|
parts of the program. Add "const" modifier to hex_value.
|
|
* as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
|
|
"ifdef OBJ_VMS".
|
|
* expr.c: Add "const" modifier to hex_value.
|
|
* symbols.c: Finish conversion to S_* macros in the VMS only
|
|
parts of the program. Add "const" modifier to
|
|
md_[long,short]_jump_size. Remove declaration of const_flag
|
|
(which will be declared in obj-vms.h).
|
|
* write.c: Add "const" modifier to md_[long,short]_jump_size.
|
|
Fix arguments to VMS_write_object_file.
|
|
* config-gas.com: New file. Script for VMS systems to set up the
|
|
configuration to build gas for VMS, and create config.status.
|
|
* make-gas.com: Redone to work with new scheme.
|
|
* obj-vms.c: Patch to fix bug where we were not correctly parsing the
|
|
stabs directives.
|
|
* obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
|
|
will swap bytes if needed on a big endian system. Use throughout
|
|
as needed.
|
|
* obj-vms.c (obj_aout_stab): Add code to generate listing file.
|
|
* obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
|
|
types of malformed stabs. Change parsing algorithm so that we are
|
|
more certain of having all of the information that we need on hand.
|
|
* obj-vms.c (final_forward_reference): New function, used to help
|
|
resolve the data types of as many struct elements as possible
|
|
when some part of the struct is not fully defined by the compiler.
|
|
* obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
|
|
stabs directives.
|
|
* obj-vms.c (VMS_write_object_file): Define all vtable psects
|
|
as symbols as well in the object file. Look for external functions
|
|
that start with "__vt.", and turn them into variables, since the
|
|
g++ compiler is incapable of doing this.
|
|
* tc-vax.c: Add '1' option for backward compatibility with older GCC
|
|
versions.
|
|
* bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
|
|
* input-scrub.c (as_where): Fix bug where as would crash if we did not
|
|
have the name of the source file yet.
|
|
* config/ho-vms.h: define HO_VMS, not HO_VAX.
|
|
|
|
Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* read.c (s_data): Always use "data_section", since it'll map to
|
|
SEG_DATA or SEG_E1 if needed.
|
|
(s_lcomm): Likewise with bss_section.
|
|
(s_fill): Use memset, not bzero.
|
|
|
|
Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* read.c: Deleted some code under "#ifdef DONTDEF" that was for
|
|
handling GDB symbol table data.
|
|
|
|
* config/obj-aout.h (segment_name): Delete definition.
|
|
(seg_name): Delete declaration.
|
|
* config/obj-bout.h (segment_name, seg_name): Ditto.
|
|
* config/obj-vms.h (segment_name, seg_name): Ditto.
|
|
* config/obj-coff.h (segment_name): Ditto.
|
|
* config/obj-coffbfd.h (segment_name): Ditto.
|
|
|
|
* Changes for BFD_ASSEMBLER:
|
|
* obj.h (obj_crawl_symbol_chain): Declare only if not
|
|
BFD_ASSEMBLER.
|
|
(obj_header_append, obj_pre_write_hook): Ditto.
|
|
* as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
|
|
(segT) [BFD_ASSEMBLER]: New typedef for "asection *".
|
|
(segment_name) If BFD_ASSEMBLER, look up BFD section name;
|
|
otherwise, use seg_name array.
|
|
(seg_name): Declare only if not BFD_ASSEMBLER.
|
|
(section_alignment): Declare only if not BFD_ASSEMBLER.
|
|
(big_section, reg_section, pass1_section, diff_section,
|
|
absent_section, text_section, data_section, bss_section): If
|
|
BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
|
|
mapping to segT enum values.
|
|
(tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
|
|
if these are used or defined, if BFD_ASSEMBLER.
|
|
(subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
|
|
subseg_new split into two functions.
|
|
(SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
|
|
|
|
* as.h (volatile): Don't define if already defined.
|
|
(had_errors, had_warnings): Provide prototypes for ANSI C even if
|
|
NO_STDARG.
|
|
(as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
|
|
declare with format attribute for -Wformat checking.
|
|
|
|
Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* app.c, config/tc-*.c: Don't include read.h, since it is already
|
|
included by as.h.
|
|
|
|
* These are based on patches from Minh Tran-le
|
|
<mtranle@paris.intellicorp.com>.
|
|
* configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
|
|
obj_format coffbfd and gas_target i386coff for target.
|
|
(i[34]86-*-isc*): New host (uses sysv).
|
|
* config/i386aix.mt: Removed (no longer used).
|
|
* config/mh-i386aix (RANLIB): Use true rather than /bin/true.
|
|
(MINUS_G): Removed.
|
|
(LDFLAGS): Added, defined as -shlib.
|
|
* config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
|
|
* config/te-sco386.h (LOCAL_LABEL): Don't define.
|
|
(DOT_LABEL_PREFIX): Define.
|
|
* expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
|
|
name rather than L0\001.
|
|
* read.c (s_lcomm): Make a frag in SEG_BSS rather than using
|
|
local_bss_counter.
|
|
* symbols.c, symbols.h (local_bss_counter): Removed.
|
|
* write.c (write_object_file): bss no longer uses
|
|
local_bss_counter. Pass correct data and bss size to
|
|
VMS_write_object_file.
|
|
* config/obj-vms.c (VMS_write_object_file): Accept bss size as
|
|
argument, rather than using local_bss_counter.
|
|
* config/tc-m88k.c (s_bss): Don't use local_bss_counter.
|
|
* config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
|
|
* config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
|
|
(size_section): Restored sanity check.
|
|
(do_relocs_for): Base section address on s_paddr rather than
|
|
computing it. Adjust a29k R_IHIHALF special case to account for
|
|
section paddr (used to require paddr to be zero). If there are no
|
|
reclos, set s_relptr to 0. Set relocation size in object_headers.
|
|
(fill_section): Always set s_vaddr here, removing
|
|
ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
|
|
NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
|
|
Set STYP_INFO for .comment.
|
|
(coff_header_append): Use object headers and H_{SET,GET}_* macros.
|
|
Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
|
|
(crawl_symbols): Handle 8 character section name correctly. Use
|
|
H_{SET,GET}_* macros.
|
|
(do_linenos_for): Set lineno size in object_headers.
|
|
(write_object_file): Use H_{SET,GET}_* macros. Don't bother to
|
|
set s_vaddr here. If string_byte_count remains 4, set it back to
|
|
0, and only write strings out if there are some. Call
|
|
fill_section before do_relocs_for and do_linenos_for.
|
|
(obj_coff_section): Handle optional quoted second argument giving
|
|
section characteristics.
|
|
(obj_coff_bss): Added to handle .bss.
|
|
(obj_coff_ident): Added to handle .ident (puts string in .comment
|
|
section).
|
|
(obj_coff_lcomm): Put common symbols in .bss, not .data.
|
|
(fixup_mdeps): Change to segment. Call frag_wane after
|
|
md_convert_frag.
|
|
(fixup_segment): Explicitly check S_IS_COMMON before making 386
|
|
adjustment (already happened only for common symbols, but this is
|
|
clearer).
|
|
* config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
|
|
* config/tc-i386.c (s_bss): Don't use if I386COFF.
|
|
(md_pseudo_table): Ignore .optim and .noopt.
|
|
(tc_coff_sizemachdep): New function.
|
|
* config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
|
|
compatibility.
|
|
(LOCAL_LABEL): Removed definition.
|
|
(DOT_LABEL_PREFIX): Defined.
|
|
|
|
Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* app.c (app_push): Use memcpy, not bcopy.
|
|
(do_scrub_next_char): For \", return " not '.
|
|
(symbol_chars): Now const.
|
|
|
|
* expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
|
|
and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
|
|
|
|
* config/obj-coff.h: Don't use #elif.
|
|
|
|
* config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
|
|
have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
|
|
|
|
Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
|
|
already defined.
|
|
|
|
Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* app.c (do_scrub_begin): allow single quote strings if so
|
|
configured.
|
|
|
|
* config/*z8k*: checkpoint
|
|
|
|
Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* read.c (read_a_source_file): avoid calling xmalloc (0).
|
|
|
|
Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* listing.c: Call xmalloc, not malloc; don't declare malloc.
|
|
|
|
* Changes to support SCO 3.2v4:
|
|
* read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
|
|
SEG_BSS, fill with NOP_OPCODE.
|
|
* config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
|
|
* config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
|
|
using ZERO_BASED_SEGMENTS.
|
|
(fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
|
|
never set segment address for SEG_E2 (.bss) and don't write out
|
|
SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
|
|
(obj_coff_endef): Don't merge labels or symbols awaiting forward
|
|
definitions, and don't merge tags with non-tags. Check for .bf
|
|
rather than just checking whether the second character is b and
|
|
the third character is f.
|
|
(obj_coff_val): gcc can generate values which we don't handle
|
|
correctly; discard information for now, since it only affects the
|
|
debugging information.
|
|
(tag_find_or_name): Don't insert tags in the symbol table.
|
|
(yank_symbols): Don't merge labels.
|
|
(write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
|
|
already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
|
|
set segment address if ZERO_BASED_SEGMENTS.
|
|
(obj_coff_section): Accept and ignore a trailing quoted string, as
|
|
used in AT&T i386 syntax.
|
|
(fixup_segment): Take segment as argument. On the i386, adjust PC
|
|
relative addends by the segment vaddr.
|
|
* tc-i386.h: Define SUB_SEGMENT_ALIGN.
|
|
* tc-a29k.h: Define ZERO_BASED_SEGMENTS.
|
|
* tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
|
|
|
|
Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
|
|
|
|
* config/obj-coffbfd.c: Include libcoff.h.
|
|
|
|
* version.c: Now version 1.93.
|
|
|
|
Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
|
|
power-of-two alignment for .align.
|
|
|
|
* as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
|
|
and leave everything else alone.
|
|
|
|
Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* Makefile.in (as.new): Don't bother saving as.old.
|
|
|
|
* write.c: Conditionalize on OBJ_VMS, not VMS.
|
|
(magic_number_for_object_file): Don't define if OBJ_VMS.
|
|
|
|
* config/obj-vms.c: Changes for traditional C.
|
|
|
|
Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
|
|
|
|
* config/ho-generic.h (malloc, realloc): Declare.
|
|
|
|
* Lots of comment/whitespace changes.
|
|
|
|
* write.h (struct fix): Some fields reordered, narrowed.
|
|
|
|
* read.c (MASK_CHAR): Define using C types, not magic number.
|
|
|
|
* as.c, input-file.c: Deleted some unused code.
|
|
|
|
* app.c, as.h: Doc fix.
|
|
|
|
* flonum-konst.c, flonum-mult.c: Include ansidecl.h.
|
|
|
|
* as.h (xmalloc): Argument is long.
|
|
|
|
* xmalloc.c (error): Remove declaration; as.h takes care of it.
|
|
|
|
* doc/as.texinfo: Regrouped documentation of some command-line
|
|
options. Updated options documentation for m68k. Some minor
|
|
wording/punctuation changes.
|
|
|
|
Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* configure.in: Accept target OS "vms".
|
|
|
|
* symbols.c: Merged ANSI and non-ANSI function decls, using
|
|
PARAMS macro.
|
|
|
|
* xmalloc.c: Just include as.h, don't bother trying to figure out
|
|
other header files.
|
|
|
|
* strstr.c, strerror.c: Deleted.
|
|
* Makefile.in: Deleted references.
|
|
|
|
* config/tc-ns32k.c: Don't include header file for string
|
|
declarations; leave that to ho-*.h.
|
|
|
|
Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
|
|
|
|
* config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
|
|
imported from FSF sources.
|
|
|
|
* messages.c (strerror): Declare unconditionally.
|
|
|
|
* as.h: Delete alloca and register definitions.
|
|
|
|
* config/atof-ieee.c (mask): Now const.
|
|
|
|
* obstack.c, obstack.h: Deleted.
|
|
|
|
* as.h (flag_readonly_data_in_text): New flag.
|
|
* as.c (main): Set it for -R.
|
|
|
|
* as.h (flag_suppress_warnings): New flag.
|
|
* as.c (main): Set it for -W.
|
|
* messages.c (as_warn): Check it instead of flagseen['W'].
|
|
|
|
* as.h (flag_always_generate_output): New flag.
|
|
* as.c (main): Set it for -Z.
|
|
|
|
* config/tc-sparc.h: Define NEED_FX_R_TYPE.
|
|
* config/tc-a29k.h: Ditto.
|
|
* write.h (struct fix): Don't conditionalize fx_r_type field on TC
|
|
macros.
|
|
|
|
* as.h: Merged ANSI and non-ANSI function decls, using PARAMS
|
|
macro.
|
|
* bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
|
|
obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
|
|
write.h: Likewise.
|
|
* read.c: Likewise.
|
|
|
|
* xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
|
|
xrealloc from xrealloc.c.
|
|
* xrealloc.c: Deleted.
|
|
* Makefile.in (REAL_SOURCES, OBJS): Adjusted.
|
|
|
|
* configure.in: For host CPU a29k, rs6000, vax, consider using bsd
|
|
or vms ho- files.
|
|
|
|
* config/ho-sysv.h (setbuffer, HO_USG): Deleted.
|
|
|
|
* config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
|
|
don't initialize it with NULL.
|
|
|
|
* config/ho-vax.h (M_VAX): Deleted; was unused.
|
|
|
|
* README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
|
|
New files imported from FSF version, contributed by Eric Youngdale.
|
|
* README-vms-dbg, config/vms: Deleted.
|
|
|
|
* ChangeLog, config/ChangeLog: Merged.
|
|
|
|
* config/*tahoe*, configure.in: Tahoe support brought in from FSF
|
|
version.
|
|
|
|
* input-file.c (input_file_open): Eliminate call to setvbuf.
|
|
[USG] (setbuffer): Deleted macro.
|
|
|
|
Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* all files: Whitespace changes for GNU indentation style, done by
|
|
GNU `indent'. Some cleanup still needed, especially of comments.
|
|
|
|
* configure.in: No te-386bsd.h file exists; don't try to use it.
|
|
|
|
* obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
|
|
|
|
* tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
|
|
could be doing emulation.
|
|
|
|
Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
z8000 documentation
|
|
* doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
|
|
all modified.
|
|
|
|
Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
|
|
|
|
* subsegs.h: add extern to segment_info declaration.
|
|
|
|
* read.h: added extern declarations for comment_chars,
|
|
line_comment_chars, and line_separator_chars.
|
|
read.c, app.c: removed definitions of comment_chars,
|
|
line_comment_chars, and line_separator_chars.
|
|
|
|
* tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
|
|
still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
|
|
the register name.
|
|
(insert_reg): put REGISTER_PREFIX before register names before
|
|
putting them in the symbol table.
|
|
* tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
|
|
M68KCOFF.
|
|
|
|
* obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
|
|
section.
|
|
|
|
* atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
|
|
comment_chars, line_comment_chars and line_seperator_chars
|
|
consistently const, and always initialized them. Included read.h.
|
|
|
|
Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* tc-sparc.c (sparc_ip): Add code to flag error if an absolute
|
|
constant will not fit in an immediate field.
|
|
(md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
|
|
|
|
Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* obj-coff.c (callj_table): Delete global variable.
|
|
(obj_emit_relocations): Define it locally here, and only if
|
|
TC_I960 is defined.
|
|
|
|
* tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
|
|
(m68k_ip): Don't warn about bignum used as float bit-pattern.
|
|
|
|
* obj-coff.c: Replaced ANSI and non-ANSI function declarations
|
|
with a single set using PARAMS macro.
|
|
|
|
* tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
|
|
of 2.
|
|
|
|
* tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
|
|
|
|
* tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
|
|
so widening works consistently.
|
|
|
|
Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* version.c: Put conditional "const" before version_string, not
|
|
before dummy function for VMS. Now version 1.91.03.
|
|
|
|
* app.c (do_scrub_next_char): Need double-\ before `000' to show
|
|
printed rep of null character.
|
|
|
|
Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* obj-coffbfd.c (write_object_file): check return value of
|
|
bfd_close_all_done.
|
|
|
|
Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Support for i386-sysv.
|
|
obj-coffbfd.c (do_relocs_for, write_object_file): set segment
|
|
addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
|
|
be used to set them all to zero as was done before.
|
|
(fill_section): segment addresses now set in write_object_file.
|
|
(fill_section): Don't set STYP_NOLOAD for .bss section.
|
|
(fixup_segment): 386 uses strange common symbol format.
|
|
tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
|
|
compatibility with SVR3.2 linker.
|
|
* configure.in: i386-sysv and i386-sco use coffbfd.
|
|
|
|
* app.c (do_scrub_next_char): discard whitespace after a label.
|
|
|
|
Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
|
|
hosts, use the sysv configuration for solaris2
|
|
|
|
Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
fix i960+non-bfd coff bit rot.
|
|
* obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
|
|
support for C source listings. (obj_coff_endef): look in the right
|
|
part of the symbol for the symbol name
|
|
|
|
* tc-m68k.c (get_num): make it work for all segments, not just the
|
|
first three.
|
|
|
|
Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
|
|
|
|
* configure.in: recognize i386-*-bsd emulation.
|
|
|
|
Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
|
|
|
* configure.in: use the cpu-vendor-os triple for host and target
|
|
|
|
Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* obj-coffbfd.c (write_object_file): don't fixup for the z8k
|
|
* tc-z8k.c: lots of bug fixes
|
|
|
|
Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
|
|
#elif, since it is not supported by old compilers.
|
|
ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
|
|
couple of expressions in tc-m68k.c.
|
|
|
|
Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* read.c (cons): If NO_RELOC is defined, use it.
|
|
|
|
* tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
|
|
|
|
Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
|
|
local labels to start with a .) and set REGISTER_PREFIX to %.
|
|
tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
|
|
|
|
Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
|
|
|
|
* messages.c: Comment changes.
|
|
|
|
Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
|
|
|
|
* as.h: Test if __STDC__ is defined only, don't test its value.
|
|
* messages.c: If __STDC__ is not defined, define NO_STDARG.
|
|
|
|
Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
|
|
|
|
* listing.c (debugging_pseudo): Add stabs and stabn as things to
|
|
ignore.
|
|
|
|
Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
|
|
|
|
* obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
|
|
sections starting from zero, rather than making them consecutive.
|
|
This makes subsequent reloc calculations easier, esp if the object
|
|
format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
|
|
allocate lcomm in .data rather than in .bss. It seems that some
|
|
tools can't cope with a non-zero sized bss before linkage.
|
|
|
|
Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* tc-m68k.c: Replace "enum m68k_architecture" with "int"
|
|
throughout. That enum no longer means what we thought it meant.
|
|
|
|
* tc-m68k.c (md_assemble, md_parse_option): Handle new
|
|
"-mno-688[58]1" options.
|
|
|
|
* tc-m68k.c: Added CPU32 support.
|
|
|
|
Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* tc-m68k.c (m68k_ip): An(disp) is not pc relative.
|
|
|
|
Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
|
|
Change LIBDEPS dependence to LIBS.
|
|
|
|
Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in (install): if $(tooldir) exists, install as in
|
|
$(tooldir)/bin.
|
|
|
|
Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
|
|
.word is < -32768 or > 32767. The -J flag causes the error to be
|
|
ignored. This is to catch over-sized switches generated by gcc on
|
|
systems which don't support the broken .word hack.
|
|
as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
|
|
write.c (fixup_segment): check for signed .word overflow if
|
|
WARN_SIGNED_OVERFLOW_WORD.
|
|
|
|
* write.c (fixup_segment): fixed missing parens in expression
|
|
checking for byte or word overflow.
|
|
|
|
* obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
|
|
obj-coffbfd.c (fixup_segment): check for signed .word overflow if
|
|
WARN_SIGNED_OVERFLOW_WORD.
|
|
|
|
* obj-coffbfd.c (fixup_segment): fixed missing parens in
|
|
expression checking for byte or word overflow.
|
|
|
|
Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
Support for i386 coff
|
|
* obj-coffbfd.h : added stuff
|
|
* tc-i386.c (tc_coff_fix2rtype): new function
|
|
* tc-i386.h : new coff defines
|
|
|
|
Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* input-scrub.c (input_scrub_push): call input_file_begin, not
|
|
input_scrub_begin.
|
|
messages.c (as_perror): print ": " between the passed in error and
|
|
the strerror, like perror does.
|
|
|
|
Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in: use gas_target instead of modifying target_cpu.
|
|
From Steve Chamberlain:
|
|
Makefile.in: Handle m68*-*-coff*.
|
|
read.c, read.h: add mult argument to s_space
|
|
|
|
* tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
|
|
Motorola and MIT syntax; gas can now assemble either type of
|
|
file.
|
|
tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
|
|
From Steve Chamberlain:
|
|
m68kcoff.mt: for m68k COFF.
|
|
obj-coffbfd.c: (fixup_mdeps) added
|
|
(size_section) removed bad sanity check
|
|
(fill_section) added rs_machine_dependent case
|
|
(write_object_file) call fixup_mdeps
|
|
(fixup_segment) set fx_subsy to 0.
|
|
obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
|
|
handle m68k.
|
|
tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
|
|
pseudo ops.
|
|
|
|
Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* Makefile.in (LIBS): Include opcode library.
|
|
|
|
Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
|
|
including zero are accepted, pass +0.0.
|
|
|
|
Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in: map "as" through program_transform_name when
|
|
installing.
|
|
|
|
* doc/Makefile.in: map "as" through program_transform_name when
|
|
installing.
|
|
|
|
Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
|
|
|
|
Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
|
|
tc-i960.c (md_ri_to_chars): Always output bout object file in
|
|
little endian byte order (used to use endianness of host).
|
|
|
|
Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* config/tc-m68k.c (init_table): Now const. Always include 68851
|
|
data, so that "bc" is available to 68040 cache instructions.
|
|
Added "tt0", "tt1", and 68ec030 variants.
|
|
(md_assemble): Complain if 68000 (only) and 68881 are specified.
|
|
(enum _register): Added TT0, TT1.
|
|
(m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
|
|
line number correctly in "internal error" messages. Don't print
|
|
architecture-mismatch message for operand errors.
|
|
|
|
From Colin Smith (colin@wrs.com):
|
|
* config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
|
|
than install_operand.
|
|
|
|
Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* listing.c (buffer_line): rewind to the start of include
|
|
files, they might be included twice.
|
|
|
|
* z8k.c, z8k.h, z8k.mt: z8000 support stuff
|
|
|
|
Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in: defined TARGET_CPU for C code so that it can choose
|
|
one element of a family.
|
|
|
|
* tc-m68k.c: use TARGET_CPU to choose default cpu type.
|
|
|
|
* te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
|
|
so that we can assemble hand-written libgcc code.
|
|
|
|
Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
|
|
|
* messages.c (as_warn): Use fputs, not fprintf, with a buffer that
|
|
has already been formatted (but may still contain %-characters).
|
|
(as_bad): Likewise.
|
|
|
|
Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
|
|
written with indirection on the last two operands, which can be
|
|
either data or address registers. Added a new operand type 'r'
|
|
which accepts either register type. Added '(' to notend stuff in
|
|
tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
|
|
|
|
Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* as.h (enum _relax_state): Start off at one, not zero, to better
|
|
catch uninitialized-variable errors.
|
|
(linkrelax): Declare new variable.
|
|
|
|
* messages.c (warning_count, error_count): Default initializer is
|
|
sufficient.
|
|
|
|
* write.c: Merged some declarations, using PARMS macro.
|
|
(text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
|
|
data_last_frag): No longer static.
|
|
(write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
|
|
defined, call it. Change segments before calling fixup_segment.
|
|
(relax_align): If linkrelax, provide extra padding.
|
|
|
|
* obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
|
|
their not having symbols associated.
|
|
|
|
* tc-i960.c (norelax, instrument_branches): Default initializer is
|
|
sufficient.
|
|
(linkrelax): Delete variable definition.
|
|
(mem_fmt): Call fix_new with NO_RELOC.
|
|
(tc_bout_fix_to_chars): Handle alignment relocs.
|
|
(i960_handle_align): New function.
|
|
* tc-i960.h (linkrelax): Delete declaration.
|
|
(HANDLE_ALIGN): New macro; calls i960_handle_align.
|
|
(NEED_FX_R_TYPE, NO_RELOC): New macros.
|
|
|
|
Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/sparc.mt: New file. Grab sparc opcode table from bfd
|
|
library.
|
|
|
|
Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
|
|
|
|
* Makefile.in: always create installation directories. Removed
|
|
MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
|
|
FLAGS_TO_PASS to recursive makes.
|
|
|
|
* doc/Makefile.in: always create installation directories.
|
|
|
|
Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
|
|
being used with args swapped, causing occasional lossage when
|
|
refilling buffers after an include file.
|
|
|
|
Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* messages.c (as_tsktsk): Use correct ANSI form for stdarg
|
|
version. Discard bogus DONTDEF version.
|
|
(as_warn, as_bad, as_fatal): Likewise.
|
|
|
|
Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-m68k.c (m68k_ip): If instruction is invalid for the
|
|
selected architecture, print a message saying so and listing what
|
|
processors support it, rather than saying "operands mismatch".
|
|
|
|
Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
|
|
|
|
* config/ho-rs6000.h (M_RS6000): Don't define it.
|
|
(free): Declare it.
|
|
(BROKEN_ASSERT): Define it if not __STDC__.
|
|
|
|
Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* sparc.mt: New file.
|
|
|
|
Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
|
|
|
|
* tc-m68k.c: ".align N" means align to N-byte boundary *only*
|
|
if TN_SUN3; otherwise align to 2**N-byte bounary.
|
|
|
|
Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* read.c (s_fill): make the .fill size clamped error a warn and
|
|
fix bug where 0's were always placed.
|
|
|
|
* config/tc-h8300.c: if a :8 is seen after an operand, fill top
|
|
two bytes of any constant with 0xff:
|
|
|
|
Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-m68k.c (md_pseudo_table): fix the .align thing
|
|
the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
|
|
|
|
Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
|
|
|
|
* tc-m68k.c (try_index): Error if index scaling specified and
|
|
assembling for an older CPU than a 68020.
|
|
|
|
Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
|
|
fx_offset into account.
|
|
|
|
Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* configure.in (mips host): Accept "ultrix" with version number.
|
|
|
|
* expr.c (floating_constant): Separate "=-" to avoid confusing
|
|
ancient or broken compilers.
|
|
|
|
* config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
|
|
processor/opcode mismatch, so reword the error message.
|
|
(md_assemble): If no CPU has been set (even if FPU/PMMU
|
|
characteristics have been), default to 68020. Don't need extra
|
|
quotes around error string.
|
|
|
|
Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* read.c (potable): Revert sac's incorrect change made Jul 13.
|
|
Align really is supposed to be ptwo not nbytes.
|
|
|
|
Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
|
|
|
|
* Makefile.in: _Do_ include libiberty. (from sef)
|
|
|
|
Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
|
|
|
|
* expr.c (integer_constant): Handle "0f" and "0b" label references
|
|
properly.
|
|
|
|
Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* write.c (fixup_segment): if relaxing, don't do anything.
|
|
* config/obj-bout.[ch] : maintain the a_relaxable file header info
|
|
* config/tc-i960.c: new option -linkrelax
|
|
|
|
Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* expr.c (expr): allow SEG_BSS in expressions
|
|
* read.c (potable): align should be nbytes, not ptwo!
|
|
* write.c (write_object_file): extra glue for new bss attributes
|
|
(relax_segment): SEG_BSS is ok now
|
|
* config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
|
|
|
|
Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
|
|
|
|
* obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
|
|
|
|
Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
|
|
|
|
* configure.in: recognize m680x0 as having sun3 emulation mode for
|
|
vxworks environment.
|
|
|
|
|
|
Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
|
|
|
|
* Makefile.in: Add program_suffix (parallel to program_prefix)
|
|
|
|
Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* app.c (process_escape): new function to handle escapes the right
|
|
way, (do_scrub_next_char): use new function
|
|
* cond.c (s_ifdef): do ifdef/ifndef right
|
|
* read.c (s_fill): make the , expressions optional like the doc
|
|
says
|
|
* config/tc-h8300.[ch]: better warnings
|
|
|
|
Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* subsegs.c (subsegs_begin): create bss0_frchainP in the same was
|
|
as data0_frchainP
|
|
|
|
* write.c (write_object_file): various changes to handle data in
|
|
the BSS segment in much the same was as stuff in the DATA segment.
|
|
|
|
* tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
|
|
pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
|
|
68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
|
|
the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
|
|
it into SEG_BSS
|
|
|
|
Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* expr.c(expr): allow SEG_REGISTER in expressions.
|
|
* read.c(pseudo_set): register expressions can be the source of a
|
|
set.
|
|
* subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
|
|
goto SEG_TEXT (if a.out)
|
|
* write.c (write_object_file): If a.out don't use the old way for
|
|
-R.
|
|
* config/obj-a.out (s_sect): complain if the user tries to use a
|
|
subsegment with a value which might interfere with out -R hackery.
|
|
* config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
|
|
rather than use ugly if tree. (init_regtable): insert register
|
|
names into symbol table.
|
|
|
|
Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
|
|
|
|
* write.c (write_object_file): keep the fix_tail clean, which
|
|
fixes a bug in -R where relocations were being lost.
|
|
|
|
Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
|
|
|
|
* configure.in: recognize m680x0 as having sun3 emulation mode for
|
|
vxworks environment.
|
|
|
|
Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
|
|
|
|
* configure.in: recognize m680x0 as an m68k
|
|
|
|
Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
|
|
|
|
* configure.in: Recognize sparclite as a sparc variant.
|
|
|
|
* tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
|
|
-Asparclite flag.
|
|
|
|
Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* config/tc-a29k.c: lint
|
|
* listing.c, expr.c: patches from Andrew Smith
|
|
|
|
Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
|
|
|
|
* doc/Makefile.in: use m4 rather than gm4.
|
|
|
|
Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
|
|
calc the base of relocs correctly.
|
|
* tc-a29k.c (parse_operand): allow expressions to be in any section.
|
|
|
|
Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* as.c, write.c: use -K rather than -k for the broken word warning
|
|
option.
|
|
|
|
Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* Makefile.in: do not print recursion lines.
|
|
|
|
Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
|
|
|
|
* Makefile.in: the tooldir copy of gas goes directly in tooldir.
|
|
|
|
Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
|
|
|
|
* write.c (write_object_file): For b.out format, round up section
|
|
start addresses to match required alignment.
|
|
|
|
Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
|
|
|
|
* Makefile.in (install): Install into $(tooldir)/bin, since that's
|
|
where gcc looks for it.
|
|
|
|
Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
|
|
|
|
* Makefile.in: Changed some lines to be less confusing for some
|
|
makes.
|
|
|
|
* input-file.c: Conditionalize on _IOFBF, not VMS.
|
|
|
|
* read.c, write.c: Change a series of ifdef/elif to
|
|
ifdef/else/ifdef etc.
|
|
|
|
Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* symbols.c (fb_label_init): fix sizeof to memset.
|
|
|
|
Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* Makefile.in: install the man page.
|
|
|
|
* Makefile.in: pass down MAKEINFO explicitly on info.
|
|
|
|
* doc/Makefile.in: use $(MAKEINFO) not makeinfo.
|
|
|
|
Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
|
|
|
|
* flonum-const.c: renamed flonum-konst.c to stop dos name
|
|
conflict.
|
|
|
|
Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
|
|
tc-m68k.h to te-sun3.h.
|
|
|
|
Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* configure.in: vxworks68 gets te-sun3.h.
|
|
|
|
* expr.c: remove limitation that local_labels_dollar or
|
|
local_labels_fb must be < 10.
|
|
|
|
* symbols.c: remove local_labels_dollar, replace with a function
|
|
interface for a sparse array. All users adjusted.
|
|
|
|
* te-sun3.h: add LOCAL_LABELS_DOLLAR.
|
|
|
|
Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
|
|
|
|
* doc/Makefile.in: commented out line for building as-all.texinfo.
|
|
This is temporary.
|
|
|
|
* doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
|
|
|
|
Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* Makefile.in: added check target.
|
|
|
|
Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
|
|
|
|
* Makefile.in: added tooldir and program_prefix.
|
|
|
|
Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
|
|
|
|
* write.{c,h} (fix_new): Make these declarations consistent.
|
|
|
|
Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
|
|
|
|
* Makefile.in (strerror.o): Add rule so that broken Sun make can
|
|
work in subdirs.
|
|
|
|
Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
|
|
|
|
* read.c, obj-coffbfd.c : fix h8300 specific bit rot
|
|
|
|
* expr.c (operand): if can't work out what sort of operand it is,
|
|
then look through FLT_CHARS for a hint.
|
|
|
|
Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* Makefile.in, configure.in: removed traces of namesubdir,
|
|
-subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
|
|
copyrights to '92, changed some from Cygnus to FSF.
|
|
|
|
* doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
|
|
-subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
|
|
copyrights to '92, changed some from Cygnus to FSF.
|
|
|
|
Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
|
|
|
|
* expr.c: If an expression is single comma, then return with
|
|
SEG_ABSENT rather than an error - since the sparc front end does
|
|
really strange things with things like fbge,a
|
|
|
|
* as.h: include bfd.h if using many sections
|
|
* expr.c: LOCAL_LABELS_FB had been changed to lower case - so
|
|
local labels didn't work.
|
|
* listing.c (list_symbol_table): don't core dump when there's no
|
|
symbol there.
|
|
* write.c, write.h: call fix_new with the right number of args on
|
|
the H8.
|
|
* config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
|
|
errors nices
|
|
|
|
Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
|
|
|
|
* app.c: MRI compatibility - allow single quote to start a string.
|
|
* as.c: fix typo recently introduced.
|
|
* as.h : Don't include aout/reloc.h - it's not right for COFF!
|
|
* expr.c: Much rewriting, to accomodate MRI syntax for
|
|
expressions. Also easier to read now.
|
|
* listing.c: Put back defuns
|
|
* read.c: modified to accept MRI syntax, put back listing pseudo
|
|
ops so that an assembler built with NO_LISTING ignores list ops
|
|
rather than pukes.
|
|
* write.c, write.h: fixs - only keep a reloc type in a fix if the target
|
|
machine is a SPARC or a 29K.
|
|
* config/obj-aout.c: added s_sect pseudo op
|
|
* config/obj-coffbfd.c: lints, set the filehdr flags right and
|
|
fill in the timestamp.
|
|
* config/obj-coffbfd.h: Since we don't include aout/reloc.h
|
|
anymore, define all the relocs which the tc-<x> bit will use so we
|
|
can translate from them to the coff types.
|
|
* config/tc-a29k.c: reloc_type isn't ane enum any more
|
|
* config/tc-m68k.c: Added NO_RELOC definition.
|
|
|
|
Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
|
|
|
|
* Makefile.in: put header files before C source for TAGS; remove
|
|
references to non-existent syscalls.h.
|
|
|
|
* read.c, write.c subsegs.c: back out the .bss changes.
|
|
|
|
* obj-aout.c: do not include stab.gnu.h if NO_LISTING.
|
|
|
|
* tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
|
|
|
|
* a.out.h: removed.
|
|
|
|
Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
|
|
|
|
* symbols.c (local_label_name): symbols now start with ^A.
|
|
|
|
* read.c, subsegs.c, write.c obj-coff.c: added handling of
|
|
`.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
|
|
generate these sections. .align: will use NOP_OPCODE or 0
|
|
for padding. This is just for being nice to the
|
|
disassembler.
|
|
|
|
* expr.c (operand): changed to generate local label "\001L0"
|
|
starting with a ^A so that it is recognized as a local label.
|
|
|
|
* as.c (perform_an_assembly_pass): zero bss_fix_root, too.
|
|
|
|
* tc-i386.c: tc-i386.c: added handling of the following opcodes:
|
|
i/o opcodes - inb, inw, outb and outw. string manipulation with
|
|
att syntax - scmp, slod, smov, ssca, ssto.
|
|
|
|
* obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
|
|
to just after .file .
|
|
|
|
In obj_crawl_symbol_chain() where it tries to put the external
|
|
symbols apart, with the condition:
|
|
(!S_IS_DEFINED(symbolP) &&
|
|
!S_IS_DEBUG(symbolP) &&
|
|
!SF_GET_STATICS(symbolP))
|
|
it was moving too many symbols out. So I switch it back to the
|
|
condition:
|
|
(S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
|
|
|
|
In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
|
|
so that we don't use the F_RELFLG which make the linker complain
|
|
that somebody has stripped the relocation info.
|
|
|
|
Also, the AIX ld program require that the relocation table
|
|
is sorted by r_vaddr like the standard ATT assembler does.
|
|
|
|
[he also changed the sizeof(struct ...)'s into the coff
|
|
style FOOSZ macros. I'm not sure this is right, but I can't
|
|
remember why. xoxorich.]
|
|
|
|
Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
|
|
|
|
* Makefile.in, configure.in, doc: use the doc. Build it, install
|
|
it, clean it, etc.
|
|
|
|
Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
|
|
|
|
* read.c: white space and comments only.
|
|
|
|
* configure.in: use the new atof-ns32.c for ns32k.
|
|
|
|
* write.c: comment change only.
|
|
|
|
* tc-m88k.[hc]: pulled in from hack's unfinished work. These
|
|
aren't yet integrated.
|
|
|
|
* tc-i860.[hc]: blew off the dust. Something must still be done
|
|
about conflicting relocation types.
|
|
|
|
* tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
|
|
real thing.
|
|
|
|
* tc-i960.c, tc-sparc.c: white space and comments only.
|
|
|
|
* tc-a29k.h: delete duplicate macro definition.
|
|
|
|
* new file atof-ns32k.c copied from hack's last unreleased gas.
|
|
|
|
Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
|
|
|
|
* config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
|
|
rather than abort.
|
|
|
|
* nearly everything. flush ChangeLog, package as gas-1.92.1.
|
|
ChangeLog's prior to this are sketchy at best. I have logs.
|
|
They just aren't ChangeLogs.
|