* Makefile.am (MOSTLYCLEANFILES): Add site.bak, site.exp, stage,
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
210e033e
ILT
1Sun Aug 10 14:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
2
3 * Makefile.am (MOSTLYCLEANFILES): Add site.bak, site.exp, stage,
4 stage1, and stage2.
5 (DISTCLEANFILES): Define.
6 * doc/Makefile.am (DISTCLEANFILES): Define.
7 * Makefile.in, doc/Makefile.in: Rebuild.
8
29e28dd6
ILT
9Wed Aug 6 00:30:30 1997 Ian Lance Taylor <ian@cygnus.com>
10
4dc4c45d
ILT
11 * configure.in: Define TARGET_BYTES_BIG_ENDIAN if endian is set.
12 Don't set targ or gas_target. Define SCO_ELF and
13 TARGET_SOLARIS_COMMENT when appropriate. Don't substitute for
14 target_frag.
15 * Makefile.am: Remove @target_frag@.
16 (INCLUDES): Remove $(INTERNAL_CFLAGS), $(CROSS), $(HDEFINES), and
17 $(TDEFINES).
18 (dep-am): Mark as phony.
19 * acconfig.h: Add TARGET_BYTES_BIG_ENDIAN, TARGET_SOLARIS_COMMENT,
20 and SCO_ELF.
21 * config/arm-big.mt, config/arm-lit.mt: Remove.
22 * config/mips-big.mt, config/mips-lit.mt: Remove.
23 * config/ppc-big.mt, config/ppc-lit.mt: Remove.
24 * config/ppc-sol.mt: Remove.
25 * config/i386coff.mt, config/m68kcoff.mt: Remove.
26 * config/m88kcoff.mt: Remove.
27 * config/sco5.mt: Remove.
28 * configure, config.in, Makefile.in: Rebuild.
29
2a562314
ILT
30 * Makefile.am ($(srcdir)/config/m68k-parse.h): New target, to
31 further try to circumvent the .y.h rule.
32 * Makefile.in: Rebuild.
33
e535307a
ILT
34Tue Aug 5 12:32:07 1997 Ian Lance Taylor <ian@cygnus.com>
35
e2b4bd2a
ILT
36 * Makefile.am: New file, based on old Makefile.in.
37 * acinclude.m4: New file, from old aclocal.m4.
38 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
39 shared library handling; now handled by libtool. Replace
40 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
41 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
42 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
43 * config.in: New file, created by autoheader.
44 * conf.in: Remove.
45 * acconfig.h: Mention PACKAGE, VERSION, and USING_CGEN.
46 * stamp-h.in: New file.
47 * as.c (print_version_id): Change GAS_VERSION to VERSION.
48 (parse_args): Likewise.
49 * config/obj-vms.c: (Write_VMS_MHD_Records): Likewise.
29e28dd6
ILT
50 * doc/Makefile.am: New file, based on old doc/Makefile.in.
51 * Makefile.in, doc/Makefile.in: Now built with automake.
e2b4bd2a
ILT
52 * aclocal.m4: Now built with aclocal.
53 * configure: Rebuild.
54
e535307a
ILT
55 * cond.c (s_else): If not listing false conditionals, turn listing
56 off in the false branch of the else.
57
c5cb7682
ILT
58Mon Aug 4 11:28:35 1997 Ian Lance Taylor <ian@cygnus.com>
59
703f5e6e
ILT
60 * config/tc-mips.c (macro): Fix handling of a double load from a
61 symbol plus an offset.
62
c5cb7682
ILT
63 * ecoff.c (ecoff_build_symbols): Set fMerge to 0 for an FDR which
64 has an associated external symbol.
65
04269551
RH
66Sun Aug 3 23:23:59 1997 Richard Henderson <rth@cygnus.com>
67
68 * config/tc-alpha.c (s_alpha_ucons): New function.
69 (md_pseudo_table): Add unaligned data pseudos for DWARF.
70
5236fc72 71start-sanitize-v850
15d8ae9d
JL
72Thu Jul 31 15:13:43 1997 Jeffrey A Law (law@cygnus.com)
73
c1b2205e
JL
74 * config/tc-v850.c (md_assemble): Ignore the rest of the current
75 line if we encounter an error.
76
15d8ae9d
JL
77 * config/tc-v850.c (md_assemble): Sign extend constants value
78 for hi and hi0 expressions.
79 (v850_insert_operand): Enable range checking for generic 16bit
80 operands.
81
d222309a
JL
82Tue Jul 29 14:20:43 1997 Jeffrey A Law (law@cygnus.com)
83
84 * config/tc-v850.c (md_assemble): Turn on fx_no_overflow for
85 LO16, HI16 and HI16_S relocs.
86
5236fc72 87end-sanitize-v850
2e37047c
RS
88Mon Jul 28 18:41:41 1997 Rob Savoye <rob@chinadoll.cygnus.com>
89
90 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
91 win32 dependencies.
92 * configure: Regenerated with autoconf 2.12.
93 * Makefile.in: Add $(EXEEXT) to all executables.
94
e0362be2
JL
95Fri Jul 25 10:54:43 1997 Jeffrey A Law (law@cygnus.com)
96
97 * tc-hppa.c (md_apply_fix): Improve warnings for out of range
98 unconditional branches.
99 (hppa_fix_adjustable): Don't adjust anything with a RR% or LR%
100 field selector.
101
09e1d695
DE
102Thu Jul 24 15:21:49 1997 Doug Evans <dje@canuck.cygnus.com>
103
104 * tc-sparc.c (md_begin): Cast sparc_opcodes to PTR for hash_insert.
105
280cdd54
ILT
106Thu Jul 24 17:51:29 1997 Ian Lance Taylor <ian@cygnus.com>
107
108 * macro.c (define_macro): Make sure the index is in range before
109 checking for '('.
110
e6e676a5
FF
111start-sanitize-tic80
112Thu Jul 24 12:13:19 1997 Fred Fish <fnf@cygnus.com>
113
114 * config/tc-tic80.c (build_insn): Remove "extended" and replace with
115 "fx" and "fxfrag". Add "ffrag". Change code to initialize and use
116 the right f/ffrag and fx/fxfrag pairs since instruction may be split
117 across frags.
118
119end-sanitize-tic80
68299279
ILT
120Tue Jul 22 18:38:56 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
121
122 * config/te-go32.h (USE_ALIGN_PTWO): Define.
123 * config/tc-i386.c (md_pseudo_table): If USE_ALIGN_PTWO is
124 defined, use s_align_ptwo for .align.
ea1c39ce
ILT
125 * configure.in (i386-*-msdosdjgpp*): New target.
126 (i386-*-go32*): Set em to go32 and targ to coffgo32.
127 * configure: Rebuild.
68299279 128
bd3a1eba
DE
129Tue Jul 22 12:41:40 1997 Doug Evans <dje@canuck.cygnus.com>
130
131 * config/tc-sparc.c (last_opcode): New static local.
132 (md_assemble): Don't issue "FP branch in delay slot" warning if
133 the delay slot has been annulled.
134
1d303653
ILT
135Tue Jul 22 13:25:13 1997 Ian Lance Taylor <ian@cygnus.com>
136
137 * config/tc-m68k.c (md_apply_fix_2): Check for PC relative reloc
138 code if BFD_ASSEMBLER.
139
47bfb6fc
JL
140start-sanitize-v850
141Mon Jul 21 08:57:17 1997 Jeffrey A Law (law@cygnus.com)
142
143 * config/tc-v850.c (system_registers): Fix ordering of registers.
144
145end-sanitize-v850
e53430c4
FF
146start-sanitize-tic80
147Tue Jul 15 16:29:54 1997 Fred Fish <fnf@cygnus.com>
148
149 * config/tc-tic80.c (build_insn): Initialize extended word to zero
150 when it will be filled in later by relocation information.
151
152end-sanitize-tic80
a652f74c
ILT
153Mon Jul 14 23:10:58 1997 Ian Lance Taylor <ian@cygnus.com>
154
155 * config/tc-mips.c (macro_build): Restore check of fmt argument.
156 (mips_ip): Fix ISA checks.
157
9587640a
JL
158start-sanitize-r5900
159Tue Jul 15 10:15:39 1997 Jeffrey A Law (law@cygnus.com)
160
161 * configure.in: Default the r5900 to little endian.
162 * configure: Rebuilt.
163
164end-sanitize-r5900
8ae66b94
FF
165start-sanitize-tic80
166Mon Jul 14 19:30:55 1997 Fred Fish <fnf@cygnus.com>
167
168 * config/tc-tic80.c (build_insn): Fix endianness problem with
169 O_big operands.
170
171end-sanitize-tic80
4dc85508
ILT
172Sun Jul 13 20:43:46 1997 Ian Lance Taylor <ian@cygnus.com>
173
174 * config/tc-mips.c (check_absolute_expr): Change warning to
175 error.
176
931a1858
JL
177Fri Jul 11 10:18:47 1997 Jeffrey A Law (law@cygnus.com)
178
179 * config/tc-mips.c (macro_build): Refine code to check if an
180 instruction is available on a particular cpu variant.
181 (mips_ip): Likewise.
182
76fb6d2f
ILT
183Mon Jul 7 22:53:08 1997 Ian Lance Taylor <ian@cygnus.com>
184
185 * config/tc-i386.c (tc_i386_fix_adjustable): Change ifndef
186 OBJ_AOUT to ifdef OBJ_ELF.
187 (md_apply_fix3): When mangling 32 bit PC relative reloc for
188 BFD_ASSEMBLER, handle one ELF case for COFF as well, and add a PE
189 case.
190 * write.c (fixup_segment): Change special case for i386-coff to
191 not apply for i386-pe.
192 * config/obj-coff.c (coff_adjust_section_syms): Only count fixups
193 which were not done.
194 (coff_frob_file_after_relocs): Rename from coff_frob_file.
195 (coff_format_ops): Initialize frob_file_after_relocs field rather
196 than frob_file field.
197 * config/obj-coff.h (coff_frob_file): Don't declare.
198 (coff_frob_file_after_relocs): Declare.
199 (obj_frob_file): Don't define.
200 (obj_frob_file_after_relocs): Define.
201 * configure.in: Set bfd_gas to yes for i386-*-cygwin32.
202 * configure: Rebuild.
203
b709b16f
ILT
204Wed Jul 2 12:05:00 1997 Ian Lance Taylor <ian@cygnus.com>
205
206 * config/obj-coff.c (fixup_segment): Never subtract section
207 address from PC relative reloc which will be fully resolved.
208
db3152ef
JL
209Tue Jul 1 15:23:07 1997 Jeffrey A Law (law@cygnus.com)
210
211 * ecoff.c (page_type): Renamed from page_t to avoid conflict
212 with hpux10 header files.
213
b73fcae8
ILT
214Mon Jun 30 12:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
215
216 From Jason Merrill <jason@cygnus.com>:
217 * read.c (do_align): If BFD_ASSEMBLER, only use NOP_OPCODE if
218 SEC_CODE is set.
219 * config/tc-i386.h (md_maybe_text): Define.
220 (md_do_align): Use md_maybe_text.
221
d006e435
MM
222Fri Jun 27 19:15:27 1997 Michael Meissner <meissner@cygnus.com>
223
224 * config/tc-ppc.h (tc_fix_adjustable): Only check for GOT type
225 relocations, don't check for symbol being external, weak, etc.
226
24a3e622
ILT
227Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
228
229 * config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
230 calculate relocations to any external symbol, because we might be
231 linking a shared object and the symbol might be overriden or moved
232 (for instance, moved into a static executable's .bss section).
233 (GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
234
235 * config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
236 be calculated by the assembler.
237
238 * config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
239 whose destination lies in the same file, by ignoring the @plt or
240 @local and aiming the branch at its destination.
241
b0447a0e
ILT
242Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
243
244 * symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
245 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
246 expression.
247
248 * config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
249 of obj_copy_symbol_attributes.
250
be2c18bd
ILT
251Mon Jun 16 12:45:56 1997 Ian Lance Taylor <ian@cygnus.com>
252
3a035861
ILT
253 * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
254 signed operand, sign extend a 32 bit value to the host size.
255
256 * Makefile.in (CFLAGS): Subsitute from configure script. From
257 Jeff Makey <jeff@cts.com>.
258
a52f90a4
ILT
259 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
260 buffer size to make a copy of the symbol.
261
be2c18bd
ILT
262 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
263 macro.o.
264
7799bb2c
ILT
265Thu Jun 12 12:16:20 1997 Ian Lance Taylor <ian@cygnus.com>
266
267 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
268 step through the frags calling cvt_frag_to_fill, switch to
269 SEG_DATA when we reach data_frag_root.
270
43ee18a0
JL
271Tue Jun 10 17:08:34 1997 Jeffrey A Law (law@cygnus.com)
272
273 * config/tc-mn10300.c (md_assemble): Allow an empty register
274 list for instructions which use register lists.
275
ccc30467
ILT
276Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
277
d2e5779b
ILT
278 * config/tc-arm.c (md_apply_fix3): Make temp unsigned long.
279
7436e4de
ILT
280 * config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
281 OBJ_COFF.
282
ccc30467
ILT
283 * config/tc-arm.c: Add prototypes for many static functions.
284 (struct asm_opcode ): Add prototypes for parms field.
285 (struct thumb_opcode ): Likewise.
286 (fp_op2): Remove unused flags parameter.
287 (output_inst): Make static.
288 (arm_after_pass_hook): Remove unused ignore parameter.
289 * config/tc-arm.h (arm_after_pass_hook): Declare.
290 (arm_start_line_hook): Declare.
291 (arm_frob_label): Declare.
292
170cdf75
ILT
293Mon Jun 9 12:55:45 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
294
295 * depend.c (wrap_output): new prototype.
296
af438bdb
ILT
297Mon Jun 9 12:52:44 1997 Ian Lance Taylor <ian@cygnus.com>
298
4b4c1e0f
ILT
299 * config/tc-sh.c (md_apply_fix): Check for overflow.
300
af438bdb
ILT
301 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
302 section size to be aligned.
303
72574181
ILT
304Fri Jun 6 17:15:55 1997 Ian Lance Taylor <ian@cygnus.com>
305
306 * config/tc-sh.h (md_cons_align): Define.
307 (sh_cons_align): Declare.
308 * config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
309 (sh_no_align_cons): New static variable.
310 (s_uacons): New static function.
311 (sh_cons_align): New function.
312 (sh_handle_align): Warn about misaligned data.
313 * doc/c-sh.texi: Document .uaword and .ualong.
314
315Thu Jun 5 15:38:17 1997 Ian Lance Taylor <ian@cygnus.com>
316
317 * macro.c (macro_expand): In MRI mode, treat single quote as a
318 separator character when checking for a positional argument.
319
d0badeab
NC
320Tue Jun 3 16:15:13 1997 Nick Clifton <nickc@cygnus.com>
321
48e509bf
NC
322 * config/tc-arm.c (md_parse_option): Merge in changes from
323 armT-970328-branch.
f8a21443 324
48e509bf
NC
325 * config/tc-arm.h: Merge in changes from armT-970328-branch.
326
327 * configure.in (emulations): Add Thumb architecture support from
d0badeab
NC
328 armT-9703-28-branch.
329
2903fb6e
NC
330Mon Jun 2 16:25:07 1997 Nick Clifton <nickc@cygnus.com>
331
3357a5ab
NC
332 * doc/all.texi: Add enabling of ARM documentation.
333
2903fb6e
NC
334 * doc/as.texinfo: Add ARM documentation from armT-970328-branch.
335
5c6f5923
GRK
336Mon Jun 2 11:55:12 1997 Gavin Koch <gavin@cygnus.com>
337
338 * config/tc-mips.c: Added r3900 support.
339
dccd4d2c
ILT
340Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
341
342 * as.c: (parse_args) `-t' option requires an argument.
343
344Wed May 28 15:45:07 1997 Nick Clifton <nickc@cygnus.com>
345
346 * config/tc-arm.c (md_begin): Change call to
347 coff_arm_bfd_set_private_flags() to a call to
348 bfd_set_private_flags().
349
5ac3db53
ILT
350Wed May 28 16:17:34 1997 Ian Lance Taylor <ian@cygnus.com>
351
1d6f438f
ILT
352 * Makefile.in: Rebuild dependencies.
353
5ac3db53
ILT
354 * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
355 of a BFD_RELOC_RVA reloc.
356
f22950b9
JL
357Wed May 28 10:48:14 1997 Jeffrey A Law (law@cygnus.com)
358
359 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
360 (hppa_force_relocation): Force a relocation for an absolute
361 call/jump.
362
1079e76c
ILT
363Mon May 26 13:24:25 1997 Ian Lance Taylor <ian@cygnus.com>
364
365 * doc/as.texinfo: Don't use @value in section names or index
366 entries; it confuses texinfo.tex.
367
8a51eeaf
TT
368Fri May 23 00:09:35 1997 Tom Tromey <tromey@cygnus.com>
369
370 * doc/as.texinfo: Updated for -MD option.
371 * Makefile.in (CFILES): Added depend.c.
372 (OBJS): Added depend.o.
373 * as.h (start_dependencies, register_dependency,
374 print_dependencies): New declarations.
375 * depend.c: New file.
376 * as.c (parse_args): Added -MD option.
377 (main): Call print_dependencies.
378 (show_usage): Added help for -MD.
379 * read.c (s_app_file): Call register_dependency.
380 (s_include): Call register_dependency when file is found.
381 (read_a_source_file): Call register_dependency.
382
1a7a427e
ILT
383Wed May 21 17:39:28 1997 Ian Lance Taylor <ian@cygnus.com>
384
385 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
386 section address to the symbol value.
387
e17449bc
GRK
388Tue May 20 11:23:31 1997 Gavin Koch <gavin@cygnus.com>
389
1a7a427e
ILT
390 * config/tc-mips.c (macro_build,mips_ip): Move the INSN_ISA field
391 into the new membership field.
e17449bc 392
de046e7c
NC
393Thu May 15 10:00:53 1997 Nick Clifton <nickc@cygnus.com>
394
395 * config/tc-arm.c (md_begin): If no cpu type is specified on the
396 command line then the ARM7 is now chosen by default when setting
397 the BFD machine and architecture.
398
46686c78
NC
399Wed May 14 09:54:53 1997 Nick Clifton <nickc@cygnus.com>
400
401 * config/tc-arm.c (global variables): Added 'uses_apcs_26' flag to
1a7a427e
ILT
402 hold APCS selection.
403 (md_begin): Added code to generate flags to be set into the COFF
404 header and the calls to the BFD functions to do this.
405 (md_parse_option, md_show_usage): Added new command line
46686c78
NC
406 options -mapcs-32, -mapcs-26, -marmv2, -marmv2a, -marmv3,
407 -marmv3m, -marmv4, -marmv4t.
408
409 * tc-arm.h (LOCAL_LABEL): Removed the definition of this macro
410 as it is never used.
411
2393a966
JL
412Tue May 13 22:26:14 1997 Jeffrey A Law (law@cygnus.com)
413
414 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
415 label name with ".".
416 * config/tc-mn10300.c (md_convert_frag): Likewise.
417
cd05cc5e
ILT
418Tue May 13 14:44:39 1997 Ian Lance Taylor <ian@cygnus.com>
419
420 * config/tc-mips.c (set_at): Check for bignum.
421 (check_absolute_expr, macro, mips16_macro): Likewise.
422
7b02bacd
FF
423start-sanitize-tic80
424Tue May 13 10:45:56 1997 Fred Fish <fnf@cygnus.com>
425
426 * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
427 for overflow/underflow, only insert lower 15 bits into instruction.
428
429end-sanitize-tic80
98b4161a
ILT
430Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
431
432 * config/tc-i386.c (pi): Check for RegMMX.
433
ee42e25b
ILT
434Thu May 8 11:10:15 1997 Ian Lance Taylor <ian@cygnus.com>
435
436 * expr.c (expr): When subtracting values in the same frag,
437 subtract X_add_number rather than adding it.
438
a5586bdc
ILT
439Wed May 7 15:39:48 1997 Ian Lance Taylor <ian@cygnus.com>
440
662a6d9e
ILT
441 * config/obj-coff.c (write_object_file): Just pass NULL to
442 md_do_align, not the address of a char holding NOP_OPCODE.
443
a5586bdc
ILT
444 * config/tc-mips.c (macro): Handle constants for M_LI_D and
445 M_LI_DD.
446 (mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
447 than an address if the floating point value looks sufficiently
448 simple.
449
91951af6
ILT
450Tue May 6 12:18:09 1997 Ian Lance Taylor <ian@cygnus.com>
451
452 * config/tc-i386.c (md_section_align): If a.out and BFD, force
453 section size to be aligned.
454
454b0ccd
ILT
455Mon May 5 17:16:55 1997 Ian Lance Taylor <ian@cygnus.com>
456
0239838b
ILT
457 * cond.c: Include "macro.h".
458 (struct conditional_frame): Add macro_nest field.
459 (initialize_cframe): Initialize macro_nest.
460 (cond_finish_check): Add nest parameter. Change all callers.
461 (cond_exit_macro): New function.
462 * as.h (cond_finish_check): Update declaration.
463 (cond_exit_macro): Declare.
464 * input-scrub.c (macro_nest): Make globally visible.
465 (input_scrub_next_buffer): Call cond_finish_check.
466 * macro.h (macro_nest): Declare.
467 * read.c (s_mexit): Call cond_exit_macro.
468
454b0ccd
ILT
469 * config/tc-i386.h (RegMMX): Define.
470 * config/tc-i386.c (pi): Check for all register types.
471 (type_names): Add RegMMX.
472 (md_assemble): Handle RegMMX.
473
474Wed Apr 30 12:47:00 1997 Manfred Hollstein <manfred@s-direktnet.de>
475
476 * config/obj-coff.c (c_section_symbol): Clear the LOCAL bit #ifdef
477 TE_DELTA.
478
479Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
480
481 * config/tc-mips.c (nopic_need_relax): Add new parameter
482 before_relaxing. Use it when testing ecoff_extern_size.
483 (load_address, macro, md_estimate_size_before_relax): Fix all
484 callers.
485
24d4b4e1
ILT
486Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
487
488 * config/obj-elf.c (elf_pseudo_table): Add "subsection".
489 (obj_elf_subsection): New static function.
490
4a38edaa
ILT
491Tue Apr 29 19:52:47 1997 Ian Lance Taylor <ian@cygnus.com>
492
493 * config/obj-coff.c (coff_header_append): Don't reset string_size
494 each time through the loop.
495
1416631f
ILT
496Fri Apr 25 14:17:46 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
497
498 * Makefile.in (DISTSTUFF): Add itbl-parse.h.
499
49f5a035
ILT
500Fri Apr 25 12:03:15 1997 Ian Lance Taylor <ian@cygnus.com>
501
8f9b2cea
ILT
502 * doc/internals.texi (Porting GAS): Correct documentation for
503 current configure handling of targ-cpu.h, et. al.
504 (CPU backend): Document listing macros.
505
49f5a035
ILT
506 * listing.c (data_buffer): Set size based on other listing macros,
507 rather than always using 100.
508 (data_buffer_size): Remove static variable.
509 (calc_hex): Make data_buffer_size a local variable. Don't leave
510 any slop when filling data_buffer.
511
a21dd1e0
ILT
512Mon Apr 21 15:33:19 1997 Ian Lance Taylor <ian@cygnus.com>
513
514 * doc/c-mips.texi: Document .set autoextend.
515
49f90a34
ILT
516Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
517
518 * configure.in (i386-*-openbsd*, m68k-*-openbsd*,
519 mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
520 sparc-*-openbsd*): New targets.
521 * configure: Rebuild.
522
aff65ed9
ILT
523Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
524
525 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
526 for all undefined symbols.
527
fec391b1
ILT
528Fri Apr 18 13:37:35 1997 Ian Lance Taylor <ian@cygnus.com>
529
530 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
531 correctly.
532
894cca25
ILT
533Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
534
535 * configure.in (alpha*-*-openbsd*): New target.
536 * configure: Rebuild.
537
fc984eb0
ILT
538Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
539
540 * configure.in (mips-*-openbsd*): New target.
541 * configure: Rebuild.
542
4bdb83fc
MH
543start-sanitize-d30v
544Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
545
546 * config/tc-d30v.c (parallel_ok): Fix parallel checking
547 for instructions using conditional execution.
548
549end-sanitize-d30v
68952421
GRK
550Tue Apr 15 18:11:44 1997 Gavin Koch <gavin@cygnus.com>
551
552 * config/tc-mips.c (insn_uses_reg): Correct test for fpr pairs.
553
e366a2d6
ILT
554Tue Apr 15 13:04:47 1997 Ian Lance Taylor <ian@cygnus.com>
555
556 * Makefile.in (srcroot): Remove.
557 (INSTALL): Set to @INSTALL@.
558 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
559 (all, dvi): Don't set srcroot.
560 (install): Depend upon as.new, gasp.new, and installdirs. Use
561 $(program_transform_name) directly, rather than using
562 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
563 (installdirs): New target.
564 * doc/Makefile.in (INSTALL_XFORM1): Remove.
565 (install): Depend upon installdirs. Use $(program_transform_name)
566 directly, rather than using $(INSTALL_XFORM) and
567 $(INSTALL_XFORM1).
568 (installdirs): New target.
569 (install-info-as): Run mkinstalldirs.
570 (install-info-gasp): Likewise.
571
dca6429f
ILT
572Mon Apr 14 11:59:08 1997 Ian Lance Taylor <ian@cygnus.com>
573
e366a2d6
ILT
574 * Makefile.in (INSTALL): Change install.sh to install-sh.
575
dca6429f
ILT
576 * symbols.c (resolve_symbol_value): Check for division by zero.
577
578 From Thomas Graichen <graichen@rzpd.de>:
579 * Makefile.in: Always use $(SHELL) when running move-if-change.
580 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
581 * configure: Rebuild.
582
4e9d8dea
DE
583Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
584
f3f00e94
DE
585 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
586 New argument `want'. Update enum cgen_parse_operand_result values.
587 Initialize if CGEN_PARSE_OPERAND_INIT.
588 * config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
4e9d8dea
DE
589 (md_assemble): Call cgen_asm_init_parse.
590 Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
591
902a77ac
ILT
592Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
593
594 * config/tc-m68k.c (m68k_ip): Handle #j.
595
96742953
JL
596Tue Apr 8 16:37:57 1997 Jeffrey A Law (law@cygnus.com)
597
598 * config/tc-mn10300.c (md_convert_frag): Create fixup at the
599 right address for call label:32,regs,imm.
600
e41369a4
JL
601Mon Apr 7 14:58:22 1997 Jeffrey A Law (law@cygnus.com)
602
603 * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
604 zero.
605 * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
606 symbol for OBJ_ELF anymore.
607
39ffbb4d
DE
608Mon Apr 7 10:54:59 1997 Doug Evans <dje@canuck.cygnus.com>
609
610 * Makefile.in: Regenerate dependencies.
611 (TARG_CPU): New variable.
612 (cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
613 (.dep1): Delete creating of cgen-opc.h.
614 (.tcdep): Put proper contents in cgen-opc.h.
615 * configure.in (m32r): Delete setting of extra_files, extra_links.
616 (AC_OUTPUT): Create cgen-opc.h.
617 * configure: Regenerated.
618
596c5b74
ILT
619Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
620
621 * makefile.vms: Update to build gasp.exe.
622
374bdac7
DE
623Fri Apr 4 16:10:02 1997 Doug Evans <dje@canuck.cygnus.com>
624
c8cf7e17
DE
625 * write.c (relax_frag): Make non-static.
626 * write.h (relax_frag): Add prototype for.
627 * config/tc-m32r.h (md_do_align): New arg `max'.
628 * config/tc-m32r.c (m32r_do_align): Likewise.
629 Update calls to frag_align, frag_align_pattern.
630 (fill_insn): Update call to m32r_do_align.
631 (m32r_scomm): Update call to frag_align.
632
374bdac7
DE
633 * config/tc-m32r.[ch]: New files.
634 * cgen.c: New file.
635 * Makefile.in (CPU_TYPES): Add m32r.
374bdac7
DE
636 (TARGET_CPU_CFILES): Add tc-m32r.c.
637 (TARGET_CPU_HFILES): Add tc-m32r.h.
374bdac7
DE
638 (DISTCLEAN_HERE): Add cgen-opc.h.
639 (.dep1,.tcdep): Create empty cgen-opc.h.
640 (cgen.o): Add dependencies.
641 (dependencies): Regenerate.
642 * as.h (struct frag): New member fr_targ.
643 (fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
644 * conf.in (USING_CGEN): New macro.
645 * configure.in (m32r-*-*): Add entry for.
39ffbb4d 646 Add cgen.o to extra_objects.
374bdac7 647 * configure: Regenerate.
403c708e
DE
648 * frags.c (frag_var): fr_pcrel_adjust renamed to
649 fr_targ.ns32k.pcrel_adjust. fr_bsr renamed to fr_targ.ns32k.bsr.
650 (frag_variant): Likewise.
651 * write.c (relax_frag): Likewise.
374bdac7 652 * config/tc-ns32k.c (*): Likewise.
374bdac7 653
e819d858
ILT
654Fri Apr 4 13:26:10 1997 Ian Lance Taylor <ian@cygnus.com>
655
dc966dad
ILT
656 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
657 rather than for any end of line character.
658
5c11dba2
ILT
659 * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
660 call abort (i.e., as_abort) rather than crashing.
661
457a20b5
ILT
662 * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
663 OBJ_ELF, rather than of S_GET_OTHER.
664
e819d858
ILT
665 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak.
666
3884d17b
ILT
667Thu Apr 3 13:16:18 1997 Ian Lance Taylor <ian@cygnus.com>
668
669 * Makefile.in (VERSION): Set to 2.8.1.
670
671 * Branched binutils 2.8.
672
08438bef
ILT
673Wed Apr 2 12:24:10 1997 Ian Lance Taylor <ian@cygnus.com>
674
64d20049
ILT
675 * COPYING: Update FSF address.
676
08438bef
ILT
677 * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
678
3c83da8a
JW
679Tue Apr 1 18:29:47 1997 Jim Wilson <wilson@cygnus.com>
680
681 * config/tc-mips.c (md_begin): Don't set interlocks for 4100.
682
396e8d7f
ILT
683Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
684
685 * config-gas.com: Update to handle both vax and alpha.
686 * makefile.vms: Update to use config-gas.
687 * conf-a-gas.com: Remove file.
688
db237783
ILT
689Tue Apr 1 16:08:21 1997 Ian Lance Taylor <ian@cygnus.com>
690
691 * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
692 itbl-lex.c dependencies. Remove rules for itbl-lex.o,
693 itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
694
64251de5
MM
695start-sanitize-tic80
696Tue Apr 1 11:25:56 1997 Michael Meissner <meissner@cygnus.com>
697
698 * config/tc-tic80.c (line_comment_char): Make '#' start comments
699 at the beginning of a line for compatibility with .S files where
700 cpp leaves the filename transitions beginning with '#'.
701
702end-sanitize-tic80
703Tue Apr 1 00:07:30 1997 Ian Lance Taylor <ian@cygnus.com>
704
705 * config/tc-m68k.c: Only compile tc_coff_symbol_emit_hook and
706 tc_coff_sizemachdep if OBJ_COFF.
707
3c6adeaf
ILT
708Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
709
710 * config/tc-ppc.c (register_name): Declare.
711
332d5c49
ILT
712Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
713
714 * configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
715 * configure: Rebuild.
716
6d65a065
ILT
717Mon Mar 31 14:15:19 1997 Ian Lance Taylor <ian@cygnus.com>
718
2f2bcadb
ILT
719 * config/tc-mips.c (mips_pseudo_table): Add "stabn".
720 (mips16_mark_labels): New static function.
721 (append_insn): Call mips16_mark_labels.
722 (mips_emit_delays): Likewise.
723 (s_insn): Likewise. Don't call mips_clear_insn_labels.
724 (s_mips_stab): New static function.
725
6d65a065
ILT
726 * configure.in: Use ELF for mips-*-gnu*.
727 * configure: Rebuild.
728
ca37421e
ILT
729Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
730
731 * config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
732 TE_DELTA.
733
2e013bb7
ILT
734Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
735
736 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
737 set OPCODES_LIB to empty.
738 * configure: Rebuild.
739
04b8ad8b
ILT
740Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
741
742 * configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
743 targets.
744 * configure: Rebuild.
745
acdc7ce3
ILT
746Fri Mar 28 13:08:33 1997 Ian Lance Taylor <ian@cygnus.com>
747
ab91e1ef
ILT
748 * itbl-parse.y (yyerror): Make static. Declare.
749
515c7142
ILT
750 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
751 * configure.in: Set emulations for mips-*-linux*-*.
752 * configure: Rebuild.
753
1347404a
ILT
754 * config/tc-mips.c (struct mips_set_options): Define.
755 (mips_opts): New static variable.
756 (mips_isa): Remove. Now a field in mips_opts. Change all
757 references.
758 (mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
759 (mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
760 (struct mips_option_stack): Define.
761 (mips_opts_stack): New static variable.
762 (s_mipsset): Add support for .set push and .set pop.
763 * doc/c-mips.texi: Document .set push and .set pop.
764
acdc7ce3
ILT
765 * config/obj-elf.c (obj_elf_section_change_hook): New function.
766 * config/obj-elf.h (obj_elf_section_change_hook): Declare it.
767 * config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
768
23ac3ca1
ILT
769Thu Mar 27 12:23:56 1997 Ian Lance Taylor <ian@cygnus.com>
770
e22e79dc
ILT
771 * as.c (parse_args): Update copyright date in version message.
772
9b8b7e97
ILT
773 * Makefile.in (clean-here): Remove dependency files.
774
23ac3ca1
ILT
775 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
776 (s_mri_common): Check S_IS_COMMON unconditionally.
777 * symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
778 * config/tc-alpha.c (s_alpha_comm): Likewise.
779 * config/tc-mips.c (nopic_need_relax): Likewise.
780 * config/tc-ppc.c (ppc_elf_lcomm): Likewise.
781 (ppc_pe_comm): Likewise.
782 * config/obj-elf.c (obj_elf_common): Likewise. Set segment of
783 common symbol to bfd_com_section_ptr.
784 * config/tc-sparc.c (s_common): Likewise.
785 (tc_gen_reloc): Likewise.
786
80834add
MH
787start-sanitize-d30v
788Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
789
790 * config/tc-d30v.c (md_apply_fix3): Get the relocs right.
791
792end-sanitize-d30v
734a9064
ILT
793Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
794
795 * config/tc-i386.c (tc_i386_fix_adjustable): Only define if
796 BFD_ASSEMBLER.
797
efda47f9
ILT
798Wed Mar 26 11:32:51 1997 Ian Lance Taylor <ian@cygnus.com>
799
80834add
MH
800 * input-scrub.c (input_scrub_next_buffer): Handle very long input
801 lines correctly.
802
8cd0c287
ILT
803 * listing.c (print_lines): Add lineno parameter. Change all
804 callers.
805 (listing_listing): Only call calc_hex for the right line.
806 (listing_list): Set the new edict based on the current edict, in
807 order to handle listing commands in macros correctly.
734a9064 808
e807a57e
ILT
809 * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
810 instructions.
811
efda47f9
ILT
812 * cond.c (cond_finish_check): New function.
813 * as.h (cond_finish_check): Declare.
814 * as.c (main): Call cond_finish_check.
815
710fdf47
MH
816start-sanitize-d30v
817Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
818
819 * config/tc-d30v.c (md_assemble): If two instructions
820 are supposed to be assembled in parallel and the first one is
821 long, print an error and stop.
822 (md_apply_fix3): Don't calculate absolute relocs. Just write
823 them out.
824
825end-sanitize-d30v
1361ba77
ILT
826Mon Mar 24 12:11:18 1997 Ian Lance Taylor <ian@cygnus.com>
827
2fb44892
ILT
828 * config/tc-i386.h (iclrKludge): Define.
829 * config/tc-i386.c (md_assemble): Handle iclrKludge.
830
1361ba77
ILT
831 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
832 OBJ_ECOFF.
833 (alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
834 * config/tc-alpha.c (alpha_debug): New static variable.
835 (md_parse_option): Set alpha_debug if -g is seen.
836 (alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
837
9c9e75bf
MH
838start-sanitize-d30v
839Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
840
841 * config/tc-d30v.c (build_insn): Enable range-checking code.
842 (postfix): Stop at space or comma. Fixes PR 11862.
843 (md_assemble): Change error message.
844
845end-sanitize-d30v
65d7de4f
ILT
846Sat Mar 22 13:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
847
848 * Makefile.in: Added automatic dependency building.
849 * dep-in.sed: New file.
850
949f1310
ILT
851Fri Mar 21 15:42:37 1997 Ian Lance Taylor <ian@cygnus.com>
852
7cad1a89
ILT
853 * config/obj-ieee.c (segment_name): Don't define function if this
854 is a macro.
855
f062ec45
ILT
856 * config/obj-coff.h (DO_STRIP): Don't define.
857 * config/tc-h8300.h (DO_STRIP): Don't define.
858 * config/tc-h8500.h (DO_STRIP): Don't define.
859 * config/tc-w65.h (DO_STRIP): Don't define.
860 * config/tc-z8k.h (DO_STRIP): Don't define.
861
a71dc204
ILT
862 * symbols.c (colon): Call obj_frob_label if it is defined.
863 * config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
864
949f1310
ILT
865 * configure.in: Don't set files and links. Don't call
866 AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
867 obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
868 * configure: Rebuild.
869 * Makefile.in (TARG_CPU_C): New variable.
870 (TARG_CPU_O, TARG_CPU_H): New variables.
871 (OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
872 (TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
873 (SOURCES): Rename from REAL_SOURCES. Delete old definition.
874 (LINKED_SOURCES): Remove.
875 (HEADERS): Rename from REAL_HEADERS. Delete old definition.
876 (LINKED_HEADERS): Remove.
877 (OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
878 ($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
879 targ-cpu.h, etc.
880 ($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
881 (targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
882 (itbl-cpu.h): Remove target.
883 (DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
884 atof-targ.h.
885
35cfacf0
ILT
886Thu Mar 20 19:18:58 1997 Ian Lance Taylor <ian@cygnus.com>
887
888 * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro.
889
0dfeb41f
ILT
890Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
891
892 * config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
893 open coded loop that does not require the name to start with a
894 name beginner.
895
29bc322d
ILT
896Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
897
f59fb6ca
ILT
898 * frags.c (frag_var): Change offset parameter to offsetT.
899 (frag_variant): Likewise.
900 * frags.h (frag_variant, frag_var): Update declarations.
901 * config/tc-m68k.c (struct m68k_it): Change foff field to
902 offsetT.
903 (add_frag): Change off parameter to offsetT.
904 * Several files: Add casts to calls to frag_var.
905
29bc322d
ILT
906 * Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
907 serialize a parallel make.
908 (itbl-parse.h): Split target out from itbl-parse.c.
909
9afc6631
ILT
910Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
911
39ab5d3a
ILT
912 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR).
913
9afc6631
ILT
914 * config/te-delta.h (COFF_COMMON_ADDEND): Define.
915 * config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
916 storing the value of a common symbol.
917
7dd26961
ILT
918Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
919
920 * config/obj-coff.c (glue_symbols): Unused variable symbolP
921 removed.
922 (crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
923 that is done by symbol_remove and symbol_insert.
924
925 * config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
926 symbol.
927
ac766f70
ILT
928Wed Mar 19 11:06:29 1997 Ian Lance Taylor <ian@cygnus.com>
929
930 * config/tc-mips.c (load_register): In 32 bit mode, when not
931 dealing with a 64 bit number, permit the upper 32 bits to be set
932 even if bit 31 is not set.
933
58cfdde3
ILT
934Tue Mar 18 23:30:14 1997 Ian Lance Taylor <ian@cygnus.com>
935
936 * read.c (potable): Add "equiv".
937 (s_set): Handle .equiv based on argument.
938 * doc/as.texinfo (Equiv): New node to document .equiv.
939 (Err): New node to document .err.
940
7cd06f44
ILT
941Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
942
943 * Many files: Add function prototypes.
944 * as.c (show_usage, parse_args): Make static.
945 * frags.h (frag_alloc): Declare.
946 * subsegs.c (subseg_set_rest): Don't declare frag_alloc.
947 * symbols.c (dollar_label_instance): Change return type to long.
948 * symbols.h (print_symbol_value): Declare.
949 (print_expr, print_expr_1, print_symbol_value_1): Declare.
950 * write.c (fix_new_exp): Don't declare make_expr_symbol.
951 (remove_subsegs, relax_frag): Make static.
952 * config/atof-vax.c (atof_vax_sizeof): Change letter to int.
953 (what_kind_of_float): Likewise.
954 (atof_vax): Make static. Change what_kind to int.
955 (md_atof): Change what_statement_type to int.
956 * config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
957 * config/tc-alpha.c (vax_md_atof): Declare.
958 (md_atof): Don't declare atof_ieee and vax_md_atof.
959 * config/tc-i386.c (set_16bit_code_flag): Make static.
960 * config/tc-i386.h (tc_i386_fix_adjustable): Declare.
961 * config/tc-m68k.c (add_fix): Change width to int.
962 (insert_reg): Change regname to const.
963 (md_atof): Don't declare atof_ieee.
964 (demand_empty_rest_of_line): Don't declare.
965 * config/tc-m88k.c (md_atof): Don't declare atof_ieee.
966 * config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
967 (parse_keyword_arg): Change lookup_fn to take const arg.
968 (md_atof): Don't declare atof_ieee.
969 * config/tc-sparc.h: Add ifdef for multiple inclusion.
970 (tc_aout_pre_write_hook): Don't declare.
971
590c50d8
ILT
972Mon Mar 17 11:21:09 1997 Ian Lance Taylor <ian@cygnus.com>
973
974 * as.h (bfd_alloc_by_size_t): Don't declare.
975 * Many files: Use xmalloc rather than bfd_alloc_by_size_t.
976
4b0895cf 977Sun Mar 16 13:49:21 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
e95ef7c1
ILT
978
979 * symbols.c (symbol_new): Don't call debug_verify_symchain.
980 (symbol_append): Set sy_next and sy_previous when adding a single
981 symbol to an empty list. Call debug_verify_symchain.
982 (verify_symbol_chain): Use assert, not know.
983
5cf4e55e
FF
984Sat Mar 15 20:27:12 1997 Fred Fish <fnf@cygnus.com>
985
986 * NEWS: Note BeOS support.
987 * configure.in: (ppc-*-beos): New target, use coff as object format.
988 * configure: Regenerate with autoconf.
989
9591ad40
ILT
990Sat Mar 15 19:14:02 1997 Ian Lance Taylor <ian@cygnus.com>
991
18f7e3dc
ILT
992 * config/tc-mips.c (md_apply_fix): Improve error message for out
993 of range branch.
994
9591ad40
ILT
995 * Makefile.in: Add dependencies on obstack.h where needed.
996
ef014e09
ILT
997Fri Mar 14 15:33:38 1997 Ian Lance Taylor <ian@cygnus.com>
998
46a92fde
ILT
999 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
1000 case of a symbol equated to another symbol when using SVR4_PIC.
1001
ef014e09
ILT
1002 * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h.
1003
2e9974a4
ILT
1004Thu Mar 13 11:20:51 1997 Ian Lance Taylor <ian@cygnus.com>
1005
d428c89f
ILT
1006 * read.c (read_a_source_file): Call LISTING_NEWLINE before
1007 HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
1008
2e9974a4
ILT
1009 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
1010 and md_elf_section_change_hook if they are defined.
1011 (obj_elf_text, obj_elf_previous): Likewise.
1012
80633e8e
ILT
1013Wed Mar 12 11:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
1014
2e9974a4
ILT
1015 * config/obj-multi.h (struct elf_obj_sy): Define if
1016 OBJ_MAYBE_ELF.
1017 (OBJ_SYMFIELD_TYPE): Define as struct elf_obj_sy if
1018 OBJ_MAYBE_ELF.
1019 * config/obj-elf.h (struct elf_obj_sy): Don't define if
1020 OBJ_SYMFIELD_TYPE is defined.
1021
80633e8e
ILT
1022 * doc/as.texinfo (bss): Improve description of .bss section. In
1023 ELF or COFF, you are permitted to switch into the section.
1024 (Comm): Rewrite description of common symbols.
1025 (Lcomm): Mention that some targets permit a third argument.
1026
6d8dfa04
ILT
1027Tue Mar 11 01:13:31 1997 Ian Lance Taylor <ian@cygnus.com>
1028
9be8c0f1
ILT
1029 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
1030
92b7bfb7
ILT
1031 * symbols.c (colon): Change type of local to int. From Alan Modra
1032 <alan@spri.levels.unisa.edu.au>.
1033
e053e8c1
ILT
1034 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
1035 alignment if a zero fill pattern was explicitly specified.
1036 * config/tc-sh.c (sh_do_align): Likewise.
1037
842b6b06
ILT
1038 * read.c (equals): Always permit register names to be redefined.
1039
ee2c03ed
ILT
1040 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
1041 mips16 symbol to be adjusted if a symbol is being subtracted from
1042 it.
1043
6d8dfa04
ILT
1044 From Eric Youngdale <eric@andante.jic.com>:
1045 * config/obj-elf.c (obj_elf_symver): Check for duplicate or
1046 illegal symbol version names.
1047 (elf_frob_symbol): Check for external default versions.
1048
d88cc85d
ILT
1049Sun Mar 9 23:49:12 1997 Ian Lance Taylor <ian@cygnus.com>
1050
1051 From Eric Youngdale <eric@andante.jic.com>:
1052 * config/obj-elf.h (struct elf_obj_sy): Define.
1053 (OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct. Change all
1054 users.
1055 * config/obj-elf.c (obj_elf_symver): Just record the name.
1056 (obj_symbol_new_hook): Initialized versioned_name field.
1057 (elf_frob_symbol): If there is a versioned_name, either rename the
1058 symbol, or add an alias with that name.
1059
a405bb3e
JL
1060Thu Mar 6 13:55:32 1997 Jeffrey A Law (law@cygnus.com)
1061
ef03fee0
JL
1062 * config/tc-mn10300.c (md_relax_table): Define.
1063 (md_convert_frag): Implement.
1064 (md_assemble): Handle relaxable operands/instructions correctly.
1065 (md_estimate_size_before_relax): Implement.
1066 * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
1067
27103699
JL
1068 * config/tc-mn10200.c (md_relax_table): Fix typos.
1069
a405bb3e
JL
1070 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
1071 relocs anymore. Tweak fx_offset for pc-relative relocs.
1072
d6545e3f
ILT
1073Wed Mar 5 15:46:16 1997 Ian Lance Taylor <ian@cygnus.com>
1074
1075 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
1076 in MRI mode.
1077
e74539b8
FF
1078start-sanitize-tic80
1079Tue Mar 4 19:34:21 1997 Fred Fish <fnf@cygnus.com>
1080
1ea52646
FF
1081 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
1082 pseudo-ops.
e74539b8
FF
1083 * config/tc-tic80.c (md_begin): Declare external variable
1084 coff_flags and insert an F_AR32WR bit into it.
1085
1086end-sanitize-tic80
1087Tue Mar 4 10:01:04 1997 Ian Lance Taylor <ian@cygnus.com>
1088
1089 * read.c (equals): Add reassign parameter. Change all callers.
1090 * read.h (equals): Update declaration.
1091
a941619c
ILT
1092Sat Mar 1 01:04:04 1997 Ian Lance Taylor <ian@cygnus.com>
1093
1094 * config/tc-mips.c (mips16_extended_frag): Don't assume that we
1095 can rely on the frag address to determine whether a frag is
1096 earlier or later.
1097
23604921
ILT
1098Fri Feb 28 14:40:00 1997 Ian Lance Taylor <ian@cygnus.com>
1099
1100 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
1101 (S_LOCAL_NAME): Likewise.
1102 (FAKE_LABEL_NAME): Define unconditionally.
1103 * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
1104 BFD_ASSEMBLER.
1105 (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
1106 * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
1107 Don't define FAKE_LABEL_NAME.
1108 * config/te-ic960.h: Likewise.
1109 * config/tc-mips.h (tc_frob_file_before_adjust): Define.
1110 (mips_frob_file_before_adjust): Declare.
1111 * config/tc-mips.c (mips_frob_file_before_adjust): New function.
1112 (mips_local_label): Remove.
1113
1114 * config/te-sco386.h: Remove; not used.
1115
a88ce21e
FF
1116start-sanitize-tic80
1117Thu Feb 27 15:39:16 1997 Fred Fish <fnf@cygnus.com>
1118
1119 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
1120 byte alignment rather than power-of-two alignment that is the
1121 GAS default.
1122
1123end-sanitize-tic80
0f68bf0a
ILT
1124Thu Feb 27 13:29:04 1997 Ian Lance Taylor <ian@cygnus.com>
1125
e053e8c1 1126 * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.
f396c4ef 1127
0f68bf0a
ILT
1128 * gasp.c (hash_add_to_string_table): Correct misspelling in error
1129 message, and add newline.
1130 (process_file): Don't process assignments in the label if this is
1131 a equ or assign pseudo-op.
1132 (process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
1133 and K_EQU, to match documentation.
1134
0fe302ac
MM
1135Thu Feb 27 12:00:03 1997 Michael Meissner <meissner@cygnus.com>
1136
1137 * config/obj-coff.c (obj_coff_section): Add 'r' section attribute
1138 to denote read-only data sections.
1139
30d0557c
ILT
1140Thu Feb 27 00:26:33 1997 Ian Lance Taylor <ian@cygnus.com>
1141
35c64f24
ILT
1142 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
1143 * config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
1144
30d0557c
ILT
1145 * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
1146 binary number if the next character is '+' or '-'.
1147
1e12595d
FF
1148start-sanitize-tic80
1149Wed Feb 26 20:47:12 1997 Fred Fish <fnf@cygnus.com>
1150
1151 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
1152 (find_opcode): Match operands that can be floats.
1153 (build_insn): Handle O_big (float) expressions and build
1154 correct opcode.
1155
1156end-sanitize-tic80
af942793
SS
1157Wed Feb 26 18:19:00 1997 Stan Shebs <shebs@andros.cygnus.com>
1158
1159 * configure.in (mips*-*-lnews*): New target, also make empty
1160 emulation list for this target.
1161 * configure: Update.
1162 * tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
1163 (mips_target_format): Use.
1164 * te-lnews.h: New file.
1165
f92f247b
FF
1166start-sanitize-tic80
1167Wed Feb 26 15:33:46 1997 Fred Fish <fnf@cygnus.com>
1168
1169 * config/tc-tic80.c (find_opcode, build_insn): Changes to match
1170 operands with :m or :s modifiers and generate the right opcodes
1171 for them.
1172
1173end-sanitize-tic80
7a515708
ILT
1174Wed Feb 26 11:56:11 1997 Ian Lance Taylor <ian@cygnus.com>
1175
1176 * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
1177 $(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
1178
55be99d6
ILT
1179Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1180
1181 * config/tc-m68k.c (instring): Useless local declaration of
1182 crack_operand removed.
1183 * expr.h (expressionS): Changed type of X_op field to operatorT if
1184 __GNUC__.
1185
28d8c671
ILT
1186Tue Feb 25 13:17:27 1997 Ian Lance Taylor <ian@cygnus.com>
1187
034988c6
ILT
1188 Based on patches from Robert Lipe <robertl@dgii.com>:
1189 * configure.in: Add i386coff and i386elf to emulation list.
1190 * configure: Rebuild.
1191 * as.c (i386coff, i386elf): Declare.
1192 * obj.h (coff_format_ops): Declare.
1193 * config/obj-coff.c (OBJ_HEADER): Define.
1194 (coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
1195 (coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
1196 (obj_pseudo_table): Add "version".
1197 (coff_pop_insert): New static function.
1198 (coff_sec_sym_ok_for_reloc): New static function.
1199 (no_func): New static function.
1200 (coff_format_ops): New variable.
1201 * config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
1202 (obj_symbol_new_hook): Define.
1203 (coff_obj_read_begin_hook): Declare.
1204 (obj_read_begin_hook): Define.
1205 * config/tc-i386.h (i386_target_format): Declare.
1206 * config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
1207 OUTPUT_FLAVOR when appropriate.
1208 (i386_target_format): New function.
1209 * Makefile.in (obj-coff.o): New target.
1210 (e-i386coff.o, e-i386elf.o): New targets.
1211
a0c4a241
ILT
1212 From Stephen Williams <steve@icarus.icarus.com>:
1213 * config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
1214 (_tc_get_bal_of_call): Don't declare.
1215 (tc_get_bal_of_call): Declare as function, don't define as macro.
1216 * config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
1217 in sy_tc field, not x_balntry field.
1218 (tc_get_bal_of_call): Rename from _tc_get_bal_of_call. Change
1219 return type to symbolS *. If OBJ_COFF, retrieve value from sy_tc
1220 field, not x_balntry field.
1221
1222 * config/obj-elf.c (obj_elf_section): Permit a .note section to
1223 have the SHF_ALLOC attribute.
1224
a90512ad
ILT
1225 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
1226 (TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
1227 (itbl-lex.o): Depend upon itbl-parse.h.
1228
1229 * itbl-parse.y (yyerror): Change return type to int. Change to
1230 use old style function declaration.
1231
ee5cb7fe
ILT
1232 * Makefile.in (itbl-lex.o): Remove -Wall.
1233 (itbl-parse.o): Likewise.
1234
28d8c671
ILT
1235 * cond.c (s_ifdef): If we should omit conditionals from listings,
1236 call listing_list.
1237 (s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
1238 * listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
1239 (listing_listing): Handle EDICT_NOLIST_NEXT.
1240 (listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
1241 * listing.h (LISTING_NOCOND): Define.
1242 (LISTING_SKIP_COND): Define.
1243 * as.c (show_usage): Mention c as a suboption of -a.
1244 (parse_args): Handle c as a suboption of -a.
1245 * doc/as.texinfo: Document -alc.
1246
b16a8c8e
FF
1247start-sanitize-tic80
1248Mon Feb 24 23:34:14 1997 Fred Fish <fnf@cygnus.com>
1249
1250 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
1251
1252end-sanitize-tic80
1253Mon Feb 24 18:27:43 1997 Eric Youngdale <eric@andante.jic.com>
1254
1255 * doc/as.texinfo: Document .symver.
1256
4d3410fd
MH
1257Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1258
1259 * config/tc-d10v.c: Change pre_defined_registers to
1260 d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
1261
ec72a266
FF
1262Mon Feb 24 10:40:45 1997 Fred Fish <fnf@cygnus.com>
1263
1264 * config/obj-coff.c: Fix typo in comment section.
1265start-sanitize-tic80
1266 * config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
1267 an additional alignment argument.
1268 (find_opcode): Allow O_symbol relocs for any 32 bit field, not just
1269 base relative ones.
1270 (build_insn): Handle O_symbol relocs for any 32 bit field, not just
1271 base relative ones.
1272end-sanitize-tic80
1273
16aef5b0
DP
1274Mon Feb 24 02:23:00 1997 Dawn Perchik <dawn@cygnus.com>
1275
1276 * Makefile.in: Remove dependancies on itbl-cpu.h.
1277 * as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
1278 is not defined.
1279
ac6c6bdb
DP
1280Mon Feb 24 02:03:00 1997 Dawn Perchik <dawn@cygnus.com>
1281
1282 * itbl-ops.h: Include as.h.
1283
72797ffa
DP
1284Mon Feb 24 01:04:00 1997 Dawn Perchik <dawn@cygnus.com>
1285
1286 * as.c: Remove -t option.
1287 * configure, configure.in: Move itbl-cpu.h to mips specific configure.
1288 * itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
1289 * config/tc-mips.h: Define HAVE_ITBL_CPU.
1290
2f671f84
DP
1291Sun Feb 23 18:01:00 1997 Dawn Perchik <dawn@cygnus.com>
1292
1293 * itbl-ops.c: Don't define DEBUG.
1294
f9f0539f
DP
1295Sun Feb 23 17:49:00 1997 Dawn Perchik <dawn@cygnus.com>
1296
1297 * Makefile.in: Update itbl-test.c to reflect its new location.
1298
8d8a790b
DP
1299Sun Feb 23 15:50:00 1997 Dawn Perchik <dawn@cygnus.com>
1300
1301 * itbl-ops.c: Add test for itbl_have_entries.
1302 * config/tc-mips.c: Remove test for itbl_have_entries.
1303 * config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
1304
7b9f3d46
ILT
1305Sun Feb 23 18:13:19 1997 Ian Lance Taylor <ian@cygnus.com>
1306
1307 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
1308 itbl-ops.c. Add itbl-parse.c and itbl-lex.c.
1309 (LEX, LEXFLAGS): Define.
1310 * itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
1311
efec4a28
DP
1312Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
1313
1314 * itbl-parse.y: Fix indentation mistakes from indent program.
1315 * itbl-lex.l: Fix indentation mistakes from indent program.
1316 * itbl-ops.h: Add include for ansidecl.h.
1317 Add PARAMS around function arguments.
1318 Add declaration for itbl_have_entries.
1319 * itbl-ops.c: Add PARAMS around function arguments.
1320 * Makefile.in: Add itbl build rules.
1321 Add dependancies for itbl files to mips target.
1322 * as.c: Add itbl support.
1323 Add new option "--insttbl" for dynamically extending instruction set.
1324 * as.h: Declare insttbl_file_name;
1325 the name of file defining extensions to the basic instruction set
1326 * configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
1327 itbl-ops.o to extra_objects for mips configuration.
1328 Add include file link from itbl-cpu.h to
1329 config/itbl-${target_cpu_type}.h.
1330 * config/tc-mips.c: Allow copz instructions.
1331 Add notes for future additions to the itbl support.
1332 Add debug macros.
1333 (macro): Call itbl_assemble to assemble itbl instructions.
1334 See if an unknown register is specified in an itbl entry.
1335
d160b69e
FF
1336Sat Feb 22 20:53:01 1997 Fred Fish <fnf@cygnus.com>
1337 * doc/internals.texi (CPU backend): Fix typo in md_section_align
1338 description.
1339start-sanitize-tic80
1340 * config/tc-tic80.h (NEED_FX_R_TYPE): Define.
1341 * config/tc-tic80.c (find_opcode): Add code to support O_symbol
1342 operands.
1343 (build_insn): Grab a frag early so we can use the address in
1344 fixups. Take one's complement of BITNUM values before insertion
1345 in opcode. Add code to support O_symbol operands.
1346 (md_apply_fix): Replace unimplemented warning with implementation.
1347 (md_pcrel_from): Ditto.
1348 (tc_coff_fix2rtype): Ditto.
1349end-sanitize-tic80
1350
09d9ef26 1351Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1b524697
MH
1352start-sanitize-d30v
1353 * config/tc-d30v.c (parallel_ok): New function.
1354 * config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
1355end-sanitize-d30v
09d9ef26
MH
1356 * config/tc-d10v.c (md_pcrel_from_section): Return 0 if
1357 relocation is in different section. Fixes PR11574.
1358
e2e5acfa
JW
1359Fri Feb 21 10:08:25 1997 Jim Wilson <wilson@cygnus.com>
1360
1361 * tc-mips.c (mips_ip): If configured for an embedded ELF system,
1362 don't set the section alignment to 2**4.
1363
fee3e248
ILT
1364Fri Feb 21 11:55:03 1997 Ian Lance Taylor <ian@cygnus.com>
1365
b2f7cdd0
ILT
1366 * config/tc-m68k.c (line_comment_chars): Add '*'.
1367
830ce631
ILT
1368 * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
1369 (do_scrub_begin): Don't set lex['*'].
1370 (do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
1371 check for LEX_IS_TWOCHAR_COMMENT_2ND. Instead, just check for
1372 a literal '*'.
1373
fee3e248
ILT
1374 * configure.in: Set em=svr4 for m68k-*-sysv4*.
1375 * configure: Rebuild.
1376 * config/te-svr4.h: New file.
1377 * config/tc-m68k.c (m68k_comment_chars): Only include `#' if
1378 TE_SVR4 or TE_DELTA.
1379
48242b28
JL
1380Thu Feb 20 22:24:39 1997 Jeffrey A Law (law@cygnus.com)
1381
1382 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
1383 short conditional branch around a long unconditional branch.
1384
1af411e1
ILT
1385Thu Feb 20 13:56:00 1997 Ian Lance Taylor <ian@cygnus.com>
1386
64c5df8d
ILT
1387 * config/obj-coff.c (obj_coff_ln [both versions]): Call
1388 new_logical_line.
1389
1af411e1
ILT
1390 * config/tc-arm.c (fix_new_arm): Use make_expr_symbol to handle a
1391 complex expression.
1392
1393 * symbols.c (resolve_symbol_value): If both left and right
1394 operands are undefined, warn about both of them.
1395
78673fc6
ILT
1396Wed Feb 19 00:53:28 1997 Ian Lance Taylor <ian@cygnus.com>
1397
dd7feeb5
ILT
1398 Based on patches from Eric Youngdale <eric@andante.jic.com>:
1399 * config/obj-elf.c (elf_pseudo_table): Add "symver".
1400 (obj_elf_symver): New static function.
1401 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
1402 field.
1403
1404 * write.c (relax_segment): Make type and printf format agree.
1405
78673fc6
ILT
1406 * read.c (get_line_sb): Don't end the line on a semicolon inside a
1407 string.
1408
14f23c28
MH
1409start-sanitize-d30v
1410Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1411
1412 * config/tc-d30v.c, config/tc-d30v.h: New files.
1413
1414 * configure: Rebuilt.
1415
1416 * configure.in: Add case for d30v.
1417
1418end-sanitize-d30v
1419Sun Feb 16 17:47:29 1997 Fred Fish <fnf@toadfish.ninemoons.com>
1420
1421 * config/tc-alpha.h (md_operand): Define with a null expansion,
1422 like all the other targets.
1423 * doc/internals.texi (CPU backend): Add missing word in
1424 md_flush_pending_output description. Fix typo in md_convert_frag
1425 description.
1426start-sanitize-tic80
1427 * config/tc-tic80: Minor comment additions/changes.
1428end-sanitize-tic80
1429
b253dcff
ILT
1430Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1431
1432 * config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
1433 (tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
1434 * config/obj-coff.c (obj_coff_def): Use
1435 tc_canonicalize_symbol_name if defined.
1436 (obj_coff_tag, obj_coff_val): Likewise.
1437 * expr.c (operand): Reject '~' as operator if is_name_beginner.
1438
d7bf6158
ILT
1439Fri Feb 14 17:24:48 1997 Ian Lance Taylor <ian@cygnus.com>
1440
f5ed78de
ILT
1441 Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
1442 does not actually work, though:
1443 * configure.in (i386-sequent-bsd*): New target.
1444 * configure: Rebuild.
1445 * config/tc-dynix.h: New file.
1446 * config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
1447
d7bf6158
ILT
1448 * read.c (do_align): Add max parameter. Change all callers.
1449 Remove useless static variables.
1450 (s_align): New static function. Do common portion of
1451 s_align_bytes and s_align_ptwo.
1452 (s_align_bytes, s_align_ptwo): Just call s_align.
1453 * frags.c (frag_align): Add max parameter. Change all callers.
1454 (frag_align_pattern): Likewise.
1455 * frags.h (frag_align, frag_align_pattern): Update declarations.
1456 * write.c (relax_segment): Limit alignment change to fr_subtype.
1457 Fix some types to be addressT.
1458 * config/obj-coff.c (size_section): Likewise.
1459 * config/obj-ieee.c (size_section): Likewise.
1460 * config/tc-d10v.h (md_do_align): Add max parameter.
1461 * config/tc-i386.h (md_do_align): Likewise.
1462 * config/tc-m88k.h (md_do_align): Likewise.
1463 * config/tc-m88k.c (m88k_do_align): Likewise.
1464 * config/tc-sh.h (md_do_align): Likewise.
1465 * config/tc-sh.c (sh_do_align): Likewise.
1466 * as.h: Improve comments on rs_align and rs_align_code.
1467 * doc/as.texinfo: Document new alignment arguments.
1468 * doc/internals.texi (Frags): Document use of fr_subtype field for
1469 rs_align and rs_align_code.
1470
1471Fri Feb 14 15:56:06 1997 Gavin Koch <gavin@cygnus.com>
1472
1473 * config/tc-mips.c: Changed opcode parsing.
1474
16171d71
FF
1475Thu Feb 13 20:02:16 1997 Fred Fish <fnf@cygnus.com>
1476
1477 * config/{tc-alpha.h, tc-arc.h, tc-d10v.h, tc-generic.h, tc-i960.h,
ec2f730d 1478 tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-vax.h, tc-w65.h}:
16171d71
FF
1479 Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
1480 * config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
1481 tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
1482 to a location consistent with the rest of the target include files.
1483 * config/tc-i386.c: Remove misleading comment.
1484 * doc/internals.texi (CPU backend): Add description of function
1485 md_undefined_symbol.
1486start-sanitize-tic80
1487 * config/tc-tic80.c: Add code to insert predefined symbols into the
1488 symbol table so they can be parsed by the standard expression parser.
1489 Remove custom code that use to parse them.
1490 * config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
1491 to a location consistent with the rest of the target include files.
1492end-sanitize-tic80
1493
9f13ead9
ILT
1494Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
1495
1496 * as.h: GNU c provides unlink() function.
1497
1498 Unify section handling on openVMS/Alpha:
1499 * config/tc-alpha.c(s_alpha_link): Remove.
1500 (s_alpha_section): New function.
1501 Remove case-hacking of symbols
1502 Add .code_address pseudo-op.
1503 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
1504 (s_alpha_code_address): New function.
1505 (alpha_ctors_section, alpha_dtors_section): New sections for C++
1506 static constructors/destructors.
1507 Add debug code for crash debugs, to be removed when traceback code
1508 is added to object code.
1509 (s_alpha_name): New function for .name pseudo-op.
1510 (alpha_print_token): New function to print token expressions with
1511 alpha specific extensions.
1512
1513 * makefile.vms: Allow compilation with current gcc snapshot.
1514
af16e411
FF
1515Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
1516
1517 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
1518 (DVIPS): Set to dvips.
1519 (ps, as.ps, gasp.ps): New targets.
1520 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
1521 and MAKEINFO env variables.
1522 (internals.ps): Use DVIPS macro.
1523 (clean): Remove core and backup files.
1524 (distclean): Remove temporary files from building internals.
1525 (clean-dvi): Ditto.
1526 * doc/internals.texi (Frags): Fix typo.
1527 (GAS processing): Ditto.
1528 (CPU backend): Ditto.
1529 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
1530 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
1531 * read.c: Remove ugly hack that dealt with config files not
1532 correctly defining TARGET_BYTES_BIG_ENDIAN.
1533 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
1534 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1535 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1536 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1537 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1538 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1539 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
1540 with TARGET_BYTES_BIG_ENDIAN defined to 0.
1541 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1542 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1543 whether it is defined or not.
1544 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
1545 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1546 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1547 whether it is defined or not.
1548start-sanitize-tic80
1549 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
1550 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
1551end-sanitize-tic80
1552
89b41978
DE
1553Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
1554
1555 * write.c (write_relocs): Correct text in as_fatal error message,
1556 bfd_perform_relocation -> bfd_install_relocation.
1557
151c3ec0
ILT
1558Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1559
1560 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
1561 * read.c (LEX_TILDE): Define if not defined.
1562 (lex_type): Use LEX_TILDE.
1563 * expr.c (get_symbol_end): Check first char with is_name_beginner,
1564 not is_part_of_name.
1565
4a1cb507
ILT
1566Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
1567
3de9d78c
ILT
1568 * config/tc-sparc.c (md_show_usage): Add missing backslash at end
1569 of continued line.
1570
319305a7
ILT
1571 * config/tc-mips.c (mips16_extended_frag): Correct base address
1572 for an extended PC relative instruction.
1573 (md_convert_frag): Likewise.
1574
4a1cb507
ILT
1575 * config/tc-mips.c (prev_nop_frag): New static variable.
1576 (prev_nop_frag_holds): New static variable.
1577 (prev_nop_frag_required): New static variable.
1578 (prev_nop_frag_since): New static variable.
1579 (append_insn): If we aren't reordering, and prev_nop_frag is not
1580 NULL, and we don't need any nops, then decrease the size of
1581 prev_nop_frag. Don't insert nops because of instructions in
1582 noreorder sections. Remember whether the previous instructions
1583 where in noreorder sections even when not reordering.
1584 (mips_no_prev_insn): Add preserver parameter. Change all
1585 callers. Refer prev_nop_frag variables when appropriate.
1586 (mips_emit_delays): Set up prev_nop_frag.
1587 (s_mipsset): Clear prev_nop_frag if reordering.
1588
ebf28372
ILT
1589Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
1590
9cd4e6cc
ILT
1591 * config/tc-mips.c (append_insn): Remove useless code which
1592 handled swapping a mips16 jump with a mips16 instruction with a
1593 reloc.
1594
05874c2e
ILT
1595 * config/tc-mips.c (md_parse_option): When debugging, set
1596 mips_optimize to 1, not 0.
1597
56bb6eee
ILT
1598 * config/tc-mips.c (mips16_ip): Handle an extend operand.
1599
eb17f56c
ILT
1600 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
1601 like the expression was based on `.', adjust the value of the
1602 symbol.
1603
035936da 1604 * config/tc-mips.c (append_insn): Warn about an attempt to put an
c0df26bb 1605 extended instruction in a delay slot when not reordering.
035936da
ILT
1606 (md_convert_frag): Warn if an extended instruction appears in a
1607 delay slot.
1608
ed3eb786
ILT
1609 * config/tc-mips.c (mips_pseudo_table): Add "insn".
1610 (s_insn): New static function.
1611 * doc/c-mips.texi: Document .insn.
1612
ebf28372
ILT
1613 * config/tc-mips.c (md_begin): Add the general registers to the
1614 symbol table.
1615 (mips16_ip): First parse the expression, and then see whether it
1616 came up with a register, rather than trying to first see whether
1617 we are looking at a register.
1618
11e08196
FF
1619start-sanitize-tic80
1620Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
1621
1622 * config/tc-tic80.c: Numerous changes and additions to flesh
1623 out functions that were previously just stubs, and fix some
1624 problems found using the new TIc80 testsuite cases.
1625
1626end-sanitize-tic80
16262668
ILT
1627Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
1628
1629 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
1630 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
1631
1632 * config/tc-mips.c (append_insn): Output jump instruction as a
1633 pair of 2 byte instructions, rather than as a single 4 byte
1634 instruction.
1635
1636start-sanitize-r5900
1637 * config/tc-mips.c (md_begin): Correct test of mips_5900.
1638 (mips_ip): Don't check INSN_ISA for a macro.
1639
1640end-sanitize-r5900
276c2d7d
GRK
1641start-sanitize-r5900
1642Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
1643
1644 * config/tc-mips.c: added r5900.
1645
1646end-sanitize-r5900
c6745073
DP
1647Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
1648
1649 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
1650 config/itbl-mips.h: Add copyright message and fix indentation.
1651
8e5c905e
DP
1652Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
1653
1654 * itbl-ops.c: New file. Add support for dynamically read
1655 instruction registers, opcodes and formats. Build internal table
1656 for new instructions and provide callbacks for assembler and
1657 disassembler.
1658 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
1659 spec table.
1660 * itbl-ops.h: New file. Header file for itbl support.
1661 * config/itbl-mips.h: New file. Mips specific definitions for
1662 itbl support.
1663
a7355c4d
JL
1664Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
1665
1666 * config/tc-mn10200.c (md_assemble): If a constant operand won't
1667 fit into the constant field of a relaxable operand, then it does
1668 not match.
1669
e58035e3
JL
1670Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
1671
1672 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
1673 a jsr target in a different section just like a jsr to
1674 an undefined target.
1675
6927c24d
ILT
1676Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
1677
1678 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
1679 against any mips16 symbols, not just externally visible ones.
1680 (md_apply_fix): Corresponding change.
1681
c9167640
ILT
1682Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
1683
1684 * config/tc-mips.c (mips16_ip): Accept floating point registers in
1685 the operand of the exit instruction.
1686
76801700
ILT
1687Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
1688
1689 * symbols.c (resolve_symbol_value): If we leave an equated symbol
1690 as O_symbol, copy over the segment.
1691
3569064f
ILT
1692Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
1693
1748b9d8
ILT
1694 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
1695 fixup to be against the section symbol, adjust the value
1696 accordingly.
1697
3569064f
ILT
1698 * symbols.c (resolve_symbol_value): Don't change X_add_number for
1699 an equated symbol.
1700 * write.c (write_relocs): Avoid looping on equated symbols.
1701 Adjust fx_offset by X_add_number for each symbol.
1702 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
1703 symbols.
1704 (fixup_segment): Add a loop to track down equated symbols and
1705 adjust fx_offset appropriately.
1706
f5d7f6fb
JL
1707Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
1708
1709 * config/tc-mn10200.c (md_relax_table): Add entries to allow
1710 jmp -> bra relaxing.
1711 (md_convert_frag): Handle jmp->bra relaxing.
1712 (md_assemble): Handle jmp->bra relaxing.
1713 (md_estimate_size_before_relax): Likewise.
1714
fb50cd4e
ILT
1715Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1716
1717 * config/tc-i386.c (i386_align_code): Add comments explaining the
1718 nop instructions.
1719
a75abb6f
ILT
1720Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
1721
2b063e6d
ILT
1722 * config/tc-sparc.c (enforce_aligned_data): New static variable.
1723 (sparc_cons_align): Don't do anything unless enforce_aligned_data
1724 is set.
1725 (md_longopts): Add "enforce-aligned-data".
1726 (md_show_usage): Mention --enforce-aligned-data.
1727 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
1728 enforce-aligned-data.
1729
fbd929fd
ILT
1730 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
1731 "word", and "short".
1732 (ppc_xcoff_cons): New static function.
1733
a75abb6f
ILT
1734 * write.c (relax_segment): Give an error if a .space symbol is
1735 common or undefined.
1736
1737 * read.c (read_a_source_file): Don't handle mri_pending_align if
1738 the handler is s_globl or s_ignore.
1739
f1ce6af4
FF
1740Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
1741
1742 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
1743start-sanitize-tic80
1744 * config/tc-tic80.c: Many additions to previous placeholder file.
1745 * config/tc-tic80.h: Ditto.
1746end-sanitize-tic80
1747
0b476c53
ILT
1748Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1749
1750 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
1751
a6b200da
ILT
1752Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
1753
0d7f9025
ILT
1754 * config/tc-mips.c (mips_fix_adjustable): New function.
1755 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
1756 (mips_fix_adjustable): Declare.
1757
a6b200da
ILT
1758 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
1759 * read.c (read_a_source_file): After doing an mri_pending_align,
1760 adjust the line_label if there is one.
1761 (s_space): Set mri_pending_align if an odd number of bytes were
1762 output.
1763
9073144e
MH
1764Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1765
1766 * config/tc-d10v.h (md_do_align): Add this hook to call
1767 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
1768
1769 * config/tc-d10v.c (find_opcode): Correctly calculate
1770 branch displacement when .aligns are present.
1771
33a4c28d
JL
1772Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
1773
1774 * config/tc-mn10200.c (md_relax_table): Define.
1775 (md_convert_frag): Implement.
1776 (md_assemble): Handle relaxable operands/instructions correctly.
1777 (md_estimate_size_before_relax): Implement.
1778 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
1779
645cb4dc
ILT
1780Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
1781
39bb58e0
ILT
1782 * config/tc-mips.c (append_insn): Give an error for jumps to a
1783 misaligned address.
1784 (md_apply_fix): Make a branch to an odd address an error rather
1785 than a warning.
3b320c48 1786
31a2c6ff
ILT
1787 * config/tc-mips.c (md_convert_frag): If the user explicitly
1788 requested an extended opcode, pass warn as true to mips16_immed.
1789
645cb4dc
ILT
1790 * config/tc-mips.c (mips16_ip): Handle a missing expression like
1791 an explicit 0, so that explicitly extended instructions work
1792 correctly.
1793
0192b099
ILT
1794Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
1795
1796 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
1797 symbol for a common symbol.
1798
f7ab9441
DE
1799Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
1800
1801 Patch presumed to have been checked in awhile ago but wasn't.
1802 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
1803 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
1804 (relax_segment, case rs_org): Move code inside braces. Move locals
1805 target,after inside too.
1806 (relax_segment, case rs_machine_dependent): Guts moved to ...
1807 (relax_frag): New function.
1808 Call md_prepare_relax_scan if defined.
1809
0ce48081
C
1810Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1811
1812 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
1813 'p' operand specifier.
1814
1815Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
ffecfc8b
C
1816
1817 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
1818 m68k family cpus which support long branch addressing modes.
1819 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
1820 md_create_long_jump): Use it.
1821
c36a90ef
ILT
1822Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
1823
b3a64736
ILT
1824 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
1825 the .reginfo or .MIPS.options section if configured for an
1826 embedded target.
1827
c36a90ef
ILT
1828 * config/tc-mips.c (md_begin): Don't set interlocks for
1829 mips_4650.
1830
ad423373
ILT
1831Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
1832
1833 * read.c (read_a_source_file): Make sure the symbol ends with
1834 whitespace before checking whether the next character is '='.
1835
03b24037
ILT
1836Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
1837
1838 * config/tc-i386.c (sco_id): Moved from here...
1839 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
1840 really is an SCO ELF specific thing, not just a SCO x86 specific
1841 thing.
1842
4af93ad0
MM
1843start-sanitize-tic80
1844Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1845
1846 * configure.in (tic80-*-*): Don't require 'coff'.
1847 * configure: Regenerate.
1848
1849end-sanitize-tic80
8ff75001
ILT
1850Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
1851
6468dabd
ILT
1852 * read.c (emit_expr): Check for overflow of a negative value
1853 correctly.
1854 * write.c (fixup_segment): Likewise.
1855 * config/obj-coff.c (fixup_segment): Likewise.
1856
d703b5a7
ILT
1857 * config/tc-m68k.c (struct label_line): Define.
1858 (labels, current_label): New static variables.
1859 (md_assemble): Mark current_label as text, and clear it.
1860 (m68k_frob_label): New function.
1861 (m68k_flush_pending_output): New function.
1862 (m68k_frob_symbol): New function.
1863 * config/tc-m68k.h (tc_frob_label): Define.
1864 (md_flush_pending_output): Define.
1865 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
1866 (tc_frob_coff_symbol): Likewise.
1867
8ff75001
ILT
1868 * read.c (read_a_source_file): When defining a macro in MRI mode,
1869 don't add the symbol to the symbol table.
1870
78998629
JL
1871Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
1872
1873 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
1874 here since fixup_segment doesn't (linkrelax is set).
1875 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
1876
62b2acba
JL
1877Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
1878
1879 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
1880 relocs.
1881
ac866582
JL
1882Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
1883
62b2acba 1884 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
ac866582
JL
1885 to avoid warnings with the native HP compiler.
1886 (fix_new_hppa): Similarly for the r_type argument.
1887 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
1888 in an #if OBJ_ELF to keep gcc -Wall quiet.
1889 (md_apply_fix): Always initialize "result".
1890
1891 * config/tc-mn10200.c (md_assemble): Generate relocations.
1892
79811f6f
ILT
1893Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1894
1895 * config/tc-m68k.c (s_even): Adjust the alignment of the current
1896 section.
1897
ba8f9c09
ILT
1898Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
1899
1900 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
1901 pass on the new file hook.
1902
1903 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
1904 !alpha_force_relocation, as local LITERALs can be adjusted to be
1905 relative to the section.
1906
a78bc551
ILT
1907Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
1908
9f94df38
ILT
1909 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
1910 defined, call it.
3df036e9 1911 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
9f94df38
ILT
1912 aligned to odd boundary.
1913 (tc_frob_coff_symbol): Define.
1914
039d5a60
ILT
1915 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
1916
7b0688df
ILT
1917 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
1918
2156d0d7
ILT
1919 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
1920 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
1921
a78bc551
ILT
1922 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
1923 immediate value.
1924 (md_assemble): If the size is 'B', set fx_signed.
1925 (md_apply_fix_2): Use fx_signed when checking for overflow.
1926
1927 * write.h (struct fix): Add fx_signed field.
1928 * write.c (fix_new_internal): Initialize fx_no_overflow and
1929 fx_signed fields.
1930 (fixup_segment): Use fx_signed when checking for overflow.
1931 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
1932 fx_signed when checking for overflow.
1933
b9129c6f
ILT
1934Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
1935
0abdf280
ILT
1936 * NOTES, NOTES.config: Removed. These are rarely, if ever,
1937 updated, and all the useful information is in doc/internals.texi.
1938
a986926b
ILT
1939 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1940 * read.c (read_a_source_file): Check for conditional operators
1941 before doing an MRI pending alignment.
1942 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
1943 (tc_conditional_pseudop): Define.
1944 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
1945 * doc/internals.texi (CPU backend): Describe
1946 tc_conditional_pseudoop.
1947
924160b0
ILT
1948 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1949 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
1950 variable.
1951 (md_begin): Check m68k_rel32_from_cmdline before setting
1952 m68k_rel32.
1953 (m68k_mri_mode_change): Likewise.
1954 (md_longopts): Add --disp-size-default-16 and
1955 --disp-size-default-32.
1956 (md_parse_option): Handle new options.
1957 (md_show_usage): Mention new options.
1958 * doc/c-m68k.texi (M68K-Opts): Document new options.
1959
b4d51f3d
ILT
1960 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1961 * config/tc-m68k.c (m68k_index_width_default): New static
1962 variable.
1963 (m68k_ip): Use m68k_index_width_default to set the size of a base
1964 register whose size was not given.
1965 (md_longopts): Add --base-size-default-16 and
1966 --base-size-default-32.
1967 (md_parse_option): Handle new options.
1968 (md_show_usage): Mention new options.
1969 * doc/c-m68k.texi (M68K-Opts): Document new options.
1970
103e1158
ILT
1971 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
1972
e16b9537
ILT
1973 * configure.in: Recognize mips-*-linux* target.
1974 * configure: Rebuild.
1975
a162a490
ILT
1976 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
1977 work if valueT is only 32 bits.
1978
b9129c6f
ILT
1979 * config/tc-mips.c: Throughout, check target_big_endian rather
1980 than byte_order.
1981 (byte_order): Remove.
1982 (mips_init_after_args): Remove.
1983 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
1984 (mips_init_after_args): Don't declare.
1985 (tc_init_after_args): Don't define.
1986
1987 * config/tc-mips.h (tc_frob_after_relocs): Define if
1988 OBJ_MAYBE_ELF.
1989 (mips_elf_final_processing): Likewise.
1990 (ELF_TC_SPECIAL_SECTIONS): Likewise.
1991
6e7d5462
MM
1992start-sanitize-v850
1993Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1994
1995 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
1996 sld.{h,w} and the operand is relocatable, adjust the adend by
1997 shifting it right one bit.
1998
1999end-sanitize-v850
38fc0ba6
ILT
2000Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
2001
20868ec6
ILT
2002 * read.c (read_a_source_file): Check mri_pending_align after
2003 checking for a macro. From Ronald F. Guilmette
2004 <rfg@monkeys.com>.
2005
6ded6615
ILT
2006 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
2007
38fc0ba6
ILT
2008 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
2009 add segment argument. If OBJ_ELF, treat a relocation against a
2010 symbol in a linkonce section like a relocation against an external
2011 symbol.
2012 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
2013
18e0764d
ILT
2014Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
2015
2016 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
2017
64556643
FF
2018Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
2019
2020 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
2021 includes config.h instead of host.h, tc.h instead of tp.h, and
2022 targ-env.h instead of target-environment.h.
2023 Also, obj-format.h includes targ-cpu.h instead of
2024 target-processor.h.
2025start-sanitize-tic80
2026 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
2027 * configure: Rebuild with autoconf.
2028 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
2029 (TARGET_FORMAT): Define to "coff-tic80".
2030 * config/tc-tic80.c: New file for TIc80 support.
2031 * config/tc-tic80.h: New file for TIc80 support.
2032end-sanitize-tic80
2033
7d99e8af
ILT
2034Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
2035
2036 * doc/as.texinfo (M): Mention explicitly that -M changes macro
2037 handling.
2038
9c199842
ILT
2039Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
2040
2041 * write.c (adjust_reloc_syms): If the fixup symbol has been
2042 equated to an undefined symbol, convert the fixup to being against
2043 the target symbol. Remove obsolete code handling a special case
2044 for i386 PIC.
2045
51cd0ae7
SS
2046Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
2047
2048 * mpw-make.sed: Use NewFolderRecursive for installation.
2049
cb07aaeb
MH
2050Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2051
2052 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
2053
575453fb
MH
2054Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2055
2056 * config/tc-d10v.c (md_assemble): Fix bug which caused
2057 second instruction in a line to be case sensitize. PR11312
2058
5545556d
JL
2059Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
2060
2061 * config/tc-mn10200.c (mn10200_insert_operand): Don't
2062 range check operands with MN10200_OPERAND_NOCHECK set.
2063 (check_operand): Likewise.
2064
c0dea495
ILT
2065Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
2066
f5e38044
ILT
2067 * config/tc-mips.c: Undo part of last Friday's alignment changes.
2068 (md_begin): Always align the text section to a four byte
2069 boundary.
2070 (append_insn): Remove call to record_align.
2071
fbcfacb7
ILT
2072 * config/tc-mips.c (insn_label): Remove.
2073 (struct insn_label_list): Define.
2074 (insn_labels, free_insn_labels): New static variables.
2075 (mips_clear_insn_labels): New static function.
2076 (append_insn): Mark all mips16 text labels, and make them odd.
2077 Handle all labels after emitting a nop, not just one. Call
2078 mips_clear_insn_labels rather than just clearing insn_label.
2079 (mips_emit_delays): Add insns parameter, and use it to decide
2080 whether to mark mips16 labels. Handle all labels, not just one.
2081 Force mips16 labels to be odd. Change all callers.
2082 (mips16_immed): Don't check for an odd branch target.
2083 (md_apply_fix): Don't check mips16 mode for a branch reloc.
2084 (mips16_extended_frag): Ignore the low bit in a branch target.
2085 (md_convert_frag): Likewise.
2086 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
2087 clearing insn_label.
2088 (mips_align, mips_flush_pending_output, s_cons): Likewise.
2089 (s_float_cons, s_gpword): Likewise.
2090 (s_align): Use insn_labels rather than insn_label.
2091 (s_cons, s_float_cons, s_gpword): Likewise.
2092 (mips_frob_file_after_relocs): New function.
2093 (mips_define_label): Rewrite to add to insn_labels list.
2094 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
2095 * ecoff.c (ecoff_build_symbols): If the size of a function comes
2096 out odd, increment it.
2097
2098 * config/tc-mips.c (append_insn): Only update prev_insn when not
2099 reordering if place is NULL.
2100
c0dea495
ILT
2101 * config/tc-mips.c (mips16_ip): Check for a missing expression
2102 when using the register indirect addressing mode.
2103
d4ba37af
JL
2104Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
2105
2106 * config/tc-mn10200.c (mn10200_insert_operand): Don't
2107 check 24bit operands for overflow.
2108 (check_operand): Likewise.
2109
868c3513
ILT
2110Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
2111
2112 * doc/as.texinfo (Section): Document how to use the .section
2113 pseudo-op for COFF and ELF.
2114
6259c65f
ILT
2115Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
2116
2117 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
2118
a677feeb
ILT
2119Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
2120
2121 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
2122 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
2123 store them. Adjust other RELAX_MIPS16 macros.
2124 (RELAX_MIPS16_DSLOT): Define.
2125 (RELAX_MIPS16_JAL_DSLOT): Define.
2126 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
2127 handling of whether previous instruction has a fixup. Set
2128 prev_insn_reloc_type.
2129 (mips_no_prev_insn): Clear prev_insn_reloc_type.
2130 (mips16_extended_frag): Use the right base address for a PC
2131 relative add or load.
2132 (md_convert_frag): Likewise. If a PC relative add or load is
2133 used, record the alignment for the section.
2134
08e17202
ILT
2135Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
2136
54815b9a
ILT
2137 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
2138 linkonce section into a reloc against the section symbol.
2139
8a8121d5
ILT
2140 * config/tc-mips.c (mips16_macro): Remove nop instructions after
2141 branch instructions.
2142
08e17202
ILT
2143 * config/tc-mips.c (md_begin): If configured for an embedded ELF
2144 system, don't set the section alignment to 2**4.
2145 (s_change_sec): Likewise.
2146 (append_insn): Call record_alignment for the section.
2147 (md_section_align): Don't align the section size for an embedded
2148 ELF system.
2149
73d25784
ILT
2150Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
2151
2152 * write.c (adjust_reloc_syms): Make sure that symbols are
2153 resolved; expression symbols may have been skipped.
8dd6fde3 2154 * config/obj-coff.c (fixup_segment): Likewise.
73d25784 2155
a460cd78
MM
2156Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2157
2158 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
2159 BFD_RELOC_24_PLT_PCREL relocation.
2160 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
2161
60b43c4b
MH
2162Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2163
2164 * config/tc-d10v.c (write_2_short): Remove code that called
2165 parallel_ok() when the programmer specified parallel instructions.
2166
42aa2435
JL
2167Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
2168
a460cd78
MM
2169 * config/tc-mn10300.c (md_assemble): Update to handle endianness
2170 issues correctly.
2171
42aa2435
JL
2172 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
2173 * config/tc-mn10300.c (md_assemble): Likewise.
2174
41a0ed22
ILT
2175Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
2176
9b2ac029
ILT
2177 * config/tc-mips.c (append_insn): Make sure there is enough room
2178 in a frag after a mips16 instruction to switch it with a jump
2179 instruction.
2180
41a0ed22
ILT
2181 * config/tc-mips.c (mips16_extended_frag): Give an error for an
2182 attempt to use a non absolute symbol in an extending frag.
2183
dc1f8a21
JL
2184Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
2185
2186 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
2187 * config/tc-mn10200.h: Likewise.
2188
102633ce
ILT
2189Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
2190
a7dd20e8
ILT
2191 * app.c (do_scrub_chars): At the end of a C comment, pass space to
2192 UNGET rather than PUT. Set old_state before setting state to -2.
2193
559c664a
ILT
2194 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
2195 when extending because the value is exactly maxtiny + 1.
2196
8728fa92
ILT
2197 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
2198 arguments, and store them. Adjust other RELAX_MIPS16 macros.
2199 (RELAX_MIPS16_USER_SMALL): Define.
2200 (RELAX_MIPS16_USER_EXT): Define.
2201 (mips16_small, mips16_ext): New static variables.
2202 (append_insn): Pass mips16_small and mips16_ext to
2203 RELAX_MIPS16_ENCODE.
2204 (mips16_ip): Set mips16_small and mips16_ext.
2205 (mips16_immed): Don't check mips16_autoextend.
2206 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
2207
102633ce
ILT
2208 * write.c (write_relocs): Print an error for an out of range
2209 fixup, rather than calling abort.
2210
2211 * as.c (main): Unlink the output file if there are errors while
2212 generating the fixups.
2213
15e69f98
ILT
2214Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
2215
f74ba7a3
ILT
2216 * config/tc-mips.c (mips16_extended_frag): Don't call
2217 S_GET_VALUE.
2218 (md_convert_frag): Call resolve_symbol_value before calling
2219 S_GET_VALUE, and don't add in the frag address.
2220
15e69f98
ILT
2221 * config/tc-mips.c (mips16_immed): Add file and line parameters,
2222 and use them when reporting errors. Change all callers.
2223
ca82e4eb
JL
2224Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
2225
2226 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
2227 Remove '$' prefixing for registers.
2228
f787a8d9 2229Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
6cc03ed3 2230
f787a8d9
MH
2231 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
2232 is initialized before using it.
2233 (d10v_cleanup): No longer uses its argument, so make it void.
6cc03ed3 2234
f787a8d9
MH
2235 * config/tc-d10v.h (d10v_cleanup): Change prototype.
2236
00a69b89
ILT
2237Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
2238
2239 * write.c (fixup_segment): Don't discard the symbol for a PC
2240 relative fixup to an absolute symbol.
2241
996bee90
MH
2242Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2243
2244 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
2245 with multiple sections.
2246
943321c0
ILT
2247Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
2248
2249 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
2250 no-mips-16 to no-mips16.
2251 (s_mipsset): Accept .set mips16 and .set nomips16.
2252
8b1e9f12
MM
2253Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2254
2255 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
2256 argument, and check for +/- constant following the suffix, folding
2257 it into the expression.
2258 (ppc_elf_cons): Change ppc_elf_suffix calls.
2259 (md_assemble): Ditto.
2260 (shlib): Replace boolean mrelocatable with enumeration shlib.
2261 (md_parse_option): Discriminate between PIC style shared libraries
2262 and -mrelocatable.
2263 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
2264 libraries.
2265
b61802e7
MM
2266Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2267
2268 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
2269 change the comment characters.
2270
2271 * config/tc-ppc.c (comment_chars): Delete in favor of
2272 tc_comment_chars.
2273 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
2274 comment chars.
2275 (ppc_comment_chars): Select appropriate comment chars by default.
2276 (msolaris): New flag for -m{,no-}solaris.
2277 (md_parse_option): Recognize -K pic. Add support for
2278 -m{,no-}solaris.
2279 (md_show_usage): Update.
2280 (md_begin): Do not set ELF flags if Solaris.
2281 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
2282 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
2283
2284Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
2285
2286 * as.c (main): Correct handling of flag_always_generate_output.
2287
5840a0e5
JL
2288Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
2289
a9f2e3e2
JL
2290 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
2291 fx_offset, not fx_addnumber.
2292
5840a0e5
JL
2293 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
2294 reloc adjustments.
2295
b608274a
ILT
2296Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
2297
2298 * config/tc-i386.c: Correct misspelling: balenced to balanced.
2299
caeea0b4
ILT
2300Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
2301
2302 * config/tc-mips.c (md_section_align): Check for an alignment of
2303 4, not an alignment of 16. Corrects August 7 patch.
2304
cc5703cd
ILT
2305Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
2306
775c64a9
ILT
2307 * configure, conf.in: Rebuild with autoconf 2.12.
2308
c830c9ea
ILT
2309 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
2310 alignment is specified.
2311
cc5703cd
ILT
2312 Add support for mips16 (16 bit MIPS implementation):
2313 * config/tc-mips.c: Extensive additions for mips16 support, not
2314 listed here.
2315 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
2316 (insn_uses_reg): Change last parameter to an enum.
2317 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
2318 (md_relax_frag): Define as mips_relax_frag.
2319 (mips_relax_frag): Declare.
2320 (struct mips_cl_insn): Add use_extend and extend fields.
2321 (tc_fix_adjustable): Define.
2322 * config/obj-elf.h (S_GET_OTHER): Define.
2323 (S_SET_OTHER): Define.
2324
3ab410cd
C
2325Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
2326
2327 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
2328 o and p operand specifiers.
2329
a0a2af4f
DE
2330Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
2331
2332 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
2333 (relax_segment, case rs_org): Move code inside braces. Move locals
2334 target,after inside too.
2335 (relax_segment, case rs_machine_dependent): Guts moved to ...
2336 (relax_frag): New function.
2337 Call md_prepare_relax_scan if defined.
2338 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
2339 M68K_AIM_KLUDGE.
2340
0671e7f6
JL
2341Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
2342
a0a2af4f
DE
2343 * config/tc-mn10300.c (address_registers): Use '$' as register
2344 prefix instead of '%'.
2345 (data_registers, other_registers, md_assemble): Likewise.
2346
f98905f1
JL
2347 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
2348 (data_registers, other_registers, md_assemble): Likewise.
2349
0671e7f6
JL
2350 * config/tc-mn10300.c (md_assemble): Correctly determine the
2351 correct location and type for each relocation.
2352 (md_pcrel_from): Simplify.
2353
5895d3f2
ILT
2354Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
2355
2356 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
2357 converted into branch around branch.
2358
d9a9c18f
JL
2359Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
2360
2361 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
2362 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
2363 pc-relative relocs.
2364 * config/tc-mn10300.c (md_begin): Set linkrelax.
2365 (md_assemble): Create fixups as needed.
2366 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
2367
5e9b714f
MM
2368Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2369
2370 * config/tc-d10v.c (parallel_ok): When automatically converting
2371 serial ops to parallel, do not consider a branch as the first
2372 instruction.
2373
7f02192d
JL
2374Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
2375
2376 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
2377
43d695a1
JL
2378Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
2379
2380 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
2381 via PARAMS.
2382 (check_operand): Likewise.
2383
228835a9
MM
2384Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2385
2386 * config/tc-d10v.c (parallel_ok): Branch and link instructions
2387 modify r13.
ec5e212b
MM
2388 (write_2_short): Call parallel_ok to check whether two short
2389 instructions the user requested execute in parallel, can be
2390 executed that way.
228835a9 2391
edb89bfc
MH
2392Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2393
2394 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
2395 allow a branch and link in parallel with an exe instruction.
2396
2397Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2398
2399 * doc/c-d10v.texi: Add info on @word modifier.
2400
cdde2f5c 2401Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
efba8af0
JL
2402
2403 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
2404 operands are assumed to be 32bits. Use "bits" field to hold the
2405 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
2406 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
2407 to be 32bits.
cdde2f5c 2408
bdd91d4f
JL
2409 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
2410 of a MN10300_OPERAND_SPLIT operand by operand->shift.
2411
cdde2f5c
JL
2412 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2413 MN10300_OPERAND_SPLIT.
2414
bfe5059c
JL
2415Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
2416
2417 * config/tc-mn10300.c (md_assemble): Insert operands into
2418 the extension part of the instruction if necessary.
2419 (mn10300_insert_operand): Accept pointer to extension word
2420 argument. Make insn a pointer argument too. Return type
2421 is now void. All callers changed.
2422
68328dc6
JL
2423Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
2424
2425 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2426 repeated register operands.
2427
9af40217
ILT
2428Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
2429
9a5acea8
ILT
2430 * doc/as.texinfo: Added section on reporting bugs.
2431
9af40217
ILT
2432 * config/tc-alpha.c: Change uses of void * to PTR. Change the
2433 alpha_macro emit field to expect a const argument, and change the
2434 arg field to be const. Fix some spacing to follow the GNU
2435 standard.
2436
2437Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
2438
2439 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
2440 (pca56) and 21264 (ev6) cpus.
2441 (md_apply_fix): Private relocation types are now negative.
2442 (alpha_force_relocation): Likewise.
2443 (tc_gen_reloc): Likewise.
2444 (emit_insn): Likewise.
2445 (emit_ldXu): Do the right thing when the hardware can do byte insns.
2446 (emit_stX): Likewise.
2447 (emit_sextX): Likewise.
2448
527dc0c9
ILT
2449Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
2450
2451 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
2452 a symbol found in a reloc.
2453
2454 * symbols.c (resolve_symbol_value): Improve the error message if
2455 an undefined symbol is used in an expression.
2456
fe7e5bdf
ILT
2457Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
2458
2459 * doc/internals.texi: Rewrite, and add a lot of documentation.
2460 * doc/Makefile.in (internals.info): New target.
2461
a334533c 2462start-sanitize-v850
193e4197
JL
2463Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
2464
2465 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
2466 against weak symbols.
2467
a334533c
JL
2468Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
2469
baf385b5
JL
2470 * config/tc-v850.c (md_assemble): Don't lose for relaxable
2471 addresses like .+6.
2472
2385d90a
JL
2473 * config/tc-v850.c (md_convert_frag): Make sure we insert the
2474 fixup at the right address within the frag.
2475
bc49fab8
JL
2476 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
2477 to an absolute value, instead increment it as needed.
2478
a334533c
JL
2479 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
2480 * config/tc-v850.c: Fix some indention problems.
2481 (md_relax_table): Define for D9->D99 branch displacement
2482 relaxing.
2483 (md_convert_frag): Do something useful instead of aborting.
2484 (md_estimate_size_before_relax): Likewise.
2485 (md_assemble): Note if the matching instruction has a relaxable
2486 operand. If it does, allocate frag with frag_var and don't
2487 do any fixups.
2488
2489end-sanitize-v850
a334533c
JL
2490Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2491
2492 * config/tc-d10v.h (md_cleanup): New function. This is needed to
2493 write out any buffered instructions when a ".end" is found.
2494
9051e56f
MH
2495Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2496
2497 * read.c (read_a_source_file): New hook md_cleanup().
2498
07f9de2a
ILT
2499Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
2500
2501 * write.c (fix_new_exp): Use make_expr_symbol to build an
2502 expression symbol for a complex fixup.
2503
3723a1a9
JL
2504start-sanitize-v850
2505Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
2506
d3bbd9dc
JL
2507 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
2508 hacks to improve parsing of complex hi, lo, zda, etc
2509 expressions.
2510 (md_assemble): Don't demand and eat a trailing ')' after finding
2511 a v850 relocation prefix. Sign extend the constant in a
2512 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
2513 operand.
2514 (parse_cons_expression_v850): Don't eat a trailing ')' after
2515 finding a v850 relocation prefix.
2516
10fba7f1
JL
2517 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
2518 (TC_CONS_FIX_NEW): Likewise.
2519 * config/tc-v850.c (parse_cons_expression_v850): New function.
2520 (cons_fix_new_v850): Likewise.
2521
3723a1a9
JL
2522 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
2523
2524end-sanitize-v850
20fbbb59
ILT
2525Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
2526
2527 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
2528 for an unknown relocation type.
2529
8ea15b86 2530start-sanitize-v850
7e96935e
JL
2531Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
2532
2533 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
2534 4 bytes of space.
2535
8ea15b86
JL
2536Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
2537
2538 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
2539 differently for movea & sst/sld insns.
2540
2541end-sanitize-v850
39176dfe
MM
2542Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2543
2544 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
2545 of instructions.
2546
87dd0a93
ILT
2547Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
2548
2549 * obj.h (struct format_ops): Add frob_file_after_relocs field.
2550 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
2551 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
2552 frob_file_after_relocs field.
2553 * config/obj-elf.c (elf_format_ops): Likewise.
2554 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
2555 including obj-elf.h.
2556
d12d1f6c
ILT
2557Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
2558
bf39474f
ILT
2559 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
2560 specially if not ELF.
2561 (md_apply_fix): Handle BFD_RELOC_64.
2562 (tc_gen_reloc): Handle BFD_RELOC_64.
2563
3030e864
ILT
2564 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
2565 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
2566 reloc hacking).
2567
d12d1f6c
ILT
2568 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
2569 Don't check S_GET_OTHER.
2570
b70795e9
ILT
2571Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
2572
538034cf
ILT
2573 * config/tc-mips.c (mips_ip): Accept an odd floating point
2574 register with l.s or s.s.
2575
b70795e9
ILT
2576 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
2577 .type pseudo-op.
2578 (obj_aout_type): New static function.
2579
b9d55d96
ILT
2580Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
2581
2582 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
2583
f964b01d 2584start-sanitize-v850
0f8e50bb
JL
2585Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
2586
548ddc71
JL
2587 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
2588 and sdaoff expressions.
2589
0f8e50bb
JL
2590 * write.c (fixup_segment): Don't add symbol value to addend if
2591 TC_V850 and OBJ_ELF.
2592 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
2593 pc-relative fixups.
2594
2595 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
2596 (md_pcrel_from_section): Likewise.
2597 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
2598
2599Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
f964b01d
JL
2600
2601 * config/tc-v850.c (md_pcrel_from): Delete unused function.
2602 (md_pcrel_from_section): New function.
2603 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
2604
2605end-sanitize-v850
0267c6c9
ILT
2606Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
2607
2608 * config/tc-mips.c (load_register): Add cast to offsetT when using
2609 a constant with &~.
2610
5d0cd0b8
ILT
2611Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
2612
2613 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
2614 (elf_frob_file_after_relocs): ... here. New function.
2615 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
2616 * write.c (write_object_file): Call *frob_after_relocs after the
2617 call to write_relocs.
2618
2619 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
2620
2621 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
2622 symbol, as this messes up linking. Instead, expand the recursive call
2623 inline and change up the appropriate bits to get the 0x8000 offset
2624 in the reloc addend.
2625
914f8998
ILT
2626Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
2627
1491f2ea
ILT
2628 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
2629 two symbols in the same segment to be adjusted.
2630
914f8998
ILT
2631 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
2632 * configure: Rebuild.
2633
f8a011cf
MM
2634Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2635
2636 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
2637 errors.
2638 (ppc_elf_validate_fix): Ditto.
2639 (md_assemble): Ditto.
2640 (ppc_tc): Ditto.
2641 (ppc_pe_section): Ditto.
2642 (ppc_frob_symbol): Ditto.
2643
1c3ae169
JL
2644Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
2645
3ab9337b
JL
2646 * config/mn10300.c (md_assemble): Pass an extra shift count
2647 to mn10300_insert_operand based on the opcode format.
2648 (mn10300_insert_operand): Accept and use extra shift count
2649 parameter.
2650
778c521b
JL
2651 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
2652 formats rather than hard-coded constants.
2653
1c3ae169
JL
2654 * config/tc-mn10300.c (md_assemble): Format D5 instructions
2655 are 7 bytes long. Write out instructions in big-endian format.
2656
a6be605a
JL
2657Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
2658
1c3ae169 2659 * config/tc-mn10300.c (md_assemble): Tweak further so
a6be605a
JL
2660 that all instructions are parsed correctly.
2661
5e1e8f23
ILT
2662Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
2663
2664 * as.h: Include libiberty.h.
2665 (xmalloc, xrealloc): Don't declare.
2666 * as.c: Don't include libiberty.h.
2667 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
2668 * config/tc-mips.c: Likewise.
2669 * messages.c: Likewise.
2670 (xstrerror): Don't declare.
2671 * xmalloc.c: Remove.
2672
1217102f
JL
2673Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
2674
2675 * config/tc-mn10300.h (pre_defined_registers) Remove.
2676 (system_registers, cc_names): Likewise.
2677 (address_registers, data_registers, other_registers): New register
2678 arrays.
2679 (register_name, system_register_name, cc_name): Remove.
2680 (mn10300_reloc_prefix): Likewise.
2681 (data_register_name): New function.
2682 (address_register_name, other_register_name): Likewise.
2683 (md_assemble): Rough cut at parsing operands. Remove lots of
2684 unwanted code.
2685 (md_apply_fix3): Disable for now.
2686
99e3ccb6
ILT
2687Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2688
2689 * config/tc-m68k.c (select_control_regs): New function, extracted
2690 out of m68k_init_after_args.
2691 (m68k_init_after_args): Use it.
2692 (mri_chip): Use it here as well to update set of allowed control
2693 regs for movec.
2694
0bd28bc4
ILT
2695Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
2696
2697 * config/obj-elf.c (elf_begin): New function.
2698 (obj_elf_section): Add the section symbol to the symbol table.
2699 * config/obj-elf.h (obj_begin): Define.
2700 (elf_begin): Declare.
2701 * as.c (perform_an_assembly_pass): Call obj_begin if it is
2702 defined.
2703
eb0dafdc
ILT
2704Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
2705
2706 * config/obj-coff.c (fixup_segment): Subtract the section address
2707 from a PC relative reloc if TC_M68K.
2708
76f841e6
ILT
2709Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
2710
2711 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
2712 .uaxword available even if not OBJ_ELF.
2713 (md_atof): Remove unused local variable wordP.
2714
0f91d763
JL
2715Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
2716
2717 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
2718 for Matsushita MN10x00 support.
2719 * configure.in: Recognize mn10x00-*-*
2720 * configure: Rebuilt.
2721
7c328bc7
ILT
2722Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
2723
2724 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
2725 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
2726 (load_expression): track clobbering of base reg before jmp/jsr.
2727 (s_alpha_file): pass case_hack flags and source filename via
2728 symbol table to bfd.
2729 * tc-alpha.h (TC_CONS_FIX_NEW): define
2730
fed13a5e
ILT
2731Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
2732
2733 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
2734 * configure: Rebuild.
2735
ffef69a3
ILT
2736Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
2737
a69e5977
ILT
2738 * read.c (s_macro): Warn if a macro has the same name as a
2739 pseudo-op.
2740 (s_space): In m68k MRI mode, align to a word boundary.
2741 * macro.c (define_macro): Add namep parameter. Change all
2742 callers.
2743 * macro.h (define_macro): Update declaration.
2744
bfc94743
ILT
2745 * as.c (show_usage): Print bug report address.
2746 (parse_args): Change version printing to match current GNU
2747 standards.
2748 * gasp.c (show_usage): Print bug report address.
2749 (main): Change version printing to match current GNU standards.
2750
0b810a6e
ILT
2751 * config/tc-m68k.c (init_table): Correct access control unit
2752 register numbers. From Ken Rose <rose@netcom.com>.
2753
ffef69a3
ILT
2754 * config/tc-alpha.c: Add some static function prototypes.
2755 (alpha_macros): Move to top of file. Make static.
2756 (alpha_num_macros): Move to top of file.
2757
8940a583
SG
2758start-sanitize-v850
2759Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
2760
2761 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
2762 generated by DWARF.
2763
2764end-sanitize-v850
2765Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
2766
2767 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
2768 and just call sprintf_vma.
2769
4fc2c99a
ILT
2770Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
2771
2772 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
2773
97f8e6ff
ILT
2774Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
2775
2776 * read.c (float_cons): Call md_flush_pending_output if it is
2777 defined.
2778
97f8e6ff
ILT
2779Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2780
2781 * config/tc-d10v.c (md_operand): Created. Allows operands to
2782 start with '#'.
2783 * config/tc-d10v.h (md_operand): Undefined.
2784
6e4f3f09
ILT
2785Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
2786
2787 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
2788 (md_assemble): A fixup width of '3' means a 1 byte reloc.
2789
72f70020
ILT
2790Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
2791
2792 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
2793 reloc for the i960 for a reloc in the same section. This undoes
2794 one of the two changes made Aug 19.
2795
ab299844
ILT
2796Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
2797
2798 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
2799 symbols to the position of the debugging information.
2800
15405999
ILT
2801Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
2802
2803 * expr.c (expr): Always use unsigned right shifts for >>.
2804
f17be658
JSC
2805Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
2806
2807 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
2808 slots when processing BL fixups.
2809
2810 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
2811 on the first half of the instruction.
2812
475c826b
ILT
2813Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
2814
1decafee
ILT
2815 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
2816 stabs expression, rather than giving an error.
2817
475c826b
ILT
2818 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
2819 the same file.
2820
8a3bdc3d
ILT
2821Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
2822
2823 * config/tc-mips.c (append_insn): Fill in the value for a constant
2824 jump, rather than creating a reloc.
2825
517078c1
ILT
2826Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
2827
d31a3f5e
ILT
2828 * config/tc-mips.c (append_insn): Don't swap an instruction which
2829 sets a condition code with an instruction which uses a condition
2830 code.
2831 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
2832 immediate value.
2833
ca296aab 2834 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
517078c1
ILT
2835 (mips_ip): Give a better error message if the ISA level is wrong.
2836 (md_parse_option): Recognize -mcpu=[v][r]5000.
2837
2838Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
2839
2840 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
2841 leading zeroes.
2842 (load_register): Ensure hi32 bits are not lost during lo32bit
2843 processing. Fix shift offset that was overflowing into the next
2844 instruction field. Add code to generate shorter sequences for
2845 constants with a single contiguous seqeuence of ones.
2846
5e6c6406
MH
2847Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2848
2849 * config/tc-d10v.c (d10v_dot_word): New function to support
2850 "@word" with the word pseudo-op.
2851 (md_apply_fix3): Cleanup and changes to support correct sizes
2852 for 16 and 18-bit relocs.
2853
df4021c1
DE
2854Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
2855
2856 * configure.in (sparc-*-aout): Set `em'.
2857 * configure: Regenerated.
2858 * config/te-sparcaout.h: New file.
2859 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
2860 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
2861 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
2862 (SPECIAL_CASE_{SETSW,SETX}): Define.
2863 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
2864 (md_begin): Delete setting of `target_big_endian'.
2865 (output_insn): New function.
2866 (md_assemble): Rewrite. Add `setx' support.
2867 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
2868 special cases.
2869 (md_atof): Add little endian support.
2870 (md_number_to_chars): Likewise.
2871 (md_apply_fix): Likewise.
2872 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
2873 (md_parse_option): Likewise.
2874 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
2875
cfc71c6d
ILT
2876Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
2877
2878 * ecoff.c (ecoff_new_file): New function.
2879 * ecoff.h (ecoff_new_file): Declare.
2880 * config/obj-ecoff.h (obj_app_file): Define.
2881
2882Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
2883
2884 * config/tc-alpha.c (load_expression): Bias the .lit8 section
2885 symbol by 32k so that our 16-bit signed offset can address the
2886 entire chunk. Reported by <matt@lkg.dec.com>.
2887
711254da
ILT
2888Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
2889
2890 * config/tc-mips.c (load_register): Remove unused variable tmp.
2891
1b68deb5
JSC
2892Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
2893
2894 * config/tc-mips.c (load_register): Remove unnecessary code that
2895 was causing the high 32bits of 64bit constants to be lost.
2896
1b68deb5
JSC
2897Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2898
2899 * config/tc-d10v.c: Added changes to support function
2900 pointers and "@word" syntax.
2901
c84615bc 2902start-sanitize-v850
05fd83ed
JL
2903Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
2904
2905 * config/tc-v850.c: Remove commented out and #if 0'd code.
2906 (v850_reloc_prefix): Provide prototype.
2907 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
2908 functions.
2909 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
2910 (md_assemble): Add default to case statement.
2911
270fd2ad
JL
2912Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
2913
2914 * config/tc-v850.c (md_assemble): Compute size of the instrction
2915 from the opcode.
74dd0c07 2916
2d56269e
JL
2917 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
2918 word fixups too.
2919
270fd2ad
JL
2920Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
2921
74dd0c07
JL
2922 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
2923 routines to fetch/store the updated instruction from/to memory.
2924 (v850_insert_operand): If the operand has a specialized insert
2925 routine, call it.
2926
c84615bc
C
2927Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
2928
2929 * config/tc-v850.c (reg_name_search): Align calling convention to
2930 be like identical function found in tc-ppc.c.
2931 (get_reloc): Removed.
2932 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
2933 (md_assemble): emit fixups.
2934 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
2935 displacement.
2936 (md_apply_fix3): handle fixups/relocs.
2937 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
2938
2939end-sanitize-v850
0f616818
ILT
2940Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
2941
2942 Add SH ELF support.
2943 * configure.in (sh-*-elf*): New target.
2944 * config/tc-sh.h (TARGET_ARCH): Define.
2945 (WORKING_DOT_WORD): Define.
2946 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
2947 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
2948 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
2949 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
2950 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
2951 (SUB_SEGMENT_ALIGN): Likewise.
2952 (RELOC_32): Don't define.
2953 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
2954 (target_big_endian): Declare if OBJ_ELF.
2955 (TARGET_FORMAT): Define if OBJ_ELF.
2956 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
2957 numbers throughout.
2958 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
2959 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
2960 (struct sh_count_relocs): Define.
2961 (sh_count_relocs): New static function, broken out of
2962 sh_frob_file. Add BFD_ASSEMBLER code.
2963 (sh_frob_section): Likewise.
2964 (sh_frob_file): Call sh_frob_section.
2965 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
2966 call section_symbol rather than seg_info (seg)->dot.
2967 (md_section_align): Add OBJ_ELF version.
2968 (SWITCH_TABLE_CONS): Define.
2969 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
2970 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
2971 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
2972 BFD_ASSEMBLER.
2973 (struct reloc_map): Define if not BFD_ASSEMBLER.
2974 (coff_reloc_map): Likewise.
2975 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
2976 (tc_gen_reloc): New function if BFD_ASSEMBLER.
2977 * write.c (write_relocs): Ifdef out fx_where test which triggers
2978 inappropriately for SH ELF.
2979 (write_object_file): Call tc_frob_file_before_adjust and
2980 obj_frob_file_before_adjust if they are defined.
2981
2982 * write.c (write_object_file): Use BFD_RELOC_16, not
2983 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
2984
2985 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
2986 code.
2987
20dbcd5c
MH
2988Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2989
2990 * config/tc-d10v.c (find_opcode): Fix problem with calculating
2991 branch sizes in across sections.
2992
05631de2
JL
2993start-sanitize-v850
2994Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
2995
2996 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
2997 hi0() too.
2998
2999Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
3000
3001 * config/tc-v850.c (md_begin): Deal with end of opcode
3002 table marker.
3003
3004end-sanitize-v850
e592d28f
MH
3005Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3006
3007 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
3008 the wrong opcode for cases like st2w where there are many forms
3009 of the same instruction.
3010
6fce31a6
ILT
3011Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
3012
3013 * expr.c (operand): If md_parse_name is defined, call it before
3014 calling symbol_find_or_make.
3015 * config/tc-ppc.h (md_parse_name): Define.
3016 (ppc_parse_name): Declare.
3017 * config/tc-ppc.c (reg_name_search): Add regs and regcount
3018 parameters.
3019 (register_name): Update call to reg_name_search.
3020 (cr_operand): New static variable.
3021 (cr_names): New static const array.
3022 (ppc_parse_name): New function.
3023 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
3024 cr_operand before calling expression.
3025
a58b037a
JL
3026Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
3027
3028 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
3029 hppa_gen_reloc_type call.
3030
3017263b
MH
3031Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3032
3033 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
3034 on addresses. Improved error messages.
3035 * doc/c-d10v.texi: Added docs for register pairs.
3036
f9085532
MH
3037Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3038
3039 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
3040 checking code.
3041
58275724
ILT
3042Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
3043
3044 * ecoff.c (init_file): Initialize fMerge to 1.
3045 (add_file): Restore old file merging code, but only merge files if
3046 fMerge is set.
3047 (ecoff_directive_loc): Clear fMerge field of current file.
3048 (ecoff_generate_asm_lineno): Likewise.
3049
b1c28263
MH
3050Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3051
3052 * doc/c-d10v.texi: Fix typo.
3053
c9a32d6c
JL
3054start-sanitize-v850
3055Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
3056
58275724
ILT
3057 * config/tc-v850.c (md_assemble): Correct bit masking for
3058 hi and lo expressions.
3059
88b47a85
JL
3060 * config/tc-v850.c (md_assemble): Rough cut at demanding
3061 "ep" or "r30" in sst and sld instructions.
3062 (md_apply_fix3): Don't abort. Just warn that we don't
3063 have relocs yet.
3064
c9f1b2d9
JL
3065 * config/tc-v850.c (CC_NAME_CNT): Define.
3066 (cc_name): New function.
3067 (md_assemble): Handle V850_OPERAND_CC correctly.
3068
d5974c57
JL
3069 * config/tc-v850.c (md_assemble): Don't forget to initialize
3070 "insn"!
3071
0e8f9bd1
JL
3072 * config/tc-v850.c (reg_name_search): Generalize to search
3073 any given register table.
3074 (register_name): Pass appropriate table and size to reg_name_search.
3075 (system_register_name): New function.
3076 (SYSREG_NAME_CNT): Define.
3077 (md_assemble): Handle operands which are system registers.
3078
c9a32d6c
JL
3079 * config/tc-v850.c (md_assemble): If we find a register, but the
3080 opcode doesn't want a register, then we don't have a match.
3081 (md_assemble): Get size of the instruction from the opcode table.
3082
3083end-sanitize-v850
eeef602f
ILT
3084Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
3085
8ee90d35
ILT
3086 * configure.in: Set and substitute HLDENV.
3087 * configure: Rebuild.
3088 * Makefile.in (HLDENV): New variable.
3089 (as.new): Use $(HLDENV).
3090
eeef602f
ILT
3091 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
3092 if an array dimension is not known.
3093
6be9ec8d
MH
3094Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3095
3096 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
3097 * doc/c-d10v.texi: Cleanup.
3098
c6aa56bc
C
3099start-sanitize-v850
3100Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
3101
3102 * config/tc-v850.c: New file.
3103 * config/tc-v850.h: New file.
3104 * configure (v850-*-elf): New target.
3105 * configure.in (v850-*-elf): New target.
3106
3107end-sanitize-v850
2c2e5626
MH
3108Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3109
3110 * doc/c-d10v.texi: New file.
3111 * doc/all.texi: Added D10V stuff.
3112 * doc/as.texinfo: Added D10V stuff.
3113
ab457c4c
MH
3114Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3115
3116 * config/tc-d10v.c: All references to defined symbols should
3117 now use the optimal instruction. .float and .double now work.
3118
d4e1b0be
ILT
3119Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
3120
3121 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
3122 section address for the i960 as is done for the i386.
3123
3124Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
3125
3126 * mpw-config.in: Add wildcards for config matching, add mips-*-*
3127 case, forward-include bfd/elf-bfd.h.
3128
b98b04ea
MH
3129Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3130
3131 * config/tc-d10v.c: Add additional information to the opcode
3132 table to help determinine which instructions can be done
3133 in parallel.
3134
b98b04ea
MH
3135Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
3136
3137 * config/tc-arm.c: Major changes to add Thumb support, with lots
3138 of change input from <rearnsha@armltd.co.uk>.
3139 Reverted to INSN_SIZE macro, rather than insn_size variable.
3140 (insns): Added ARM "bx" instruction support.
3141 (tinsns): Added Thumb instruction definition structure.
3142 (arm_tops_hsh): Added hash structure for Thumb opcodes.
3143 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
3144 (opcode_select,s_arm,s_thumb,s_code): Added.
3145 (decode_shift): Allow upper-case RRX.
3146 (do_ldst): Simpler halfword support.
3147 (do_ldmstm): Improved.
3148 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
3149 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
3150 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
3151 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
3152 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
3153 do_t_adr): Added.
3154 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
3155 (md_parse_option): Add support for -mthumb.
3156 (md_show_usage): Updated to reflect new command line option.
3157 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
3158 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
3159 fragment information to be held.
3160
3161Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
3162
3163 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
3164 non-null, but is a constant.
3165 (fix_new_arm): Call make_expr_symbol to make the expression symbol
3166 so that error reporting will work correctly.
3167
126436a8
ILT
3168Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
3169
3170 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
3171 against weak symbols.
3172
0e94336e
ILT
3173Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
3174
3175 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
3176 (ppc_force_relocation): Declare if OBJ_XCOFF.
3177 * config/tc-ppc.c (ppc_force_relocation): New function if
3178 OBJ_XCOFF.
3179
817e4f75
ILT
3180Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
3181
3182 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
3183
f494d503
MH
3184Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3185
3186 * config/tc-d10v.c: Fix problem with relocs.
3187
8d07d2c9
ILT
3188Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
3189
3190 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
3191 with nops if not in data_section or bss_section.
3192
f649d525
ILT
3193Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
3194
3195 Add support for openVMS/Alpha.
3196 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
3197 * config/obj-evax.c: New file.
3198 * config/obj-evax.h: New file.
3199 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
3200 defined.
3201 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
3202 defined. Add case for bfd_target_evax_flavour.
3203 * config/vms-a-conf.h: New file.
3204 * conf-a-gas.com: New file.
3205 * configure.in: Add target alpha-*-*vms*.
3206 * configure: Rebuild.
3207 * makefile.vms: New file.
3208 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
3209 Don't call ffs on openVMS/Alpha.
3210
5cece526
ILT
3211Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
3212
3213 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
3214 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
3215 and sbrk.
3216 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
3217 (NEED_DECLARATION_SBRK): New macro.
3218 * configure, conf.in: Rebuild.
3219 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
3220 (strstr): Declare if NEED_DECLARATION_STRSTR.
3221 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
3222
e592f0e6
ILT
3223Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
3224
d10df990
ILT
3225 * symbols.c (resolve_symbol_value): Handle addition or subtraction
3226 by a constant before entering the main switch. Reject attempts to
3227 apply an arithmetic function to non-absolute symbols, except for
3228 the special case of subtraction of two symbols in the same
3229 section.
3230
cf32394d
ILT
3231 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
3232 not to more than a 16 byte boundary.
3233
e592f0e6
ILT
3234 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
3235 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
3236 (tc_gen_reloc): If out of memory call as_fatal rather than
3237 assert. If no howto found, call as_bad_where rather than
3238 as_fatal. Change the error message slightly. Set howto to a
3239 non-NULL value in order to keep going.
3240
5d9a99a7
MH
3241Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3242
3243 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
3244
6a8e0036
JL
3245Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
3246
3247 * config/tc-h8300.c (get_specific): New operand "size" derived
3248 from ".b", ".w" and ".l" extensions. All callers changed. If
3249 the base instruction has no operands, then use the size to
3250 determine which specific instruction to use.
3251
3d7b0c49
ILT
3252Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
3253
3254 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
3255
10a14e36
ILT
3256Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
3257
3258 * config/tc-mips.c (md_section_align): Don't change addr if
3259 OBJ_ELF.
3260
470a679c
JL
3261Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
3262
3263 * config/tc-hppa.c: Revert yesterday's changes.
3264
b5cf6779
MH
3265Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3266
3267 * config/tc-d10v.c: Disable range checking on 16-bit values.
3268
159eb3c0
ILT
3269Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
3270
3271 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
3272 not just the ones that don't match.
3273
37e05f64
MH
3274Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3275
3276 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
3277
c479fc62
JSC
3278Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
3279
3280 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
3281 pre-cursor to adding Thumb support. Also added cpu_variant flag
3282 information to each of the asm_flg structures.
3283 (md_parse_option): Updated ARM7 parsing to allow 't' for
3284 thumb/halfword support, aswell as 'm' for long multiply.
3285 (md_show_usage): Updated help message.
3286 (md_assemble): Check that instruction flags are applicated to the
3287 current cpu variant.
3288 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
3289 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
3290 signextension instructions.
3291 (do_ldst): Generate halfword and signextension variants if
3292 mnemonic flags match.
3293 (ldst_extend): Do not allow shifts in the offset field of halfword
3294 or signextension instructions.
3295 (validate_offset_imm): Provide check on halfword and signextension
3296 immediate range.
3297 (add_to_lit_pool): Merge identical literal pool values.
3298
448b5aad
JL
3299Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
3300
3301 * config/tc-hppa.c (selector_table): Add 'E' selector.
3302 (cons_fix_new_hppa): Don't coke on e_esel.
3303 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
3304 to help generate exception handling tables.
3305 (md_apply_fix): Don't try to apply fixups with an e_esel
3306 selector.
3307 (hppa_fix_adjustable): Fixups with e_esel selectors
3308 are not adjustable.
3309
8dfb05cc
ILT
3310Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
3311
3312 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
3313 pseudo-ops.
3314
8544dc03
MH
3315Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3316
3317 * config/tc-d10v.c: Added lots of error checking. Added hacks
3318 to support accumulator shifts.
3319
5ca547dc
ILT
3320Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
3321
3322 * symbols.c (S_SET_EXTERNAL): Let .weak override.
3323 (S_CLEAR_EXTERNAL): Likewise.
3324 (S_SET_WEAK): Remove error; just let .weak override.
3325
35ad20a1
MH
3326Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3327
3328 * config/tc-d10v.c (md_assemble): Now handles multiline
3329 instructions.
3330
7c096652
MH
3331Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3332
3333 * config/tc-d10v.c: Fix packaging bug. Added range checking.
3334 Added kludge for divs instruction. Fixed minor problem with
3335 multiple text sections.
35ad20a1
MH
3336 * config/tc-d10v.h (d10v_cleanup): Change prototype.
3337
93050391
MH
3338Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3339
3340 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
3341 addresses to be right-shifted by 2.
3342
0ef32559
MH
3343Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3344
3345 * config/tc-d10v.c: Many changes to get relocs working.
3346 (register_name): No longer creates a symbol for register names.
3347 (pre_defined_registers): moved to opcodes/d10v-opc.c.
3348 (d10v_insert_operand): Now works correctly for either container.
3349 * config/tc-d10v.h (d10v_cleanup): Declare.
3350
97aca1bc
ILT
3351Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
3352
3353 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
3354 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
3355
6543a7fb
ILT
3356Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
3357
3358 * tc-alpha.c: Patches to track current minimum alignment to reduce
3359 the number of fragments created with frag_align.
3360 (alpha_current_align): New static variable.
3361 (s_alpha_text): Reset alignment to 0.
3362 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
3363 (s_alpha_stringer, s_alpha_space): New functions.
3364 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
3365 (alpha_cons_align): New function to replace both of them.
3366 (emit_insn): Only align if alpha_current_align is less than 2;
3367 reset alpha_current_align to 2.
3368 (s_alpha_gprel32): Likewise.
3369 (s_alpha_section): New function. Basically duplicate the other
3370 alpha section change hooks. Only define for ELF.
3371 (s_alpha_float_cons): Simplify alignment handling.
3372 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
3373 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
3374 Don't define the s_alpha_cons pseudo-ops. Do define
3375 s_alpha_stringer and s_alpha_space pseudo-ops.
3376 (alpha_align): Skip if less than current default alignment. Set
3377 default alignment.
3378 * tc-alpha.h (md_flush_pending_output): Remove.
3379 (md_cons_align): Add.
3380
3381 * tc-alpha.c: Add oodles of function description comments.
3382 (md_bignum_to_chars): Remove; there are no callers.
3383 (md_show_usage): Mention some more variants.
3384
091221ce
ILT
3385Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
3386
0b27ea39
ILT
3387 From Andrew Gierth <ANDREWG@microlise.co.uk>:
3388 * configure.in (sparc-*-sysv4*): New target.
3389 * configure: Rebuild.
3390
8dd07a84
ILT
3391 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
3392 uaxword to use s_uacons.
3393 (sparc_no_align_cons): New static variable.
3394 (s_uacons): New static function.
3395 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
3396 and return.
3397
3398 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
3399
cbe7dccb
ILT
3400 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
3401 5 with regard to shared libraries.
3402 * configure: Rebuild.
3403
091221ce
ILT
3404 * config/tc-m68k.c (m68k_ip): Use the correct length when
3405 allocating space for the unsupported architecture error message.
3406
05a8bf33
MM
3407Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3408
3409 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
3410
3411Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
7be9a312
MH
3412
3413 * config/tc-d10v.c: New file.
3414 * config/tc-d10v.h: New file.
3415 * configure (d10v-*-elf): New target.
3416 * configure.in (d10v-*-elf): New target.
7be9a312 3417
10c9620d
MM
3418Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3419
3420 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
3421
0ee09671
ILT
3422Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
3423
3424 * config/tc-alpha.c (alpha_align): Change fill parameter
3425 to a pointer. Take NULL as 0 or nop depending on section. Change
3426 all callers.
3427 (s_alpha_align): Rename local variables.
3428
3429 * doc/as.texinfo (.align): Document action of omitted
3430 fill parameter.
3431
3128726c
ILT
3432Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
3433
3434 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
3435 when an unsupported PC relative reloc is seen, rather than calling
3436 abort.
3437
3438 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
3439 Instead, check state when '#' comment is seen.
3440
7f003b7f
ILT
3441Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
3442
a8aed9dd
ILT
3443 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
3444 OBJ_MAYBE_ELF.
3445 (tc_gen_reloc): If fixup was changed to be PC relative, change
3446 reloc type accordingly. Use name of reloc in error message.
3447
a5a78175
ILT
3448 * as.h: Don't define const or volatile.
3449 * flonum.h: Don't define const.
3450
7f003b7f
ILT
3451 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
3452 if fx_pcrel is set. Correct setting the addend case in the
3453 OBJ_ELF case (from Andreas Schwab
3454 <schwab@issan.informatik.uni-dortmund.de>).
3455 (md_show_usage): Correct -mfc5200 to -m5200.
3456
8d20a0a8
C
3457Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3458
910d7df2
C
3459 * doc/c-m68k.texi: Document -m5200 flag.
3460 * doc/as.texinfo: Likewise.
3461
8d20a0a8
C
3462 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
3463 scale factor.
3464
c0b34702
ILT
3465Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
3466
3467 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
3468 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
3469
45c85bcb
ILT
3470Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
3471
6624477c
ILT
3472 * Makefile.in (VERSION): Set to cygnus-2.7.1.
3473
45c85bcb
ILT
3474 * Released binutils 2.7.
3475
fc636a52
JSC
3476Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
3477
3478 * config/tc-mips.c (mips_ip): Only perform range check when
3479 dealing with O_constant expressions.
3480
d41d2ccc
C
3481Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3482
3483 * m68k-parse.h (m68k_register): Add new coldfile control
3484 registers.
3485
3486 * config/tc-m68k.c (mcf5200_control_regs): New variable,
3487 array of control registers for the coldfire.
3488 (cpu_of_arch): Added mcf5200.
3489 (archs): Added mcf5200.
3490 (init_table): Add new control registers.
3491 (m68k_ip): Added support for new control registers.
3492 (m68k_init_after_args): Likewise.
3493
3494 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
3495
5af96dce
ILT
3496Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
3497
c5d8f96e
ILT
3498 * read.h (is_it_end_of_statement): Declare.
3499 * read.c (is_it_end_of_statement): Remove declaration.
3500
3501 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
3502 within &&.
3503 (md_assemble): Fix handling of @l with an unsigned constant. Add
3504 default case to reloc switch.
3505
ac76c7e9
ILT
3506 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
3507
5af96dce
ILT
3508 Based on patches from Tom Quiggle <quiggle@sgi.com>:
3509 * ecoff.c (last_lineno): New static variable.
3510 (add_procedure): Set last_lineno.
3511 (ecoff_directive_loc): Likewise.
3512 (ecoff_generate_asm_lineno): Likewise.
3513 (ecoff_fix_loc): New function.
3514 * ecoff.h (ecoff_fix_loc): Declare.
3515 * config/tc-mips.c (append_insn): When inserting nops, and using
3516 ECOFF debugging, call ecoff_fix_loc.
3517
b9bddc84
JL
3518Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
3519
3520 * config/tc-h8300.c (build_bytes): If an operand type is
3521 marked as SRC_IN_DST retrieve it from the "destination" op.
3522
379c2fb4
ILT
3523Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
3524
69c1de90
ILT
3525 * configure.in (arm-*-riscix*): Set emulation to riscix.
3526 * configure: Rebuild.
3527 * config/te-riscix.h: New file to define TE_RISCIX.
3528
379c2fb4
ILT
3529 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
3530
3531Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
3532
3533 * Makefile.in (config.status): Just run config.status as other
3534 tools do.
3535
c611cd82
SS
3536Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
3537
3538 * mpw-config.in (TARGET_OS): Add definition to conf.
3539
fbf011f2
ILT
3540Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
3541
3542 * config/tc-mips.c (append_insn): Parenthesize
3543 cop_interlocks expressions.
3544
3545Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
3546
3547 * listing.c (listing_print): Close the listing file if it is not
3548 stdout. Close the other files opened for the listing.
681dbbc0
ILT
3549
3550 * config/tc-sparc.h (md_cons_align): Define.
3551 (sparc_cons_align): Declare.
3552 (HANDLE_ALIGN): Define.
3553 (sparc_handle_align): Declare.
3554 * config/tc-sparc.c (sparc_cons_align): New function.
3555 (sparc_handle_align): New function.
3556 * read.c (cons_worker): Call md_cons_align if it is defined.
3557
3558 * as.h (struct frag): Add fr_file and fr_line fields.
3559 * frags.c (frag_new): Set fr_file and fr_line.
3560 (frag_var): Likewise.
3561 (frag_variant): Likewise.
3562
7e027ce6
ILT
3563 * as.h (struct frag): Remove unused align_mask and align_offset
3564 fields.
3565
f9b990cd
ILT
3566 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
3567 From <uddeborg@carmen.se>.
3568
9b4b98bd
ILT
3569Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
3570
67b48b58
ILT
3571 * configure.in (mips-*-osf*): New target.
3572 * configure: Rebuild.
3573
9b4b98bd
ILT
3574 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
3575
344a8d61
JSC
3576Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
3577
3578 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
3579 between co-processor comparisons and branches for the VR4300.
3580
1c94de4d
JM
3581Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3582
3583 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3584 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
3585 (docdir): Removed.
3586 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
3587 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
3588 includedir): Use autoconf set values.
3589 (docdir): Removed.
3590
b290fd25
ILT
3591Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
3592
1c94de4d
JM
3593 * listing.c (listing_eject): Don't do anything if listing is 0.
3594 (listing_list): Likewise.
3595 (listing_source_line): Likewise.
3596 (listing_title): Don't save title if listing is 0.
3597 (listing_source_file): Check listing rather than listing_tail.
3598
b290fd25
ILT
3599 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3600 using shared libraries.
3601 * configure: Rebuild.
3602
3603Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
3604
3605 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
3606 absolute expression if a relocation type was specified.
3607
644edced
ILT
3608Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
3609
3610 * configure.in: Add support for *-*-rtems* configurations.
3611 * configure: Rebuild.
3612
df586de2
ILT
3613Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
3614
3615 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
3616 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
3617 opcodes library for alpha.
3618 * configure: Rebuild with autoconf 2.10.
3619 * config/tc-alpha.c: Substantial rewrite to add ELF support and
3620 use new opcode table.
3621 * config/tc-alpha.h (md_undefined_symbol): Don't define.
3622 (LOCAL_LABEL): Define differently if OBJ_ELF.
3623 (FAKE_LABEL_NAME): Define if OBJ_ELF.
3624 * config/alpha-opcode.h: Remove.
3625 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
3626 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
3627 include/opcode/alpha.h rather than config/alpha-opcode.h.
3628
7ca8e36e
ILT
3629Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
3630
edec3111
ILT
3631 * config/obj-aout.c (obj_emit_relocations): Give an error if the
3632 relocation symbol was not resolved.
3633 * config/obj-coff.c (do_relocs_for): Likewise.
3634
7ca8e36e
ILT
3635 * write.c (adjust_reloc_syms): Refetch the symbol section after
3636 calling S_GET_VALUE, since it may have changed.
3637
3638 * expr.c (struct expr_symbol_line): Define.
3639 (expr_symbol_lines): New static variable.
3640 (make_expr_symbol): Add entry to expr_symbol_lines.
3641 (expr_symbol_where): New function.
3642 * expr.h: Use extern on function declarations.
3643 (expr_symbol_where): Declare.
3644 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
3645 rather than printing the meaningless name of an expression
3646 symbol.
3647
214f540d
KR
3648Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
3649
3650 * config/tc-i386.c (md_number_to_chars): Deleted.
3651 * config/tc-i386.h (md_number_to_chars): New macro.
3652
3653 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
3654 the file.
3655 (load_symbol_address, load_expression): Use build_mem.
3656 (build_operate): New function.
3657 (emit_addq_r): Use it.
3658
3659 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
3660
3661 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
3662
3663 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
3664
3665 * config/tc-vax.h (NOP_OPCODE): Define.
3666
3667 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
3668
3669 * config/obj-vms.h (S_IS_COMMON): Define.
3670 (S_IS_LOCAL): Check for \002 as well as \001.
3671 (LONGWORD_ALIGNMENT): New macro.
3672 (SUB_SEGMENT_ALIGN): Use it.
3673
3674 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
3675
3676 * config/vms-conf.h: Reconcile with conf.in.
3677
7b9b1eb2
ILT
3678Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
3679
793f9558
ILT
3680 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
3681 defined.
3682
84577dde
ILT
3683 * doc/as.texinfo: Document that any number of hex digits can
3684 follow \x.
3685
0d6cae1e
ILT
3686 * as.c (struct defsym_list): Define.
3687 (defsyms): New static variable.
3688 (parse_args): Just put --defsym arguments on defsyms list, rather
3689 than defining them.
3690 (main): Define defsyms after output file is created.
3691
6e3f7f1b
ILT
3692 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
3693 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
3694
8095b665
ILT
3695 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
3696 insn_error rather than calling check_absolute_expr.
3697
3698 * as.c (emulation_name): Remove unused static variable.
3699 (default_emul_bfd_name): Add return NULL to avoid warning.
3700 * ecoff.c (ecoff_stab): Remove unused variables name and
3701 name_end.
3702 * frags.c (frag_new): Remove unused variable tmp.
3703 * hash.c (hash_grow): Parenthesize + within <<.
3704 (hash_print_statistics): Use %lu, not %d, to print unsigned
3705 long variables.
3706 * messages.c: Include "libiberty.h".
3707 (fprint_value): Add cast to avoid printf warning.
3708 (sprint_value): Likewise.
3709 * read.c: Include "ecoff.h".
3710 (emit_expr): Add casts to avoid printf warnings.
3711 * read.h: Use extern for function declarations.
3712 (pop_insert): Declare.
3713 * stabs.c: Include "ecoff.h".
3714 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
3715 former_last_fragP, and new_fragP.
3716 * subsegs.h (subsegs_print_statistics): Declare.
3717 * symbols.c (debug_verify_symchain): Change macro to discard
3718 arguments.
3719 * write.c (dump_section_relocs): Likewise.
3720 * write.h: Use extern for function declarations.
3721 (write_print_statistics): Declare.
3722 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
3723 warning.
3724 * config/e-mipself.c (mipself_bfd_name): Likewise.
3725 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
3726
9ee759fc
ILT
3727 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
3728 emit relocations against external symbols.
3729
faa3f539
ILT
3730 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
3731 message if bfd_reloc_type_lookup fails, rather than calling
3732 assert.
3733
7b9b1eb2
ILT
3734 * config/tc-alpha.c (alpha_force_relocation): Add
3735 BFD_RELOC_12_PCREL to switch.
3736
3737Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
3738
3739 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
3740 TE_PE (Lfoo, not .Lfoo).
3741
d9453233
ILT
3742Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
3743
24b018ee
ILT
3744 * read.c (s_fill): Don't warn about a zero repeat count.
3745
c674dcaa
ILT
3746 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
3747 coprocessor register.
3748
d9453233
ILT
3749 * config/tc-i386.c (md_assemble): When checking the size of a
3750 register to set the size of an instruction, do a bitwise and with
3751 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
3752 or Reg16.
3753
3d0afe12
JL
3754Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3755
3756 * config/tc-h8300.c (parse_reg): Tweak error messages.
3757 (build_bytes): Likewise.
3758 (skip_colonthing): Handle :32 suffix.
3759 (get_specific): Promote L_24 to L_32 if it makes a match.
3760 Don't always promote L_8 to L_16.
3761 (do_a_fix_imm): Clean up L_32 and L_24 handling.
3762
3d0afe12
JL
3763 * config/tc-h8300.c (Smode): New variable.
3764 (h8300hmode): Turn off Hmode.
3765 (h8300smode): New function. Turn on Smode and Hmode.
3766 (md_pseudo_table): New ".h8300s" pseudo-op.
3767 (parse_reg): Handle "exr" register.
3768 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
3769 Handle "mach" and "machl" operands for ldmac.
3770 (get_specific): Handle "stm.l" and "ldm.l".
3771 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
3772 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
3773 (Smode): Declare.
3774
370181a2
C
3775Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3776
3777 * doc/as.texinfo: Reorder chapter of machine dependent options so
3778 that it is sorted by chip name.
3779
3780 * doc/as.texinfo: Use consistant spelling of Vax.
3781 * doc/c-vax.texi: Likewise.
3782
02d4dd87
JL
3783Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3784
3785 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
3786 pseudo ops.
3787 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
3788 (md_apply_fix): Likewise.
3789 (pa_try): New function.
3790 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
3791
b81231b7
JL
3792Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3793
3794 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
3795 (pa_level): New function.
3796
fe8d0ff3
ILT
3797Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
3798
3799 * listing.c (listing_newline): Don't do anything if listing is 0.
3800
3801Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
3802
3803 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
3804 symbol_create, not symbol_new.
3805
9bec2a42
ILT
3806Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
3807
3808 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
3809 absolute symbol unless TC_FORCE_RELOCATION returns true.
3810
3811 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
3812 version.
3813 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
3814 the symbol to a pointer. Don't set previous_file_symbol.
3815 Simplify symbol list rearrangement.
3816 (coff_frob_symbol): Don't do anything with C_FILE symbols.
3817 (coff_adjust_symtab): Don't check previous_file_symbol.
3818
c992cf9b
MM
3819Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3820
3821 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
3822 directive.
3823 (md_pseudo_table): Add ppc_elf_lcomm.
3824
1ba76615 3825Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
92e61d31
ILT
3826
3827 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
3828 d0{24:1},d0' works without an immediate prefix on the bit numbers.
3829 (md_begin): Add digits to alt_notend_table.
3830 (md_parse_option): Make s a const pointer.
1ba76615 3831
b91e85c2
ILT
3832 * config/tc-sparc.c (md_pseudo_table): Add "empty".
3833 (s_empty): New static function.
3834
e789e620
ILT
3835 * config/obj-coff.c (struct filename_list): Only define if not
3836 BFD_ASSEMBLER.
3837 (filename_list_head, filename_list_tail): Likewise.
3838 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
3839 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
3840 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
3841 have a section of N_ABS rather than N_DEBUG. If we do a merge,
3842 remove the new symbol from the list.
3843 (obj_coff_endef, both versions): Call tag_insert even if there is
3844 an old symbol with the same name, if the old symbol does not
3845 happen to be a tag.
3846 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
3847 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
3848 symbol that will be moved to the end of the symbol list.
3849 (coff_adjust_section_syms): Always call section_symbol for .text,
3850 .data, and .bss.
3851 (coff_frob_section): Likewise. Also, remove unused variable
3852 strname.
3853
0670452e
ILT
3854 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
3855 manipulating frags directly.
3856 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
3857 defined.
3858
41822c41
ILT
3859 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
3860 whether the next character is '*' before checking whether we are
3861 at the start of a line. Permit LINE_COMMENT_START to start a
3862 comment in state 1 (seen some whitespace) as well, to match the
3863 documentation.
3864
1ba76615
ILT
3865 * gasp.c (do_align): Permit a fill value for .align.
3866
ed381b67
JW
3867Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
3868
3869 * read.c (next_char_of_string): Warn if a newline is seen in the
3870 middle of a string. Call bump_line_counters when appropriate.
3871
3872Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
3873
3874 * symbols.c (colon): Use LOCAL_LABEL.
3875
2c7aeec6
TT
3876Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
3877
3878 * Makefile.in (install): Don't check to see if tooldir exists.
3879 Make $(tooldir) and $(tooldir)/bin.
3880
527b8324
MM
3881Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3882
3883 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
3884 default.
3885
3b426f5a
ILT
3886Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
3887
3888 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
3889 insn_error. Don't put the string "ERROR" in insn_error. Set
3890 insn_error rather than calling as_warn for an unsupported opcode.
3891
9c44af60
ILT
3892Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
3893
3894 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
3895 before permitting -64.
3896 * output-file.c (output_file_create): Remove duplicate
3897 bfd_perror.
3898
98bfd087
ILT
3899Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
3900
87178180
ILT
3901 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
3902 section rather than a .reginfo section.
3903 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
3904 information.
3905
98bfd087
ILT
3906 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
3907 bit value with the high bit set.
3908
b95bee13
ILT
3909Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
3910
3911 * read.c (s_lcomm): Set section flags for .sbss section.
3912
3913 * config/tc-mips.c (mips_64): New static variable.
3914 (mips_target_format): If mips_64, return elf64 targets rather than
3915 elf32 ones.
3916 (md_longopts): Add "32" and "64".
3917 (md_parse_option): Handle -32 and -64.
3918 (md_show_usage): Mention -32 and -64.
3919 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
3920 a 4 byte one.
3921
1facd5f0
MM
3922Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3923
98bfd087
ILT
3924 * config/tc-ppc.c (comment_chars): Make '!' a comment character
3925 for Solaris compatibility.
d0e1c803 3926
1facd5f0
MM
3927 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
3928 .stabd with 4 arguments into a .stabn.
3929
a40aee38
ILT
3930Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
3931
3932 * config/tc-mips.c (macro): When passing X_add_number to
3933 macro_build, cast it to int first.
3934
943bdfdc
ILT
3935Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
3936
54388b85
ILT
3937 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
3938 created by emit_expr.
3939
943bdfdc
ILT
3940 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
3941 as_perror rather than assert.
3942
9b61d62b
ILT
3943Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
3944
3945 * config/tc-mips.c (mips_ip): Mark sections created to hold
3946 floating point information as read only.
3947
e30c0076
MM
3948Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
3949
3950 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
3951
63cafcef
MM
3952Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3953
adeab39b
MM
3954 * read.c (potable): Add .skip as a synonym for .space.
3955
63cafcef
MM
3956 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
3957 4 arguments, providing the 4th argument is 0, to allow
3958 compatibility with the Solaris assembler.
3959
3960Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
3961
3962 * config/tc-sh.h (struct sh_segment_info_type): Define.
3963 (TC_SEGMENT_INFO_TYPE): Define.
3964 (sh_frob_label): Declare.
3965 (tc_frob_label): Define.
3966 (sh_flush_pending_output): Declare.
3967 (md_flush_pending_output): Define.
3968 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
3969 reloc before the instruction if necessary.
3970 (sh_frob_label): New function.
3971 (sh_flush_pending_output): New function.
3972 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
3973 when looking for the reloc for the target of .uses.
3974 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
3975 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
3976 emitted.
3977 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
3978 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
3979 the absolute symbol.
3980
3981 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
3982 TC_SEGMENT_INFO_TYPE is defined.
3983
3ea36b53
ILT
3984Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
3985
3986 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
3987 matches the register size.
3988
ecb9b1ca
JL
3989Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
3990
3991 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
3992 fx_done set.
3993 (do_relocs_for): Likewise.
3994 (fixup_segment): Don't just quit if linkrelax is set. Try to
3995 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
3996 nonzero.
3997
f122568e
MM
3998Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3999
4000 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
4001 relative relocations with -mrelocatable. Also allow unfixed
4002 relocs in .ex_shared.
4003
6648d3ae
ILT
4004Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
4005
4006 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
4007 non-zero before assuming this is a long file name.
4008 (w_strings): Likewise.
4009 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
4010
4011 * config/obj-coff.c (w_strings): Move declaration of i inside
4012 #ifdef block which uses it.
4013
c47fc401
JL
4014Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
4015
4016 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
4017 "relaxmode". Output relocs which identify various relaxing
4018 possibilities for mov.[bwl] instructions.
4019 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
4020
9ea82743
DE
4021Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
4022
4023 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
4024 (MD_APPLY_FIX3): Define.
4025 * config/tc-arm.c (my_get_expression): Only watch for bad segments
4026 if OBJ_AOUT.
4027 (md_apply_fix3): Renamed from md_apply_fix.
4028 If pcrel reloc and symbol is in different section, undo effects
4029 of md_pcrel_from.
4030
ab7db73b
JL
4031Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
4032
4033 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
4034 any reloc with an LR% or RR% field selector for SOM.
4035
c9324fcd
ILT
4036Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
4037
4038 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
4039 variables.
4040
d4d7d98c
ILT
4041Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
4042
4043 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
4044 SF_GET_STATICS set.
4045 (yank_symbols): Likewise.
4046
8fe2ec52
ILT
4047Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
4048
7681eb9d
ILT
4049 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
4050 BFD_ASSEMBLER, add name field.
ba97ba7e
ILT
4051 * config/obj-coff.c: Include "libiberty.h".
4052 (coff_header_append): Handle long section names.
7681eb9d
ILT
4053 (crawl_symbols): Just use the name field for the symbol name,
4054 without worrying about null byte termination.
4055 (w_strings): Handle long section names.
4056 (write_object_file): Likewise. Also, use the name field, rather
4057 than scnhdr.s_name.
4058 (obj_coff_add_segment): Permit long section names.
4059 (obj_coff_init_stab_section): Use the name field, rather than
4060 scnhdr.s_name.
4061 (adjust_stab_section): Likewise.
4062 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
4063
8fe2ec52
ILT
4064 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
4065 (mem_fmt): Likewise.
4066 (md_apply_fix): Don't check fx_im_disp field.
4067
556829bc
ILT
4068Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
4069
f9e36fc6
ILT
4070 * configure.in: Add * after sparc*-*-vxworks.
4071 * configure: Rebuild.
4072
556829bc
ILT
4073 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
4074 define it to comment_chars. Use tc_comment_chars rather than
4075 comment_chars.
4076 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
4077 * config/tc-m68k.h (tc_comment_chars): Define.
4078 (m68k_comment_chars): Declare.
4079 * config/tc-m68k.c (m68k_comment_chars): Rename from
4080 comment_chars. Change into a pointer rather than an array.
4081 (md_longopts): Add "bitwise-or".
4082 (md_parse_option): Handle OPTION_BITWISE_OR.
4083 (md_show_usage): Mention --bitwise-or.
4084 * doc/c-m68k.texi: Document --bitwise-or.
4085
116bf30f
ILT
4086Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
4087
912e4245
ILT
4088 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
4089 in 68000 mode.
4090
116bf30f
ILT
4091 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
4092 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
4093 correct handling of input line pointer, and call
4094 demand_empty_rest_of_line.
4095
58c9a12b
DE
4096Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
4097
4098 * config/tc-sparc.c (in_bitfield_range): New static function.
4099 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
4100 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
4101 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
4102 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
4103 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
4104
ff406bd3
ILT
4105Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
4106
4107 * config/obj-coff.c: BFD_ASSEMBLER:
4108 (coff_last_bf): New static variable.
4109 (coff_frob_symbol): Set endndx of a .bf symbol.
4110 Non BFD_ASSEMBLER:
4111 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
4112 (last_bfP): New static variable.
4113 (yank_symbols): Set endndx of a .bf symbol.
4114
47d12b2c
MM
4115Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4116
4117 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
4118 and -s options. Add -be for good measure.
4119
3ce7f41a
ILT
4120Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
4121
4122 * read.c (s_space): Support non-constant fill value. Handle fill
4123 value correctly for a size other than 1.
4124
865447db
DE
4125Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
4126
4127 * config/tc-arm.c (my_get_float_expression): Update call to
4128 gen_to_words, X_PRECISION changed from 6 to 5.
4129
159e6ef8
MM
4130Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4131
4132 * config/tc-ppc.c (register_name,reg_name_search): Move register
4133 name lookup from PE specific code to all targets. Add support for
4134 -mregnames/-mno-regnames to control whether register names are
4135 expanded or not.
4136 (md_assemble): Call register_name for all platforms.
4137 (md_parse_option): Add support for -mregnames/-mno-regnames.
4138
4139 * configure.in (powerpcle*-*-solaris): Add support.
4140 (powerpc*-*-linux): Ditto.
4141 * configure: Regenerate.
4142
4143 * config/ppc-sol.mt: New config file for PowerPC Solaris.
4144
7a15a226
ILT
4145Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
4146
aa9e2dbe
ILT
4147 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
4148 be associated with a single %lo reloc.
4149
7a15a226
ILT
4150 * config/tc-mips.c (load_address): Cast X_add_number to valueT
4151 before comparing against MAX_GPREL_OFFSET, so that negative
4152 numbers are handled correctly.
4153 (macro): Likewise.
4154
65feb78d
ILT
4155Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
4156
ed94c2b8
ILT
4157 * config/tc-sparc.c (last_insn): New static variable.
4158 (md_assemble): Warn about putting floating point branches in a
4159 delay slot. If architecture is less than v9, insert NOP
4160 instructions between floating point instructions and floating
4161 point branches. (The SunOS assembler does both these operations.)
4162 Save the last instruction opcode.
4163 (sparc_ip): Add pinsn parameter. Change caller.
4164
65feb78d
ILT
4165 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
4166 for byte jump to next instruction to skip empty frags.
4167
456c301f
ILT
4168Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
4169
4170 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
4171 for addq with a 16 bit signed value, just emit a lda instruction
4172 instead.
4173
b3ed89e8
JL
4174Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
4175
4176 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
4177 of a 32bit operand.
4178
b4cb4ea2
ILT
4179Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
4180
4181 * configure.in: Permit --enable-shared to specify a list of
4182 directories.
4183 * configure: Rebuild.
4184
dcb195f8
JL
4185Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
4186
4187 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
4188 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
4189
13e4a17e
ILT
4190Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4191
4192 * config/atof-ieee.c: Fix handling of denormalized extended
4193 precision numbers and overflow/underflow detection.
4194 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
4195 not include the 16 bit gap in the m68k extended precision format.
4196
2ae5f50b
ILT
4197Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
4198
4199 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
4200 <jdp@polstra.com>.
4201 * configure: Rebuild.
4202
54ea771f
JSC
4203Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
4204
4205 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
4206 be accessed using the $gp register.
4207 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
4208
65b12103
DE
4209Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
4210
4211 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
4212 bfd_mach_sparc_sparclet if current_architecture is sparclet.
4213
2271578d
ILT
4214Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
4215
4216 * read.c (get_line_sb): Bump line counters based on
4217 input_line_pointer[-1], not *input_line_pointer. Don't bother to
4218 call LISTING_NEWLINE.
4219 (s_macro): Don't call demand_empty_rest_of_line.
4220 * app.c (do_scrub_chars): When handling C style comments, unget
4221 ch2 rather than ch.
4222
7d3741ed
ILT
4223Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
4224
4225 * read.h (enum linkonce_type): Define.
4226 (s_linkonce): Declare.
4227 * read.c (potable): Add "linkonce".
4228 (s_linkonce): New function.
4229 * subsegs.h (segment_info_type): Add linkonce field to
4230 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
4231 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
4232 (obj_coff_pe_handle_link_once): Declare if TE_PE.
4233 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
4234 "coff/pe.h".
4235 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
4236 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
4237 entry based on the linkonce field in segment_info.
4238 * doc/as.texinfo: Document .linkonce.
4239
0c203340
C
4240Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
4241
4242 * doc/as.1: Changed to be recognized by catman -w on Solaris.
4243
867a58b3
ILT
4244Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
4245
3197da91
ILT
4246 * stabs.c (s_stab_generic): Call the listing functions before
4247 doing the rest of the processing, which may involve freeing the
4248 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
4249 SEPARATE_STAB_SECTIONS case.
4250
3c071b9f
ILT
4251 * config/tc-hppa.c: Remove nested comment.
4252 (tc_gen_reloc): Move label done inside the ifdef in which it is
4253 used.
4254 (md_apply_fix): Pass pointers to correct types to libhppa.h
4255 functions. Always return a value.
4256
867a58b3
ILT
4257 * config/tc-mips.h (tc_frob_file): Define.
4258 (mips_frob_file): Declare.
4259 * config/tc-mips.c (struct mips_hi_fixup): Define.
4260 (mips_hi_fixup_list): New static variable.
4261 (imm_unmatched_hi): New static variable.
4262 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
4263 offset_reloc. Pass imm_unmatched_hi to append_insn.
4264 (append_insn): Add unmatched_hi parameter. If it is set, add the
4265 new fixup to mips_hi_fixup_list. Change all callers.
4266 (mips_ip): Set imm_unmatched_hi when appropriate.
4267 (mips_frob_file): New function.
4268
d0352cbb
DE
4269Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
4270
4271 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
4272 * configure: Regenerated.
4273
4f74c042
ILT
4274Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
4275
4276 * as.c (main): Call bfd_set_error_program_name.
4277
5ba7c0be
ILT
4278Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
4279
c7a89bde
ILT
4280 * as.h (strdup): Don't declare.
4281 * stabs.c: Include libiberty.h
4282 (get_stab_string_offset): Use xstrdup rather than strdup.
4283 (s_stab_generic): Likewise.
4284 * as.c (parse_args): Likewise.
4285 * read.c (s_mri_sect): Likewise.
4286
5ba7c0be
ILT
4287 * gasp.c (change_base): Recognize \(...) construct documented to
4288 pass through enclosed characters literally through to the output.
4289 (process_assigns): Likewise. Also, be more careful to avoid
4290 looking past the end of the buffer.
4291
4292Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
4293
4294 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
4295 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
4296
d1f38e13
ILT
4297Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4298
4299 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
4300
649d87fe
ILT
4301Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
4302
4303 * config/alpha-opcode.h: Added cvtst instruction.
4304
975def01
ILT
4305Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
4306
4307 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
4308 string. Extract the addend from the result of expression.
4309
fde6018a
ILT
4310Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
4311
4312 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
4313 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
4314 mode, change the state to 3 rather than 1.
4315
ee0f488d
ILT
4316Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
4317
4318 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
4319 correspond to 11 March change.
4320
9da28504
JL
4321Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
4322
4323 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
4324 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
4325
ea2488ad
ILT
4326Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
4327
4328 * configure: Rebuild with autoconf 2.8.
4329
8fee8bf3
ILT
4330Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
4331
4332 * config/atof-ieee.c (gen_to_words): Improve handling of
4333 X_PRECISION numbers. Based on patches from Andreas Schwab
4334 <schwab@issan.informatik.uni-dortmund.de>.
4335
a31c2bc7
SC
4336Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
4337
4338 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
4339 (SEG_LAST): New.
4340 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
4341 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
4342 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
4343 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
4344 SEG_E9.
4345
4346Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
4347
4348 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
4349
73578b1e
JL
4350Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
4351
4352 * config/tc-hppa.c (SUBSEG_MILLI): Define.
4353 (pa_def_subspaces): Add $MILLICODE$.
4354 (pa_spaces_begin): Set section flags for $MILLICODE$.
4355
0c27542f
ILT
4356Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
4357
6b8ed20d
ILT
4358 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
4359 not SHT_NOBITS. Don't tamper with flags based on type if a
4360 special section was found (revert Feb 29 change).
4361
0c27542f
ILT
4362 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
4363 if aligning to a longword boundary or greater.
4364
6a413d6f
JW
4365Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4366
4367 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
4368
4b295517
SC
4369Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
4370
4371 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
4372 * configure: Regenerated.
4373
eff5fcda
JL
4374Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
4375
421e2c27
JL
4376 * config/tc-hppa.c: Add default definitions for R_N0SEL and
4377 R_N1SEL since they're not defined for old versions of hpux.
4378
eff5fcda
JL
4379 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
4380 Set "sym_ptr_ptr" and "addend" fields to dummy values for
4381 R_N0SEL and R_N1SEL.
4382
bb1013d9
ILT
4383Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4384
d197a7ab
ILT
4385 * flonum-konst.c: Add two more constants for 1e+-2048 and
4386 1e+-4096, and correct the other constants.
4387
bb1013d9
ILT
4388 * symbols.c (resolve_symbol_value): Handle O_logical_not.
4389
30510276
MM
4390Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4391
4392 * config/obj-elf.c (obj_elf_section): Allow predefined section
0d8405e8 4393 types to set the nobits type. Avoid a shadowed declaration.
30510276 4394
75c90d61
JL
4395Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
4396
24b216e1
JL
4397 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
4398 reduce relocs using e_nlrsel field selectors.
4399
75c90d61
JL
4400 * write.c (fix_new_exp): Don't use #elif. Some compilers
4401 don't handle it.
83b59013
JL
4402
4403 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
4404 the selector table.
4405 (pa_chk_field_selector): Handle new field selectors for SOM.
4406
535cfd0f
ILT
4407Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4408
4409 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
4410 * configure: Rebuild.
4411 * config/te-linux.h (LOCAL_LABELS_FB): Define.
4412 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
4413 "a.out-m68k-linux".
4414 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
4415 is defined.
4416
d214421e
SS
4417Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
4418
4419 * mpw-make.sed: Update to handle shared library support.
4420
110b814d
DE
4421Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
4422
4423 * config/tc-sparc.c (sparc_ip): Print all architectures that support
4424 the insn on mismatch.
4425
805e36ab
RS
4426Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
4427
4428 * configure.in: Add support for a29-coff.
4429 * configure: Rebuild.
4430
e41ab2a6
ILT
4431Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
4432
101a2346
ILT
4433 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
4434 of the section when looking for the R_SH_USES fixup, because the
4435 frag addresses have not yet been adjusted.
4436
940c413f
ILT
4437 * gdbinit.in: Set a breakpoint on as_warn_where.
4438
e41ab2a6
ILT
4439 * config/tc-mips.c (macro): Add missing arguments to macro_build
4440 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
4441
c6016ce2
ILT
4442Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
4443
4444 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
4445 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
4446
b32fbe07
DE
4447Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
4448
4449 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
4450
2e5e6879
DE
4451Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
4452
4453 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
4454 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
4455 Recognize [uU] format args as sparclet cpregs.
4456
8a2e1fdd
ILT
4457Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
4458
4459 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
4460 in bss_section.
4461
21965655
ILT
4462Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
4463
4464 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
4465 well as S_IS_EXTERNAL.
4466 (tc_fix_adjustable): Likewise.
4467 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
4468 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
4469 early.
4470 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
4471 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
4472
d8b42b96
DE
4473Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
4474
4475 * config/tc-sparc.c (max_architecture): Change to sparclite for
4476 32 bit arch.
4477 (default_compatible): Delete.
4478 (sparc_ffs): New function.
4479 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
4480 (sparc_ip): Rewrite architecture match and bump logic.
4481
7925f4d4
ILT
4482Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
4483
4484 * configure.in: Check for 'do not mix' from native linker before
4485 trying to use -rpath.
4486 * configure: Rebuild.
4487
ef2074c2
ILT
4488Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
4489
4490 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4491 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4492 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4493 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
4494 is set.
4495 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
4496 to the symbol lnnoptr field, to get the correct file offset.
4497
28910c57
MM
4498Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4499
4500 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
4501 symbols that are not function, file, or section symbols to be
4502 object types.
4503
7c2fadd1
ILT
4504Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
4505
1a2f3c3f
ILT
4506 * configure: Set and substitute RPATH_ENVVAR.
4507 * configure: Rebuild.
4508 * Makefile.in (RPATH_ENVVAR): New variable.
4509 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
4510
7c2fadd1
ILT
4511 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
4512 doesn't need opcodes. If configuring shared, opcodes needs bfd.
4513 * configure: Rebuild.
4514
8a6f53e9
ILT
4515Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
4516
4517 * read.c (s_mri_sect): Don't return '\0' in type. Set all
4518 appropriate flags in BFD section.
4519
4520 * configure.in (m68k-*-psos*): New target.
4521 * configure: Rebuild.
4522 * config/te-psos.h: New file.
4523 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
4524 is defined.
4525
fb251650
ILT
4526Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
4527
ae09d880
ILT
4528 From Alan Modra <alan@spri.levels.unisa.edu.au>:
4529 * configure.in: Remove duplicate setting of cpu_type. Check
4530 whether opcodes library is required for on all targets, not just
4531 primary one.
4532 * configure: Rebuild.
4533
fb251650
ILT
4534 * config/tc-mips.c (mips_big_got): New static variable.
4535 (s_extern): Don't declare.
4536 (reg_needs_delay): New static function.
4537 (macro_build): Permit GOT/CALL_HI/LO relocs.
4538 (macro_build_lui): If place is not NULL, use the number in the
4539 expression.
4540 (load_address): Handle mips_big_got case.
4541 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
4542 store macros.
4543 (OPTION_XGOT): Define.
4544 (md_longopts): Add "xgot" if OBJ_ELF.
4545 (md_parse_option): Handle -xgot.
4546 (md_show_usage): Mention -xgot.
4547 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
4548 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
4549
d9396c16
ILT
4550Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4551
4552 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
4553 the byte relocation, point it to the low byte of the word.
4554
56f9773f
ILT
4555Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
4556
4557 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
4558 * configure: Rebuild.
4559
63e4edb5
DE
4560Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
4561
4562 * configure.in: Recognize any sparc* cpu.
4563 * configure: Regenerated.
4564
15ed5f2c
ILT
4565Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
4566
20710f1c
ILT
4567 * read.c (potable): Add "mri" and ".mri".
4568 (s_mri): New function.
4569 * read.h (s_mri): Declare.
4570 * app.c (scrub_m68k_mri): New static variable.
4571 (mri_pseudo): New static variable.
4572 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
4573 flag_m68k_mri. Initialize scrub_m68k_mri.
4574 (mri_state, mri_last_ch): New static variables.
4575 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
4576 fields.
4577 (app_push): Save new fields.
4578 (app_pop): Restore new fields.
4579 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
4580 If TC_M68K, use a trivial state machine to look for occurrences of
4581 the .mri pseudo-op, and change the mode appropriately.
4582 * as.h (do_scrub_begin): Update prototype.
4583 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
4584 do_scrub_begin.
4585 * config/tc-m68k.c (reg_prefix_optional_seen): New static
4586 variable.
4587 (m68k_mri_mode_change): New function.
4588 (md_parse_option): Set reg_prefix_optional_seen.
4589 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
4590 (MRI_MODE_CHANGE): Define.
4591 * doc/as.texinfo: Document .mri pseudo-op.
4592
15ed5f2c
ILT
4593 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
4594 comment character.
4595
a043f579
ILT
4596Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4597
4598 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
4599 * config/m68k-parse.h (enum pic_relocation): Define.
4600 (struct m68k_exp): Add pic_reloc field.
4601 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
4602 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
4603 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
4604 otherwise.
4605 * config/tc-m68k.c: Delete definition of NO_RELOC.
4606 (struct m68k_it): Add pic_reloc field.
4607 (add_fix): Copy over pic_reloc field.
4608 (md_pseudo_table): Interpret .align parameter as byte count.
4609 (mote_pseudo_table): Likewise.
4610 (tc_m68k_fix_adjustable): New function.
4611 (get_reloc_code): New function.
4612 (md_assemble): Use it as last argument to fix_new_exp.
4613 (md_apply_fix_2): For a relocation against a symbol don't put the
4614 addend into the data.
4615 (tc_gen_reloc): Different addend computation for OBJ_ELF.
4616 (m68k_ip): Don't relax an operand that requires pic relocation.
4617 (md_begin): Align .text, .data and .bss on 4 byte boundary by
4618 default.
4619 * write.c (fixup_segment): Don't add symbol value to addend if
4620 TC_M68K and OBJ_ELF.
4621 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
4622 (motorola_operand): Add rule for `(zapc, EXPR)'.
4623
6ca1156d
ILT
4624Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
4625
4626 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
4627 *really* is permissible before the comma.
4628
fcee3e24
ILT
4629Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
4630
4631 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
4632 inserting nop instructions.
4633
3e1c964d
ILT
4634Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
4635
4636 * config/te-aux.h: Change include of aux.h to aux-coff.h.
4637
4080c270
ILT
4638Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
4639
d782e3cc
ILT
4640 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
4641 class setting for a CALLNAME symbol in COFF.
4642
4080c270
ILT
4643 * read.c (potable): Pass negative numbers for new .balign[wl] and
4644 .p2align[wl] pseudo-ops.
4645 (s_align_bytes): Treat a negative argument as specifying the fill
4646 length.
4647 (s_align_ptwo): Likewise.
4648
1c9dbb83
ILT
4649Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
4650
71dd3c40
ILT
4651 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
4652 (do_align): Take new len parameter. Change all callers. Pass it
4653 to md_do_align.
4654 (s_align_bytes): Arg now indicates the length of the fill pattern.
4655 (s_align_ptwo): Likewise.
4656 * config/obj-coff.c (write_object_file): Pass length to
4657 md_do_align.
4658 * config/tc-i386.h (md_do_align): Take new len parameter.
4659 * config/tc-m88k.h (md_do_align): Likewise.
4660 * config/tc-m88k.c (m88k_do_align): Likewise.
4661 * config/tc-sh.h (md_do_align): Likewise.
4662 * config/tc-sh.c (sh_do_align): Likewise.
4663 * doc/as.texinfo: Document new pseudo-ops.
4664
4665 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
4666 done in cvt_frag_to_fill.
4667
9addcbb1
ILT
4668 * config/tc-sh.h (sh_do_align): Declare.
4669 (md_do_align): Define.
4670 * config/tc-sh.c (sh_do_align): New function.
4671
c15ea23a
ILT
4672 * ecoff.c (ecoff_build_lineno): Don't try to store the address
4673 difference if the next address is before the current one.
4674
9e64486e
ILT
4675 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
4676 (archs): Initialize new field.
4677 (m68k_ip): Don't list alias names when listing CPUs which support
4678 an instruction.
4679
4680 * as.c (main): Call parse_args before read_begin.
4681 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
4682 front of generated pseudo-ops.
4683 * read.c (potable): Ignore "name".
4684 (s_app_file): Permit a single quote after the string, since one
4685 may appear in m68k MRI mode.
4686
1c9dbb83
ILT
4687 * configure.in: Check for --enable-shared. If linking against
4688 shared BFD and opcodes, fix library name on SunOS, and try to set
4689 -rpath reasonably.
4690 * configure: Rebuild.
4691
4692Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
4693
4694 * as.h (flag_m68k_mri): Declare.
4695 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
4696 * Many files: For MRI syntax that is specific to the m68k MRI
4697 assembler, check flag_m68k_mri rather than flag_mri or
4698 MRI_MODE_NEEDS_PSEUDO_DOT.
4699
dd1d79e8
ILT
4700Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
4701
f9e90c2e
ILT
4702 * config/tc-i960.c (ARCH_HX): Define.
4703 (arch_tab): Add HX.
4704 (targ_has_sfr): Handle ARCH_HX.
4705 (targ_has_iclass): Handle ARCH_HX.
4706 (tc_coff_fix2rtype): Add return 0 to avoid warning.
4707 (tc_headers_hook): If the architecture was specified explicitly,
4708 use it when setting the flags. Set the extern variable coff_flags
4709 rather than headers->filehdr.f_flags, since the latter is set
4710 unconditionally in obj-coff.c.
4711 (i960_handle_align): Remove unused variable fixp.
4712
dd1d79e8
ILT
4713 Support for building bfd and opcodes as shared libraries, based on
4714 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
4715 * configure.in: Set OPCODES and BFD to search directories.
4716 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
4717 * configure: Rebuild.
4718 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
4719 (LIBDEPS): New variable.
4720 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
4721 $(HLDFLAGS) in link.
4722 (check): Set LD_LIBRARY_PATH in the environment.
4723
4724Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4725
4726 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
4727 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
4728 read-only, not read/write.
4729
e277d131
ILT
4730Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
4731
4732 * Makefile.in (INSTALL_XFORM): Remove -e.
4733
e24cf2b5
ILT
4734Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
4735
4736 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
4737 than comparing S_GET_SEGMENT to undefined_section.
4738 (write_object_file): Skip symbols which were equated to an
4739 undefined or common symbol.
4740 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
4741 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4742 undefined_section.
4743 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
4744 or S_IS_COMMON call S_GET_VALUE.
4745 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4746 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
4747 to an undefined or common symbol, convert the reloc to be against
4748 the target symbol.
4749 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4750 undefined or common symbol.
4751 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4752 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
4753 to an undefined or common symbol, convert the reloc to be against
4754 the target symbol.
4755 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4756 undefined or common symbol.
4757 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
4758 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4759 undefined_section.
4760 (yank_symbols): Skip symbols which were equated to an undefined or
4761 common symbol.
4762
4d9e33e4
ILT
4763Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
4764
9e396994
ILT
4765 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
4766 * config/obj-bout.h (S_IS_LOCAL): Likewise.
4767
4d9e33e4
ILT
4768 * configure.in: Make sure we only add m68k-parse.o to
4769 ${extra_objects} once, no matter how many m68k targets have been
4770 enabled.
4771 * configure: Rebuild.
4772
0ff513d9
SC
4773Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
4774
4775 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
4776 * configure: Rebuild.
4777
66b935da
ILT
4778Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
4779
c174fb5c
ILT
4780 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
4781 * doc/c-m68k.texi: Document .extend and .ldouble.
4782
66b935da
ILT
4783 * configure.in (m68*-apple-aux*): New target.
4784 * config/te-aux.h: New file.
4785 * config/obj-coff.c (compare_external_relocs): New static function
4786 if TE_AUX.
4787 (do_relocs_for): Sort relocs if TE_AUX.
4788 (fixup_segment): If TE_AUX, store common symbol value in segment.
4789 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
4790
30c2a08e
ILT
4791Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
4792
9e396994 4793 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
615c0a79 4794
30c2a08e
ILT
4795 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
4796 BSF_FUNCTION.
4797 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
4798 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
4799 symbol.
4800 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
4801 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
4802 an undefined symbol and the size of a function symbol.
4803 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
4804 for all common symbols.
4805
0e6f2f82
KR
4806Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
4807
4808 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
4809 scaling of index.
4810
4811 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
4812 m68k.
4813
8e3ff081
ILT
4814Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
4815
3e78d072
ILT
4816 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
4817 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
4818
8e3ff081
ILT
4819 * ecoff.c (localsym_t): Add addend field.
4820 (add_ecoff_symbol): Add addend argument. Change all callers.
4821 (coff_sym_value): Make static.
4822 (coff_sym_addend): New static variable.
4823 (ecoff_directive_def): Initialize coff_sym_addend.
4824 (ecoff_directive_val): Accept symbol + constant.
4825 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
4826 (ecoff_build_symbols): Include the addend in the symbol value.
4827
79edc846
KK
4828Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
4829
4830 * config/tc-ppc.c (md_assemble): Ignore overflow on
4831 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
4832
4833Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4834
4835 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
4836 bytes in size, so offset appropriately in big endian mode when
4837 writing the bottom 2 bytes.
4838
6cbc4e35
DE
4839Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
4840
4841 * config/tc-sparc.c (default_compatible): New static local.
4842 (md_begin): Initialize it. Rewrite warn_on_bump handling.
4843 (sparc_ip): If no architecture or -bump specified, don't mark as
4844 mismatched those in default_compatible.
4845
4fe0fddd
ILT
4846Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
4847
4848 SCO ELF support from Robert Lipe <robertl@arnet.com>:
4849 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
4850 * configure: Rebuild.
4851 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
4852 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
4853 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
4854 (sco_id): Declare if SCO_ELF.
4855
e70ad5d5
DE
4856Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
4857
4858 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
4859 ({max,warn_after}_architecture): New static locals.
4860 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
4861 If both architecture and -bump requested, set max_architecture to max.
4862 (sparc_md_end): Simplify.
4863 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
4864 Rewrite code to bump architecture and check for conflicts.
4865 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
4866 with Solaris assembler.
4867 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
4868 (md_show_usage): Update.
4869
a8248831
DE
4870Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
4871
4872 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
4873
6df07e7f
DE
4874Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
4875
4876 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
4877 #ifdef sparcv9 when choosing value.
4878 (ENV64): Delete.
4879 (md_end): Define.
4880 (sparc_md_end): Declare.
4881 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
4882 (initial_architecture): New static local.
4883 (can_bump_v9_p): Likewise.
4884 (NO_V9): Delete all occurrences.
4885 (sparc_md_end): New function.
4886 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
4887 Don't bump architecture to v9 unless can_bump_v9_p set.
4888 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
4889 * configure.in (sparc64 target cpu): Don't set obj_format here.
4890 (SPARC_V9): Renamed from sparcv9.
4891 (sparc64-*-elf*): Define SPARC_ARCH64.
4892 * configure: Regenerated.
4893 * acconfig.h (SPARC_V9): Renamed from sparcv9.
4894 (SPARC_ARCH64): Add.
7fcb3191 4895 * conf.in: Regenerated.
6df07e7f
DE
4896 * config/vmsconf.h: Update.
4897
c9c7c1d7
JSC
4898Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
4899
4900 * config/tc-mips.c (load_register): Optimise "dli" loads.
4901 (md_show_usage): add "-mcpu=vr4100" to help text.
16ce20d4 4902
07ce72c9
ILT
4903Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
4904
16ce20d4
ILT
4905 * symbols.c (resolve_symbol_value): If a symbol is equated to an
4906 undefined symbol, preserve the X_op of O_symbol.
4907 (S_GET_VALUE): Fix check to permit this case.
4908 * write.c (write_relocs): If a reloc is against an undefined
4909 symbol equated to another symbol, change the reloc to be against
4910 the latter symbol.
4911 * config/obj-coff.c (do_relocs_for): Likewise.
4912
07ce72c9
ILT
4913 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
4914 XMC_PR.
4915
d971d39e
MM
4916Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4917
4918 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
4919 computer is PowerPC.
4920
4921 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
4922
4923 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
4924 mentioned in the eabi.
4925
0291f0f5
KK
4926Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
4927
4928 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
4929 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
4930
c682be53
MM
4931Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4932
4933 * config/tc-ppc.c (mapping): Add more relocation suffixes.
4934
ee4fdbb9
MM
4935Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4936
4937 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
4938 as a section it is ok to have unadorned -mrelocatable pointers in.
4939
4940Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
747b98fe
MM
4941
4942 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
4943 #ifdef OBJ_ELF.
4944
f99d287b
MM
4945Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4946
4947 * config/obj-elf.c (obj_elf_section): Add hooks so machine
4948 dependent section attributes can be handled.
4949
4950 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
4951 macros to add support for exclude section flag and ordered section
4952 type.
4953
4954 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
4955 functions to add support for exclude section flag and ordered
4956 section type.
4957
347a705b
ILT
4958Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
4959
2a4e49a9
ILT
4960 * subsegs.c (section_symbol): Don't try to look up the section
4961 symbol in the hash table. It should be possible to have a symbol
4962 with the same name as a section, but no connection to it.
4963
d9f4dec1
ILT
4964 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
4965 From James Carlson <carlson@xylogics.com>.
4966
347a705b
ILT
4967 * expr.c (operand): Skip whitespace after a close parenthesis.
4968 From James Carlson <carlson@xylogics.com>.
4969
10c8c95e
JW
4970Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4971
4972 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
4973 as_warn_where for relocation overflow.
347a705b
ILT
4974 (parse_reg): Accept register name only if next character is
4975 not alphanumeric.
10c8c95e 4976
cb844314
JL
4977Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
4978
4979 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
4980 addresses for static variables.
4981
36cb0e7c
MM
4982Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4983
4984 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
4985 and xgot give the old toc16 relocation.
4986 (md_apply_fix3): Support all GOT relocations.
4987
5e69b693
ILT
4988Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
4989
4990 * config/tc-mips.c (load_address): Correctly handle a constant in
4991 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
4992
29861dd0
C
4993Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
4994
4995 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
4996 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
4997 (build_Mbytes): Handle REG_B.
4998
432b8fa8
ILT
4999Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
5000
5001 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
5002
ee68a042
RJ
5003Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
5004
5005 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
5006
b14630f2
ILT
5007Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
5008
5009 * config/obj-coff.c (write_object_file): Set the s_align field to
5010 the number of bytes, rather than to the power of 2.
5011
4a3d48fc
ILT
5012Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
5013
5014 * Makefile.in (DISTCLEAN_HERE): New variable.
5015 (distclean): Use it.
5016 (maintainer-clean): Depend upon clean-here rather than clean,
5017 distclean, and clean-info. Run make maintainer-clean in doc.
5018 Remove files listed in DISTCLEAN_HERE.
5019 * doc/Makefile.in (maintainer-clean realclean): Split out from
5020 distclean. Depend upon clean-info and distclean.
5021
7e5e83cf
SS
5022Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
5023
5024 * mac-as.r: Fix copyright and version strings.
5025 (cfrg): Use PROG_NAME instead of literal name.
5026
1b10f50d
ILT
5027Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
5028
5029 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
5030 call it.
5031 * config/tc-a29k.h (tc_unrecognized_line): Define.
5032 * config/tc-a29k.c (a29k_unrecognized_line): New function.
5033 (md_operand): Handle a29k style local dollar labels.
5034
2f3bbb1b
ILT
5035Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
5036
5037 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
5038
624c91d1
KR
5039Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
5040
5041 * read.c (s_fill): If md_flush_pending_output is defined, call
5042 it.
5043
9e4b3a23
KR
5044Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
5045
5046 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
5047 Treat rs_align_code like rs_align.
5048
3554987a
DE
5049Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
5050
5051 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
5052 converting an absolute address into a PC-relative one.
5053
90f543f6
SS
5054Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
5055
5056 * mpw-config.in: Don't always use te-generic.h for emulation.
5057 (powerpc-apple-macos): Use emulation te-macos.h.
5058start-sanitize-gm
5059 (mips-gm-magic): New configuration.
5060end-sanitize-gm
5061 * mpw-make.sed (install, install-only): Edit in Mac-specific
5062 install procedure.
5063
d4c8a45e
ILT
5064Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
5065
2eec8710
ILT
5066 * configure.in: Improve message about unsupported ELF targets.
5067 * configure: Rebuild.
5068
d4c8a45e
ILT
5069 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
5070 pattern is zero. From Manfred Hollstein.
5071
531a1af2
KK
5072Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
5073
5074 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
5075 the various idata sections, we check the name on the .section pseudo.
5076
464070de
ILT
5077Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
5078
5079 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
5080 add section's paddr to add_number; compatibility to native as and
5081 ld forbids.
5082
6a087325
KR
5083Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
5084
9d5aef80
KR
5085 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
5086
ac9ef8ee
KR
5087 * hash.c (struct hash_entry): Moved here...
5088 * hash.h (struct hash_entry): ...from here.
5089
6a087325
KR
5090 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
5091 if it's already known to be null.
5092
77fa4d98
MM
5093Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5094
5095 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
5096 bit relocs converted to PC relative relocs. This turned out to
5097 add the offset from the beginning of .text twice.
5098
c6e4e834
KR
5099Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
5100
5101 * stabs.c (s_stab_generic): In 's' case, free string from
5102 obstack.
5103
5104 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
5105 sy_name_offset.
5106 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
5107 Ditto.
5108
5109 * subsegs.h (segment_info_type): Make bitfields unsigned.
5110
5111 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
5112 and move them together. On most systems this will reduce the
5113 structure size by one word.
5114 (operatorT): Define O_max.
5115 * expr.c (expr_begin): Verify that X_op is wide enough to hold
5116 O_max.
5117
5118 * read.c (pop_insert): Print error returned by hash table
5119 insertion code.
5120
5121 * as.c (dump_statistics): Split out from main; dump some hash
5122 table stats and target-specific stats.
5123 (start_time): No longer automatic to main.
5124 (main): Set file-level start_time and call dump_statistics at
5125 exit. Exit by calling xexit.
5126 (show_usage): Make --statistics description less specific.
5127 * subsegs.c (subsegs_print_statistics): New function.
5128 * write.c (write_print_statistics): New function.
5129 (n_fixups): New static variable.
5130 (fix_new_internal): Increment it.
5131 * read.c (read_print_statistics): New function.
5132 * read.h (read_print_statistics): Declare.
5133 * symbol.c (symbol_print_statistics): New function.
5134 * symbol.h (symbol_print_statistics): Declare.
5135 * hash.c (hash_print_statistics): New function.
5136 * hash.h (hash_print_statistics): Declare.
5137 * config/tc-i386.c (i386_print_statistics): New function.
5138 * config/tc-i386.h (i386_print_statistics): Declare.
5139 (tc_print_statistics): New macro.
5140 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
5141 exit.
5142
5143 * hash.c (DELETED): Rewrite to use a valid but unique address.
5144 (START_POWER): Reduce to 10.
5145 (enum stat_enum): New enumerator, replacing STAT_* index macros.
5146 Add new values for counting strcmp calls.
5147 (GROW_FACTOR): New macro.
5148 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
5149 of nesting blocks.
5150 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
5151 (hash_new): Use FULL_VALUE.
5152 (struct hash_control): Definition moved here.
5153 (hash_code): Don't mask to low bits.
5154 (hash_ask): Mask returned hash code here. Check hash value before
5155 calling strcmp; count strcmp calls.
5156 * hash.h (struct hash_control): Declare, don't define, here.
5157 (HASH_STATLENGTH): Deleted.
5158 (struct hash_entry): Add field for hash code.
5159 (hash_say, hash_apply): Don't declare.
5160
5161 * hash.c (destroy): Return void.
5162 (applicatee): Ditto.
5163 (main): Fix declarations.
5164 (hash_apply): Return void. Argument `function' returns void. Put
5165 inside "#ifdef TEST".
5166 (hash_say): Define only if TEST is defined.
5167 * hash.h (hash_apply, hash_say): Declarations deleted.
5168
6a4667f4
ILT
5169Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
5170
5171 * configure: Rebuild with autoconf 2.7.
5172
330add8a
ILT
5173Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
5174
5175 * aclocal.m4 (AC_PROG_CC): Remove local definition.
5176 * configure: Rebuild with autoconf 2.6.
5177
520dd8d5
ILT
5178Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
5179
5180 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
5181 (ppc_stabx): Don't increment ppc_debug_name_section_size.
5182 (ppc_bc): Likewise.
5183 (ppc_frob_file): Remove.
5184 * config/tc-ppc.h (tc_frob_file): Don't define.
5185 (ppc_frob_file): Don't declare.
5186
880b7429
KR
5187Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
5188
d6c4a3fa
KR
5189 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
5190 * config/alpha-opcode.h: Include one-operand variants of jmp and
5191 jsr.
5192
880b7429
KR
5193 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
5194 with te-delta.h in 8.3 file systems.
5195 * configure.in: Adjusted.
5196
aa8a6656
ILT
5197Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
5198
880b7429
KR
5199 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
5200
aa8a6656
ILT
5201 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
5202 number.
5203 * expr.c (operand): Handle MRI suffixes after unadorned 0.
5204
7b889f5e
KR
5205Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
5206
da9b55af
KR
5207 Version 2.6 released.
5208 * Makefile.in (VERSION): Updated to 2.6.
5209
7b889f5e
KR
5210 * config/obj-coff.c (write_object_file): Change use of md_do_align
5211 to pass a pointer rather than a fill value, to match other uses.
5212
46618ae6
KR
5213Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
5214
7b889f5e
KR
5215 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
5216
46618ae6
KR
5217 * as.c (main): Move md_end call to just after call to
5218 perform_an_assembly_pass. Delete cpu-specific code here.
5219 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
46618ae6
KR
5220 * config/tc-arm.c (md_end): Unused function deleted.
5221 * config/tc-ns32k.c (md_end): Ditto.
5222
5223 * config/tc-i386.c (i386_align_code): New function, moved here
5224 from HANDLE_ALIGN macro.
5225 * config/tc-i386.h (HANDLE_ALIGN): Call it.
5226
5227 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5228
5229 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
5230 before comparing
5231
5232 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5233
5234 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
5235 multi-byte nops to avoid changing gcc. The necessary gcc change
5236 might break old assemblers.
5237
5238 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5239
5240 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
5241 generate optimal multi-byte nop instructions for ".align n"
5242 ".align n,0x90", and aligns requiring more than 15 bytes of
5243 padding still generate multiple 0x90's as before.
5244
5245Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
5246
5247 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
5248
51bc513e
SS
5249Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
5250
5251 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
5252 * configure: Update.
5253 * mpw-make.sed: Reorder commands to make sed happier.
5254 * config/te-macos.h: New file.
5255 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
5256
8b39c5df
JL
5257Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
5258
5259 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
5260 conditional branches.
5261 (md_apply_fix): Likewise.
5262
5263Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
5264
5265 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
5266 generate a reloc which the linker will not handle correctly. Fix
5267 overflow checking--R_IREL is 18 bits, not 17.
5268
6a649eda
ILT
5269Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
5270
a071b8e9
ILT
5271 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
5272 from a PC relative reloc if TC_A29K.
5273
5274 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
5275 code depends upon it.
5276
6a649eda
ILT
5277 * config/tc-a29k.c (md_operand): Handle $float, $double, and
5278 $extend. Based on code from Eric Freudenthal
5279 <freudenthal@nyu.edu>.
5280 * config/tc-a29k.h (LEX_DOLLAR): Define.
5281 * read.c (LEX_DOLLAR): Define if not defined.
5282 (lex_type): Use LEX_DOLLAR.
5283
6364a188
ILT
5284Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
5285
5286 * configure.in (a29k-nyu-sym1): New target, just like other a29k
5287 targets.
5288
0fa6f8f6
ILT
5289Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
5290
5291 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
5292
5293Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
5294
5295 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
5296 used only by "dlltool.c".
5297
eec2cfef
ILT
5298Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
5299
5300 * config/tc-alpha.c: Undefine inline if not __GNUC__.
5301 (md_pseudo_table): Don't define "extern".
5302
df7504dc
ILT
5303Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
5304
a3d1c561
ILT
5305 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
5306
df7504dc
ILT
5307 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
5308
07d012f6
ILT
5309Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
5310
36e80ac6
ILT
5311 * macro.c (macro_expand_body): Don't warn about == with a
5312 nonexistent parameter, in case it is in a comment field.
5313
07d012f6
ILT
5314 * as.c (main): On TC_A29K, call macro_init with macro_alternate
5315 set to 1.
5316 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
5317 set, even if macro_alternate is set.
5318 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
5319 (sub_actual): If macro_strip_at, and kind is '@', don't look up
5320 the token unless it ended in '@'.
5321 * config/tc-a29k.c (line_separator_chars): Remove '@'.
5322 * doc/c-a29k.texi: Document macro usage on A29K.
5323
01f108bc
ILT
5324Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
5325
5326 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
5327 signed word.
5328 (install_operand): Likewise.
5329
5330 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
5331
5332Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
5333
5334 * configure.in (m88k-motorola-sysv*): New target.
5335 * configure: Rebuild.
5336 * config/te-delta88.h: New file.
5337 * config/obj-coff.c (write_object_file): Use md_do_align if it is
5338 defined.
5339 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
5340 (md_do_align): Define.
5341 * config/tc-m88k.c: Include "subsegs.h".
5342 (m88k_do_align): New function.
5343
5344 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
5345 (COFF_NOLOAD_PROBLEM): Define.
5346 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
5347
7954cc14
KR
5348Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
5349
5350 * config/tc-i386.c (md_assemble): For a jump instruction with
5351 non-constant target, require 7 available bytes in the current
5352 frag, not 6.
5353
d033806f
FF
5354Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
5355
5356 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
5357 bfd/libelf.h.
5358
d7b2038f
ILT
5359Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
5360
5361 * configure.in (alpha-*-linux*): Use ecoff.
5362 * configure: Rebuild.
5363 * ecoff.c (ecoff_directive_extern): New function.
5364 (ecoff_directive_weakext): New function.
5365 (ecoff_build_symbols): Handle weak symbols.
5366 (ecoff_setup_ext): Likewise.
59c80ca2 5367 (ecoff_frob_symbol): Warn about weak common symbols.
d7b2038f
ILT
5368 * ecoff.h (ecoff_directive_extern): Declare.
5369 (ecoff_directive_weakext): Declare.
5370 * symbols.c (S_IS_WEAK): New function.
5371 * symbols.h (S_IS_WEAK): Declare.
5372 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
5373 "weakext".
5374 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
5375 (s_extern): Remove.
5376
cbdf59ad
ILT
5377Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
5378
b629f627
ILT
5379 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
5380
7ab1edc8
ILT
5381 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
5382 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
5383 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
5384 * config/obj-coff.c (coff_frob_symbol): Don't call
5385 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
5386 one. If OBJ_XCOFF, try to figure out whether the symbol is going
5387 to be dropped.
5388
31751d9d
ILT
5389 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
5390 (ppc_stab_symbol): New static variable.
5391 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
5392 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
5393 sy_tc.real_name to the stab string.
5394 (ppc_bc, ppc_ec): New static functions.
5395 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
5396 do anything.
5397 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
5398 suffix.
0e3dd9a0
ILT
5399 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
5400 entries.
31751d9d 5401
cbdf59ad
ILT
5402 * input-scrub.c (input_scrub_push): Reset sb_index.
5403
91123dbe
ILT
5404Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
5405
5406 * listing.c (listing_newline): Don't create a frag in the absolute
5407 section.
5408
73255941
ILT
5409Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
5410
df72d2a5
ILT
5411 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
5412 (ppc_csect): Move most of the code to ppc_change_csect, and call
5413 it.
5414 (ppc_change_csect): New static function, taken from ppc_csect.
5415 (ppc_section): New static function.
5416 (ppc_saw_abs): New static varable.
5417 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
5418 a symbol has no csect.
5419 (ppc_adjust_symtab): New function.
5420 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
5421 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
5422
5423 * write.c (write_object_file): If tc_adjust_symtab is defined,
5424 call it just before the call to obj_adjust_symtab.
5425
73255941
ILT
5426 * symbols.c (symbol_find_or_make): Change name to be const.
5427 * symbols.h (symbol_find_or_make): Update declaration.
5428
9bfaf1b9
KR
5429Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
5430
5431 * doc/as.texinfo (Align): Mention SH.
5432 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
5433 .align value.
5434 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
5435 (Z8000 Directives, even): Don't give numeric align value, instead
5436 explain behavior.
5437
ae143278
DE
5438Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
5439
5440 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
5441 instruction.
5442
270433cc
PB
5443Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
5444
5445 * Makefile.in (diststuff): Also make info.
5446 (maintainer-clean realclean): Also make clean-info.
5447
18a11401
JL
5448Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
5449
5450 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
5451 (pa_subspace): For ".nsubspa", always create a new subspace
5452 with the given attributes, even if one already exists with the
5453 same name.
5454
96fe71e1
MM
5455Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5456
5457 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
5458 TC_FORCE_RELOCATION, taking an additional section argument. If
5459 the section of the target symbol is not the same as the current
5460 section, always force the relocation to be used.
5461 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
5462
5463 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
5464 md_pcrel_from function, taking an additional section argument.
5465 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
5466
5467 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
5468 older TC_FORCE_RELOCATION if not defined.
5469 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
5470 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
5471 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
5472 TC_FORCE_RELOCATION.
5473
1d75481b
KR
5474Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
5475
5476 * input-scrub.c (as_where): Set name to null pointer if we don't
5477 have a file name.
5478 * messages.c (identify): Only print filename if non-null.
5479 (as_show_where): Ditto, for line number too.
5480 (as_warn_internal, as_bad_internal): Ditto.
5481
5482 * input-file.c (input_file_open): If the input file can't be
5483 opened, consider it an error.
5484
c625fc23
JSC
5485Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
5486
5487 * config/tc-mips.c: Added mips_4100 control, and support for
5488 accepting the 4100 as a MIPS architecture variant (md_begin,
5489 macro_build, mips_ip, md_parse_option). Adding suitable
5490 command-line OPTIONs, and updating the help text (md_show_usage).
5491
dd1a5316
KR
5492Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
5493
c625fc23
JSC
5494 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
5495 BFD_ASSEMBLER is defined.
5496
3366a224
KR
5497 * Use one active frag and one obstack per frag chain:
5498 * frags.c (frags): Variable deleted.
5499 (frag_alloc): New function.
5500 (frag_grow, frag_more, frag_variant, frag_now_fix,
5501 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
5502 frags variable.
5503 (frag_new): Ditto. Verify that frch_last and frag_now match on
5504 entry and exit, and that old frag_now has non-zero type. Replace
5505 "know" uses with "assert". Use frag_alloc instead of mucking with
5506 obstack alignment.
5507 * frags.h (frags): Declaration deleted.
5508 * subsegs.h (struct frchain): Add new field frch_frag_now.
5509 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
5510 variables.
5511 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
5512 give it any stricter alignment than frchainS structures need. Do
5513 not initialize frags obstack. Set frag_now to point to
5514 dummy_obstack. Initialize absolute_frchain.
5515 (subseg_set_rest): Save and restore frag_now in frch_frag_now
5516 field of frchainS. Don't create new frags on section switch, and
5517 use frag_alloc when creating a new frag chain. For absolute
5518 section, set frchain_now to absolute_frchain. Verify that
5519 frch_last and frag_now match on entry and exit. Initialize
5520 per-chain obstack, and under gcc, set required alignment to that
5521 needed by fragS structure.
c625fc23 5522
3366a224
KR
5523 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
5524
5525 * stabs.c (get_stab_string_offset): Only copy input string if a
5526 fresh copy is needed, not if the section already exists.
5527 (s_stab_generic): Cache stab section name to bypass lookups, since
5528 usually it will match. Could be made faster still by changing the
5529 memory allocation rules.
5530 (s_xstab): Cache section name to bypass repeated string
5531 allocation.
5532
5533 * frags.c (frag_new): Deleted register declarations.
5534
5535 * listing.c (frag_now): Don't declare.
5536
5537 * as.c (chunksize): New variable.
5538 (debug_memory): New variable.
5539 (main): If debug_memory is set, reduce chunksize and
5540 _bfd_chunksize.
5541 * as.h (chunksize): Declare it.
5542 * read.c (read_begin): Use it.
5543
de5ebe2e
KR
5544 * config/tc-alpha.c (md_shortopts): Include 'g'.
5545 (md_parse_option): Ignore it.
5546
dd1a5316
KR
5547 * Makefile.in (distclean): Remove Makefile and config.status from
5548 testsuite directory.
5549 (clean-here): Don't delete testsuite. Instead, delete only the
5550 files within it that would be generated by running tests.
5551
de5ebe2e
KR
5552 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
5553 frag_now_fix instead of accessing obstack info directly.
5554 * config/tc-arm.c (s_ltorg): Ditto.
5555 (md_assemble): Ditto.
5556
5557 * config/tc-i386.c (md_assemble): Call frag_grow instead of
5558 obstack_room.
5559
625f4e48
KR
5560Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
5561
5562 * stabs.c (aout_process_stab): Insert debug symbol into symbol
5563 chain after parsing value expression, if any, to avoid separating
5564 continued .stabs lines.
5565
33a8c1b6
ILT
5566Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
5567
5568 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
5569 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
5570
b6b8f911
MM
5571Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
5572
625f4e48
KR
5573 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
5574 -mcom support and PPC_OPCODE_ANY for -many.
5575 (md_parse_option): Ditto.
5576 (ppc_arch): Ditto.
5577 (md_begin): For duplicate instructions, print all duplicates
5578 before aborting.
b6b8f911 5579
4c2935f4
MM
5580Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
5581
5582 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
5583 common mode operation.
5584 (md_show_usage): Add -mcom to usage message.
4c2935f4
MM
5585
5586Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
5587
5588 * expr.c (op_rank): Add O_symbol_rva.
5589 * expr.h (operatorT): Add O_symbol_rva.
5590 * read.c (cons_worker): Set O_symbol_rva when necessary.
5591 * write.c (fix_new_exp): Understand O_symbol_rva.
5592
7db865dc
ILT
5593Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
5594
5595 * config/tc-mips.c: Correct s_cons arguments. From Michael
5596 Joosten <joost@ori.cadlab.de>.
5597
1b13e6fc
ILT
5598Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
5599
5600 * config/tc-ppc.c (ppc_macro): Make count unsigned.
5601 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
5602 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
5603 the fix_line field.
5604 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
5605 make non-static. Change all users.
5606 * config/obj-coff.h (coff_n_line_nos): Declare.
5607
9e3e3d4c
KR
5608Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
5609
5610 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5611
5612 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
5613
5614 * config/obj-elf.c (obj_elf_common): Convert specified byte
5615 alignment to power of two. Set size of local bss symbol.
5616
5617 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
5618
13a6c753
ILT
5619Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
5620
5621 * sb.c, macro.c: Decide whether to include <string.h> or
5622 <strings.h> just as as.h does.
5623
a75aafcd
DE
5624Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
5625
5626 * Makefile.in (site.exp): Fix setting of $srcdir.
5627
5628 * config/tc-arm.c (md_atof): Fix little-endian output.
f6ec8c46
DE
5629 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
5630 all coff targets.
a75aafcd 5631
d89861c7
KR
5632Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
5633
4d2ba393
KR
5634 * doc/as.texinfo: Split out the NS32k family documentation,
5635 despite its being commented out for now.
5636 * doc/c-ns32k.texi: New file.
5637
2c5eb48d
KR
5638 * sb.c, macro.c: Include string.h.
5639
6b0a6eaa
KR
5640 * Makefile.in (comparison): Only check *.o; we don't care if
5641 timestamps inserted by the native linker differ.
5642
d89861c7
KR
5643 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
5644 if alignment stricter than 4 bytes is requested; in that case,
5645 align to a 4-byte boundary first.
5646
70aeac05
KR
5647 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
5648
5649 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
5650 uninitialized" warning for `Max_Source_Offset'.
5651
eaaa2a42
KK
5652Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
5653
5654 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
5655 qualifiers and detect errors if present.
5656 (md_assemble): Add call to parse_toc_entry. Also added some support
5657 for the [tocv] qualifier.
5658 (ppc_pe_tocd): New function to support data in the toc section.
5659
cd557d83
ILT
5660Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
5661
5662 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
5663 an absolute symbol.
5664
42ac8fa8
ILT
5665Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
5666
01f108bc 5667 * config/tc-m68k.c (isword): Accept all values from -65536 to
cd557d83
ILT
5668 +65535, so ~VAL will not be rejected.
5669
42ac8fa8
ILT
5670 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
5671 skip characters after the pseudo-op.
5672 (s_else): Likewise.
5673 * read.c (get_line_sb): Don't look past buffer_limit.
5674 (s_include): In MRI mode, skip characters after the file name.
5675
eef66934
ILT
5676Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
5677
5678 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
5679 periods in register names.
5680
cdc49cba 5681For older changes see ChangeLog.1.
This page took 0.378823 seconds and 4 git commands to generate.