Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
[binutils-gdb.git] / gas / ChangeLog
1 Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
2
3 * as.h: GNU c provides unlink() function.
4
5 Unify section handling on openVMS/Alpha:
6 * config/tc-alpha.c(s_alpha_link): Remove.
7 (s_alpha_section): New function.
8 Remove case-hacking of symbols
9 Add .code_address pseudo-op.
10 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
11 (s_alpha_code_address): New function.
12 (alpha_ctors_section, alpha_dtors_section): New sections for C++
13 static constructors/destructors.
14 Add debug code for crash debugs, to be removed when traceback code
15 is added to object code.
16 (s_alpha_name): New function for .name pseudo-op.
17 (alpha_print_token): New function to print token expressions with
18 alpha specific extensions.
19
20 * makefile.vms: Allow compilation with current gcc snapshot.
21
22 Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
23
24 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
25 (DVIPS): Set to dvips.
26 (ps, as.ps, gasp.ps): New targets.
27 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
28 and MAKEINFO env variables.
29 (internals.ps): Use DVIPS macro.
30 (clean): Remove core and backup files.
31 (distclean): Remove temporary files from building internals.
32 (clean-dvi): Ditto.
33 * doc/internals.texi (Frags): Fix typo.
34 (GAS processing): Ditto.
35 (CPU backend): Ditto.
36 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
37 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
38 * read.c: Remove ugly hack that dealt with config files not
39 correctly defining TARGET_BYTES_BIG_ENDIAN.
40 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
41 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
42 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
43 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
44 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
45 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
46 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
47 with TARGET_BYTES_BIG_ENDIAN defined to 0.
48 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
49 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
50 whether it is defined or not.
51 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
52 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
53 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
54 whether it is defined or not.
55 start-sanitize-tic80
56 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
57 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
58 end-sanitize-tic80
59
60 Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
61
62 * write.c (write_relocs): Correct text in as_fatal error message,
63 bfd_perform_relocation -> bfd_install_relocation.
64
65 Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
66
67 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
68 * read.c (LEX_TILDE): Define if not defined.
69 (lex_type): Use LEX_TILDE.
70 * expr.c (get_symbol_end): Check first char with is_name_beginner,
71 not is_part_of_name.
72
73 Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
74
75 * config/tc-mips.c (mips16_extended_frag): Correct base address
76 for an extended PC relative instruction.
77 (md_convert_frag): Likewise.
78
79 * config/tc-mips.c (prev_nop_frag): New static variable.
80 (prev_nop_frag_holds): New static variable.
81 (prev_nop_frag_required): New static variable.
82 (prev_nop_frag_since): New static variable.
83 (append_insn): If we aren't reordering, and prev_nop_frag is not
84 NULL, and we don't need any nops, then decrease the size of
85 prev_nop_frag. Don't insert nops because of instructions in
86 noreorder sections. Remember whether the previous instructions
87 where in noreorder sections even when not reordering.
88 (mips_no_prev_insn): Add preserver parameter. Change all
89 callers. Refer prev_nop_frag variables when appropriate.
90 (mips_emit_delays): Set up prev_nop_frag.
91 (s_mipsset): Clear prev_nop_frag if reordering.
92
93 Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
94
95 * config/tc-mips.c (append_insn): Remove useless code which
96 handled swapping a mips16 jump with a mips16 instruction with a
97 reloc.
98
99 * config/tc-mips.c (md_parse_option): When debugging, set
100 mips_optimize to 1, not 0.
101
102 * config/tc-mips.c (mips16_ip): Handle an extend operand.
103
104 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
105 like the expression was based on `.', adjust the value of the
106 symbol.
107
108 * config/tc-mips.c (append_insn): Warn about an attempt to put an
109 extended instruction in a delay slot when not reordering.
110 (md_convert_frag): Warn if an extended instruction appears in a
111 delay slot.
112
113 * config/tc-mips.c (mips_pseudo_table): Add "insn".
114 (s_insn): New static function.
115 * doc/c-mips.texi: Document .insn.
116
117 * config/tc-mips.c (md_begin): Add the general registers to the
118 symbol table.
119 (mips16_ip): First parse the expression, and then see whether it
120 came up with a register, rather than trying to first see whether
121 we are looking at a register.
122
123 start-sanitize-tic80
124 Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
125
126 * config/tc-tic80.c: Numerous changes and additions to flesh
127 out functions that were previously just stubs, and fix some
128 problems found using the new TIc80 testsuite cases.
129
130 end-sanitize-tic80
131 Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
132
133 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
134 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
135
136 * config/tc-mips.c (append_insn): Output jump instruction as a
137 pair of 2 byte instructions, rather than as a single 4 byte
138 instruction.
139
140 start-sanitize-r5900
141 * config/tc-mips.c (md_begin): Correct test of mips_5900.
142 (mips_ip): Don't check INSN_ISA for a macro.
143
144 end-sanitize-r5900
145 start-sanitize-r5900
146 Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
147
148 * config/tc-mips.c: added r5900.
149
150 end-sanitize-r5900
151 Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
152
153 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
154 config/itbl-mips.h: Add copyright message and fix indentation.
155
156 Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
157
158 * itbl-ops.c: New file. Add support for dynamically read
159 instruction registers, opcodes and formats. Build internal table
160 for new instructions and provide callbacks for assembler and
161 disassembler.
162 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
163 spec table.
164 * itbl-ops.h: New file. Header file for itbl support.
165 * config/itbl-mips.h: New file. Mips specific definitions for
166 itbl support.
167
168 Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
169
170 * config/tc-mn10200.c (md_assemble): If a constant operand won't
171 fit into the constant field of a relaxable operand, then it does
172 not match.
173
174 Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
175
176 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
177 a jsr target in a different section just like a jsr to
178 an undefined target.
179
180 Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
181
182 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
183 against any mips16 symbols, not just externally visible ones.
184 (md_apply_fix): Corresponding change.
185
186 Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
187
188 * config/tc-mips.c (mips16_ip): Accept floating point registers in
189 the operand of the exit instruction.
190
191 Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
192
193 * symbols.c (resolve_symbol_value): If we leave an equated symbol
194 as O_symbol, copy over the segment.
195
196 Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
197
198 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
199 fixup to be against the section symbol, adjust the value
200 accordingly.
201
202 * symbols.c (resolve_symbol_value): Don't change X_add_number for
203 an equated symbol.
204 * write.c (write_relocs): Avoid looping on equated symbols.
205 Adjust fx_offset by X_add_number for each symbol.
206 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
207 symbols.
208 (fixup_segment): Add a loop to track down equated symbols and
209 adjust fx_offset appropriately.
210
211 Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
212
213 * config/tc-mn10200.c (md_relax_table): Add entries to allow
214 jmp -> bra relaxing.
215 (md_convert_frag): Handle jmp->bra relaxing.
216 (md_assemble): Handle jmp->bra relaxing.
217 (md_estimate_size_before_relax): Likewise.
218
219 Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
220
221 * config/tc-i386.c (i386_align_code): Add comments explaining the
222 nop instructions.
223
224 Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
225
226 * config/tc-sparc.c (enforce_aligned_data): New static variable.
227 (sparc_cons_align): Don't do anything unless enforce_aligned_data
228 is set.
229 (md_longopts): Add "enforce-aligned-data".
230 (md_show_usage): Mention --enforce-aligned-data.
231 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
232 enforce-aligned-data.
233
234 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
235 "word", and "short".
236 (ppc_xcoff_cons): New static function.
237
238 * write.c (relax_segment): Give an error if a .space symbol is
239 common or undefined.
240
241 * read.c (read_a_source_file): Don't handle mri_pending_align if
242 the handler is s_globl or s_ignore.
243
244 Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
245
246 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
247 start-sanitize-tic80
248 * config/tc-tic80.c: Many additions to previous placeholder file.
249 * config/tc-tic80.h: Ditto.
250 end-sanitize-tic80
251
252 Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
253
254 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
255
256 Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
257
258 * config/tc-mips.c (mips_fix_adjustable): New function.
259 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
260 (mips_fix_adjustable): Declare.
261
262 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
263 * read.c (read_a_source_file): After doing an mri_pending_align,
264 adjust the line_label if there is one.
265 (s_space): Set mri_pending_align if an odd number of bytes were
266 output.
267
268 start-sanitize-d10v
269 Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
270
271 * config/tc-d10v.h (md_do_align): Add this hook to call
272 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
273
274 * config/tc-d10v.c (find_opcode): Correctly calculate
275 branch displacement when .aligns are present.
276
277 end-sanitize-d10v
278 Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
279
280 * config/tc-mn10200.c (md_relax_table): Define.
281 (md_convert_frag): Implement.
282 (md_assemble): Handle relaxable operands/instructions correctly.
283 (md_estimate_size_before_relax): Implement.
284 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
285
286 Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
287
288 * config/tc-mips.c (append_insn): Give an error for jumps to a
289 misaligned address.
290 (md_apply_fix): Make a branch to an odd address an error rather
291 than a warning.
292
293 * config/tc-mips.c (md_convert_frag): If the user explicitly
294 requested an extended opcode, pass warn as true to mips16_immed.
295
296 * config/tc-mips.c (mips16_ip): Handle a missing expression like
297 an explicit 0, so that explicitly extended instructions work
298 correctly.
299
300 Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
301
302 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
303 symbol for a common symbol.
304
305 Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
306
307 Patch presumed to have been checked in awhile ago but wasn't.
308 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
309 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
310 (relax_segment, case rs_org): Move code inside braces. Move locals
311 target,after inside too.
312 (relax_segment, case rs_machine_dependent): Guts moved to ...
313 (relax_frag): New function.
314 Call md_prepare_relax_scan if defined.
315
316 Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
317
318 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
319 'p' operand specifier.
320
321 Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
322
323 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
324 m68k family cpus which support long branch addressing modes.
325 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
326 md_create_long_jump): Use it.
327
328 Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
329
330 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
331 the .reginfo or .MIPS.options section if configured for an
332 embedded target.
333
334 * config/tc-mips.c (md_begin): Don't set interlocks for
335 mips_4650.
336
337 Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
338
339 * read.c (read_a_source_file): Make sure the symbol ends with
340 whitespace before checking whether the next character is '='.
341
342 Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
343
344 * config/tc-i386.c (sco_id): Moved from here...
345 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
346 really is an SCO ELF specific thing, not just a SCO x86 specific
347 thing.
348
349 start-sanitize-tic80
350 Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
351
352 * configure.in (tic80-*-*): Don't require 'coff'.
353 * configure: Regenerate.
354
355 end-sanitize-tic80
356 Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
357
358 * read.c (emit_expr): Check for overflow of a negative value
359 correctly.
360 * write.c (fixup_segment): Likewise.
361 * config/obj-coff.c (fixup_segment): Likewise.
362
363 * config/tc-m68k.c (struct label_line): Define.
364 (labels, current_label): New static variables.
365 (md_assemble): Mark current_label as text, and clear it.
366 (m68k_frob_label): New function.
367 (m68k_flush_pending_output): New function.
368 (m68k_frob_symbol): New function.
369 * config/tc-m68k.h (tc_frob_label): Define.
370 (md_flush_pending_output): Define.
371 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
372 (tc_frob_coff_symbol): Likewise.
373
374 * read.c (read_a_source_file): When defining a macro in MRI mode,
375 don't add the symbol to the symbol table.
376
377 Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
378
379 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
380 here since fixup_segment doesn't (linkrelax is set).
381 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
382
383 Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
384
385 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
386 relocs.
387
388 Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
389
390 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
391 to avoid warnings with the native HP compiler.
392 (fix_new_hppa): Similarly for the r_type argument.
393 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
394 in an #if OBJ_ELF to keep gcc -Wall quiet.
395 (md_apply_fix): Always initialize "result".
396
397 * config/tc-mn10200.c (md_assemble): Generate relocations.
398
399 Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
400
401 * config/tc-m68k.c (s_even): Adjust the alignment of the current
402 section.
403
404 Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
405
406 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
407 pass on the new file hook.
408
409 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
410 !alpha_force_relocation, as local LITERALs can be adjusted to be
411 relative to the section.
412
413 Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
414
415 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
416 defined, call it.
417 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
418 aligned to odd boundary.
419 (tc_frob_coff_symbol): Define.
420
421 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
422
423 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
424
425 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
426 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
427
428 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
429 immediate value.
430 (md_assemble): If the size is 'B', set fx_signed.
431 (md_apply_fix_2): Use fx_signed when checking for overflow.
432
433 * write.h (struct fix): Add fx_signed field.
434 * write.c (fix_new_internal): Initialize fx_no_overflow and
435 fx_signed fields.
436 (fixup_segment): Use fx_signed when checking for overflow.
437 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
438 fx_signed when checking for overflow.
439
440 Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
441
442 * NOTES, NOTES.config: Removed. These are rarely, if ever,
443 updated, and all the useful information is in doc/internals.texi.
444
445 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
446 * read.c (read_a_source_file): Check for conditional operators
447 before doing an MRI pending alignment.
448 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
449 (tc_conditional_pseudop): Define.
450 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
451 * doc/internals.texi (CPU backend): Describe
452 tc_conditional_pseudoop.
453
454 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
455 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
456 variable.
457 (md_begin): Check m68k_rel32_from_cmdline before setting
458 m68k_rel32.
459 (m68k_mri_mode_change): Likewise.
460 (md_longopts): Add --disp-size-default-16 and
461 --disp-size-default-32.
462 (md_parse_option): Handle new options.
463 (md_show_usage): Mention new options.
464 * doc/c-m68k.texi (M68K-Opts): Document new options.
465
466 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
467 * config/tc-m68k.c (m68k_index_width_default): New static
468 variable.
469 (m68k_ip): Use m68k_index_width_default to set the size of a base
470 register whose size was not given.
471 (md_longopts): Add --base-size-default-16 and
472 --base-size-default-32.
473 (md_parse_option): Handle new options.
474 (md_show_usage): Mention new options.
475 * doc/c-m68k.texi (M68K-Opts): Document new options.
476
477 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
478
479 * configure.in: Recognize mips-*-linux* target.
480 * configure: Rebuild.
481
482 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
483 work if valueT is only 32 bits.
484
485 * config/tc-mips.c: Throughout, check target_big_endian rather
486 than byte_order.
487 (byte_order): Remove.
488 (mips_init_after_args): Remove.
489 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
490 (mips_init_after_args): Don't declare.
491 (tc_init_after_args): Don't define.
492
493 * config/tc-mips.h (tc_frob_after_relocs): Define if
494 OBJ_MAYBE_ELF.
495 (mips_elf_final_processing): Likewise.
496 (ELF_TC_SPECIAL_SECTIONS): Likewise.
497
498 start-sanitize-v850
499 Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
500
501 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
502 sld.{h,w} and the operand is relocatable, adjust the adend by
503 shifting it right one bit.
504
505 end-sanitize-v850
506 Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
507
508 * read.c (read_a_source_file): Check mri_pending_align after
509 checking for a macro. From Ronald F. Guilmette
510 <rfg@monkeys.com>.
511
512 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
513
514 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
515 add segment argument. If OBJ_ELF, treat a relocation against a
516 symbol in a linkonce section like a relocation against an external
517 symbol.
518 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
519
520 Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
521
522 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
523
524 Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
525
526 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
527 includes config.h instead of host.h, tc.h instead of tp.h, and
528 targ-env.h instead of target-environment.h.
529 Also, obj-format.h includes targ-cpu.h instead of
530 target-processor.h.
531 start-sanitize-tic80
532 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
533 * configure: Rebuild with autoconf.
534 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
535 (TARGET_FORMAT): Define to "coff-tic80".
536 * config/tc-tic80.c: New file for TIc80 support.
537 * config/tc-tic80.h: New file for TIc80 support.
538 end-sanitize-tic80
539
540 Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
541
542 * doc/as.texinfo (M): Mention explicitly that -M changes macro
543 handling.
544
545 Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
546
547 * write.c (adjust_reloc_syms): If the fixup symbol has been
548 equated to an undefined symbol, convert the fixup to being against
549 the target symbol. Remove obsolete code handling a special case
550 for i386 PIC.
551
552 Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
553
554 * mpw-make.sed: Use NewFolderRecursive for installation.
555
556 start-sanitize-d10v
557 Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
558
559 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
560
561 Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
562
563 * config/tc-d10v.c (md_assemble): Fix bug which caused
564 second instruction in a line to be case sensitize. PR11312
565
566 end-sanitize-d10v
567 Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
568
569 * config/tc-mn10200.c (mn10200_insert_operand): Don't
570 range check operands with MN10200_OPERAND_NOCHECK set.
571 (check_operand): Likewise.
572
573 Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
574
575 * config/tc-mips.c: Undo part of last Friday's alignment changes.
576 (md_begin): Always align the text section to a four byte
577 boundary.
578 (append_insn): Remove call to record_align.
579
580 * config/tc-mips.c (insn_label): Remove.
581 (struct insn_label_list): Define.
582 (insn_labels, free_insn_labels): New static variables.
583 (mips_clear_insn_labels): New static function.
584 (append_insn): Mark all mips16 text labels, and make them odd.
585 Handle all labels after emitting a nop, not just one. Call
586 mips_clear_insn_labels rather than just clearing insn_label.
587 (mips_emit_delays): Add insns parameter, and use it to decide
588 whether to mark mips16 labels. Handle all labels, not just one.
589 Force mips16 labels to be odd. Change all callers.
590 (mips16_immed): Don't check for an odd branch target.
591 (md_apply_fix): Don't check mips16 mode for a branch reloc.
592 (mips16_extended_frag): Ignore the low bit in a branch target.
593 (md_convert_frag): Likewise.
594 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
595 clearing insn_label.
596 (mips_align, mips_flush_pending_output, s_cons): Likewise.
597 (s_float_cons, s_gpword): Likewise.
598 (s_align): Use insn_labels rather than insn_label.
599 (s_cons, s_float_cons, s_gpword): Likewise.
600 (mips_frob_file_after_relocs): New function.
601 (mips_define_label): Rewrite to add to insn_labels list.
602 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
603 * ecoff.c (ecoff_build_symbols): If the size of a function comes
604 out odd, increment it.
605
606 * config/tc-mips.c (append_insn): Only update prev_insn when not
607 reordering if place is NULL.
608
609 * config/tc-mips.c (mips16_ip): Check for a missing expression
610 when using the register indirect addressing mode.
611
612 Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
613
614 * config/tc-mn10200.c (mn10200_insert_operand): Don't
615 check 24bit operands for overflow.
616 (check_operand): Likewise.
617
618 Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
619
620 * doc/as.texinfo (Section): Document how to use the .section
621 pseudo-op for COFF and ELF.
622
623 Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
624
625 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
626
627 Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
628
629 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
630 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
631 store them. Adjust other RELAX_MIPS16 macros.
632 (RELAX_MIPS16_DSLOT): Define.
633 (RELAX_MIPS16_JAL_DSLOT): Define.
634 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
635 handling of whether previous instruction has a fixup. Set
636 prev_insn_reloc_type.
637 (mips_no_prev_insn): Clear prev_insn_reloc_type.
638 (mips16_extended_frag): Use the right base address for a PC
639 relative add or load.
640 (md_convert_frag): Likewise. If a PC relative add or load is
641 used, record the alignment for the section.
642
643 Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
644
645 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
646 linkonce section into a reloc against the section symbol.
647
648 * config/tc-mips.c (mips16_macro): Remove nop instructions after
649 branch instructions.
650
651 * config/tc-mips.c (md_begin): If configured for an embedded ELF
652 system, don't set the section alignment to 2**4.
653 (s_change_sec): Likewise.
654 (append_insn): Call record_alignment for the section.
655 (md_section_align): Don't align the section size for an embedded
656 ELF system.
657
658 Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
659
660 * write.c (adjust_reloc_syms): Make sure that symbols are
661 resolved; expression symbols may have been skipped.
662 * config/obj-coff.c (fixup_segment): Likewise.
663
664 Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
665
666 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
667 BFD_RELOC_24_PLT_PCREL relocation.
668 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
669
670 start-sanitize-d10v
671 Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
672
673 * config/tc-d10v.c (write_2_short): Remove code that called
674 parallel_ok() when the programmer specified parallel instructions.
675
676 end-sanitize-d10v
677 Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
678
679 * config/tc-mn10300.c (md_assemble): Update to handle endianness
680 issues correctly.
681
682 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
683 * config/tc-mn10300.c (md_assemble): Likewise.
684
685 Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
686
687 * config/tc-mips.c (append_insn): Make sure there is enough room
688 in a frag after a mips16 instruction to switch it with a jump
689 instruction.
690
691 * config/tc-mips.c (mips16_extended_frag): Give an error for an
692 attempt to use a non absolute symbol in an extending frag.
693
694 Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
695
696 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
697 * config/tc-mn10200.h: Likewise.
698
699 Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
700
701 * app.c (do_scrub_chars): At the end of a C comment, pass space to
702 UNGET rather than PUT. Set old_state before setting state to -2.
703
704 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
705 when extending because the value is exactly maxtiny + 1.
706
707 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
708 arguments, and store them. Adjust other RELAX_MIPS16 macros.
709 (RELAX_MIPS16_USER_SMALL): Define.
710 (RELAX_MIPS16_USER_EXT): Define.
711 (mips16_small, mips16_ext): New static variables.
712 (append_insn): Pass mips16_small and mips16_ext to
713 RELAX_MIPS16_ENCODE.
714 (mips16_ip): Set mips16_small and mips16_ext.
715 (mips16_immed): Don't check mips16_autoextend.
716 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
717
718 * write.c (write_relocs): Print an error for an out of range
719 fixup, rather than calling abort.
720
721 * as.c (main): Unlink the output file if there are errors while
722 generating the fixups.
723
724 Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
725
726 * config/tc-mips.c (mips16_extended_frag): Don't call
727 S_GET_VALUE.
728 (md_convert_frag): Call resolve_symbol_value before calling
729 S_GET_VALUE, and don't add in the frag address.
730
731 * config/tc-mips.c (mips16_immed): Add file and line parameters,
732 and use them when reporting errors. Change all callers.
733
734 Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
735
736 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
737 Remove '$' prefixing for registers.
738
739 start-sanitize-d10v
740 Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
741
742 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
743 is initialized before using it.
744 (d10v_cleanup): No longer uses its argument, so make it void.
745
746 * config/tc-d10v.h (d10v_cleanup): Change prototype.
747
748 end-sanitize-d10v
749 Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
750
751 * write.c (fixup_segment): Don't discard the symbol for a PC
752 relative fixup to an absolute symbol.
753
754 start-sanitize-d10v
755 Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
756
757 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
758 with multiple sections.
759
760 end-sanitize-d10v
761 Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
762
763 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
764 no-mips-16 to no-mips16.
765 (s_mipsset): Accept .set mips16 and .set nomips16.
766
767 Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
768
769 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
770 argument, and check for +/- constant following the suffix, folding
771 it into the expression.
772 (ppc_elf_cons): Change ppc_elf_suffix calls.
773 (md_assemble): Ditto.
774 (shlib): Replace boolean mrelocatable with enumeration shlib.
775 (md_parse_option): Discriminate between PIC style shared libraries
776 and -mrelocatable.
777 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
778 libraries.
779
780 Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
781
782 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
783 change the comment characters.
784
785 * config/tc-ppc.c (comment_chars): Delete in favor of
786 tc_comment_chars.
787 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
788 comment chars.
789 (ppc_comment_chars): Select appropriate comment chars by default.
790 (msolaris): New flag for -m{,no-}solaris.
791 (md_parse_option): Recognize -K pic. Add support for
792 -m{,no-}solaris.
793 (md_show_usage): Update.
794 (md_begin): Do not set ELF flags if Solaris.
795 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
796 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
797
798 Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
799
800 * as.c (main): Correct handling of flag_always_generate_output.
801
802 Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
803
804 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
805 fx_offset, not fx_addnumber.
806
807 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
808 reloc adjustments.
809
810 Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
811
812 * config/tc-i386.c: Correct misspelling: balenced to balanced.
813
814 Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
815
816 * config/tc-mips.c (md_section_align): Check for an alignment of
817 4, not an alignment of 16. Corrects August 7 patch.
818
819 Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
820
821 * configure, conf.in: Rebuild with autoconf 2.12.
822
823 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
824 alignment is specified.
825
826 Add support for mips16 (16 bit MIPS implementation):
827 * config/tc-mips.c: Extensive additions for mips16 support, not
828 listed here.
829 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
830 (insn_uses_reg): Change last parameter to an enum.
831 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
832 (md_relax_frag): Define as mips_relax_frag.
833 (mips_relax_frag): Declare.
834 (struct mips_cl_insn): Add use_extend and extend fields.
835 (tc_fix_adjustable): Define.
836 * config/obj-elf.h (S_GET_OTHER): Define.
837 (S_SET_OTHER): Define.
838
839 Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
840
841 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
842 o and p operand specifiers.
843
844 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
845
846 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
847 (relax_segment, case rs_org): Move code inside braces. Move locals
848 target,after inside too.
849 (relax_segment, case rs_machine_dependent): Guts moved to ...
850 (relax_frag): New function.
851 Call md_prepare_relax_scan if defined.
852 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
853 M68K_AIM_KLUDGE.
854
855 Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
856
857 * config/tc-mn10300.c (address_registers): Use '$' as register
858 prefix instead of '%'.
859 (data_registers, other_registers, md_assemble): Likewise.
860
861 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
862 (data_registers, other_registers, md_assemble): Likewise.
863
864 * config/tc-mn10300.c (md_assemble): Correctly determine the
865 correct location and type for each relocation.
866 (md_pcrel_from): Simplify.
867
868 Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
869
870 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
871 converted into branch around branch.
872
873 Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
874
875 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
876 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
877 pc-relative relocs.
878 * config/tc-mn10300.c (md_begin): Set linkrelax.
879 (md_assemble): Create fixups as needed.
880 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
881
882 start-sanitize-d10v
883 Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
884
885 * config/tc-d10v.c (parallel_ok): When automatically converting
886 serial ops to parallel, do not consider a branch as the first
887 instruction.
888
889 end-sanitize-d10v
890 Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
891
892 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
893
894 Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
895
896 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
897 via PARAMS.
898 (check_operand): Likewise.
899
900 start-sanitize-d10v
901 Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
902
903 * config/tc-d10v.c (parallel_ok): Branch and link instructions
904 modify r13.
905 (write_2_short): Call parallel_ok to check whether two short
906 instructions the user requested execute in parallel, can be
907 executed that way.
908
909 Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
910
911 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
912 allow a branch and link in parallel with an exe instruction.
913
914 Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
915
916 * doc/c-d10v.texi: Add info on @word modifier.
917
918 end-sanitize-d10v
919 Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
920
921 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
922 operands are assumed to be 32bits. Use "bits" field to hold the
923 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
924 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
925 to be 32bits.
926
927 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
928 of a MN10300_OPERAND_SPLIT operand by operand->shift.
929
930 * config/tc-mn10300.c (mn10300_insert_operand): Handle
931 MN10300_OPERAND_SPLIT.
932
933 Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
934
935 * config/tc-mn10300.c (md_assemble): Insert operands into
936 the extension part of the instruction if necessary.
937 (mn10300_insert_operand): Accept pointer to extension word
938 argument. Make insn a pointer argument too. Return type
939 is now void. All callers changed.
940
941 Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
942
943 * config/tc-mn10300.c (mn10300_insert_operand): Handle
944 repeated register operands.
945
946 Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
947
948 * doc/as.texinfo: Added section on reporting bugs.
949
950 * config/tc-alpha.c: Change uses of void * to PTR. Change the
951 alpha_macro emit field to expect a const argument, and change the
952 arg field to be const. Fix some spacing to follow the GNU
953 standard.
954
955 Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
956
957 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
958 (pca56) and 21264 (ev6) cpus.
959 (md_apply_fix): Private relocation types are now negative.
960 (alpha_force_relocation): Likewise.
961 (tc_gen_reloc): Likewise.
962 (emit_insn): Likewise.
963 (emit_ldXu): Do the right thing when the hardware can do byte insns.
964 (emit_stX): Likewise.
965 (emit_sextX): Likewise.
966
967 Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
968
969 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
970 a symbol found in a reloc.
971
972 * symbols.c (resolve_symbol_value): Improve the error message if
973 an undefined symbol is used in an expression.
974
975 Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
976
977 * doc/internals.texi: Rewrite, and add a lot of documentation.
978 * doc/Makefile.in (internals.info): New target.
979
980 start-sanitize-v850
981 Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
982
983 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
984 against weak symbols.
985
986 Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
987
988 * config/tc-v850.c (md_assemble): Don't lose for relaxable
989 addresses like .+6.
990
991 * config/tc-v850.c (md_convert_frag): Make sure we insert the
992 fixup at the right address within the frag.
993
994 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
995 to an absolute value, instead increment it as needed.
996
997 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
998 * config/tc-v850.c: Fix some indention problems.
999 (md_relax_table): Define for D9->D99 branch displacement
1000 relaxing.
1001 (md_convert_frag): Do something useful instead of aborting.
1002 (md_estimate_size_before_relax): Likewise.
1003 (md_assemble): Note if the matching instruction has a relaxable
1004 operand. If it does, allocate frag with frag_var and don't
1005 do any fixups.
1006
1007 end-sanitize-v850
1008 start-sanitize-d10v
1009 Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1010
1011 * config/tc-d10v.h (md_cleanup): New function. This is needed to
1012 write out any buffered instructions when a ".end" is found.
1013
1014 end-sanitize-d10v
1015 Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1016
1017 * read.c (read_a_source_file): New hook md_cleanup().
1018
1019 Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
1020
1021 * write.c (fix_new_exp): Use make_expr_symbol to build an
1022 expression symbol for a complex fixup.
1023
1024 start-sanitize-v850
1025 Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
1026
1027 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
1028 hacks to improve parsing of complex hi, lo, zda, etc
1029 expressions.
1030 (md_assemble): Don't demand and eat a trailing ')' after finding
1031 a v850 relocation prefix. Sign extend the constant in a
1032 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
1033 operand.
1034 (parse_cons_expression_v850): Don't eat a trailing ')' after
1035 finding a v850 relocation prefix.
1036
1037 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
1038 (TC_CONS_FIX_NEW): Likewise.
1039 * config/tc-v850.c (parse_cons_expression_v850): New function.
1040 (cons_fix_new_v850): Likewise.
1041
1042 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
1043
1044 end-sanitize-v850
1045 Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
1046
1047 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
1048 for an unknown relocation type.
1049
1050 start-sanitize-v850
1051 Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
1052
1053 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
1054 4 bytes of space.
1055
1056 Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
1057
1058 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
1059 differently for movea & sst/sld insns.
1060
1061 end-sanitize-v850
1062 start-sanitize-d10v
1063 Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1064
1065 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
1066 of instructions.
1067
1068 end-sanitize-d10v
1069 Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
1070
1071 * obj.h (struct format_ops): Add frob_file_after_relocs field.
1072 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
1073 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
1074 frob_file_after_relocs field.
1075 * config/obj-elf.c (elf_format_ops): Likewise.
1076 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
1077 including obj-elf.h.
1078
1079 Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
1080
1081 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
1082 specially if not ELF.
1083 (md_apply_fix): Handle BFD_RELOC_64.
1084 (tc_gen_reloc): Handle BFD_RELOC_64.
1085
1086 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
1087 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
1088 reloc hacking).
1089
1090 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
1091 Don't check S_GET_OTHER.
1092
1093 Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
1094
1095 * config/tc-mips.c (mips_ip): Accept an odd floating point
1096 register with l.s or s.s.
1097
1098 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
1099 .type pseudo-op.
1100 (obj_aout_type): New static function.
1101
1102 Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
1103
1104 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
1105
1106 start-sanitize-v850
1107 Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
1108
1109 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
1110 and sdaoff expressions.
1111
1112 * write.c (fixup_segment): Don't add symbol value to addend if
1113 TC_V850 and OBJ_ELF.
1114 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
1115 pc-relative fixups.
1116
1117 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
1118 (md_pcrel_from_section): Likewise.
1119 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
1120
1121 Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
1122
1123 * config/tc-v850.c (md_pcrel_from): Delete unused function.
1124 (md_pcrel_from_section): New function.
1125 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
1126
1127 end-sanitize-v850
1128 Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
1129
1130 * config/tc-mips.c (load_register): Add cast to offsetT when using
1131 a constant with &~.
1132
1133 Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
1134
1135 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
1136 (elf_frob_file_after_relocs): ... here. New function.
1137 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
1138 * write.c (write_object_file): Call *frob_after_relocs after the
1139 call to write_relocs.
1140
1141 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
1142
1143 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
1144 symbol, as this messes up linking. Instead, expand the recursive call
1145 inline and change up the appropriate bits to get the 0x8000 offset
1146 in the reloc addend.
1147
1148 Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
1149
1150 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
1151 two symbols in the same segment to be adjusted.
1152
1153 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
1154 * configure: Rebuild.
1155
1156 Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1157
1158 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
1159 errors.
1160 (ppc_elf_validate_fix): Ditto.
1161 (md_assemble): Ditto.
1162 (ppc_tc): Ditto.
1163 (ppc_pe_section): Ditto.
1164 (ppc_frob_symbol): Ditto.
1165
1166 Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
1167
1168 * config/mn10300.c (md_assemble): Pass an extra shift count
1169 to mn10300_insert_operand based on the opcode format.
1170 (mn10300_insert_operand): Accept and use extra shift count
1171 parameter.
1172
1173 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
1174 formats rather than hard-coded constants.
1175
1176 * config/tc-mn10300.c (md_assemble): Format D5 instructions
1177 are 7 bytes long. Write out instructions in big-endian format.
1178
1179 Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
1180
1181 * config/tc-mn10300.c (md_assemble): Tweak further so
1182 that all instructions are parsed correctly.
1183
1184 Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
1185
1186 * as.h: Include libiberty.h.
1187 (xmalloc, xrealloc): Don't declare.
1188 * as.c: Don't include libiberty.h.
1189 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
1190 * config/tc-mips.c: Likewise.
1191 * messages.c: Likewise.
1192 (xstrerror): Don't declare.
1193 * xmalloc.c: Remove.
1194
1195 Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
1196
1197 * config/tc-mn10300.h (pre_defined_registers) Remove.
1198 (system_registers, cc_names): Likewise.
1199 (address_registers, data_registers, other_registers): New register
1200 arrays.
1201 (register_name, system_register_name, cc_name): Remove.
1202 (mn10300_reloc_prefix): Likewise.
1203 (data_register_name): New function.
1204 (address_register_name, other_register_name): Likewise.
1205 (md_assemble): Rough cut at parsing operands. Remove lots of
1206 unwanted code.
1207 (md_apply_fix3): Disable for now.
1208
1209 Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1210
1211 * config/tc-m68k.c (select_control_regs): New function, extracted
1212 out of m68k_init_after_args.
1213 (m68k_init_after_args): Use it.
1214 (mri_chip): Use it here as well to update set of allowed control
1215 regs for movec.
1216
1217 Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
1218
1219 * config/obj-elf.c (elf_begin): New function.
1220 (obj_elf_section): Add the section symbol to the symbol table.
1221 * config/obj-elf.h (obj_begin): Define.
1222 (elf_begin): Declare.
1223 * as.c (perform_an_assembly_pass): Call obj_begin if it is
1224 defined.
1225
1226 Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
1227
1228 * config/obj-coff.c (fixup_segment): Subtract the section address
1229 from a PC relative reloc if TC_M68K.
1230
1231 Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
1232
1233 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
1234 .uaxword available even if not OBJ_ELF.
1235 (md_atof): Remove unused local variable wordP.
1236
1237 Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
1238
1239 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
1240 for Matsushita MN10x00 support.
1241 * configure.in: Recognize mn10x00-*-*
1242 * configure: Rebuilt.
1243
1244 Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
1245
1246 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
1247 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
1248 (load_expression): track clobbering of base reg before jmp/jsr.
1249 (s_alpha_file): pass case_hack flags and source filename via
1250 symbol table to bfd.
1251 * tc-alpha.h (TC_CONS_FIX_NEW): define
1252
1253 Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
1254
1255 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
1256 * configure: Rebuild.
1257
1258 Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
1259
1260 * read.c (s_macro): Warn if a macro has the same name as a
1261 pseudo-op.
1262 (s_space): In m68k MRI mode, align to a word boundary.
1263 * macro.c (define_macro): Add namep parameter. Change all
1264 callers.
1265 * macro.h (define_macro): Update declaration.
1266
1267 * as.c (show_usage): Print bug report address.
1268 (parse_args): Change version printing to match current GNU
1269 standards.
1270 * gasp.c (show_usage): Print bug report address.
1271 (main): Change version printing to match current GNU standards.
1272
1273 * config/tc-m68k.c (init_table): Correct access control unit
1274 register numbers. From Ken Rose <rose@netcom.com>.
1275
1276 * config/tc-alpha.c: Add some static function prototypes.
1277 (alpha_macros): Move to top of file. Make static.
1278 (alpha_num_macros): Move to top of file.
1279
1280 start-sanitize-v850
1281 Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
1282
1283 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
1284 generated by DWARF.
1285
1286 end-sanitize-v850
1287 Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
1288
1289 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
1290 and just call sprintf_vma.
1291
1292 Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
1293
1294 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
1295
1296 Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
1297
1298 * read.c (float_cons): Call md_flush_pending_output if it is
1299 defined.
1300
1301 start-sanitize-d10v
1302 Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1303
1304 * config/tc-d10v.c (md_operand): Created. Allows operands to
1305 start with '#'.
1306 * config/tc-d10v.h (md_operand): Undefined.
1307
1308 end-sanitize-d10v
1309 Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
1310
1311 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
1312 (md_assemble): A fixup width of '3' means a 1 byte reloc.
1313
1314 Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
1315
1316 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
1317 reloc for the i960 for a reloc in the same section. This undoes
1318 one of the two changes made Aug 19.
1319
1320 Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
1321
1322 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
1323 symbols to the position of the debugging information.
1324
1325 Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
1326
1327 * expr.c (expr): Always use unsigned right shifts for >>.
1328
1329 Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
1330
1331 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
1332 slots when processing BL fixups.
1333
1334 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
1335 on the first half of the instruction.
1336
1337 Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
1338
1339 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
1340 stabs expression, rather than giving an error.
1341
1342 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
1343 the same file.
1344
1345 Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
1346
1347 * config/tc-mips.c (append_insn): Fill in the value for a constant
1348 jump, rather than creating a reloc.
1349
1350 Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
1351
1352 * config/tc-mips.c (append_insn): Don't swap an instruction which
1353 sets a condition code with an instruction which uses a condition
1354 code.
1355 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
1356 immediate value.
1357
1358 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
1359 (mips_ip): Give a better error message if the ISA level is wrong.
1360 (md_parse_option): Recognize -mcpu=[v][r]5000.
1361
1362 Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
1363
1364 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
1365 leading zeroes.
1366 (load_register): Ensure hi32 bits are not lost during lo32bit
1367 processing. Fix shift offset that was overflowing into the next
1368 instruction field. Add code to generate shorter sequences for
1369 constants with a single contiguous seqeuence of ones.
1370
1371 start-sanitize-d10v
1372 Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1373
1374 * config/tc-d10v.c (d10v_dot_word): New function to support
1375 "@word" with the word pseudo-op.
1376 (md_apply_fix3): Cleanup and changes to support correct sizes
1377 for 16 and 18-bit relocs.
1378
1379 end-sanitize-d10v
1380 Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
1381
1382 * configure.in (sparc-*-aout): Set `em'.
1383 * configure: Regenerated.
1384 * config/te-sparcaout.h: New file.
1385 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
1386 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
1387 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
1388 (SPECIAL_CASE_{SETSW,SETX}): Define.
1389 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
1390 (md_begin): Delete setting of `target_big_endian'.
1391 (output_insn): New function.
1392 (md_assemble): Rewrite. Add `setx' support.
1393 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
1394 special cases.
1395 (md_atof): Add little endian support.
1396 (md_number_to_chars): Likewise.
1397 (md_apply_fix): Likewise.
1398 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
1399 (md_parse_option): Likewise.
1400 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
1401
1402 Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
1403
1404 * ecoff.c (ecoff_new_file): New function.
1405 * ecoff.h (ecoff_new_file): Declare.
1406 * config/obj-ecoff.h (obj_app_file): Define.
1407
1408 Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
1409
1410 * config/tc-alpha.c (load_expression): Bias the .lit8 section
1411 symbol by 32k so that our 16-bit signed offset can address the
1412 entire chunk. Reported by <matt@lkg.dec.com>.
1413
1414 Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
1415
1416 * config/tc-mips.c (load_register): Remove unused variable tmp.
1417
1418 Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
1419
1420 * config/tc-mips.c (load_register): Remove unnecessary code that
1421 was causing the high 32bits of 64bit constants to be lost.
1422
1423 start-sanitize-d10v
1424 Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1425
1426 * config/tc-d10v.c: Added changes to support function
1427 pointers and "@word" syntax.
1428
1429 end-sanitize-d10v
1430 start-sanitize-v850
1431 Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
1432
1433 * config/tc-v850.c: Remove commented out and #if 0'd code.
1434 (v850_reloc_prefix): Provide prototype.
1435 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
1436 functions.
1437 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
1438 (md_assemble): Add default to case statement.
1439
1440 Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
1441
1442 * config/tc-v850.c (md_assemble): Compute size of the instrction
1443 from the opcode.
1444
1445 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
1446 word fixups too.
1447
1448 Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
1449
1450 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
1451 routines to fetch/store the updated instruction from/to memory.
1452 (v850_insert_operand): If the operand has a specialized insert
1453 routine, call it.
1454
1455 Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
1456
1457 * config/tc-v850.c (reg_name_search): Align calling convention to
1458 be like identical function found in tc-ppc.c.
1459 (get_reloc): Removed.
1460 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
1461 (md_assemble): emit fixups.
1462 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
1463 displacement.
1464 (md_apply_fix3): handle fixups/relocs.
1465 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
1466
1467 end-sanitize-v850
1468 Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
1469
1470 Add SH ELF support.
1471 * configure.in (sh-*-elf*): New target.
1472 * config/tc-sh.h (TARGET_ARCH): Define.
1473 (WORKING_DOT_WORD): Define.
1474 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
1475 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
1476 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
1477 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
1478 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
1479 (SUB_SEGMENT_ALIGN): Likewise.
1480 (RELOC_32): Don't define.
1481 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
1482 (target_big_endian): Declare if OBJ_ELF.
1483 (TARGET_FORMAT): Define if OBJ_ELF.
1484 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
1485 numbers throughout.
1486 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
1487 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
1488 (struct sh_count_relocs): Define.
1489 (sh_count_relocs): New static function, broken out of
1490 sh_frob_file. Add BFD_ASSEMBLER code.
1491 (sh_frob_section): Likewise.
1492 (sh_frob_file): Call sh_frob_section.
1493 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
1494 call section_symbol rather than seg_info (seg)->dot.
1495 (md_section_align): Add OBJ_ELF version.
1496 (SWITCH_TABLE_CONS): Define.
1497 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
1498 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
1499 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
1500 BFD_ASSEMBLER.
1501 (struct reloc_map): Define if not BFD_ASSEMBLER.
1502 (coff_reloc_map): Likewise.
1503 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
1504 (tc_gen_reloc): New function if BFD_ASSEMBLER.
1505 * write.c (write_relocs): Ifdef out fx_where test which triggers
1506 inappropriately for SH ELF.
1507 (write_object_file): Call tc_frob_file_before_adjust and
1508 obj_frob_file_before_adjust if they are defined.
1509
1510 * write.c (write_object_file): Use BFD_RELOC_16, not
1511 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
1512
1513 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
1514 code.
1515
1516 start-sanitize-d10v
1517 Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1518
1519 * config/tc-d10v.c (find_opcode): Fix problem with calculating
1520 branch sizes in across sections.
1521
1522 end-sanitize-d10v
1523 start-sanitize-v850
1524 Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
1525
1526 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
1527 hi0() too.
1528
1529 Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
1530
1531 * config/tc-v850.c (md_begin): Deal with end of opcode
1532 table marker.
1533
1534 end-sanitize-v850
1535 start-sanitize-d10v
1536 Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1537
1538 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
1539 the wrong opcode for cases like st2w where there are many forms
1540 of the same instruction.
1541
1542 end-sanitize-d10v
1543 Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
1544
1545 * expr.c (operand): If md_parse_name is defined, call it before
1546 calling symbol_find_or_make.
1547 * config/tc-ppc.h (md_parse_name): Define.
1548 (ppc_parse_name): Declare.
1549 * config/tc-ppc.c (reg_name_search): Add regs and regcount
1550 parameters.
1551 (register_name): Update call to reg_name_search.
1552 (cr_operand): New static variable.
1553 (cr_names): New static const array.
1554 (ppc_parse_name): New function.
1555 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
1556 cr_operand before calling expression.
1557
1558 Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
1559
1560 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
1561 hppa_gen_reloc_type call.
1562
1563 start-sanitize-d10v
1564 Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1565
1566 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
1567 on addresses. Improved error messages.
1568 * doc/c-d10v.texi: Added docs for register pairs.
1569
1570 Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1571
1572 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
1573 checking code.
1574
1575 end-sanitize-d10v
1576 Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
1577
1578 * ecoff.c (init_file): Initialize fMerge to 1.
1579 (add_file): Restore old file merging code, but only merge files if
1580 fMerge is set.
1581 (ecoff_directive_loc): Clear fMerge field of current file.
1582 (ecoff_generate_asm_lineno): Likewise.
1583
1584 start-sanitize-d10v
1585 Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1586
1587 * doc/c-d10v.texi: Fix typo.
1588
1589 end-sanitize-d10v
1590 start-sanitize-v850
1591 Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
1592
1593 * config/tc-v850.c (md_assemble): Correct bit masking for
1594 hi and lo expressions.
1595
1596 * config/tc-v850.c (md_assemble): Rough cut at demanding
1597 "ep" or "r30" in sst and sld instructions.
1598 (md_apply_fix3): Don't abort. Just warn that we don't
1599 have relocs yet.
1600
1601 * config/tc-v850.c (CC_NAME_CNT): Define.
1602 (cc_name): New function.
1603 (md_assemble): Handle V850_OPERAND_CC correctly.
1604
1605 * config/tc-v850.c (md_assemble): Don't forget to initialize
1606 "insn"!
1607
1608 * config/tc-v850.c (reg_name_search): Generalize to search
1609 any given register table.
1610 (register_name): Pass appropriate table and size to reg_name_search.
1611 (system_register_name): New function.
1612 (SYSREG_NAME_CNT): Define.
1613 (md_assemble): Handle operands which are system registers.
1614
1615 * config/tc-v850.c (md_assemble): If we find a register, but the
1616 opcode doesn't want a register, then we don't have a match.
1617 (md_assemble): Get size of the instruction from the opcode table.
1618
1619 end-sanitize-v850
1620 Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
1621
1622 * configure.in: Set and substitute HLDENV.
1623 * configure: Rebuild.
1624 * Makefile.in (HLDENV): New variable.
1625 (as.new): Use $(HLDENV).
1626
1627 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
1628 if an array dimension is not known.
1629
1630 start-sanitize-d10v
1631 Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1632
1633 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
1634 * doc/c-d10v.texi: Cleanup.
1635
1636 end-sanitize-d10v
1637 start-sanitize-v850
1638 Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
1639
1640 * config/tc-v850.c: New file.
1641 * config/tc-v850.h: New file.
1642 * configure (v850-*-elf): New target.
1643 * configure.in (v850-*-elf): New target.
1644
1645 end-sanitize-v850
1646 start-sanitize-d10v
1647 Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1648
1649 * doc/c-d10v.texi: New file.
1650 * doc/all.texi: Added D10V stuff.
1651 * doc/as.texinfo: Added D10V stuff.
1652
1653 Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1654
1655 * config/tc-d10v.c: All references to defined symbols should
1656 now use the optimal instruction. .float and .double now work.
1657
1658 end-sanitize-d10v
1659 Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
1660
1661 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
1662 section address for the i960 as is done for the i386.
1663
1664 Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
1665
1666 * mpw-config.in: Add wildcards for config matching, add mips-*-*
1667 case, forward-include bfd/elf-bfd.h.
1668
1669 start-sanitize-d10v
1670 Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1671
1672 * config/tc-d10v.c: Add additional information to the opcode
1673 table to help determinine which instructions can be done
1674 in parallel.
1675
1676 end-sanitize-d10v
1677 Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
1678
1679 * config/tc-arm.c: Major changes to add Thumb support, with lots
1680 of change input from <rearnsha@armltd.co.uk>.
1681 Reverted to INSN_SIZE macro, rather than insn_size variable.
1682 (insns): Added ARM "bx" instruction support.
1683 (tinsns): Added Thumb instruction definition structure.
1684 (arm_tops_hsh): Added hash structure for Thumb opcodes.
1685 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
1686 (opcode_select,s_arm,s_thumb,s_code): Added.
1687 (decode_shift): Allow upper-case RRX.
1688 (do_ldst): Simpler halfword support.
1689 (do_ldmstm): Improved.
1690 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
1691 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
1692 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
1693 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
1694 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
1695 do_t_adr): Added.
1696 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
1697 (md_parse_option): Add support for -mthumb.
1698 (md_show_usage): Updated to reflect new command line option.
1699 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
1700 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
1701 fragment information to be held.
1702
1703 Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
1704
1705 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
1706 non-null, but is a constant.
1707 (fix_new_arm): Call make_expr_symbol to make the expression symbol
1708 so that error reporting will work correctly.
1709
1710 Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
1711
1712 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
1713 against weak symbols.
1714
1715 Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
1716
1717 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
1718 (ppc_force_relocation): Declare if OBJ_XCOFF.
1719 * config/tc-ppc.c (ppc_force_relocation): New function if
1720 OBJ_XCOFF.
1721
1722 Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
1723
1724 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
1725
1726 start-sanitize-d10v
1727 Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1728
1729 * config/tc-d10v.c: Fix problem with relocs.
1730
1731 end-sanitize-d10v
1732 Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
1733
1734 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
1735 with nops if not in data_section or bss_section.
1736
1737 Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
1738
1739 Add support for openVMS/Alpha.
1740 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
1741 * config/obj-evax.c: New file.
1742 * config/obj-evax.h: New file.
1743 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
1744 defined.
1745 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
1746 defined. Add case for bfd_target_evax_flavour.
1747 * config/vms-a-conf.h: New file.
1748 * conf-a-gas.com: New file.
1749 * configure.in: Add target alpha-*-*vms*.
1750 * configure: Rebuild.
1751 * makefile.vms: New file.
1752 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
1753 Don't call ffs on openVMS/Alpha.
1754
1755 Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
1756
1757 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
1758 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
1759 and sbrk.
1760 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
1761 (NEED_DECLARATION_SBRK): New macro.
1762 * configure, conf.in: Rebuild.
1763 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
1764 (strstr): Declare if NEED_DECLARATION_STRSTR.
1765 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
1766
1767 Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
1768
1769 * symbols.c (resolve_symbol_value): Handle addition or subtraction
1770 by a constant before entering the main switch. Reject attempts to
1771 apply an arithmetic function to non-absolute symbols, except for
1772 the special case of subtraction of two symbols in the same
1773 section.
1774
1775 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
1776 not to more than a 16 byte boundary.
1777
1778 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
1779 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
1780 (tc_gen_reloc): If out of memory call as_fatal rather than
1781 assert. If no howto found, call as_bad_where rather than
1782 as_fatal. Change the error message slightly. Set howto to a
1783 non-NULL value in order to keep going.
1784
1785 start-sanitize-d10v
1786 Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1787
1788 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
1789
1790 end-sanitize-d10v
1791 Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
1792
1793 * config/tc-h8300.c (get_specific): New operand "size" derived
1794 from ".b", ".w" and ".l" extensions. All callers changed. If
1795 the base instruction has no operands, then use the size to
1796 determine which specific instruction to use.
1797
1798 Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
1799
1800 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
1801
1802 Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
1803
1804 * config/tc-mips.c (md_section_align): Don't change addr if
1805 OBJ_ELF.
1806
1807 Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
1808
1809 * config/tc-hppa.c: Revert yesterday's changes.
1810
1811 start-sanitize-d10v
1812 Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1813
1814 * config/tc-d10v.c: Disable range checking on 16-bit values.
1815
1816 end-sanitize-d10v
1817 Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
1818
1819 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
1820 not just the ones that don't match.
1821
1822 start-sanitize-d10v
1823 Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1824
1825 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
1826
1827 end-sanitize-d10v
1828 Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
1829
1830 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
1831 pre-cursor to adding Thumb support. Also added cpu_variant flag
1832 information to each of the asm_flg structures.
1833 (md_parse_option): Updated ARM7 parsing to allow 't' for
1834 thumb/halfword support, aswell as 'm' for long multiply.
1835 (md_show_usage): Updated help message.
1836 (md_assemble): Check that instruction flags are applicated to the
1837 current cpu variant.
1838 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
1839 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
1840 signextension instructions.
1841 (do_ldst): Generate halfword and signextension variants if
1842 mnemonic flags match.
1843 (ldst_extend): Do not allow shifts in the offset field of halfword
1844 or signextension instructions.
1845 (validate_offset_imm): Provide check on halfword and signextension
1846 immediate range.
1847 (add_to_lit_pool): Merge identical literal pool values.
1848
1849 Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
1850
1851 * config/tc-hppa.c (selector_table): Add 'E' selector.
1852 (cons_fix_new_hppa): Don't coke on e_esel.
1853 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
1854 to help generate exception handling tables.
1855 (md_apply_fix): Don't try to apply fixups with an e_esel
1856 selector.
1857 (hppa_fix_adjustable): Fixups with e_esel selectors
1858 are not adjustable.
1859
1860 Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
1861
1862 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
1863 pseudo-ops.
1864
1865 start-sanitize-d10v
1866 Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1867
1868 * config/tc-d10v.c: Added lots of error checking. Added hacks
1869 to support accumulator shifts.
1870
1871 end-sanitize-d10v
1872 Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
1873
1874 * symbols.c (S_SET_EXTERNAL): Let .weak override.
1875 (S_CLEAR_EXTERNAL): Likewise.
1876 (S_SET_WEAK): Remove error; just let .weak override.
1877
1878 start-sanitize-d10v
1879 Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1880
1881 * config/tc-d10v.c (md_assemble): Now handles multiline
1882 instructions.
1883
1884 Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1885
1886 * config/tc-d10v.c: Fix packaging bug. Added range checking.
1887 Added kludge for divs instruction. Fixed minor problem with
1888 multiple text sections.
1889 * config/tc-d10v.h (d10v_cleanup): Change prototype.
1890
1891 Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1892
1893 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
1894 addresses to be right-shifted by 2.
1895
1896 Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1897
1898 * config/tc-d10v.c: Many changes to get relocs working.
1899 (register_name): No longer creates a symbol for register names.
1900 (pre_defined_registers): moved to opcodes/d10v-opc.c.
1901 (d10v_insert_operand): Now works correctly for either container.
1902 * config/tc-d10v.h (d10v_cleanup): Declare.
1903
1904 end-sanitize-d10v
1905 Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
1906
1907 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
1908 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
1909
1910 Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
1911
1912 * tc-alpha.c: Patches to track current minimum alignment to reduce
1913 the number of fragments created with frag_align.
1914 (alpha_current_align): New static variable.
1915 (s_alpha_text): Reset alignment to 0.
1916 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
1917 (s_alpha_stringer, s_alpha_space): New functions.
1918 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
1919 (alpha_cons_align): New function to replace both of them.
1920 (emit_insn): Only align if alpha_current_align is less than 2;
1921 reset alpha_current_align to 2.
1922 (s_alpha_gprel32): Likewise.
1923 (s_alpha_section): New function. Basically duplicate the other
1924 alpha section change hooks. Only define for ELF.
1925 (s_alpha_float_cons): Simplify alignment handling.
1926 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
1927 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
1928 Don't define the s_alpha_cons pseudo-ops. Do define
1929 s_alpha_stringer and s_alpha_space pseudo-ops.
1930 (alpha_align): Skip if less than current default alignment. Set
1931 default alignment.
1932 * tc-alpha.h (md_flush_pending_output): Remove.
1933 (md_cons_align): Add.
1934
1935 * tc-alpha.c: Add oodles of function description comments.
1936 (md_bignum_to_chars): Remove; there are no callers.
1937 (md_show_usage): Mention some more variants.
1938
1939 Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
1940
1941 From Andrew Gierth <ANDREWG@microlise.co.uk>:
1942 * configure.in (sparc-*-sysv4*): New target.
1943 * configure: Rebuild.
1944
1945 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
1946 uaxword to use s_uacons.
1947 (sparc_no_align_cons): New static variable.
1948 (s_uacons): New static function.
1949 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
1950 and return.
1951
1952 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
1953
1954 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
1955 5 with regard to shared libraries.
1956 * configure: Rebuild.
1957
1958 * config/tc-m68k.c (m68k_ip): Use the correct length when
1959 allocating space for the unsupported architecture error message.
1960
1961 start-sanitize-d10v
1962 Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1963
1964 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
1965
1966 Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1967
1968 * config/tc-d10v.c: New file.
1969 * config/tc-d10v.h: New file.
1970 * configure (d10v-*-elf): New target.
1971 * configure.in (d10v-*-elf): New target.
1972 end-sanitize-d10v
1973
1974 Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1975
1976 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
1977
1978 Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
1979
1980 * config/tc-alpha.c (alpha_align): Change fill parameter
1981 to a pointer. Take NULL as 0 or nop depending on section. Change
1982 all callers.
1983 (s_alpha_align): Rename local variables.
1984
1985 * doc/as.texinfo (.align): Document action of omitted
1986 fill parameter.
1987
1988 Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
1989
1990 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
1991 when an unsupported PC relative reloc is seen, rather than calling
1992 abort.
1993
1994 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
1995 Instead, check state when '#' comment is seen.
1996
1997 Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
1998
1999 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
2000 OBJ_MAYBE_ELF.
2001 (tc_gen_reloc): If fixup was changed to be PC relative, change
2002 reloc type accordingly. Use name of reloc in error message.
2003
2004 * as.h: Don't define const or volatile.
2005 * flonum.h: Don't define const.
2006
2007 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
2008 if fx_pcrel is set. Correct setting the addend case in the
2009 OBJ_ELF case (from Andreas Schwab
2010 <schwab@issan.informatik.uni-dortmund.de>).
2011 (md_show_usage): Correct -mfc5200 to -m5200.
2012
2013 Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
2014
2015 * doc/c-m68k.texi: Document -m5200 flag.
2016 * doc/as.texinfo: Likewise.
2017
2018 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
2019 scale factor.
2020
2021 Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
2022
2023 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
2024 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
2025
2026 Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
2027
2028 * Makefile.in (VERSION): Set to cygnus-2.7.1.
2029
2030 * Released binutils 2.7.
2031
2032 Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
2033
2034 * config/tc-mips.c (mips_ip): Only perform range check when
2035 dealing with O_constant expressions.
2036
2037 Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
2038
2039 * m68k-parse.h (m68k_register): Add new coldfile control
2040 registers.
2041
2042 * config/tc-m68k.c (mcf5200_control_regs): New variable,
2043 array of control registers for the coldfire.
2044 (cpu_of_arch): Added mcf5200.
2045 (archs): Added mcf5200.
2046 (init_table): Add new control registers.
2047 (m68k_ip): Added support for new control registers.
2048 (m68k_init_after_args): Likewise.
2049
2050 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
2051
2052 Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
2053
2054 * read.h (is_it_end_of_statement): Declare.
2055 * read.c (is_it_end_of_statement): Remove declaration.
2056
2057 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
2058 within &&.
2059 (md_assemble): Fix handling of @l with an unsigned constant. Add
2060 default case to reloc switch.
2061
2062 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
2063
2064 Based on patches from Tom Quiggle <quiggle@sgi.com>:
2065 * ecoff.c (last_lineno): New static variable.
2066 (add_procedure): Set last_lineno.
2067 (ecoff_directive_loc): Likewise.
2068 (ecoff_generate_asm_lineno): Likewise.
2069 (ecoff_fix_loc): New function.
2070 * ecoff.h (ecoff_fix_loc): Declare.
2071 * config/tc-mips.c (append_insn): When inserting nops, and using
2072 ECOFF debugging, call ecoff_fix_loc.
2073
2074 Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
2075
2076 * config/tc-h8300.c (build_bytes): If an operand type is
2077 marked as SRC_IN_DST retrieve it from the "destination" op.
2078
2079 Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
2080
2081 * configure.in (arm-*-riscix*): Set emulation to riscix.
2082 * configure: Rebuild.
2083 * config/te-riscix.h: New file to define TE_RISCIX.
2084
2085 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
2086
2087 Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
2088
2089 * Makefile.in (config.status): Just run config.status as other
2090 tools do.
2091
2092 Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
2093
2094 * mpw-config.in (TARGET_OS): Add definition to conf.
2095
2096 Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
2097
2098 * config/tc-mips.c (append_insn): Parenthesize
2099 cop_interlocks expressions.
2100
2101 Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
2102
2103 * listing.c (listing_print): Close the listing file if it is not
2104 stdout. Close the other files opened for the listing.
2105
2106 * config/tc-sparc.h (md_cons_align): Define.
2107 (sparc_cons_align): Declare.
2108 (HANDLE_ALIGN): Define.
2109 (sparc_handle_align): Declare.
2110 * config/tc-sparc.c (sparc_cons_align): New function.
2111 (sparc_handle_align): New function.
2112 * read.c (cons_worker): Call md_cons_align if it is defined.
2113
2114 * as.h (struct frag): Add fr_file and fr_line fields.
2115 * frags.c (frag_new): Set fr_file and fr_line.
2116 (frag_var): Likewise.
2117 (frag_variant): Likewise.
2118
2119 * as.h (struct frag): Remove unused align_mask and align_offset
2120 fields.
2121
2122 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
2123 From <uddeborg@carmen.se>.
2124
2125 Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
2126
2127 * configure.in (mips-*-osf*): New target.
2128 * configure: Rebuild.
2129
2130 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
2131
2132 Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
2133
2134 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
2135 between co-processor comparisons and branches for the VR4300.
2136
2137 Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
2138
2139 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
2140 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
2141 (docdir): Removed.
2142 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
2143 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
2144 includedir): Use autoconf set values.
2145 (docdir): Removed.
2146
2147 Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
2148
2149 * listing.c (listing_eject): Don't do anything if listing is 0.
2150 (listing_list): Likewise.
2151 (listing_source_line): Likewise.
2152 (listing_title): Don't save title if listing is 0.
2153 (listing_source_file): Check listing rather than listing_tail.
2154
2155 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
2156 using shared libraries.
2157 * configure: Rebuild.
2158
2159 Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
2160
2161 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
2162 absolute expression if a relocation type was specified.
2163
2164 Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
2165
2166 * configure.in: Add support for *-*-rtems* configurations.
2167 * configure: Rebuild.
2168
2169 Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
2170
2171 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
2172 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
2173 opcodes library for alpha.
2174 * configure: Rebuild with autoconf 2.10.
2175 * config/tc-alpha.c: Substantial rewrite to add ELF support and
2176 use new opcode table.
2177 * config/tc-alpha.h (md_undefined_symbol): Don't define.
2178 (LOCAL_LABEL): Define differently if OBJ_ELF.
2179 (FAKE_LABEL_NAME): Define if OBJ_ELF.
2180 * config/alpha-opcode.h: Remove.
2181 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
2182 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
2183 include/opcode/alpha.h rather than config/alpha-opcode.h.
2184
2185 Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
2186
2187 * config/obj-aout.c (obj_emit_relocations): Give an error if the
2188 relocation symbol was not resolved.
2189 * config/obj-coff.c (do_relocs_for): Likewise.
2190
2191 * write.c (adjust_reloc_syms): Refetch the symbol section after
2192 calling S_GET_VALUE, since it may have changed.
2193
2194 * expr.c (struct expr_symbol_line): Define.
2195 (expr_symbol_lines): New static variable.
2196 (make_expr_symbol): Add entry to expr_symbol_lines.
2197 (expr_symbol_where): New function.
2198 * expr.h: Use extern on function declarations.
2199 (expr_symbol_where): Declare.
2200 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
2201 rather than printing the meaningless name of an expression
2202 symbol.
2203
2204 Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
2205
2206 * config/tc-i386.c (md_number_to_chars): Deleted.
2207 * config/tc-i386.h (md_number_to_chars): New macro.
2208
2209 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
2210 the file.
2211 (load_symbol_address, load_expression): Use build_mem.
2212 (build_operate): New function.
2213 (emit_addq_r): Use it.
2214
2215 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
2216
2217 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
2218
2219 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
2220
2221 * config/tc-vax.h (NOP_OPCODE): Define.
2222
2223 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
2224
2225 * config/obj-vms.h (S_IS_COMMON): Define.
2226 (S_IS_LOCAL): Check for \002 as well as \001.
2227 (LONGWORD_ALIGNMENT): New macro.
2228 (SUB_SEGMENT_ALIGN): Use it.
2229
2230 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
2231
2232 * config/vms-conf.h: Reconcile with conf.in.
2233
2234 Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
2235
2236 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
2237 defined.
2238
2239 * doc/as.texinfo: Document that any number of hex digits can
2240 follow \x.
2241
2242 * as.c (struct defsym_list): Define.
2243 (defsyms): New static variable.
2244 (parse_args): Just put --defsym arguments on defsyms list, rather
2245 than defining them.
2246 (main): Define defsyms after output file is created.
2247
2248 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
2249 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
2250
2251 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
2252 insn_error rather than calling check_absolute_expr.
2253
2254 * as.c (emulation_name): Remove unused static variable.
2255 (default_emul_bfd_name): Add return NULL to avoid warning.
2256 * ecoff.c (ecoff_stab): Remove unused variables name and
2257 name_end.
2258 * frags.c (frag_new): Remove unused variable tmp.
2259 * hash.c (hash_grow): Parenthesize + within <<.
2260 (hash_print_statistics): Use %lu, not %d, to print unsigned
2261 long variables.
2262 * messages.c: Include "libiberty.h".
2263 (fprint_value): Add cast to avoid printf warning.
2264 (sprint_value): Likewise.
2265 * read.c: Include "ecoff.h".
2266 (emit_expr): Add casts to avoid printf warnings.
2267 * read.h: Use extern for function declarations.
2268 (pop_insert): Declare.
2269 * stabs.c: Include "ecoff.h".
2270 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
2271 former_last_fragP, and new_fragP.
2272 * subsegs.h (subsegs_print_statistics): Declare.
2273 * symbols.c (debug_verify_symchain): Change macro to discard
2274 arguments.
2275 * write.c (dump_section_relocs): Likewise.
2276 * write.h: Use extern for function declarations.
2277 (write_print_statistics): Declare.
2278 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
2279 warning.
2280 * config/e-mipself.c (mipself_bfd_name): Likewise.
2281 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
2282
2283 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
2284 emit relocations against external symbols.
2285
2286 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
2287 message if bfd_reloc_type_lookup fails, rather than calling
2288 assert.
2289
2290 * config/tc-alpha.c (alpha_force_relocation): Add
2291 BFD_RELOC_12_PCREL to switch.
2292
2293 Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
2294
2295 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
2296 TE_PE (Lfoo, not .Lfoo).
2297
2298 Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
2299
2300 * read.c (s_fill): Don't warn about a zero repeat count.
2301
2302 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
2303 coprocessor register.
2304
2305 * config/tc-i386.c (md_assemble): When checking the size of a
2306 register to set the size of an instruction, do a bitwise and with
2307 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
2308 or Reg16.
2309
2310 Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
2311
2312 * config/tc-h8300.c (parse_reg): Tweak error messages.
2313 (build_bytes): Likewise.
2314 (skip_colonthing): Handle :32 suffix.
2315 (get_specific): Promote L_24 to L_32 if it makes a match.
2316 Don't always promote L_8 to L_16.
2317 (do_a_fix_imm): Clean up L_32 and L_24 handling.
2318
2319 * config/tc-h8300.c (Smode): New variable.
2320 (h8300hmode): Turn off Hmode.
2321 (h8300smode): New function. Turn on Smode and Hmode.
2322 (md_pseudo_table): New ".h8300s" pseudo-op.
2323 (parse_reg): Handle "exr" register.
2324 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
2325 Handle "mach" and "machl" operands for ldmac.
2326 (get_specific): Handle "stm.l" and "ldm.l".
2327 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
2328 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
2329 (Smode): Declare.
2330
2331 Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
2332
2333 * doc/as.texinfo: Reorder chapter of machine dependent options so
2334 that it is sorted by chip name.
2335
2336 * doc/as.texinfo: Use consistant spelling of Vax.
2337 * doc/c-vax.texi: Likewise.
2338
2339 Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
2340
2341 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
2342 pseudo ops.
2343 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
2344 (md_apply_fix): Likewise.
2345 (pa_try): New function.
2346 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
2347
2348 Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
2349
2350 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
2351 (pa_level): New function.
2352
2353 Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
2354
2355 * listing.c (listing_newline): Don't do anything if listing is 0.
2356
2357 Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
2358
2359 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
2360 symbol_create, not symbol_new.
2361
2362 Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
2363
2364 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
2365 absolute symbol unless TC_FORCE_RELOCATION returns true.
2366
2367 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
2368 version.
2369 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
2370 the symbol to a pointer. Don't set previous_file_symbol.
2371 Simplify symbol list rearrangement.
2372 (coff_frob_symbol): Don't do anything with C_FILE symbols.
2373 (coff_adjust_symtab): Don't check previous_file_symbol.
2374
2375 Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2376
2377 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
2378 directive.
2379 (md_pseudo_table): Add ppc_elf_lcomm.
2380
2381 Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
2382
2383 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
2384 d0{24:1},d0' works without an immediate prefix on the bit numbers.
2385 (md_begin): Add digits to alt_notend_table.
2386 (md_parse_option): Make s a const pointer.
2387
2388 * config/tc-sparc.c (md_pseudo_table): Add "empty".
2389 (s_empty): New static function.
2390
2391 * config/obj-coff.c (struct filename_list): Only define if not
2392 BFD_ASSEMBLER.
2393 (filename_list_head, filename_list_tail): Likewise.
2394 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
2395 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
2396 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
2397 have a section of N_ABS rather than N_DEBUG. If we do a merge,
2398 remove the new symbol from the list.
2399 (obj_coff_endef, both versions): Call tag_insert even if there is
2400 an old symbol with the same name, if the old symbol does not
2401 happen to be a tag.
2402 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
2403 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
2404 symbol that will be moved to the end of the symbol list.
2405 (coff_adjust_section_syms): Always call section_symbol for .text,
2406 .data, and .bss.
2407 (coff_frob_section): Likewise. Also, remove unused variable
2408 strname.
2409
2410 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
2411 manipulating frags directly.
2412 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
2413 defined.
2414
2415 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
2416 whether the next character is '*' before checking whether we are
2417 at the start of a line. Permit LINE_COMMENT_START to start a
2418 comment in state 1 (seen some whitespace) as well, to match the
2419 documentation.
2420
2421 * gasp.c (do_align): Permit a fill value for .align.
2422
2423 Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
2424
2425 * read.c (next_char_of_string): Warn if a newline is seen in the
2426 middle of a string. Call bump_line_counters when appropriate.
2427
2428 Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
2429
2430 * symbols.c (colon): Use LOCAL_LABEL.
2431
2432 Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
2433
2434 * Makefile.in (install): Don't check to see if tooldir exists.
2435 Make $(tooldir) and $(tooldir)/bin.
2436
2437 Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2438
2439 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
2440 default.
2441
2442 Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
2443
2444 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
2445 insn_error. Don't put the string "ERROR" in insn_error. Set
2446 insn_error rather than calling as_warn for an unsupported opcode.
2447
2448 Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
2449
2450 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
2451 before permitting -64.
2452 * output-file.c (output_file_create): Remove duplicate
2453 bfd_perror.
2454
2455 Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
2456
2457 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
2458 section rather than a .reginfo section.
2459 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
2460 information.
2461
2462 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
2463 bit value with the high bit set.
2464
2465 Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
2466
2467 * read.c (s_lcomm): Set section flags for .sbss section.
2468
2469 * config/tc-mips.c (mips_64): New static variable.
2470 (mips_target_format): If mips_64, return elf64 targets rather than
2471 elf32 ones.
2472 (md_longopts): Add "32" and "64".
2473 (md_parse_option): Handle -32 and -64.
2474 (md_show_usage): Mention -32 and -64.
2475 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
2476 a 4 byte one.
2477
2478 Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2479
2480 * config/tc-ppc.c (comment_chars): Make '!' a comment character
2481 for Solaris compatibility.
2482
2483 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
2484 .stabd with 4 arguments into a .stabn.
2485
2486 Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
2487
2488 * config/tc-mips.c (macro): When passing X_add_number to
2489 macro_build, cast it to int first.
2490
2491 Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
2492
2493 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
2494 created by emit_expr.
2495
2496 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
2497 as_perror rather than assert.
2498
2499 Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
2500
2501 * config/tc-mips.c (mips_ip): Mark sections created to hold
2502 floating point information as read only.
2503
2504 Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
2505
2506 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
2507
2508 Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2509
2510 * read.c (potable): Add .skip as a synonym for .space.
2511
2512 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
2513 4 arguments, providing the 4th argument is 0, to allow
2514 compatibility with the Solaris assembler.
2515
2516 Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
2517
2518 * config/tc-sh.h (struct sh_segment_info_type): Define.
2519 (TC_SEGMENT_INFO_TYPE): Define.
2520 (sh_frob_label): Declare.
2521 (tc_frob_label): Define.
2522 (sh_flush_pending_output): Declare.
2523 (md_flush_pending_output): Define.
2524 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
2525 reloc before the instruction if necessary.
2526 (sh_frob_label): New function.
2527 (sh_flush_pending_output): New function.
2528 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
2529 when looking for the reloc for the target of .uses.
2530 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
2531 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
2532 emitted.
2533 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
2534 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
2535 the absolute symbol.
2536
2537 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
2538 TC_SEGMENT_INFO_TYPE is defined.
2539
2540 Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
2541
2542 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
2543 matches the register size.
2544
2545 Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
2546
2547 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
2548 fx_done set.
2549 (do_relocs_for): Likewise.
2550 (fixup_segment): Don't just quit if linkrelax is set. Try to
2551 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
2552 nonzero.
2553
2554 Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2555
2556 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
2557 relative relocations with -mrelocatable. Also allow unfixed
2558 relocs in .ex_shared.
2559
2560 Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
2561
2562 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
2563 non-zero before assuming this is a long file name.
2564 (w_strings): Likewise.
2565 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
2566
2567 * config/obj-coff.c (w_strings): Move declaration of i inside
2568 #ifdef block which uses it.
2569
2570 Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
2571
2572 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
2573 "relaxmode". Output relocs which identify various relaxing
2574 possibilities for mov.[bwl] instructions.
2575 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
2576
2577 Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
2578
2579 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
2580 (MD_APPLY_FIX3): Define.
2581 * config/tc-arm.c (my_get_expression): Only watch for bad segments
2582 if OBJ_AOUT.
2583 (md_apply_fix3): Renamed from md_apply_fix.
2584 If pcrel reloc and symbol is in different section, undo effects
2585 of md_pcrel_from.
2586
2587 Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
2588
2589 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
2590 any reloc with an LR% or RR% field selector for SOM.
2591
2592 Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
2593
2594 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
2595 variables.
2596
2597 Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
2598
2599 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
2600 SF_GET_STATICS set.
2601 (yank_symbols): Likewise.
2602
2603 Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
2604
2605 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
2606 BFD_ASSEMBLER, add name field.
2607 * config/obj-coff.c: Include "libiberty.h".
2608 (coff_header_append): Handle long section names.
2609 (crawl_symbols): Just use the name field for the symbol name,
2610 without worrying about null byte termination.
2611 (w_strings): Handle long section names.
2612 (write_object_file): Likewise. Also, use the name field, rather
2613 than scnhdr.s_name.
2614 (obj_coff_add_segment): Permit long section names.
2615 (obj_coff_init_stab_section): Use the name field, rather than
2616 scnhdr.s_name.
2617 (adjust_stab_section): Likewise.
2618 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
2619
2620 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
2621 (mem_fmt): Likewise.
2622 (md_apply_fix): Don't check fx_im_disp field.
2623
2624 Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
2625
2626 * configure.in: Add * after sparc*-*-vxworks.
2627 * configure: Rebuild.
2628
2629 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
2630 define it to comment_chars. Use tc_comment_chars rather than
2631 comment_chars.
2632 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
2633 * config/tc-m68k.h (tc_comment_chars): Define.
2634 (m68k_comment_chars): Declare.
2635 * config/tc-m68k.c (m68k_comment_chars): Rename from
2636 comment_chars. Change into a pointer rather than an array.
2637 (md_longopts): Add "bitwise-or".
2638 (md_parse_option): Handle OPTION_BITWISE_OR.
2639 (md_show_usage): Mention --bitwise-or.
2640 * doc/c-m68k.texi: Document --bitwise-or.
2641
2642 Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
2643
2644 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
2645 in 68000 mode.
2646
2647 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
2648 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
2649 correct handling of input line pointer, and call
2650 demand_empty_rest_of_line.
2651
2652 Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
2653
2654 * config/tc-sparc.c (in_bitfield_range): New static function.
2655 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
2656 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
2657 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
2658 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
2659 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
2660
2661 Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
2662
2663 * config/obj-coff.c: BFD_ASSEMBLER:
2664 (coff_last_bf): New static variable.
2665 (coff_frob_symbol): Set endndx of a .bf symbol.
2666 Non BFD_ASSEMBLER:
2667 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
2668 (last_bfP): New static variable.
2669 (yank_symbols): Set endndx of a .bf symbol.
2670
2671 Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2672
2673 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
2674 and -s options. Add -be for good measure.
2675
2676 Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
2677
2678 * read.c (s_space): Support non-constant fill value. Handle fill
2679 value correctly for a size other than 1.
2680
2681 Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
2682
2683 * config/tc-arm.c (my_get_float_expression): Update call to
2684 gen_to_words, X_PRECISION changed from 6 to 5.
2685
2686 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2687
2688 * config/tc-ppc.c (register_name,reg_name_search): Move register
2689 name lookup from PE specific code to all targets. Add support for
2690 -mregnames/-mno-regnames to control whether register names are
2691 expanded or not.
2692 (md_assemble): Call register_name for all platforms.
2693 (md_parse_option): Add support for -mregnames/-mno-regnames.
2694
2695 * configure.in (powerpcle*-*-solaris): Add support.
2696 (powerpc*-*-linux): Ditto.
2697 * configure: Regenerate.
2698
2699 * config/ppc-sol.mt: New config file for PowerPC Solaris.
2700
2701 Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
2702
2703 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
2704 be associated with a single %lo reloc.
2705
2706 * config/tc-mips.c (load_address): Cast X_add_number to valueT
2707 before comparing against MAX_GPREL_OFFSET, so that negative
2708 numbers are handled correctly.
2709 (macro): Likewise.
2710
2711 Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
2712
2713 * config/tc-sparc.c (last_insn): New static variable.
2714 (md_assemble): Warn about putting floating point branches in a
2715 delay slot. If architecture is less than v9, insert NOP
2716 instructions between floating point instructions and floating
2717 point branches. (The SunOS assembler does both these operations.)
2718 Save the last instruction opcode.
2719 (sparc_ip): Add pinsn parameter. Change caller.
2720
2721 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
2722 for byte jump to next instruction to skip empty frags.
2723
2724 Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
2725
2726 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
2727 for addq with a 16 bit signed value, just emit a lda instruction
2728 instead.
2729
2730 Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
2731
2732 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
2733 of a 32bit operand.
2734
2735 Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
2736
2737 * configure.in: Permit --enable-shared to specify a list of
2738 directories.
2739 * configure: Rebuild.
2740
2741 Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
2742
2743 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
2744 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
2745
2746 Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2747
2748 * config/atof-ieee.c: Fix handling of denormalized extended
2749 precision numbers and overflow/underflow detection.
2750 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
2751 not include the 16 bit gap in the m68k extended precision format.
2752
2753 Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
2754
2755 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
2756 <jdp@polstra.com>.
2757 * configure: Rebuild.
2758
2759 Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
2760
2761 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
2762 be accessed using the $gp register.
2763 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
2764
2765 Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
2766
2767 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
2768 bfd_mach_sparc_sparclet if current_architecture is sparclet.
2769
2770 Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
2771
2772 * read.c (get_line_sb): Bump line counters based on
2773 input_line_pointer[-1], not *input_line_pointer. Don't bother to
2774 call LISTING_NEWLINE.
2775 (s_macro): Don't call demand_empty_rest_of_line.
2776 * app.c (do_scrub_chars): When handling C style comments, unget
2777 ch2 rather than ch.
2778
2779 Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
2780
2781 * read.h (enum linkonce_type): Define.
2782 (s_linkonce): Declare.
2783 * read.c (potable): Add "linkonce".
2784 (s_linkonce): New function.
2785 * subsegs.h (segment_info_type): Add linkonce field to
2786 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
2787 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
2788 (obj_coff_pe_handle_link_once): Declare if TE_PE.
2789 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
2790 "coff/pe.h".
2791 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
2792 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
2793 entry based on the linkonce field in segment_info.
2794 * doc/as.texinfo: Document .linkonce.
2795
2796 Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
2797
2798 * doc/as.1: Changed to be recognized by catman -w on Solaris.
2799
2800 Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
2801
2802 * stabs.c (s_stab_generic): Call the listing functions before
2803 doing the rest of the processing, which may involve freeing the
2804 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
2805 SEPARATE_STAB_SECTIONS case.
2806
2807 * config/tc-hppa.c: Remove nested comment.
2808 (tc_gen_reloc): Move label done inside the ifdef in which it is
2809 used.
2810 (md_apply_fix): Pass pointers to correct types to libhppa.h
2811 functions. Always return a value.
2812
2813 * config/tc-mips.h (tc_frob_file): Define.
2814 (mips_frob_file): Declare.
2815 * config/tc-mips.c (struct mips_hi_fixup): Define.
2816 (mips_hi_fixup_list): New static variable.
2817 (imm_unmatched_hi): New static variable.
2818 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
2819 offset_reloc. Pass imm_unmatched_hi to append_insn.
2820 (append_insn): Add unmatched_hi parameter. If it is set, add the
2821 new fixup to mips_hi_fixup_list. Change all callers.
2822 (mips_ip): Set imm_unmatched_hi when appropriate.
2823 (mips_frob_file): New function.
2824
2825 Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
2826
2827 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
2828 * configure: Regenerated.
2829
2830 Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
2831
2832 * as.c (main): Call bfd_set_error_program_name.
2833
2834 Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
2835
2836 * as.h (strdup): Don't declare.
2837 * stabs.c: Include libiberty.h
2838 (get_stab_string_offset): Use xstrdup rather than strdup.
2839 (s_stab_generic): Likewise.
2840 * as.c (parse_args): Likewise.
2841 * read.c (s_mri_sect): Likewise.
2842
2843 * gasp.c (change_base): Recognize \(...) construct documented to
2844 pass through enclosed characters literally through to the output.
2845 (process_assigns): Likewise. Also, be more careful to avoid
2846 looking past the end of the buffer.
2847
2848 Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
2849
2850 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
2851 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
2852
2853 Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2854
2855 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
2856
2857 Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
2858
2859 * config/alpha-opcode.h: Added cvtst instruction.
2860
2861 Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
2862
2863 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
2864 string. Extract the addend from the result of expression.
2865
2866 Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
2867
2868 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
2869 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
2870 mode, change the state to 3 rather than 1.
2871
2872 Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
2873
2874 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
2875 correspond to 11 March change.
2876
2877 Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
2878
2879 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
2880 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
2881
2882 Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
2883
2884 * configure: Rebuild with autoconf 2.8.
2885
2886 Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
2887
2888 * config/atof-ieee.c (gen_to_words): Improve handling of
2889 X_PRECISION numbers. Based on patches from Andreas Schwab
2890 <schwab@issan.informatik.uni-dortmund.de>.
2891
2892 Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
2893
2894 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
2895 (SEG_LAST): New.
2896 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
2897 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
2898 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
2899 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
2900 SEG_E9.
2901
2902 Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
2903
2904 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
2905
2906 Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
2907
2908 * config/tc-hppa.c (SUBSEG_MILLI): Define.
2909 (pa_def_subspaces): Add $MILLICODE$.
2910 (pa_spaces_begin): Set section flags for $MILLICODE$.
2911
2912 Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
2913
2914 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
2915 not SHT_NOBITS. Don't tamper with flags based on type if a
2916 special section was found (revert Feb 29 change).
2917
2918 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
2919 if aligning to a longword boundary or greater.
2920
2921 Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
2922
2923 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
2924
2925 Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
2926
2927 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
2928 * configure: Regenerated.
2929
2930 Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
2931
2932 * config/tc-hppa.c: Add default definitions for R_N0SEL and
2933 R_N1SEL since they're not defined for old versions of hpux.
2934
2935 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
2936 Set "sym_ptr_ptr" and "addend" fields to dummy values for
2937 R_N0SEL and R_N1SEL.
2938
2939 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2940
2941 * flonum-konst.c: Add two more constants for 1e+-2048 and
2942 1e+-4096, and correct the other constants.
2943
2944 * symbols.c (resolve_symbol_value): Handle O_logical_not.
2945
2946 Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2947
2948 * config/obj-elf.c (obj_elf_section): Allow predefined section
2949 types to set the nobits type. Avoid a shadowed declaration.
2950
2951 Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
2952
2953 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
2954 reduce relocs using e_nlrsel field selectors.
2955
2956 * write.c (fix_new_exp): Don't use #elif. Some compilers
2957 don't handle it.
2958
2959 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
2960 the selector table.
2961 (pa_chk_field_selector): Handle new field selectors for SOM.
2962
2963 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2964
2965 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
2966 * configure: Rebuild.
2967 * config/te-linux.h (LOCAL_LABELS_FB): Define.
2968 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
2969 "a.out-m68k-linux".
2970 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
2971 is defined.
2972
2973 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
2974
2975 * mpw-make.sed: Update to handle shared library support.
2976
2977 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
2978
2979 * config/tc-sparc.c (sparc_ip): Print all architectures that support
2980 the insn on mismatch.
2981
2982 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
2983
2984 * configure.in: Add support for a29-coff.
2985 * configure: Rebuild.
2986
2987 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
2988
2989 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
2990 of the section when looking for the R_SH_USES fixup, because the
2991 frag addresses have not yet been adjusted.
2992
2993 * gdbinit.in: Set a breakpoint on as_warn_where.
2994
2995 * config/tc-mips.c (macro): Add missing arguments to macro_build
2996 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
2997
2998 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
2999
3000 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
3001 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
3002
3003 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
3004
3005 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
3006
3007 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
3008
3009 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
3010 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
3011 Recognize [uU] format args as sparclet cpregs.
3012
3013 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
3014
3015 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
3016 in bss_section.
3017
3018 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
3019
3020 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
3021 well as S_IS_EXTERNAL.
3022 (tc_fix_adjustable): Likewise.
3023 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
3024 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
3025 early.
3026 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
3027 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
3028
3029 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
3030
3031 * config/tc-sparc.c (max_architecture): Change to sparclite for
3032 32 bit arch.
3033 (default_compatible): Delete.
3034 (sparc_ffs): New function.
3035 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
3036 (sparc_ip): Rewrite architecture match and bump logic.
3037
3038 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
3039
3040 * configure.in: Check for 'do not mix' from native linker before
3041 trying to use -rpath.
3042 * configure: Rebuild.
3043
3044 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
3045
3046 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
3047 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
3048 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
3049 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
3050 is set.
3051 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
3052 to the symbol lnnoptr field, to get the correct file offset.
3053
3054 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3055
3056 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
3057 symbols that are not function, file, or section symbols to be
3058 object types.
3059
3060 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
3061
3062 * configure: Set and substitute RPATH_ENVVAR.
3063 * configure: Rebuild.
3064 * Makefile.in (RPATH_ENVVAR): New variable.
3065 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
3066
3067 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
3068 doesn't need opcodes. If configuring shared, opcodes needs bfd.
3069 * configure: Rebuild.
3070
3071 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
3072
3073 * read.c (s_mri_sect): Don't return '\0' in type. Set all
3074 appropriate flags in BFD section.
3075
3076 * configure.in (m68k-*-psos*): New target.
3077 * configure: Rebuild.
3078 * config/te-psos.h: New file.
3079 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
3080 is defined.
3081
3082 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
3083
3084 From Alan Modra <alan@spri.levels.unisa.edu.au>:
3085 * configure.in: Remove duplicate setting of cpu_type. Check
3086 whether opcodes library is required for on all targets, not just
3087 primary one.
3088 * configure: Rebuild.
3089
3090 * config/tc-mips.c (mips_big_got): New static variable.
3091 (s_extern): Don't declare.
3092 (reg_needs_delay): New static function.
3093 (macro_build): Permit GOT/CALL_HI/LO relocs.
3094 (macro_build_lui): If place is not NULL, use the number in the
3095 expression.
3096 (load_address): Handle mips_big_got case.
3097 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
3098 store macros.
3099 (OPTION_XGOT): Define.
3100 (md_longopts): Add "xgot" if OBJ_ELF.
3101 (md_parse_option): Handle -xgot.
3102 (md_show_usage): Mention -xgot.
3103 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
3104 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
3105
3106 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3107
3108 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
3109 the byte relocation, point it to the low byte of the word.
3110
3111 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
3112
3113 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
3114 * configure: Rebuild.
3115
3116 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
3117
3118 * configure.in: Recognize any sparc* cpu.
3119 * configure: Regenerated.
3120
3121 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
3122
3123 * read.c (potable): Add "mri" and ".mri".
3124 (s_mri): New function.
3125 * read.h (s_mri): Declare.
3126 * app.c (scrub_m68k_mri): New static variable.
3127 (mri_pseudo): New static variable.
3128 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
3129 flag_m68k_mri. Initialize scrub_m68k_mri.
3130 (mri_state, mri_last_ch): New static variables.
3131 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
3132 fields.
3133 (app_push): Save new fields.
3134 (app_pop): Restore new fields.
3135 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
3136 If TC_M68K, use a trivial state machine to look for occurrences of
3137 the .mri pseudo-op, and change the mode appropriately.
3138 * as.h (do_scrub_begin): Update prototype.
3139 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
3140 do_scrub_begin.
3141 * config/tc-m68k.c (reg_prefix_optional_seen): New static
3142 variable.
3143 (m68k_mri_mode_change): New function.
3144 (md_parse_option): Set reg_prefix_optional_seen.
3145 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
3146 (MRI_MODE_CHANGE): Define.
3147 * doc/as.texinfo: Document .mri pseudo-op.
3148
3149 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
3150 comment character.
3151
3152 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3153
3154 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
3155 * config/m68k-parse.h (enum pic_relocation): Define.
3156 (struct m68k_exp): Add pic_reloc field.
3157 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
3158 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
3159 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
3160 otherwise.
3161 * config/tc-m68k.c: Delete definition of NO_RELOC.
3162 (struct m68k_it): Add pic_reloc field.
3163 (add_fix): Copy over pic_reloc field.
3164 (md_pseudo_table): Interpret .align parameter as byte count.
3165 (mote_pseudo_table): Likewise.
3166 (tc_m68k_fix_adjustable): New function.
3167 (get_reloc_code): New function.
3168 (md_assemble): Use it as last argument to fix_new_exp.
3169 (md_apply_fix_2): For a relocation against a symbol don't put the
3170 addend into the data.
3171 (tc_gen_reloc): Different addend computation for OBJ_ELF.
3172 (m68k_ip): Don't relax an operand that requires pic relocation.
3173 (md_begin): Align .text, .data and .bss on 4 byte boundary by
3174 default.
3175 * write.c (fixup_segment): Don't add symbol value to addend if
3176 TC_M68K and OBJ_ELF.
3177 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
3178 (motorola_operand): Add rule for `(zapc, EXPR)'.
3179
3180 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
3181
3182 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
3183 *really* is permissible before the comma.
3184
3185 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
3186
3187 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
3188 inserting nop instructions.
3189
3190 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
3191
3192 * config/te-aux.h: Change include of aux.h to aux-coff.h.
3193
3194 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
3195
3196 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
3197 class setting for a CALLNAME symbol in COFF.
3198
3199 * read.c (potable): Pass negative numbers for new .balign[wl] and
3200 .p2align[wl] pseudo-ops.
3201 (s_align_bytes): Treat a negative argument as specifying the fill
3202 length.
3203 (s_align_ptwo): Likewise.
3204
3205 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
3206
3207 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
3208 (do_align): Take new len parameter. Change all callers. Pass it
3209 to md_do_align.
3210 (s_align_bytes): Arg now indicates the length of the fill pattern.
3211 (s_align_ptwo): Likewise.
3212 * config/obj-coff.c (write_object_file): Pass length to
3213 md_do_align.
3214 * config/tc-i386.h (md_do_align): Take new len parameter.
3215 * config/tc-m88k.h (md_do_align): Likewise.
3216 * config/tc-m88k.c (m88k_do_align): Likewise.
3217 * config/tc-sh.h (md_do_align): Likewise.
3218 * config/tc-sh.c (sh_do_align): Likewise.
3219 * doc/as.texinfo: Document new pseudo-ops.
3220
3221 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
3222 done in cvt_frag_to_fill.
3223
3224 * config/tc-sh.h (sh_do_align): Declare.
3225 (md_do_align): Define.
3226 * config/tc-sh.c (sh_do_align): New function.
3227
3228 * ecoff.c (ecoff_build_lineno): Don't try to store the address
3229 difference if the next address is before the current one.
3230
3231 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
3232 (archs): Initialize new field.
3233 (m68k_ip): Don't list alias names when listing CPUs which support
3234 an instruction.
3235
3236 * as.c (main): Call parse_args before read_begin.
3237 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
3238 front of generated pseudo-ops.
3239 * read.c (potable): Ignore "name".
3240 (s_app_file): Permit a single quote after the string, since one
3241 may appear in m68k MRI mode.
3242
3243 * configure.in: Check for --enable-shared. If linking against
3244 shared BFD and opcodes, fix library name on SunOS, and try to set
3245 -rpath reasonably.
3246 * configure: Rebuild.
3247
3248 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
3249
3250 * as.h (flag_m68k_mri): Declare.
3251 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
3252 * Many files: For MRI syntax that is specific to the m68k MRI
3253 assembler, check flag_m68k_mri rather than flag_mri or
3254 MRI_MODE_NEEDS_PSEUDO_DOT.
3255
3256 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
3257
3258 * config/tc-i960.c (ARCH_HX): Define.
3259 (arch_tab): Add HX.
3260 (targ_has_sfr): Handle ARCH_HX.
3261 (targ_has_iclass): Handle ARCH_HX.
3262 (tc_coff_fix2rtype): Add return 0 to avoid warning.
3263 (tc_headers_hook): If the architecture was specified explicitly,
3264 use it when setting the flags. Set the extern variable coff_flags
3265 rather than headers->filehdr.f_flags, since the latter is set
3266 unconditionally in obj-coff.c.
3267 (i960_handle_align): Remove unused variable fixp.
3268
3269 Support for building bfd and opcodes as shared libraries, based on
3270 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
3271 * configure.in: Set OPCODES and BFD to search directories.
3272 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
3273 * configure: Rebuild.
3274 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
3275 (LIBDEPS): New variable.
3276 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
3277 $(HLDFLAGS) in link.
3278 (check): Set LD_LIBRARY_PATH in the environment.
3279
3280 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
3281
3282 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
3283 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
3284 read-only, not read/write.
3285
3286 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
3287
3288 * Makefile.in (INSTALL_XFORM): Remove -e.
3289
3290 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
3291
3292 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
3293 than comparing S_GET_SEGMENT to undefined_section.
3294 (write_object_file): Skip symbols which were equated to an
3295 undefined or common symbol.
3296 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
3297 S_IS_COMMON rather than comparing S_GET_SEGMENT to
3298 undefined_section.
3299 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
3300 or S_IS_COMMON call S_GET_VALUE.
3301 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
3302 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
3303 to an undefined or common symbol, convert the reloc to be against
3304 the target symbol.
3305 (obj_crawl_symbol_chain): Skip symbols which were equated to an
3306 undefined or common symbol.
3307 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
3308 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
3309 to an undefined or common symbol, convert the reloc to be against
3310 the target symbol.
3311 (obj_crawl_symbol_chain): Skip symbols which were equated to an
3312 undefined or common symbol.
3313 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
3314 S_IS_COMMON rather than comparing S_GET_SEGMENT to
3315 undefined_section.
3316 (yank_symbols): Skip symbols which were equated to an undefined or
3317 common symbol.
3318
3319 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
3320
3321 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
3322 * config/obj-bout.h (S_IS_LOCAL): Likewise.
3323
3324 * configure.in: Make sure we only add m68k-parse.o to
3325 ${extra_objects} once, no matter how many m68k targets have been
3326 enabled.
3327 * configure: Rebuild.
3328
3329 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
3330
3331 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
3332 * configure: Rebuild.
3333
3334 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
3335
3336 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
3337 * doc/c-m68k.texi: Document .extend and .ldouble.
3338
3339 * configure.in (m68*-apple-aux*): New target.
3340 * config/te-aux.h: New file.
3341 * config/obj-coff.c (compare_external_relocs): New static function
3342 if TE_AUX.
3343 (do_relocs_for): Sort relocs if TE_AUX.
3344 (fixup_segment): If TE_AUX, store common symbol value in segment.
3345 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
3346
3347 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
3348
3349 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
3350
3351 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
3352 BSF_FUNCTION.
3353 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
3354 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
3355 symbol.
3356 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
3357 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
3358 an undefined symbol and the size of a function symbol.
3359 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
3360 for all common symbols.
3361
3362 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
3363
3364 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
3365 scaling of index.
3366
3367 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
3368 m68k.
3369
3370 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
3371
3372 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
3373 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
3374
3375 * ecoff.c (localsym_t): Add addend field.
3376 (add_ecoff_symbol): Add addend argument. Change all callers.
3377 (coff_sym_value): Make static.
3378 (coff_sym_addend): New static variable.
3379 (ecoff_directive_def): Initialize coff_sym_addend.
3380 (ecoff_directive_val): Accept symbol + constant.
3381 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
3382 (ecoff_build_symbols): Include the addend in the symbol value.
3383
3384 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
3385
3386 * config/tc-ppc.c (md_assemble): Ignore overflow on
3387 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
3388
3389 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3390
3391 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
3392 bytes in size, so offset appropriately in big endian mode when
3393 writing the bottom 2 bytes.
3394
3395 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
3396
3397 * config/tc-sparc.c (default_compatible): New static local.
3398 (md_begin): Initialize it. Rewrite warn_on_bump handling.
3399 (sparc_ip): If no architecture or -bump specified, don't mark as
3400 mismatched those in default_compatible.
3401
3402 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
3403
3404 SCO ELF support from Robert Lipe <robertl@arnet.com>:
3405 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
3406 * configure: Rebuild.
3407 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
3408 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
3409 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
3410 (sco_id): Declare if SCO_ELF.
3411
3412 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
3413
3414 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
3415 ({max,warn_after}_architecture): New static locals.
3416 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
3417 If both architecture and -bump requested, set max_architecture to max.
3418 (sparc_md_end): Simplify.
3419 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
3420 Rewrite code to bump architecture and check for conflicts.
3421 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
3422 with Solaris assembler.
3423 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
3424 (md_show_usage): Update.
3425
3426 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
3427
3428 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
3429
3430 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
3431
3432 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
3433 #ifdef sparcv9 when choosing value.
3434 (ENV64): Delete.
3435 (md_end): Define.
3436 (sparc_md_end): Declare.
3437 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
3438 (initial_architecture): New static local.
3439 (can_bump_v9_p): Likewise.
3440 (NO_V9): Delete all occurrences.
3441 (sparc_md_end): New function.
3442 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
3443 Don't bump architecture to v9 unless can_bump_v9_p set.
3444 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
3445 * configure.in (sparc64 target cpu): Don't set obj_format here.
3446 (SPARC_V9): Renamed from sparcv9.
3447 (sparc64-*-elf*): Define SPARC_ARCH64.
3448 * configure: Regenerated.
3449 * acconfig.h (SPARC_V9): Renamed from sparcv9.
3450 (SPARC_ARCH64): Add.
3451 * conf.in: Regenerated.
3452 * config/vmsconf.h: Update.
3453
3454 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
3455
3456 * config/tc-mips.c (load_register): Optimise "dli" loads.
3457 (md_show_usage): add "-mcpu=vr4100" to help text.
3458
3459 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
3460
3461 * symbols.c (resolve_symbol_value): If a symbol is equated to an
3462 undefined symbol, preserve the X_op of O_symbol.
3463 (S_GET_VALUE): Fix check to permit this case.
3464 * write.c (write_relocs): If a reloc is against an undefined
3465 symbol equated to another symbol, change the reloc to be against
3466 the latter symbol.
3467 * config/obj-coff.c (do_relocs_for): Likewise.
3468
3469 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
3470 XMC_PR.
3471
3472 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3473
3474 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
3475 computer is PowerPC.
3476
3477 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
3478
3479 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
3480 mentioned in the eabi.
3481
3482 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
3483
3484 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
3485 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
3486
3487 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3488
3489 * config/tc-ppc.c (mapping): Add more relocation suffixes.
3490
3491 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3492
3493 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
3494 as a section it is ok to have unadorned -mrelocatable pointers in.
3495
3496 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3497
3498 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
3499 #ifdef OBJ_ELF.
3500
3501 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3502
3503 * config/obj-elf.c (obj_elf_section): Add hooks so machine
3504 dependent section attributes can be handled.
3505
3506 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
3507 macros to add support for exclude section flag and ordered section
3508 type.
3509
3510 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
3511 functions to add support for exclude section flag and ordered
3512 section type.
3513
3514 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
3515
3516 * subsegs.c (section_symbol): Don't try to look up the section
3517 symbol in the hash table. It should be possible to have a symbol
3518 with the same name as a section, but no connection to it.
3519
3520 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
3521 From James Carlson <carlson@xylogics.com>.
3522
3523 * expr.c (operand): Skip whitespace after a close parenthesis.
3524 From James Carlson <carlson@xylogics.com>.
3525
3526 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
3527
3528 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
3529 as_warn_where for relocation overflow.
3530 (parse_reg): Accept register name only if next character is
3531 not alphanumeric.
3532
3533 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
3534
3535 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
3536 addresses for static variables.
3537
3538 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
3539
3540 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
3541 and xgot give the old toc16 relocation.
3542 (md_apply_fix3): Support all GOT relocations.
3543
3544 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
3545
3546 * config/tc-mips.c (load_address): Correctly handle a constant in
3547 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
3548
3549 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
3550
3551 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
3552 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
3553 (build_Mbytes): Handle REG_B.
3554
3555 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
3556
3557 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
3558
3559 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
3560
3561 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
3562
3563 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
3564
3565 * config/obj-coff.c (write_object_file): Set the s_align field to
3566 the number of bytes, rather than to the power of 2.
3567
3568 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
3569
3570 * Makefile.in (DISTCLEAN_HERE): New variable.
3571 (distclean): Use it.
3572 (maintainer-clean): Depend upon clean-here rather than clean,
3573 distclean, and clean-info. Run make maintainer-clean in doc.
3574 Remove files listed in DISTCLEAN_HERE.
3575 * doc/Makefile.in (maintainer-clean realclean): Split out from
3576 distclean. Depend upon clean-info and distclean.
3577
3578 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
3579
3580 * mac-as.r: Fix copyright and version strings.
3581 (cfrg): Use PROG_NAME instead of literal name.
3582
3583 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
3584
3585 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
3586 call it.
3587 * config/tc-a29k.h (tc_unrecognized_line): Define.
3588 * config/tc-a29k.c (a29k_unrecognized_line): New function.
3589 (md_operand): Handle a29k style local dollar labels.
3590
3591 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
3592
3593 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
3594
3595 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
3596
3597 * read.c (s_fill): If md_flush_pending_output is defined, call
3598 it.
3599
3600 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
3601
3602 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
3603 Treat rs_align_code like rs_align.
3604
3605 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
3606
3607 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
3608 converting an absolute address into a PC-relative one.
3609
3610 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
3611
3612 * mpw-config.in: Don't always use te-generic.h for emulation.
3613 (powerpc-apple-macos): Use emulation te-macos.h.
3614 start-sanitize-gm
3615 (mips-gm-magic): New configuration.
3616 end-sanitize-gm
3617 * mpw-make.sed (install, install-only): Edit in Mac-specific
3618 install procedure.
3619
3620 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
3621
3622 * configure.in: Improve message about unsupported ELF targets.
3623 * configure: Rebuild.
3624
3625 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
3626 pattern is zero. From Manfred Hollstein.
3627
3628 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
3629
3630 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
3631 the various idata sections, we check the name on the .section pseudo.
3632
3633 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
3634
3635 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
3636 add section's paddr to add_number; compatibility to native as and
3637 ld forbids.
3638
3639 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
3640
3641 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
3642
3643 * hash.c (struct hash_entry): Moved here...
3644 * hash.h (struct hash_entry): ...from here.
3645
3646 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
3647 if it's already known to be null.
3648
3649 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
3650
3651 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
3652 bit relocs converted to PC relative relocs. This turned out to
3653 add the offset from the beginning of .text twice.
3654
3655 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
3656
3657 * stabs.c (s_stab_generic): In 's' case, free string from
3658 obstack.
3659
3660 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
3661 sy_name_offset.
3662 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
3663 Ditto.
3664
3665 * subsegs.h (segment_info_type): Make bitfields unsigned.
3666
3667 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
3668 and move them together. On most systems this will reduce the
3669 structure size by one word.
3670 (operatorT): Define O_max.
3671 * expr.c (expr_begin): Verify that X_op is wide enough to hold
3672 O_max.
3673
3674 * read.c (pop_insert): Print error returned by hash table
3675 insertion code.
3676
3677 * as.c (dump_statistics): Split out from main; dump some hash
3678 table stats and target-specific stats.
3679 (start_time): No longer automatic to main.
3680 (main): Set file-level start_time and call dump_statistics at
3681 exit. Exit by calling xexit.
3682 (show_usage): Make --statistics description less specific.
3683 * subsegs.c (subsegs_print_statistics): New function.
3684 * write.c (write_print_statistics): New function.
3685 (n_fixups): New static variable.
3686 (fix_new_internal): Increment it.
3687 * read.c (read_print_statistics): New function.
3688 * read.h (read_print_statistics): Declare.
3689 * symbol.c (symbol_print_statistics): New function.
3690 * symbol.h (symbol_print_statistics): Declare.
3691 * hash.c (hash_print_statistics): New function.
3692 * hash.h (hash_print_statistics): Declare.
3693 * config/tc-i386.c (i386_print_statistics): New function.
3694 * config/tc-i386.h (i386_print_statistics): Declare.
3695 (tc_print_statistics): New macro.
3696 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
3697 exit.
3698
3699 * hash.c (DELETED): Rewrite to use a valid but unique address.
3700 (START_POWER): Reduce to 10.
3701 (enum stat_enum): New enumerator, replacing STAT_* index macros.
3702 Add new values for counting strcmp calls.
3703 (GROW_FACTOR): New macro.
3704 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
3705 of nesting blocks.
3706 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
3707 (hash_new): Use FULL_VALUE.
3708 (struct hash_control): Definition moved here.
3709 (hash_code): Don't mask to low bits.
3710 (hash_ask): Mask returned hash code here. Check hash value before
3711 calling strcmp; count strcmp calls.
3712 * hash.h (struct hash_control): Declare, don't define, here.
3713 (HASH_STATLENGTH): Deleted.
3714 (struct hash_entry): Add field for hash code.
3715 (hash_say, hash_apply): Don't declare.
3716
3717 * hash.c (destroy): Return void.
3718 (applicatee): Ditto.
3719 (main): Fix declarations.
3720 (hash_apply): Return void. Argument `function' returns void. Put
3721 inside "#ifdef TEST".
3722 (hash_say): Define only if TEST is defined.
3723 * hash.h (hash_apply, hash_say): Declarations deleted.
3724
3725 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
3726
3727 * configure: Rebuild with autoconf 2.7.
3728
3729 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
3730
3731 * aclocal.m4 (AC_PROG_CC): Remove local definition.
3732 * configure: Rebuild with autoconf 2.6.
3733
3734 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
3735
3736 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
3737 (ppc_stabx): Don't increment ppc_debug_name_section_size.
3738 (ppc_bc): Likewise.
3739 (ppc_frob_file): Remove.
3740 * config/tc-ppc.h (tc_frob_file): Don't define.
3741 (ppc_frob_file): Don't declare.
3742
3743 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
3744
3745 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
3746 * config/alpha-opcode.h: Include one-operand variants of jmp and
3747 jsr.
3748
3749 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
3750 with te-delta.h in 8.3 file systems.
3751 * configure.in: Adjusted.
3752
3753 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
3754
3755 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
3756
3757 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
3758 number.
3759 * expr.c (operand): Handle MRI suffixes after unadorned 0.
3760
3761 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
3762
3763 Version 2.6 released.
3764 * Makefile.in (VERSION): Updated to 2.6.
3765
3766 * config/obj-coff.c (write_object_file): Change use of md_do_align
3767 to pass a pointer rather than a fill value, to match other uses.
3768
3769 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
3770
3771 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
3772
3773 * as.c (main): Move md_end call to just after call to
3774 perform_an_assembly_pass. Delete cpu-specific code here.
3775 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
3776 * config/tc-arm.c (md_end): Unused function deleted.
3777 * config/tc-ns32k.c (md_end): Ditto.
3778
3779 * config/tc-i386.c (i386_align_code): New function, moved here
3780 from HANDLE_ALIGN macro.
3781 * config/tc-i386.h (HANDLE_ALIGN): Call it.
3782
3783 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
3784
3785 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
3786 before comparing
3787
3788 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
3789
3790 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
3791 multi-byte nops to avoid changing gcc. The necessary gcc change
3792 might break old assemblers.
3793
3794 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
3795
3796 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
3797 generate optimal multi-byte nop instructions for ".align n"
3798 ".align n,0x90", and aligns requiring more than 15 bytes of
3799 padding still generate multiple 0x90's as before.
3800
3801 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
3802
3803 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
3804
3805 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
3806
3807 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
3808 * configure: Update.
3809 * mpw-make.sed: Reorder commands to make sed happier.
3810 * config/te-macos.h: New file.
3811 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
3812
3813 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
3814
3815 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
3816 conditional branches.
3817 (md_apply_fix): Likewise.
3818
3819 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
3820
3821 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
3822 generate a reloc which the linker will not handle correctly. Fix
3823 overflow checking--R_IREL is 18 bits, not 17.
3824
3825 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
3826
3827 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
3828 from a PC relative reloc if TC_A29K.
3829
3830 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
3831 code depends upon it.
3832
3833 * config/tc-a29k.c (md_operand): Handle $float, $double, and
3834 $extend. Based on code from Eric Freudenthal
3835 <freudenthal@nyu.edu>.
3836 * config/tc-a29k.h (LEX_DOLLAR): Define.
3837 * read.c (LEX_DOLLAR): Define if not defined.
3838 (lex_type): Use LEX_DOLLAR.
3839
3840 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
3841
3842 * configure.in (a29k-nyu-sym1): New target, just like other a29k
3843 targets.
3844
3845 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
3846
3847 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
3848
3849 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
3850
3851 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
3852 used only by "dlltool.c".
3853
3854 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
3855
3856 * config/tc-alpha.c: Undefine inline if not __GNUC__.
3857 (md_pseudo_table): Don't define "extern".
3858
3859 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
3860
3861 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
3862
3863 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
3864
3865 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
3866
3867 * macro.c (macro_expand_body): Don't warn about == with a
3868 nonexistent parameter, in case it is in a comment field.
3869
3870 * as.c (main): On TC_A29K, call macro_init with macro_alternate
3871 set to 1.
3872 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
3873 set, even if macro_alternate is set.
3874 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
3875 (sub_actual): If macro_strip_at, and kind is '@', don't look up
3876 the token unless it ended in '@'.
3877 * config/tc-a29k.c (line_separator_chars): Remove '@'.
3878 * doc/c-a29k.texi: Document macro usage on A29K.
3879
3880 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
3881
3882 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
3883 signed word.
3884 (install_operand): Likewise.
3885
3886 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
3887
3888 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
3889
3890 * configure.in (m88k-motorola-sysv*): New target.
3891 * configure: Rebuild.
3892 * config/te-delta88.h: New file.
3893 * config/obj-coff.c (write_object_file): Use md_do_align if it is
3894 defined.
3895 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
3896 (md_do_align): Define.
3897 * config/tc-m88k.c: Include "subsegs.h".
3898 (m88k_do_align): New function.
3899
3900 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
3901 (COFF_NOLOAD_PROBLEM): Define.
3902 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
3903
3904 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
3905
3906 * config/tc-i386.c (md_assemble): For a jump instruction with
3907 non-constant target, require 7 available bytes in the current
3908 frag, not 6.
3909
3910 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
3911
3912 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
3913 bfd/libelf.h.
3914
3915 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
3916
3917 * configure.in (alpha-*-linux*): Use ecoff.
3918 * configure: Rebuild.
3919 * ecoff.c (ecoff_directive_extern): New function.
3920 (ecoff_directive_weakext): New function.
3921 (ecoff_build_symbols): Handle weak symbols.
3922 (ecoff_setup_ext): Likewise.
3923 (ecoff_frob_symbol): Warn about weak common symbols.
3924 * ecoff.h (ecoff_directive_extern): Declare.
3925 (ecoff_directive_weakext): Declare.
3926 * symbols.c (S_IS_WEAK): New function.
3927 * symbols.h (S_IS_WEAK): Declare.
3928 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
3929 "weakext".
3930 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
3931 (s_extern): Remove.
3932
3933 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
3934
3935 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
3936
3937 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
3938 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
3939 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
3940 * config/obj-coff.c (coff_frob_symbol): Don't call
3941 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
3942 one. If OBJ_XCOFF, try to figure out whether the symbol is going
3943 to be dropped.
3944
3945 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
3946 (ppc_stab_symbol): New static variable.
3947 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
3948 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
3949 sy_tc.real_name to the stab string.
3950 (ppc_bc, ppc_ec): New static functions.
3951 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
3952 do anything.
3953 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
3954 suffix.
3955 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
3956 entries.
3957
3958 * input-scrub.c (input_scrub_push): Reset sb_index.
3959
3960 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
3961
3962 * listing.c (listing_newline): Don't create a frag in the absolute
3963 section.
3964
3965 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
3966
3967 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
3968 (ppc_csect): Move most of the code to ppc_change_csect, and call
3969 it.
3970 (ppc_change_csect): New static function, taken from ppc_csect.
3971 (ppc_section): New static function.
3972 (ppc_saw_abs): New static varable.
3973 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
3974 a symbol has no csect.
3975 (ppc_adjust_symtab): New function.
3976 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
3977 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
3978
3979 * write.c (write_object_file): If tc_adjust_symtab is defined,
3980 call it just before the call to obj_adjust_symtab.
3981
3982 * symbols.c (symbol_find_or_make): Change name to be const.
3983 * symbols.h (symbol_find_or_make): Update declaration.
3984
3985 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
3986
3987 * doc/as.texinfo (Align): Mention SH.
3988 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
3989 .align value.
3990 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
3991 (Z8000 Directives, even): Don't give numeric align value, instead
3992 explain behavior.
3993
3994 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
3995
3996 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
3997 instruction.
3998
3999 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
4000
4001 * Makefile.in (diststuff): Also make info.
4002 (maintainer-clean realclean): Also make clean-info.
4003
4004 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
4005
4006 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
4007 (pa_subspace): For ".nsubspa", always create a new subspace
4008 with the given attributes, even if one already exists with the
4009 same name.
4010
4011 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4012
4013 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
4014 TC_FORCE_RELOCATION, taking an additional section argument. If
4015 the section of the target symbol is not the same as the current
4016 section, always force the relocation to be used.
4017 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
4018
4019 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
4020 md_pcrel_from function, taking an additional section argument.
4021 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
4022
4023 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
4024 older TC_FORCE_RELOCATION if not defined.
4025 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
4026 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
4027 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
4028 TC_FORCE_RELOCATION.
4029
4030 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
4031
4032 * input-scrub.c (as_where): Set name to null pointer if we don't
4033 have a file name.
4034 * messages.c (identify): Only print filename if non-null.
4035 (as_show_where): Ditto, for line number too.
4036 (as_warn_internal, as_bad_internal): Ditto.
4037
4038 * input-file.c (input_file_open): If the input file can't be
4039 opened, consider it an error.
4040
4041 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
4042
4043 * config/tc-mips.c: Added mips_4100 control, and support for
4044 accepting the 4100 as a MIPS architecture variant (md_begin,
4045 macro_build, mips_ip, md_parse_option). Adding suitable
4046 command-line OPTIONs, and updating the help text (md_show_usage).
4047
4048 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
4049
4050 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
4051 BFD_ASSEMBLER is defined.
4052
4053 * Use one active frag and one obstack per frag chain:
4054 * frags.c (frags): Variable deleted.
4055 (frag_alloc): New function.
4056 (frag_grow, frag_more, frag_variant, frag_now_fix,
4057 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
4058 frags variable.
4059 (frag_new): Ditto. Verify that frch_last and frag_now match on
4060 entry and exit, and that old frag_now has non-zero type. Replace
4061 "know" uses with "assert". Use frag_alloc instead of mucking with
4062 obstack alignment.
4063 * frags.h (frags): Declaration deleted.
4064 * subsegs.h (struct frchain): Add new field frch_frag_now.
4065 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
4066 variables.
4067 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
4068 give it any stricter alignment than frchainS structures need. Do
4069 not initialize frags obstack. Set frag_now to point to
4070 dummy_obstack. Initialize absolute_frchain.
4071 (subseg_set_rest): Save and restore frag_now in frch_frag_now
4072 field of frchainS. Don't create new frags on section switch, and
4073 use frag_alloc when creating a new frag chain. For absolute
4074 section, set frchain_now to absolute_frchain. Verify that
4075 frch_last and frag_now match on entry and exit. Initialize
4076 per-chain obstack, and under gcc, set required alignment to that
4077 needed by fragS structure.
4078
4079 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
4080
4081 * stabs.c (get_stab_string_offset): Only copy input string if a
4082 fresh copy is needed, not if the section already exists.
4083 (s_stab_generic): Cache stab section name to bypass lookups, since
4084 usually it will match. Could be made faster still by changing the
4085 memory allocation rules.
4086 (s_xstab): Cache section name to bypass repeated string
4087 allocation.
4088
4089 * frags.c (frag_new): Deleted register declarations.
4090
4091 * listing.c (frag_now): Don't declare.
4092
4093 * as.c (chunksize): New variable.
4094 (debug_memory): New variable.
4095 (main): If debug_memory is set, reduce chunksize and
4096 _bfd_chunksize.
4097 * as.h (chunksize): Declare it.
4098 * read.c (read_begin): Use it.
4099
4100 * config/tc-alpha.c (md_shortopts): Include 'g'.
4101 (md_parse_option): Ignore it.
4102
4103 * Makefile.in (distclean): Remove Makefile and config.status from
4104 testsuite directory.
4105 (clean-here): Don't delete testsuite. Instead, delete only the
4106 files within it that would be generated by running tests.
4107
4108 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
4109 frag_now_fix instead of accessing obstack info directly.
4110 * config/tc-arm.c (s_ltorg): Ditto.
4111 (md_assemble): Ditto.
4112
4113 * config/tc-i386.c (md_assemble): Call frag_grow instead of
4114 obstack_room.
4115
4116 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
4117
4118 * stabs.c (aout_process_stab): Insert debug symbol into symbol
4119 chain after parsing value expression, if any, to avoid separating
4120 continued .stabs lines.
4121
4122 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
4123
4124 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
4125 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
4126
4127 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
4128
4129 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
4130 -mcom support and PPC_OPCODE_ANY for -many.
4131 (md_parse_option): Ditto.
4132 (ppc_arch): Ditto.
4133 (md_begin): For duplicate instructions, print all duplicates
4134 before aborting.
4135
4136 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
4137
4138 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
4139 common mode operation.
4140 (md_show_usage): Add -mcom to usage message.
4141
4142 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
4143
4144 * expr.c (op_rank): Add O_symbol_rva.
4145 * expr.h (operatorT): Add O_symbol_rva.
4146 * read.c (cons_worker): Set O_symbol_rva when necessary.
4147 * write.c (fix_new_exp): Understand O_symbol_rva.
4148
4149 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
4150
4151 * config/tc-mips.c: Correct s_cons arguments. From Michael
4152 Joosten <joost@ori.cadlab.de>.
4153
4154 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
4155
4156 * config/tc-ppc.c (ppc_macro): Make count unsigned.
4157 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
4158 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
4159 the fix_line field.
4160 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
4161 make non-static. Change all users.
4162 * config/obj-coff.h (coff_n_line_nos): Declare.
4163
4164 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
4165
4166 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4167
4168 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
4169
4170 * config/obj-elf.c (obj_elf_common): Convert specified byte
4171 alignment to power of two. Set size of local bss symbol.
4172
4173 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
4174
4175 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
4176
4177 * sb.c, macro.c: Decide whether to include <string.h> or
4178 <strings.h> just as as.h does.
4179
4180 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
4181
4182 * Makefile.in (site.exp): Fix setting of $srcdir.
4183
4184 * config/tc-arm.c (md_atof): Fix little-endian output.
4185 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
4186 all coff targets.
4187
4188 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
4189
4190 * doc/as.texinfo: Split out the NS32k family documentation,
4191 despite its being commented out for now.
4192 * doc/c-ns32k.texi: New file.
4193
4194 * sb.c, macro.c: Include string.h.
4195
4196 * Makefile.in (comparison): Only check *.o; we don't care if
4197 timestamps inserted by the native linker differ.
4198
4199 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
4200 if alignment stricter than 4 bytes is requested; in that case,
4201 align to a 4-byte boundary first.
4202
4203 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
4204
4205 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
4206 uninitialized" warning for `Max_Source_Offset'.
4207
4208 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
4209
4210 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
4211 qualifiers and detect errors if present.
4212 (md_assemble): Add call to parse_toc_entry. Also added some support
4213 for the [tocv] qualifier.
4214 (ppc_pe_tocd): New function to support data in the toc section.
4215
4216 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
4217
4218 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
4219 an absolute symbol.
4220
4221 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
4222
4223 * config/tc-m68k.c (isword): Accept all values from -65536 to
4224 +65535, so ~VAL will not be rejected.
4225
4226 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
4227 skip characters after the pseudo-op.
4228 (s_else): Likewise.
4229 * read.c (get_line_sb): Don't look past buffer_limit.
4230 (s_include): In MRI mode, skip characters after the file name.
4231
4232 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
4233
4234 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
4235 periods in register names.
4236
4237 For older changes see ChangeLog.1.