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