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