949c91da47da1296968901f5955d58b8d0cc8c7a
[binutils-gdb.git] / gas / ChangeLog
1 Wed Feb 28 11:30:55 1996 Jeffrey A Law (law@cygnus.com)
2
3 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
4 the selector table.
5 (pa_chk_field_selector): Handle new field selectors for SOM.
6
7 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8
9 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
10 * configure: Rebuild.
11 * config/te-linux.h (LOCAL_LABELS_FB): Define.
12 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
13 "a.out-m68k-linux".
14 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
15 is defined.
16
17 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
18
19 * mpw-make.sed: Update to handle shared library support.
20
21 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
22
23 * config/tc-sparc.c (sparc_ip): Print all architectures that support
24 the insn on mismatch.
25
26 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
27
28 * configure.in: Add support for a29-coff.
29 * configure: Rebuild.
30
31 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
32
33 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
34 of the section when looking for the R_SH_USES fixup, because the
35 frag addresses have not yet been adjusted.
36
37 * gdbinit.in: Set a breakpoint on as_warn_where.
38
39 * config/tc-mips.c (macro): Add missing arguments to macro_build
40 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
41
42 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
43
44 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
45 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
46
47 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
48
49 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
50
51 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
52
53 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
54 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
55 Recognize [uU] format args as sparclet cpregs.
56
57 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
58
59 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
60 in bss_section.
61
62 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
63
64 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
65 well as S_IS_EXTERNAL.
66 (tc_fix_adjustable): Likewise.
67 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
68 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
69 early.
70 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
71 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
72
73 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
74
75 * config/tc-sparc.c (max_architecture): Change to sparclite for
76 32 bit arch.
77 (default_compatible): Delete.
78 (sparc_ffs): New function.
79 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
80 (sparc_ip): Rewrite architecture match and bump logic.
81
82 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
83
84 * configure.in: Check for 'do not mix' from native linker before
85 trying to use -rpath.
86 * configure: Rebuild.
87
88 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
89
90 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
91 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
92 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
93 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
94 is set.
95 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
96 to the symbol lnnoptr field, to get the correct file offset.
97
98 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
99
100 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
101 symbols that are not function, file, or section symbols to be
102 object types.
103
104 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
105
106 * configure: Set and substitute RPATH_ENVVAR.
107 * configure: Rebuild.
108 * Makefile.in (RPATH_ENVVAR): New variable.
109 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
110
111 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
112 doesn't need opcodes. If configuring shared, opcodes needs bfd.
113 * configure: Rebuild.
114
115 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
116
117 * read.c (s_mri_sect): Don't return '\0' in type. Set all
118 appropriate flags in BFD section.
119
120 * configure.in (m68k-*-psos*): New target.
121 * configure: Rebuild.
122 * config/te-psos.h: New file.
123 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
124 is defined.
125
126 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
127
128 From Alan Modra <alan@spri.levels.unisa.edu.au>:
129 * configure.in: Remove duplicate setting of cpu_type. Check
130 whether opcodes library is required for on all targets, not just
131 primary one.
132 * configure: Rebuild.
133
134 * config/tc-mips.c (mips_big_got): New static variable.
135 (s_extern): Don't declare.
136 (reg_needs_delay): New static function.
137 (macro_build): Permit GOT/CALL_HI/LO relocs.
138 (macro_build_lui): If place is not NULL, use the number in the
139 expression.
140 (load_address): Handle mips_big_got case.
141 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
142 store macros.
143 (OPTION_XGOT): Define.
144 (md_longopts): Add "xgot" if OBJ_ELF.
145 (md_parse_option): Handle -xgot.
146 (md_show_usage): Mention -xgot.
147 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
148 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
149
150 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
151
152 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
153 the byte relocation, point it to the low byte of the word.
154
155 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
156
157 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
158 * configure: Rebuild.
159
160 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
161
162 * configure.in: Recognize any sparc* cpu.
163 * configure: Regenerated.
164
165 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
166
167 * read.c (potable): Add "mri" and ".mri".
168 (s_mri): New function.
169 * read.h (s_mri): Declare.
170 * app.c (scrub_m68k_mri): New static variable.
171 (mri_pseudo): New static variable.
172 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
173 flag_m68k_mri. Initialize scrub_m68k_mri.
174 (mri_state, mri_last_ch): New static variables.
175 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
176 fields.
177 (app_push): Save new fields.
178 (app_pop): Restore new fields.
179 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
180 If TC_M68K, use a trivial state machine to look for occurrences of
181 the .mri pseudo-op, and change the mode appropriately.
182 * as.h (do_scrub_begin): Update prototype.
183 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
184 do_scrub_begin.
185 * config/tc-m68k.c (reg_prefix_optional_seen): New static
186 variable.
187 (m68k_mri_mode_change): New function.
188 (md_parse_option): Set reg_prefix_optional_seen.
189 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
190 (MRI_MODE_CHANGE): Define.
191 * doc/as.texinfo: Document .mri pseudo-op.
192
193 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
194 comment character.
195
196 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
197
198 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
199 * config/m68k-parse.h (enum pic_relocation): Define.
200 (struct m68k_exp): Add pic_reloc field.
201 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
202 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
203 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
204 otherwise.
205 * config/tc-m68k.c: Delete definition of NO_RELOC.
206 (struct m68k_it): Add pic_reloc field.
207 (add_fix): Copy over pic_reloc field.
208 (md_pseudo_table): Interpret .align parameter as byte count.
209 (mote_pseudo_table): Likewise.
210 (tc_m68k_fix_adjustable): New function.
211 (get_reloc_code): New function.
212 (md_assemble): Use it as last argument to fix_new_exp.
213 (md_apply_fix_2): For a relocation against a symbol don't put the
214 addend into the data.
215 (tc_gen_reloc): Different addend computation for OBJ_ELF.
216 (m68k_ip): Don't relax an operand that requires pic relocation.
217 (md_begin): Align .text, .data and .bss on 4 byte boundary by
218 default.
219 * write.c (fixup_segment): Don't add symbol value to addend if
220 TC_M68K and OBJ_ELF.
221 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
222 (motorola_operand): Add rule for `(zapc, EXPR)'.
223
224 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
225
226 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
227 *really* is permissible before the comma.
228
229 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
230
231 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
232 inserting nop instructions.
233
234 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
235
236 * config/te-aux.h: Change include of aux.h to aux-coff.h.
237
238 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
239
240 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
241 class setting for a CALLNAME symbol in COFF.
242
243 * read.c (potable): Pass negative numbers for new .balign[wl] and
244 .p2align[wl] pseudo-ops.
245 (s_align_bytes): Treat a negative argument as specifying the fill
246 length.
247 (s_align_ptwo): Likewise.
248
249 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
250
251 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
252 (do_align): Take new len parameter. Change all callers. Pass it
253 to md_do_align.
254 (s_align_bytes): Arg now indicates the length of the fill pattern.
255 (s_align_ptwo): Likewise.
256 * config/obj-coff.c (write_object_file): Pass length to
257 md_do_align.
258 * config/tc-i386.h (md_do_align): Take new len parameter.
259 * config/tc-m88k.h (md_do_align): Likewise.
260 * config/tc-m88k.c (m88k_do_align): Likewise.
261 * config/tc-sh.h (md_do_align): Likewise.
262 * config/tc-sh.c (sh_do_align): Likewise.
263 * doc/as.texinfo: Document new pseudo-ops.
264
265 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
266 done in cvt_frag_to_fill.
267
268 * config/tc-sh.h (sh_do_align): Declare.
269 (md_do_align): Define.
270 * config/tc-sh.c (sh_do_align): New function.
271
272 * ecoff.c (ecoff_build_lineno): Don't try to store the address
273 difference if the next address is before the current one.
274
275 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
276 (archs): Initialize new field.
277 (m68k_ip): Don't list alias names when listing CPUs which support
278 an instruction.
279
280 * as.c (main): Call parse_args before read_begin.
281 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
282 front of generated pseudo-ops.
283 * read.c (potable): Ignore "name".
284 (s_app_file): Permit a single quote after the string, since one
285 may appear in m68k MRI mode.
286
287 * configure.in: Check for --enable-shared. If linking against
288 shared BFD and opcodes, fix library name on SunOS, and try to set
289 -rpath reasonably.
290 * configure: Rebuild.
291
292 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
293
294 * as.h (flag_m68k_mri): Declare.
295 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
296 * Many files: For MRI syntax that is specific to the m68k MRI
297 assembler, check flag_m68k_mri rather than flag_mri or
298 MRI_MODE_NEEDS_PSEUDO_DOT.
299
300 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
301
302 * config/tc-i960.c (ARCH_HX): Define.
303 (arch_tab): Add HX.
304 (targ_has_sfr): Handle ARCH_HX.
305 (targ_has_iclass): Handle ARCH_HX.
306 (tc_coff_fix2rtype): Add return 0 to avoid warning.
307 (tc_headers_hook): If the architecture was specified explicitly,
308 use it when setting the flags. Set the extern variable coff_flags
309 rather than headers->filehdr.f_flags, since the latter is set
310 unconditionally in obj-coff.c.
311 (i960_handle_align): Remove unused variable fixp.
312
313 Support for building bfd and opcodes as shared libraries, based on
314 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
315 * configure.in: Set OPCODES and BFD to search directories.
316 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
317 * configure: Rebuild.
318 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
319 (LIBDEPS): New variable.
320 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
321 $(HLDFLAGS) in link.
322 (check): Set LD_LIBRARY_PATH in the environment.
323
324 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
325
326 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
327 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
328 read-only, not read/write.
329
330 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
331
332 * Makefile.in (INSTALL_XFORM): Remove -e.
333
334 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
335
336 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
337 than comparing S_GET_SEGMENT to undefined_section.
338 (write_object_file): Skip symbols which were equated to an
339 undefined or common symbol.
340 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
341 S_IS_COMMON rather than comparing S_GET_SEGMENT to
342 undefined_section.
343 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
344 or S_IS_COMMON call S_GET_VALUE.
345 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
346 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
347 to an undefined or common symbol, convert the reloc to be against
348 the target symbol.
349 (obj_crawl_symbol_chain): Skip symbols which were equated to an
350 undefined or common symbol.
351 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
352 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
353 to an undefined or common symbol, convert the reloc to be against
354 the target symbol.
355 (obj_crawl_symbol_chain): Skip symbols which were equated to an
356 undefined or common symbol.
357 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
358 S_IS_COMMON rather than comparing S_GET_SEGMENT to
359 undefined_section.
360 (yank_symbols): Skip symbols which were equated to an undefined or
361 common symbol.
362
363 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
364
365 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
366 * config/obj-bout.h (S_IS_LOCAL): Likewise.
367
368 * configure.in: Make sure we only add m68k-parse.o to
369 ${extra_objects} once, no matter how many m68k targets have been
370 enabled.
371 * configure: Rebuild.
372
373 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
374
375 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
376 * configure: Rebuild.
377
378 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
379
380 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
381 * doc/c-m68k.texi: Document .extend and .ldouble.
382
383 * configure.in (m68*-apple-aux*): New target.
384 * config/te-aux.h: New file.
385 * config/obj-coff.c (compare_external_relocs): New static function
386 if TE_AUX.
387 (do_relocs_for): Sort relocs if TE_AUX.
388 (fixup_segment): If TE_AUX, store common symbol value in segment.
389 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
390
391 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
392
393 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
394
395 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
396 BSF_FUNCTION.
397 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
398 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
399 symbol.
400 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
401 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
402 an undefined symbol and the size of a function symbol.
403 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
404 for all common symbols.
405
406 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
407
408 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
409 scaling of index.
410
411 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
412 m68k.
413
414 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
415
416 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
417 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
418
419 * ecoff.c (localsym_t): Add addend field.
420 (add_ecoff_symbol): Add addend argument. Change all callers.
421 (coff_sym_value): Make static.
422 (coff_sym_addend): New static variable.
423 (ecoff_directive_def): Initialize coff_sym_addend.
424 (ecoff_directive_val): Accept symbol + constant.
425 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
426 (ecoff_build_symbols): Include the addend in the symbol value.
427
428 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
429
430 * config/tc-ppc.c (md_assemble): Ignore overflow on
431 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
432
433 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
434
435 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
436 bytes in size, so offset appropriately in big endian mode when
437 writing the bottom 2 bytes.
438
439 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
440
441 * config/tc-sparc.c (default_compatible): New static local.
442 (md_begin): Initialize it. Rewrite warn_on_bump handling.
443 (sparc_ip): If no architecture or -bump specified, don't mark as
444 mismatched those in default_compatible.
445
446 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
447
448 SCO ELF support from Robert Lipe <robertl@arnet.com>:
449 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
450 * configure: Rebuild.
451 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
452 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
453 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
454 (sco_id): Declare if SCO_ELF.
455
456 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
457
458 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
459 ({max,warn_after}_architecture): New static locals.
460 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
461 If both architecture and -bump requested, set max_architecture to max.
462 (sparc_md_end): Simplify.
463 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
464 Rewrite code to bump architecture and check for conflicts.
465 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
466 with Solaris assembler.
467 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
468 (md_show_usage): Update.
469
470 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
471
472 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
473
474 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
475
476 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
477 #ifdef sparcv9 when choosing value.
478 (ENV64): Delete.
479 (md_end): Define.
480 (sparc_md_end): Declare.
481 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
482 (initial_architecture): New static local.
483 (can_bump_v9_p): Likewise.
484 (NO_V9): Delete all occurrences.
485 (sparc_md_end): New function.
486 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
487 Don't bump architecture to v9 unless can_bump_v9_p set.
488 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
489 * configure.in (sparc64 target cpu): Don't set obj_format here.
490 (SPARC_V9): Renamed from sparcv9.
491 (sparc64-*-elf*): Define SPARC_ARCH64.
492 * configure: Regenerated.
493 * acconfig.h (SPARC_V9): Renamed from sparcv9.
494 (SPARC_ARCH64): Add.
495 * conf.in: Regenerated.
496 * config/vmsconf.h: Update.
497
498 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
499
500 * config/tc-mips.c (load_register): Optimise "dli" loads.
501 (md_show_usage): add "-mcpu=vr4100" to help text.
502
503 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
504
505 * symbols.c (resolve_symbol_value): If a symbol is equated to an
506 undefined symbol, preserve the X_op of O_symbol.
507 (S_GET_VALUE): Fix check to permit this case.
508 * write.c (write_relocs): If a reloc is against an undefined
509 symbol equated to another symbol, change the reloc to be against
510 the latter symbol.
511 * config/obj-coff.c (do_relocs_for): Likewise.
512
513 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
514 XMC_PR.
515
516 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
517
518 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
519 computer is PowerPC.
520
521 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
522
523 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
524 mentioned in the eabi.
525
526 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
527
528 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
529 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
530
531 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
532
533 * config/tc-ppc.c (mapping): Add more relocation suffixes.
534
535 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
536
537 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
538 as a section it is ok to have unadorned -mrelocatable pointers in.
539
540 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
541
542 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
543 #ifdef OBJ_ELF.
544
545 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
546
547 * config/obj-elf.c (obj_elf_section): Add hooks so machine
548 dependent section attributes can be handled.
549
550 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
551 macros to add support for exclude section flag and ordered section
552 type.
553
554 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
555 functions to add support for exclude section flag and ordered
556 section type.
557
558 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
559
560 * subsegs.c (section_symbol): Don't try to look up the section
561 symbol in the hash table. It should be possible to have a symbol
562 with the same name as a section, but no connection to it.
563
564 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
565 From James Carlson <carlson@xylogics.com>.
566
567 * expr.c (operand): Skip whitespace after a close parenthesis.
568 From James Carlson <carlson@xylogics.com>.
569
570 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
571
572 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
573 as_warn_where for relocation overflow.
574 (parse_reg): Accept register name only if next character is
575 not alphanumeric.
576
577 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
578
579 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
580 addresses for static variables.
581
582 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
583
584 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
585 and xgot give the old toc16 relocation.
586 (md_apply_fix3): Support all GOT relocations.
587
588 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
589
590 * config/tc-mips.c (load_address): Correctly handle a constant in
591 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
592
593 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
594
595 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
596 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
597 (build_Mbytes): Handle REG_B.
598
599 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
600
601 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
602
603 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
604
605 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
606
607 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
608
609 * config/obj-coff.c (write_object_file): Set the s_align field to
610 the number of bytes, rather than to the power of 2.
611
612 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
613
614 * Makefile.in (DISTCLEAN_HERE): New variable.
615 (distclean): Use it.
616 (maintainer-clean): Depend upon clean-here rather than clean,
617 distclean, and clean-info. Run make maintainer-clean in doc.
618 Remove files listed in DISTCLEAN_HERE.
619 * doc/Makefile.in (maintainer-clean realclean): Split out from
620 distclean. Depend upon clean-info and distclean.
621
622 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
623
624 * mac-as.r: Fix copyright and version strings.
625 (cfrg): Use PROG_NAME instead of literal name.
626
627
628 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
629
630 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
631 call it.
632 * config/tc-a29k.h (tc_unrecognized_line): Define.
633 * config/tc-a29k.c (a29k_unrecognized_line): New function.
634 (md_operand): Handle a29k style local dollar labels.
635
636 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
637
638 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
639
640 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
641
642 * read.c (s_fill): If md_flush_pending_output is defined, call
643 it.
644
645 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
646
647 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
648 Treat rs_align_code like rs_align.
649
650 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
651
652 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
653 converting an absolute address into a PC-relative one.
654
655 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
656
657 * mpw-config.in: Don't always use te-generic.h for emulation.
658 (powerpc-apple-macos): Use emulation te-macos.h.
659 start-sanitize-gm
660 (mips-gm-magic): New configuration.
661 end-sanitize-gm
662 * mpw-make.sed (install, install-only): Edit in Mac-specific
663 install procedure.
664
665 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
666
667 * configure.in: Improve message about unsupported ELF targets.
668 * configure: Rebuild.
669
670 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
671 pattern is zero. From Manfred Hollstein.
672
673 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
674
675 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
676 the various idata sections, we check the name on the .section pseudo.
677
678 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
679
680 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
681 add section's paddr to add_number; compatibility to native as and
682 ld forbids.
683
684 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
685
686 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
687
688 * hash.c (struct hash_entry): Moved here...
689 * hash.h (struct hash_entry): ...from here.
690
691 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
692 if it's already known to be null.
693
694 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
695
696 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
697 bit relocs converted to PC relative relocs. This turned out to
698 add the offset from the beginning of .text twice.
699
700 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
701
702 * stabs.c (s_stab_generic): In 's' case, free string from
703 obstack.
704
705 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
706 sy_name_offset.
707 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
708 Ditto.
709
710 * subsegs.h (segment_info_type): Make bitfields unsigned.
711
712 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
713 and move them together. On most systems this will reduce the
714 structure size by one word.
715 (operatorT): Define O_max.
716 * expr.c (expr_begin): Verify that X_op is wide enough to hold
717 O_max.
718
719 * read.c (pop_insert): Print error returned by hash table
720 insertion code.
721
722 * as.c (dump_statistics): Split out from main; dump some hash
723 table stats and target-specific stats.
724 (start_time): No longer automatic to main.
725 (main): Set file-level start_time and call dump_statistics at
726 exit. Exit by calling xexit.
727 (show_usage): Make --statistics description less specific.
728 * subsegs.c (subsegs_print_statistics): New function.
729 * write.c (write_print_statistics): New function.
730 (n_fixups): New static variable.
731 (fix_new_internal): Increment it.
732 * read.c (read_print_statistics): New function.
733 * read.h (read_print_statistics): Declare.
734 * symbol.c (symbol_print_statistics): New function.
735 * symbol.h (symbol_print_statistics): Declare.
736 * hash.c (hash_print_statistics): New function.
737 * hash.h (hash_print_statistics): Declare.
738 * config/tc-i386.c (i386_print_statistics): New function.
739 * config/tc-i386.h (i386_print_statistics): Declare.
740 (tc_print_statistics): New macro.
741 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
742 exit.
743
744 * hash.c (DELETED): Rewrite to use a valid but unique address.
745 (START_POWER): Reduce to 10.
746 (enum stat_enum): New enumerator, replacing STAT_* index macros.
747 Add new values for counting strcmp calls.
748 (GROW_FACTOR): New macro.
749 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
750 of nesting blocks.
751 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
752 (hash_new): Use FULL_VALUE.
753 (struct hash_control): Definition moved here.
754 (hash_code): Don't mask to low bits.
755 (hash_ask): Mask returned hash code here. Check hash value before
756 calling strcmp; count strcmp calls.
757 * hash.h (struct hash_control): Declare, don't define, here.
758 (HASH_STATLENGTH): Deleted.
759 (struct hash_entry): Add field for hash code.
760 (hash_say, hash_apply): Don't declare.
761
762 * hash.c (destroy): Return void.
763 (applicatee): Ditto.
764 (main): Fix declarations.
765 (hash_apply): Return void. Argument `function' returns void. Put
766 inside "#ifdef TEST".
767 (hash_say): Define only if TEST is defined.
768 * hash.h (hash_apply, hash_say): Declarations deleted.
769
770 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
771
772 * configure: Rebuild with autoconf 2.7.
773
774 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
775
776 * aclocal.m4 (AC_PROG_CC): Remove local definition.
777 * configure: Rebuild with autoconf 2.6.
778
779 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
780
781 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
782 (ppc_stabx): Don't increment ppc_debug_name_section_size.
783 (ppc_bc): Likewise.
784 (ppc_frob_file): Remove.
785 * config/tc-ppc.h (tc_frob_file): Don't define.
786 (ppc_frob_file): Don't declare.
787
788 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
789
790 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
791 * config/alpha-opcode.h: Include one-operand variants of jmp and
792 jsr.
793
794 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
795 with te-delta.h in 8.3 file systems.
796 * configure.in: Adjusted.
797
798 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
799
800 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
801
802 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
803 number.
804 * expr.c (operand): Handle MRI suffixes after unadorned 0.
805
806 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
807
808 Version 2.6 released.
809 * Makefile.in (VERSION): Updated to 2.6.
810
811 * config/obj-coff.c (write_object_file): Change use of md_do_align
812 to pass a pointer rather than a fill value, to match other uses.
813
814 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
815
816 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
817
818 * as.c (main): Move md_end call to just after call to
819 perform_an_assembly_pass. Delete cpu-specific code here.
820 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
821 start-sanitize-rce
822 * config/tc-rce.c (md_end): Deleted.
823 * config/tc-rce.h (md_end): New macro, calls dump_literals.
824 end-sanitize-rce
825 * config/tc-arm.c (md_end): Unused function deleted.
826 * config/tc-ns32k.c (md_end): Ditto.
827
828 * config/tc-i386.c (i386_align_code): New function, moved here
829 from HANDLE_ALIGN macro.
830 * config/tc-i386.h (HANDLE_ALIGN): Call it.
831
832 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
833
834 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
835 before comparing
836
837 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
838
839 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
840 multi-byte nops to avoid changing gcc. The necessary gcc change
841 might break old assemblers.
842
843 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
844
845 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
846 generate optimal multi-byte nop instructions for ".align n"
847 ".align n,0x90", and aligns requiring more than 15 bytes of
848 padding still generate multiple 0x90's as before.
849
850 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
851
852 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
853
854 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
855
856 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
857 * configure: Update.
858 * mpw-make.sed: Reorder commands to make sed happier.
859 * config/te-macos.h: New file.
860 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
861
862 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
863
864 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
865 conditional branches.
866 (md_apply_fix): Likewise.
867
868 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
869
870 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
871 generate a reloc which the linker will not handle correctly. Fix
872 overflow checking--R_IREL is 18 bits, not 17.
873
874 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
875
876 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
877 from a PC relative reloc if TC_A29K.
878
879 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
880 code depends upon it.
881
882 * config/tc-a29k.c (md_operand): Handle $float, $double, and
883 $extend. Based on code from Eric Freudenthal
884 <freudenthal@nyu.edu>.
885 * config/tc-a29k.h (LEX_DOLLAR): Define.
886 * read.c (LEX_DOLLAR): Define if not defined.
887 (lex_type): Use LEX_DOLLAR.
888
889 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
890
891 * configure.in (a29k-nyu-sym1): New target, just like other a29k
892 targets.
893
894 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
895
896 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
897
898 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
899
900 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
901 used only by "dlltool.c".
902
903 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
904
905 * config/tc-alpha.c: Undefine inline if not __GNUC__.
906 (md_pseudo_table): Don't define "extern".
907
908 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
909
910 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
911
912 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
913
914 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
915
916 * macro.c (macro_expand_body): Don't warn about == with a
917 nonexistent parameter, in case it is in a comment field.
918
919 * as.c (main): On TC_A29K, call macro_init with macro_alternate
920 set to 1.
921 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
922 set, even if macro_alternate is set.
923 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
924 (sub_actual): If macro_strip_at, and kind is '@', don't look up
925 the token unless it ended in '@'.
926 * config/tc-a29k.c (line_separator_chars): Remove '@'.
927 * doc/c-a29k.texi: Document macro usage on A29K.
928
929 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
930
931 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
932 signed word.
933 (install_operand): Likewise.
934
935 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
936
937 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
938
939 * configure.in (m88k-motorola-sysv*): New target.
940 * configure: Rebuild.
941 * config/te-delta88.h: New file.
942 * config/obj-coff.c (write_object_file): Use md_do_align if it is
943 defined.
944 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
945 (md_do_align): Define.
946 * config/tc-m88k.c: Include "subsegs.h".
947 (m88k_do_align): New function.
948
949 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
950 (COFF_NOLOAD_PROBLEM): Define.
951 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
952
953 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
954
955 * config/tc-i386.c (md_assemble): For a jump instruction with
956 non-constant target, require 7 available bytes in the current
957 frag, not 6.
958
959 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
960
961 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
962 bfd/libelf.h.
963
964 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
965
966 * configure.in (alpha-*-linux*): Use ecoff.
967 * configure: Rebuild.
968 * ecoff.c (ecoff_directive_extern): New function.
969 (ecoff_directive_weakext): New function.
970 (ecoff_build_symbols): Handle weak symbols.
971 (ecoff_setup_ext): Likewise.
972 (ecoff_frob_symbol): Warn about weak common symbols.
973 * ecoff.h (ecoff_directive_extern): Declare.
974 (ecoff_directive_weakext): Declare.
975 * symbols.c (S_IS_WEAK): New function.
976 * symbols.h (S_IS_WEAK): Declare.
977 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
978 "weakext".
979 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
980 (s_extern): Remove.
981
982 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
983
984 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
985
986 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
987 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
988 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
989 * config/obj-coff.c (coff_frob_symbol): Don't call
990 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
991 one. If OBJ_XCOFF, try to figure out whether the symbol is going
992 to be dropped.
993
994 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
995 (ppc_stab_symbol): New static variable.
996 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
997 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
998 sy_tc.real_name to the stab string.
999 (ppc_bc, ppc_ec): New static functions.
1000 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
1001 do anything.
1002 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
1003 suffix.
1004 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
1005 entries.
1006
1007 * input-scrub.c (input_scrub_push): Reset sb_index.
1008
1009 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
1010
1011 * listing.c (listing_newline): Don't create a frag in the absolute
1012 section.
1013
1014 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
1015
1016 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
1017 (ppc_csect): Move most of the code to ppc_change_csect, and call
1018 it.
1019 (ppc_change_csect): New static function, taken from ppc_csect.
1020 (ppc_section): New static function.
1021 (ppc_saw_abs): New static varable.
1022 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
1023 a symbol has no csect.
1024 (ppc_adjust_symtab): New function.
1025 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
1026 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
1027
1028 * write.c (write_object_file): If tc_adjust_symtab is defined,
1029 call it just before the call to obj_adjust_symtab.
1030
1031 * symbols.c (symbol_find_or_make): Change name to be const.
1032 * symbols.h (symbol_find_or_make): Update declaration.
1033
1034 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
1035
1036 * doc/as.texinfo (Align): Mention SH.
1037 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
1038 .align value.
1039 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
1040 (Z8000 Directives, even): Don't give numeric align value, instead
1041 explain behavior.
1042
1043 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1044
1045 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
1046 instruction.
1047
1048 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
1049
1050 * Makefile.in (diststuff): Also make info.
1051 (maintainer-clean realclean): Also make clean-info.
1052
1053 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
1054
1055 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
1056 (pa_subspace): For ".nsubspa", always create a new subspace
1057 with the given attributes, even if one already exists with the
1058 same name.
1059
1060 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1061
1062 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
1063 TC_FORCE_RELOCATION, taking an additional section argument. If
1064 the section of the target symbol is not the same as the current
1065 section, always force the relocation to be used.
1066 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
1067
1068 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
1069 md_pcrel_from function, taking an additional section argument.
1070 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
1071
1072 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
1073 older TC_FORCE_RELOCATION if not defined.
1074 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
1075 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
1076 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
1077 TC_FORCE_RELOCATION.
1078
1079 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
1080
1081 * input-scrub.c (as_where): Set name to null pointer if we don't
1082 have a file name.
1083 * messages.c (identify): Only print filename if non-null.
1084 (as_show_where): Ditto, for line number too.
1085 (as_warn_internal, as_bad_internal): Ditto.
1086
1087 * input-file.c (input_file_open): If the input file can't be
1088 opened, consider it an error.
1089
1090 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
1091
1092 * config/tc-mips.c: Added mips_4100 control, and support for
1093 accepting the 4100 as a MIPS architecture variant (md_begin,
1094 macro_build, mips_ip, md_parse_option). Adding suitable
1095 command-line OPTIONs, and updating the help text (md_show_usage).
1096
1097 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
1098
1099 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
1100 BFD_ASSEMBLER is defined.
1101
1102 * Use one active frag and one obstack per frag chain:
1103 * frags.c (frags): Variable deleted.
1104 (frag_alloc): New function.
1105 (frag_grow, frag_more, frag_variant, frag_now_fix,
1106 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
1107 frags variable.
1108 (frag_new): Ditto. Verify that frch_last and frag_now match on
1109 entry and exit, and that old frag_now has non-zero type. Replace
1110 "know" uses with "assert". Use frag_alloc instead of mucking with
1111 obstack alignment.
1112 * frags.h (frags): Declaration deleted.
1113 * subsegs.h (struct frchain): Add new field frch_frag_now.
1114 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
1115 variables.
1116 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
1117 give it any stricter alignment than frchainS structures need. Do
1118 not initialize frags obstack. Set frag_now to point to
1119 dummy_obstack. Initialize absolute_frchain.
1120 (subseg_set_rest): Save and restore frag_now in frch_frag_now
1121 field of frchainS. Don't create new frags on section switch, and
1122 use frag_alloc when creating a new frag chain. For absolute
1123 section, set frchain_now to absolute_frchain. Verify that
1124 frch_last and frag_now match on entry and exit. Initialize
1125 per-chain obstack, and under gcc, set required alignment to that
1126 needed by fragS structure.
1127
1128 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
1129
1130 * stabs.c (get_stab_string_offset): Only copy input string if a
1131 fresh copy is needed, not if the section already exists.
1132 (s_stab_generic): Cache stab section name to bypass lookups, since
1133 usually it will match. Could be made faster still by changing the
1134 memory allocation rules.
1135 (s_xstab): Cache section name to bypass repeated string
1136 allocation.
1137
1138 * frags.c (frag_new): Deleted register declarations.
1139
1140 * listing.c (frag_now): Don't declare.
1141
1142 * as.c (chunksize): New variable.
1143 (debug_memory): New variable.
1144 (main): If debug_memory is set, reduce chunksize and
1145 _bfd_chunksize.
1146 * as.h (chunksize): Declare it.
1147 * read.c (read_begin): Use it.
1148
1149 * config/tc-alpha.c (md_shortopts): Include 'g'.
1150 (md_parse_option): Ignore it.
1151
1152 * Makefile.in (distclean): Remove Makefile and config.status from
1153 testsuite directory.
1154 (clean-here): Don't delete testsuite. Instead, delete only the
1155 files within it that would be generated by running tests.
1156
1157 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
1158 frag_now_fix instead of accessing obstack info directly.
1159 * config/tc-arm.c (s_ltorg): Ditto.
1160 (md_assemble): Ditto.
1161
1162 * config/tc-i386.c (md_assemble): Call frag_grow instead of
1163 obstack_room.
1164
1165 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
1166
1167 * stabs.c (aout_process_stab): Insert debug symbol into symbol
1168 chain after parsing value expression, if any, to avoid separating
1169 continued .stabs lines.
1170
1171 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
1172
1173 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
1174 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
1175
1176 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
1177
1178 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
1179 -mcom support and PPC_OPCODE_ANY for -many.
1180 (md_parse_option): Ditto.
1181 (ppc_arch): Ditto.
1182 (md_begin): For duplicate instructions, print all duplicates
1183 before aborting.
1184
1185 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
1186
1187 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
1188 common mode operation.
1189 (md_show_usage): Add -mcom to usage message.
1190
1191 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
1192
1193 * expr.c (op_rank): Add O_symbol_rva.
1194 * expr.h (operatorT): Add O_symbol_rva.
1195 * read.c (cons_worker): Set O_symbol_rva when necessary.
1196 * write.c (fix_new_exp): Understand O_symbol_rva.
1197
1198 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
1199
1200 * config/tc-mips.c: Correct s_cons arguments. From Michael
1201 Joosten <joost@ori.cadlab.de>.
1202
1203 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
1204
1205 * config/tc-ppc.c (ppc_macro): Make count unsigned.
1206 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
1207 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
1208 the fix_line field.
1209 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
1210 make non-static. Change all users.
1211 * config/obj-coff.h (coff_n_line_nos): Declare.
1212
1213 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
1214
1215 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1216
1217 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
1218
1219 * config/obj-elf.c (obj_elf_common): Convert specified byte
1220 alignment to power of two. Set size of local bss symbol.
1221
1222 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
1223
1224 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
1225
1226 * sb.c, macro.c: Decide whether to include <string.h> or
1227 <strings.h> just as as.h does.
1228
1229 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
1230
1231 * Makefile.in (site.exp): Fix setting of $srcdir.
1232
1233 * config/tc-arm.c (md_atof): Fix little-endian output.
1234 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
1235 all coff targets.
1236
1237 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
1238
1239 * doc/as.texinfo: Split out the NS32k family documentation,
1240 despite its being commented out for now.
1241 * doc/c-ns32k.texi: New file.
1242
1243 * sb.c, macro.c: Include string.h.
1244
1245 * Makefile.in (comparison): Only check *.o; we don't care if
1246 timestamps inserted by the native linker differ.
1247
1248 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
1249 if alignment stricter than 4 bytes is requested; in that case,
1250 align to a 4-byte boundary first.
1251
1252 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
1253
1254 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
1255 uninitialized" warning for `Max_Source_Offset'.
1256
1257 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
1258
1259 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
1260 qualifiers and detect errors if present.
1261 (md_assemble): Add call to parse_toc_entry. Also added some support
1262 for the [tocv] qualifier.
1263 (ppc_pe_tocd): New function to support data in the toc section.
1264
1265 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
1266
1267 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
1268 an absolute symbol.
1269
1270 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
1271
1272 * config/tc-m68k.c (isword): Accept all values from -65536 to
1273 +65535, so ~VAL will not be rejected.
1274
1275 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
1276 skip characters after the pseudo-op.
1277 (s_else): Likewise.
1278 * read.c (get_line_sb): Don't look past buffer_limit.
1279 (s_include): In MRI mode, skip characters after the file name.
1280
1281 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
1282
1283 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
1284 periods in register names.
1285
1286 For older changes see ChangeLog.1.