* config/tc-dvp.c (md_begin): Turn dma/vif packing on by default.
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 start-sanitize-sky
2 Tue Mar 17 10:40:54 1998 Doug Evans <devans@canuck.cygnus.com>
3
4 * config/tc-dvp.c (md_begin): Turn dma/vif packing on by default.
5 (assemble_dma): Only output 8 bytes for actual dma insn if dma/vif
6 packing is enabled. Emit VIF cpu marker after dma insn.
7
8 Mon Mar 16 10:19:44 1998 Doug Evans <devans@canuck.cygnus.com>
9
10 * config/tc-dvp.c (md_pseudo_table): Make .quad 16 bytes.
11
12 end-sanitize-sky
13 Fri Mar 13 16:31:38 1998 Tom Tromey <tromey@cygnus.com>
14
15 * depend.c (quote_string_for_make): New function.
16 (wrap_output): Use it.
17
18 Thu Mar 12 18:28:22 1998 Nick Clifton <nickc@cygnus.com>
19
20 * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
21 structure if type is SHT_NOBITS. [Bug fix courtesy of rth]
22
23 start-sanitize-sky
24 Thu Mar 12 16:13:25 1998 Doug Evans <devans@canuck.cygnus.com>
25
26 * config/tc-dvp.h (TC_FIX_TYPE,TC_INIT_FIX_DATA): Define.
27 * config/tc-dvp.c (compute_nloop,check_nloop): New functions.
28 (gif_insn_frag_loc): New static global.
29 (assemble_gif): Record frag and location frag of insn.
30 (md_apply_fix3): Validate user specified nloop if we couldn't do
31 it earlier.
32 (s_endgif): Queue fixup to install nloop if we can't compute it here.
33
34 Fri Mar 6 11:36:37 1998 Doug Evans <devans@canuck.cygnus.com>
35
36 * config/tc-dvp.c (s_endgif): Fix nloop calc and test. Warn if
37 insufficient data present. Fix insertion of computed nloop value.
38 (install_vif_length): Second pass at unpack len calcs.
39 (s_endunpack): Round data up to word boundary.
40 (insert_mpg_marker): New function.
41 (insert_file): New args insert_marker, size. All callers updated.
42 (assemble_vif): Rewrite varlen insn handling.
43 (assemble_vu): Call insert_mpg_marker when 256th insn reached.
44 (s_enddirect,s_endunpack): Rename arg to internal_p.
45
46 end-sanitize-sky
47 start-sanitize-vr4320
48 Tue Mar 3 11:37:26 1998 Gavin Koch <gavin@cygnus.com>
49
50 * config/tc-mips.c : Added vr4320 similar to vr4300.
51
52 end-sanitize-vr4320
53 Sat Feb 28 17:28:55 1998 Richard Henderson <rth@cygnus.com>
54
55 * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
56 Recognize -GN and -relax.
57 (md_begin): Initialize gp size from -G switch.
58 (alpha_force_relocation): Always force if -relax.
59 (alpha_align): Take a new argument that will specify when to
60 emit an R_ALPHA_ALIGN relocation (though we don't do that now).
61 Change all callers. Emit nop alignment padding as nop+unop pair.
62
63 Sat Feb 28 17:06:22 1998 Richard Henderson <rth@cygnus.com>
64
65 * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
66 * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
67
68 start-sanitize-d30v
69 Thu Feb 26 15:49:04 1998 Michael Meissner <meissner@cygnus.com>
70
71 * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
72 require padding to the next long word boundary.
73
74 end-sanitize-d30v
75 start-sanitize-sky
76 Fri Feb 27 10:06:59 1998 Doug Evans <devans@canuck.cygnus.com>
77
78 * config/tc-dvp.c (assemble_vif): Insert cpu type marker before
79 inserted binary files.
80
81 end-sanitize-sky
82 start-sanitize-phase2-m32rx
83 Wed Feb 25 11:43:45 1998 Doug Evans <devans@canuck.cygnus.com>
84
85 * config/tc-m32r.c (optimize): New static local.
86 (md_shortopts): Add -O.
87 (md_parse_option): Recognize it.
88 (md_show_usage): Document it.
89 (md_assemble): Don't try to combine insns in parallel if !optimize.
90
91 end-sanitize-phase2-m32rx
92 start-sanitize-m32rx
93 Tue Feb 24 18:03:25 1998 Nick Clifton <nickc@cygnus.com>
94
95 * config/tc-m32r.c (first_writes_to_seconds_operands):
96 Reinitialise b_operands for each pass of the inner loop.
97 end-sanitize-m32rx
98 start-sanitize-sky
99 Tue Feb 24 11:01:25 1998 Doug Evans <devans@canuck.cygnus.com>
100
101 * config/tc-dvp.h (tc_frob_label): Define.
102 * config/tc-dvp.c (dvp_frob_label): New function.
103 (create_colon_label): New argument `sto'. All callers updated.
104 (record_mach): New argument `force_next_p'. All callers updated.
105 (cpu_sto): New function.
106 (UNIQUE_LABEL_PREFIX): New macro.
107 (unique_label): Use it.
108 (assemble_gif): Emit start label before mach label.
109 (s_endgif): Update. NLOOP is in quadwords for IMAGE mode now.
110
111 Mon Feb 23 15:55:12 1998 Doug Evans <devans@canuck.cygnus.com>
112
113 * config/tc-dvp.c (assemble_dma): Do alignment before parsing insn.
114 (setup_dma_autocount): Renamed from setup_autocount. New argument
115 inline_p. All callers changed. Fix word address of count.
116 (parse_dma_addr_autocount): Fix word address of address.
117
118 end-sanitize-sky
119 start-sanitize-sky
120 Mon Feb 23 17:24:06 1998 Jim Lemke <jlemke@cygnus.com>
121
122 * config/obj-elf.c: Take Ian's suggestion, leave .bss etc
123 in special_sections table and add .vubss etc via
124 ELF_TC_SPECIAL_SECTIONS.
125 * config/tc-dvp.h: Likewise.
126
127 end-sanitize-sky
128 Mon Feb 23 11:29:06 1998 Doug Evans <devans@seba.cygnus.com>
129
130 * cgen.c: #include symcat.h.
131 * config/tc-m32r.c: Likewise.
132
133 Mon Feb 23 10:27:40 1998 Jeffrey A Law (law@cygnus.com)
134
135 * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
136 absolute expressions instead of '$' prefixed register names.
137
138 Sat Feb 21 22:36:52 1998 Richard Henderson <rth@cygnus.com>
139
140 * read.c (s_set): Record file and line info for symbols when -as.
141 (pseudo_set): Don't overwrite that dummy fragment.
142
143 start-sanitize-sky
144 Fri Feb 20 12:43:02 1998 Doug Evans <devans@canuck.cygnus.com>
145
146 * config/tc-dvp.c (md_assemble): Handle ASM_DIRECT state.
147 (dvp_parse_done): Comment out contents.
148 (s_enddirect,s_endmpg,s_endunpack): Call demand_empty_rest_of_line.
149 (s_state): Handle .vu in included file.
150 (asm_state): New state ASM_GIF.
151 (asm_state_stack): Maintain stack of parsing states.
152 ({push,pop,set}_asm_state): New functions.
153 (CUR_ASM_STATE): Renamed from cur_asm_state, all uses updated.
154 (gif_{insn_type,data_name,insn_frag}): New static locals.
155 (md_assemble): Watch for .endgif if in ASM_GIF state.
156 (assemble_gif): Complete.
157 (s_endgif): Complete.
158 (cur_mach): New static local.
159 (record_mach): New function.
160 (md_begin): Initialize `cur_mach'.
161 (assemble_*): Record current mach type.
162 (vu_count): New static local.
163 (assemble_vif): Temporary hack to properly align mpg/direct data.
164 (assemble_vu): Insert mpg every 256 insns.
165
166 end-sanitize-sky
167 Fri Feb 20 15:03:13 1998 Ian Lance Taylor <ian@cygnus.com>
168
169 * config/tc-ppc.c (md_pseudo_table): Add "section".
170 (ppc_named_section): New static function.
171
172 Thu Feb 19 22:25:42 1998 Richard Henderson <rth@cygnus.com>
173
174 * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
175 so we don't have to scan the entire list.
176
177 start-sanitize-d30v
178 Tue Feb 17 17:02:15 1998 Fred Fish <fnf@cygnus.com>
179
180 * config/tc-d30v.c (parallel_ok): For the explicitly parallel
181 case, allow the parallel instructions to modify the same flag
182 bits.
183
184 end-sanitize-d30v
185 Thu Feb 19 16:08:15 1998 Richard Henderson <rth@cygnus.com>
186
187 * listing.c (list_symbol_table): Categorize symbols by
188 undefined_section rather than sy_frag->line == NULL.
189
190 start-sanitize-sky
191 Thu Feb 19 02:17:03 1998 Doug Evans <devans@charmed.cygnus.com>
192
193 * config/tc-dvp.c (LOCAL_LABEL_PREFIX,END_LABEL_PREFIX): New macros.
194 (inline_dmadata): Renamed from s_dmadata_implied.
195 (assemble_one_insn): Rewrite dma operand processing.
196 (md_apply_fix3): Handle DVP_OPERAND_DMA_NEXT.
197 (unique_name,setup_autocount): New functions.
198
199 * config/tc-dvp.c: Include stdarg.h/varargs.h.
200 (md_pseudo_table): Add .word.
201 (assemble_dma): Set alignment to 16 bytes. Enable code that records
202 fixups.
203 (assemble_one_insn): Handle DVP_OPERAND_DMA_{ADDR,AUTOCOUNT}.
204 (md_apply_fix3): Handle DVP_OPERAND_DMA_ADDR.
205 (parse_dma_addr_autocount): Renamed from parse_dma_ptr_autocount.
206 Rewrite.
207 (eval_expr): New function.
208 (create_label,create_colon_label): New function.
209 (s_enddmadata): Rewrite.
210
211 end-sanitize-sky
212 Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
213
214 * Makefile.am (install-exec-local): Install properly when ln
215 fails or tooldir == prefix.
216
217 start-sanitize-m32rx
218 Wed Feb 18 18:11:42 1998 Nick Clifton <nickc@cygnus.com>
219
220 * config/tc-m32r.c (first_writes_to_seconds_operands): Special
221 handling of updates to the condition bit as this is shadow by
222 several registers.
223 end-sanitize-m32rx
224 start-sanitize-sky
225 Wed Feb 18 15:49:56 1998 Doug Evans <devans@canuck.cygnus.com>
226
227 * config/tc-dvp.c (parse_float): New function.
228 (assemble_vu): Handle loi insns.
229 (assemble_one_insn): Simplify suffix parsing.
230 Handle DVP_OPERAND_FLOAT. Allow FAKE arguments to have a parser
231 handler.
232
233 end-sanitize-sky
234 start-sanitize-m32rx
235 Wed Feb 18 14:30:26 1998 Nick Clifton <nickc@cygnus.com>
236
237 * doc/c-m32r.texi (M32R-Opts): Add --Wp and --Wnp.
238
239 * doc/as.texinfo (Overview): Add --Wp and --Wnp.
240
241 * config/tc-m32r.c (md_longopts): Accept --Wp as an abbreviation
242 for --warn-explicit-parallel-conflicts and --Wnp as an
243 abbreviation for --no-warn-explicit-parallel-conflicts.
244 (assemble_parallel_insn): Use non-relaxable versions of branch
245 instructions.
246
247 Wed Feb 18 11:00:18 1998 Nick Clifton <nickc@cygnus.com>
248
249 * app.c: Parse || as a seperator between assembler statements.
250
251 end-sanitize-m32rx
252 Tue Feb 17 18:58:51 1998 Doug Evans <devans@seba.cygnus.com>
253
254 * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
255 Test result of insert_operand for error.
256
257 start-sanitize-m32rx
258 Mon Feb 16 12:28:40 1998 Nick Clifton <nickc@cygnus.com>
259
260 * config/tc-m32r.c (md_assemble): Only parallelise instructions
261 when m32rx target is enabled and the instructions are not
262 relaxable.
263
264 Fri Feb 13 14:42:16 1998 Nick Clifton <nickc@cygnus.com>
265
266 * config/tc-m32r.c (first_writes_to_seconds_operands): Do not
267 bother checking insn which have no operands.
268
269 end-sanitize-m32rx
270 Fri Feb 13 16:41:42 1998 Ian Lance Taylor <ian@cygnus.com>
271
272 * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
273 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
274 * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
275 * doc/Makefile.in: Rebuild.
276
277 start-sanitize-m32rx
278 Fri Feb 13 09:57:11 1998 Nick Clifton <nickc@cygnus.com>
279
280 * config/tc-m32r.c (first_writes_to_seconds_operands): New
281 function. Replaces get_src_reg(), check_for_side_effects(),
282 reads_from_src_reg(). Uses new insn operand features of cgen.
283 (writes_to_pc): New function., but with new code suppressed for now.
284 (md_assemble): Call first_writes_to_seconds_operands().
285 end-sanitize-m32rx
286 Fri Feb 13 00:47:44 1998 Ian Lance Taylor <ian@cygnus.com>
287
288 * config/tc-mips.c (macro_build): Handle operand type 'C'.
289 (macro): Fix handling of M_COP[0-3].
290
291 Thu Feb 12 14:06:59 1998 Ian Lance Taylor <ian@cygnus.com>
292
293 Based on patches from Ross Harvey <ross@teraflop.com>:
294 * macro.c (ISSEP): Only treat '<' and '>' as separator characters
295 if macro_alternate or macro_mri.
296 (getstring): Remove support for byte constants between < and >.
297 (get_any_string): '<' only starts a string if macro_alternate or
298 macro_mri.
299 (macro_expand_body): Permit keyword parameters following
300 positional parameters.
301
302 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
303 * configure.in (alpha*-*-netbsd*): New target.
304 * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
305 * configure: Rebuild.
306
307 * as.h (flag_warn_suppress_instructionswap): Move from here...
308 * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
309 here, and make static.
310
311 * ehopt.c (eh_frame_code_alignment): Only use seg_info if
312 BFD_ASSEMBLER or MANY_SEGMENTS.
313
314 * as.c (show_usage): Update bug-gnu-utils address.
315 * gasp.c (show_usage): Likewise.
316 * doc/as.texinfo (Bug Reporting): Likewise.
317
318 Wed Feb 11 23:26:28 1998 Jeffrey A Law (law@cygnus.com)
319
320 * config/tc-mips.c (load_address): Don't use mips III or mips IV
321 insns regardless of the size of a pointer if we're in mips I or
322 MIPS II mode.
323 (macro, macro2, s_cprestore, s_cpadd): Likewise.
324
325 Thu Feb 12 03:41:00 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
326
327 Fix rac to accept only a0:
328 * tc-d10v.c (parallel_ok, find_opcode):
329 Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
330 Introduce OPERAND_GPR.
331
332 Wed Feb 11 16:28:13 1998 Richard Henderson <rth@cygnus.com>
333
334 * read.c (s_fill): Handle non-constant repeat counts by creating
335 an rs_space fragment.
336
337 start-sanitize-m32rx
338 Wed Feb 11 10:32:28 1998 Nick Clifton <nickc@cygnus.com>
339
340 * doc/c-m32r.texi: Document warning and error messages. Add
341 descriptions of --warn-explicit-parallel-conflicts.
342
343 * doc/as.texinfo: Add more m32rx command line options.
344
345 end-sanitize-m32rx
346 Tue Feb 10 18:31:31 1998 Ian Lance Taylor <ian@cygnus.com>
347
348 * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
349 from as_bad to as_warn.
350
351 start-sanitize-sky
352 Tue Feb 10 15:15:40 1998 Doug Evans <devans@canuck.cygnus.com>
353
354 * config/tc-dvp.c (*): pke->vif, gpuif->gif.
355
356 end-sanitize-sky
357 Tue Feb 10 18:04:00 1998 Jim Lemke <jlemke@cygnus.com>
358
359 * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
360 * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
361 * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
362 start-sanitize-sky
363 * config/tc-dvp.h: Add configuration specific section names.
364 end-sanitize-sky
365
366 Tue Feb 10 17:58:18 1998 Ian Lance Taylor <ian@cygnus.com>
367
368 * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
369 seg_fix_rotP rather than fix_root from seg_info.
370
371 Tue Feb 10 15:32:22 1998 Ian Carmichael <iancarm@cygnus.com>
372
373 * expr.c: Add support for 0x1_2_3_4 bignums.
374
375 Tue Feb 10 14:43:40 1998 Ian Lance Taylor <ian@cygnus.com>
376
377 * configure.in: Change -linux* to -linux-gnu*.
378 * configure: Rebuild.
379
380 * app.c (do_scrub_begin): Treat \r as whitespace.
381
382 start-sanitize-m32rx
383 Mon Feb 9 16:23:11 1998 Nick Clifton <nickc@cygnus.com>
384
385 * config/tc-m32r.c (get_src_reg): Use m32r_cgen_get_operand()
386 rather than parsing syntax string manually.
387 (assemble_parallel_insn): Check for both forms of parallel
388 conflict.
389 end-sanitize-m32rx
390 Mon Feb 9 14:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
391
392 * Makefile.am: Update dependencies.
393 * Makefile.in: Rebuild.
394
395 Sat Feb 7 15:33:51 1998 Ian Lance Taylor <ian@cygnus.com>
396
397 * configure, aclocal.m4: Rebuild with new libtool.
398
399 Fri Feb 6 16:08:30 1998 Jeffrey A Law (law@cygnus.com)
400
401 * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
402 the argument to bfd_set_arch_mach.
403 (load_address): Use bfd_arch_bits_per_address to determine the
404 bit size of an address instead of looking at the isa level.
405 (macro, macro2, s_cprestore, s_cpadd): Likewise.
406
407 start-sanitize-v850e
408 Fri Feb 6 14:44:34 1998 Nick Clifton <nickc@cygnus.com>
409
410 * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
411 end-sanitize-v850e
412 Thu Feb 5 12:39:08 1998 Ian Lance Taylor <ian@cygnus.com>
413
414 * ehopt.c: New file.
415 * as.h (enum _relax_state): Add rs_cfa.
416 (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
417 (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
418 * read.c (emit_expr): Call check_eh_frame.
419 * write.c (cvt_frag_to_fill): Handle rs_cfa.
420 (relax_segment): Likewise.
421 * Makefile.am: Rebuild dependencies.
422 (GAS_CFILES): Add ehopt.c.
423 (GENERIC_OBJS): Add ehopt.o.
424 * doc/internals.texi (Frags): Document rs_cfa.
425
426 * as.c (show_usage): Mention --traditional-format.
427 (parse_args): Accept --traditional-format.
428 * as.h (flag_traditional_format): Declare.
429 * output-file.c (output_file_create): If flag_traditional_format,
430 set BFD_TRADITIONAL_FORMAT on stdoutput.
431 * doc/as.texinfo, doc/as.1: Document --traditional-format.
432
433 * config/tc-mips.c (append_insn): Make sure that if we have a
434 fixup for an unmatched %hi reloc, it does not associated with a
435 variant frag.
436
437 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
438 * doc/Makefile.in: Likewise.
439
440 Wed Feb 4 15:41:54 1998 Nick Clifton <nickc@cygnus.com>
441
442 * config/tc-m32r.c (check_for_side_effects): New function.
443 (can_make_parallel): Add checks for instruction side effects
444 clashing with the other instruction.
445 (assemble_parallel_insn): Improve warning messages. Return error
446 message from non-swapped instruction order.
447
448 Wed Feb 4 20:00:26 1998 James G. Smith <jsmith@teknema.demon.co.uk>
449
450 * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
451
452 * config/tc-arm.h: Replace md_after_pass_hook definition with a
453 md_cleanup definition. This moves the forced literal output to
454 the end of the source pass, and avoids macro's inserting literals
455 into the code immediately after the macro expansion.
456
457 Wed Feb 4 13:17:19 1998 Ian Lance Taylor <ian@cygnus.com>
458
459 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
460 a gas internal symbol is adjustable.
461 * config/tc-ppc.h (tc_fix_adjustable): Likewise.
462
463 * as.h: If gcc version greater than 2.6, use `__format__' and
464 `__printf__' in function attributes, rather than `format' and
465 `printf'.
466
467 Mon Feb 2 18:38:18 1998 Ian Lance Taylor <ian@cygnus.com>
468
469 * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
470
471 Mon Feb 2 18:30:34 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
472
473 Add tms320c30 support:
474 * config/tc-tic30.h: New file.
475 * config/tc-tic30.c: New file.
476 * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
477 TARGET_FORMAT as "coff-tic30".
478 * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
479 * Makefile.am: Rebuild dependencies.
480 (CPU_TYPES): Add tic30.
481 (CPU_OBJ_VALID): tic30-aout is valid.
482 (TARGET_CPU_CFILES): Add config/tc-tic30.c.
483 (TARGET_CPU_HFILES): Add config/tc-tic30.h.
484 * configure, Makefile.in: Rebuild.
485
486 Mon Feb 2 10:20:37 1998 Nick Clifton <nickc@cygnus.com>
487
488 * config/tc-v850.c (md_assemble): Improvements to error messages
489 for PR 14720.
490
491 Mon Feb 2 12:39:05 1998 Geoff Keating <geoffk@ozemail.com.au>
492
493 * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
494 BFD_RELOC_HI16_S to store the high bits of any value.
495
496 * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
497 (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
498 assembler calculate relocations to any external symbol at all.
499 * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
500 involving generation of pc-relative relocs.
501 (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
502 has been moved to md_apply_fix3.
503
504 * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
505 (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
506 which actually means (the address of identifier's GOT entry) +
507 constant, which is not particularly useful.
508
509 Fri Jan 30 11:02:35 1998 Doug Evans <devans@canuck.cygnus.com>
510
511 * read.h (include_dirs): Declare.
512 (include_dir_count,include_dir_maxlen): Declare.
513 start-sanitize-sky
514
515 * config/tc-dvp.c (md_longopts): Add -no-dma, -no-dma-pke.
516 (md_parse_option): Handle them.
517 (md_show_usage): Print them.
518 (output_dma,output_pke): New static globals.
519 (assemble_pke): Handle -no-dma-pke.
520 (insert_file): Search include dir list.
521 (s_enddirect): Validate length if prespecified.
522 (s_endmpg): Likewise. Handle -no-dma-pke.
523 (s_endunpack): Handle -no-dma-pke.
524 (md_pcrel_from_section): Add offset to delay slot for
525 undefined symbols.
526 end-sanitize-sky
527
528 Fri Jan 30 11:47:02 1998 Ian Lance Taylor <ian@cygnus.com>
529
530 * configure.in: Correct check for shared opcodes library.
531 * configure: Rebuild.
532
533 * listing.c (buffer_line): If we can't open the file, set at_end.
534 (listing_print): Remove unused local variable fi.
535
536 * config/m68k-parse.y (reglistpair): Handle register list in
537 either order.
538
539 * config/vms-conf.h: Don't undef VERSION.
540
541 start-sanitize-m32rx
542 Thu Jan 29 13:36:29 1998 Doug Evans <devans@canuck.cygnus.com>
543
544 * config/tc-m32r.c (allow_m32rx): Must compile with K&R C.
545 (m32rx support): only include #ifdef HAVE_CPU_M32RX.
546
547 end-sanitize-m32rx
548 Thu Jan 29 14:42:44 1998 Pat Rankin <rankin@eql.caltech.edu>
549
550 * Makefile.am (CONFIG_OBJS): New variable, containing part of old
551 OBJS variable.
552 (GENERIC_OBJS): New variable, with the rest of the old OBJS
553 variable.
554 (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
555 ($(srcdir)/make-gas.com): Rename from make-gas.com.
556 (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
557 (EXTRA_DIST): Define.
558 * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
559 explicitly rather than via the list of object files.
560 (gcc-as.opt): New file created when make-gas.com is run.
561 * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
562 itbl-cpu.h} to #include appropriate file rather than copying that
563 file.
564 * config/vms-conf.h: Synchronize with current config.in.
565 * Makefile.in: Rebuild.
566
567 start-sanitize-d30v
568 Thu Jan 29 18:48:19 1998 Bill Moyer <billm@cygnus.com>
569
570 * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
571 (parallel_ok): Relaxed parallel subinstruction dependency check.
572
573 end-sanitize-d30v
574 start-sanitize-m32rx
575 Wed Jan 28 16:27:27 1998 Nick Clifton <nickc@cygnus.com>
576
577 * config/tc-m32r.c (md_assemble): Fix determination of when
578 instructions can be combined in parallel.
579
580 end-sanitize-m32rx
581 Wed Jan 28 14:35:00 1998 Bill Moyer <billm@cygnus.com>
582
583 * as.h (flag_warn_suppress_instructionswap): added new flag.
584 * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap"
585 command line argument.
586 * tc-d10v.c (write_2_short): emit "Swapping instructions"
587 warning only if flag_warn_suppress_instructionswap is false.
588
589 Wed Jan 28 16:41:19 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
590
591 * configure.in (i386-*-mingw32*): New target.
592 * configure: Rebuild.
593
594 Wed Jan 28 14:51:18 1998 Ian Lance Taylor <ian@cygnus.com>
595
596 * symbols.c (resolve_symbol_value): Don't set the segment if it
597 hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
598
599 * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
600 S_GET_SEGMENT.
601
602 Wed Jan 28 13:54:50 1998 Pat Rankin <rankin@eql.caltech.edu>
603
604 as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
605 depends upon HAVE_{UNLINK,REMOVE} values rather than host
606 compiler.
607
608 Wed Jan 28 13:48:08 1998 Ian Lance Taylor <ian@cygnus.com>
609
610 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
611
612 start-sanitize-sky
613 Wed Jan 28 10:00:40 1998 Doug Evans <devans@canuck.cygnus.com>
614
615 * configure.in: Add dvp support.
616 * configure: Regenerate.
617 * config/tc-dvp.[ch]: New files.
618
619 end-sanitize-sky
620 Wed Jan 28 09:52:00 1998 Nick Clifton <nickc@cygnus.com>
621
622 * config/tc-v850.c (v850_insert_operand): Display instruction when
623 an error is encountered.
624
625 Tue Jan 27 13:32:01 1998 Robert Lipe <robertl@dgii.com>
626
627 * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
628 (i386-*-sco3.2v5*coff): New target.
629 (i386-*-sco3.2*): New target.
630 * configure: Rebuild.
631
632 Tue Jan 27 11:06:52 1998 Nick Clifton <nickc@cygnus.com>
633
634 * config/tc-v850.c: Fix PRs 14721, 14722, 14723, tidying error
635 message production.
636
637 Tue Jan 27 12:24:32 1998 Ian Lance Taylor <ian@cygnus.com>
638
639 * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
640 validate_immediate return value in the right type for comparisons
641 to FAIL.
642
643 Tue Jan 27 06:51:59 1998 Richard Henderson <rth@cygnus.com>
644
645 * listing.c (MAX_BYTES): Use listing variables not constants.
646 (data_buffer): No longer an array, but a pointer.
647 (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
648 (listing_listing): Allocate data_buffer.
649
650 Tue Jan 27 06:38:35 1998 Richard Henderson <rth@cygnus.com>
651
652 * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
653 --listing-rhs-width, --listing-cont-lines.
654 (show_usage): Update.
655 * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
656 (listing_lhs_cont_lines, listing_rhs_width): New vars.
657 (print_lines): Use the variables instead of the constants.
658 (listing_listing): Likewise.
659 * listing.h: Declare the new vars.
660
661 Tue Jan 27 05:32:05 1998 Richard Henderson <rth@cygnus.com>
662
663 * as.c (parse_args): Add --keep-locals alias for -L.
664 Add --strip-local-absolute.
665 (show_usage): Update.
666 * as.h (flag_strip_local_absolute): New flag.
667 * symbols.c (S_IS_LOCAL): Use it.
668 * config/obj-aout.h (S_IS_LOCAL): Likewise.
669 * config/obj-bout.h (S_IS_LOCAL): Likewise.
670 * config/obj-coff.h (S_IS_LOCAL): Likewise.
671
672 Mon Jan 26 13:07:41 1998 Nick Clifton <nickc@cygnus.com>
673
674 * config/tc-m32r.c: Detect if explicitly parallel instructions
675 might have an io conflict and issue a warning message.
676
677 start-sanitize-m32rx
678 Mon Jan 26 12:38:54 1998 Nick Clifton <nickc@cygnus.com>
679
680 * config/tc-m32r.c (reads_from_src_reg): Change second parameter
681 to a count of the number of matches to skip.
682 (can_make_parallel): Pass count of number of matches to skip to
683 reads_from_src_reg().
684
685 end-sanitize-m32rx
686 Thu Jan 22 17:51:44 1998 Nick Clifton <nickc@cygnus.com>
687
688 start-sanitize-m32rx
689 * config/tc-m32r.c: Add support for swapping fixups of swap
690 instructions.
691 end-sanitize-m32rx
692 * cgen.c (cgen_save_fixups, cgen_restore_fixups,
693 cgen_swap_fixups): Functions to save, restore and swap the fixup
694 chain with a backup copy.
695 (cgen_asm_finish_insn): Returns address of constructed insn.
696
697 Wed Jan 21 16:49:10 1998 Richard Henderson <rth@cygnus.com>
698
699 * listing.c (file_info_struct): Remove FILE, add POS.
700 (last_open_file_info, last_open_file): New; a one entry FILE* cache.
701 (file_info): Don't open the file.
702 (buffer_line): Check for the file in the last_open cache, updating
703 as necessary.
704 (print_source): Don't reference file_info->file.
705 (listing_listing): Likewise.
706 (listing_print): Close the file in the cache, if any.
707
708 start-sanitize-m32rx
709 Tue Jan 20 17:08:53 1998 Nick Clifton <nickc@cygnus.com>
710
711 * config/tc-m32r.c (md_assemble): Add code to swap explicitly
712 parallel instructions so that they are in the correct order.
713 (reads_from_src_reg, get_src_reg, can_make_parallel,
714 make_parallel): New functions to support opportunistic
715 parallelisation of adjacent instructions.
716
717 end-sanitize-m32rx
718 Fri Jan 16 14:51:48 1998 Ian Lance Taylor <ian@cygnus.com>
719
720 * read.c (dwarf_file_string): New file static variable.
721 (emit_expr): Look for constant sequence that leads up to a file
722 name in DWARF debugging output.
723 (stringer): Use dwarf_file_string to decide whether to accept a
724 string as a file name.
725
726 Fri Jan 16 11:30:37 1998 Richard Henderson <rth@cygnus.com>
727
728 * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
729 (crack_operand): Add reg->reglst MRI hack.
730 (r_seg): Put reglst symbols in reg_section.
731 (m68k_frob_symbol): Frob reglst symbols into absolute_section.
732
733 Thu Jan 15 14:19:01 1998 Richard Henderson <rth@cygnus.com>
734
735 * tc-sh.c (get_specific): Handle SGR & DBR.
736
737 Thu Jan 15 13:46:48 1998 Richard Henderson <rth@cygnus.com>
738
739 * tc-h8300.c (parse_reg): Take the length of the symbol into
740 account when attempting to match a register name.
741 * tc-h8500.c (parse_reg): Likewise.
742
743 Wed Jan 14 17:52:33 1998 Nick Clifton <nickc@cygnus.com>
744
745 start-sanitize-m32rx
746 * config/tc-m32r.c (md_assemble): Add support for parsing parallel
747 instructions.
748 end-sanitize-m32rx
749 * cgen.c: Formatting changes to improve readability.
750
751 Wed Jan 14 15:41:41 1998 Jeffrey A Law (law@cygnus.com)
752
753 * config/tc-mips.c (macro): Rework division code to avoid unfilled
754 delay slot.
755
756 start-sanitize-d30v
757 Wed Jan 14 18:04:20 1998 Michael Meissner <meissner@cygnus.com>
758
759 Based on a patch from Jim Wilson
760 * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
761 (tc_gen_reloc): Handle cross section PC relative relocs
762 correctly.
763
764 end-sanitize-d30v
765 Wed Jan 14 15:02:19 1998 Doug Evans <devans@seba.cygnus.com>
766
767 * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
768
769 Mon Jan 12 13:04:57 1998 Doug Evans <devans@seba.cygnus.com>
770
771 * cgen.c: #include setjmp.h. Clean up pass over `struct foo' usage.
772 (expr_jmp_buf): New static local.
773 (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
774 (cgen_md_operand): New function.
775 * tc-m32r.c: Clean up pass over `struct foo' usage.
776 (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
777
778 Tue Jan 6 15:36:02 1998 Richard Henderson <rth@cygnus.com>
779
780 * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
781 (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
782
783 Fri Jan 2 16:08:54 1998 Ian Lance Taylor <ian@cygnus.com>
784
785 * config/tc-i386.c (i386_operand): Give an error if there are
786 unrecognized characters after an expression.
787
788 Wed Dec 31 12:29:47 1997 Jeffrey A Law (law@cygnus.com)
789
790 * config/tc-mn10200.c (md_relax_table): Correct branch ranges.
791
792 Mon Dec 22 13:06:05 1997 Joel Sherrill <joel@oarcorp.com>
793
794 * configure.in (i386*-go32-rtems*): Fix to be the same as
795 i[3456]86-go32.
796 * configure: Rebuild.
797
798 Mon Dec 22 12:54:07 1997 Ian Lance Taylor <ian@cygnus.com>
799
800 * config/tc-mips.c (macro): The 4650 doesn't permit M_LDC1_AB,
801 M_SDC1_AB, M_L_DOB, M_L_DAB, M_S_DAB, or M_S_DOB.
802 (mips_ip): Always check for FP_D, not just for instructions that
803 are not part of the regular ISA.
804
805 Thu Dec 18 16:49:28 1997 Richard Henderson <rth@cygnus.com>
806
807 * config/tc-d10v.c (build_insn): Make `number' a long for 64-bit hosts.
808
809 Thu Dec 18 16:42:57 1997 Richard Henderson <rth@cygnus.com>
810
811 * config/tc-alpha.c (cpu_types): 21164pc/pca56 does not have CIX.
812
813 Wed Dec 17 21:23:07 1997 Jeffrey A Law (law@cygnus.com)
814
815 * expr.c (integer_constant 32bit bignum): Mask off bits outside
816 the range we care about.
817
818 start-sanitize-d30v
819 Wed Dec 17 15:29:03 1997 Michael Meissner <meissner@cygnus.com>
820
821 * config/tc-d30v.c (md_shortopts): Add 'n' and 'N' options.
822 (exec_type_enum): Enumeration giving all of the exec types.
823 (warn_nops): New static variable to give nop warning level.
824 ({cur,prev}_mul32_p): New static variable to keep track of whether
825 the current/previous instruction is a 32-bit multiply.
826 (Optimizing): Make static.
827 (NOP{2,_LEFT,_RIGHT}): Macros for word of nops and left/right
828 nops.
829 (d30v_insert_operand): Delete declaration of unused function.
830 (write_2_short): Make exec_type argument enum, not int.
831 (parallel_ok): Ditto.
832 (check_range): Delete unused variable(s).
833 (build_insn): Ditto.
834 (find_format): Ditto.
835 (md_apply_fix3): Ditto.
836 (md_show_usage): Document -n and -N.
837 (md_parse_option): Parse -n and -N.
838 (write_1_short): If -n, warn about adding a nop. Use
839 NOP_{LEFT,RIGHT}.
840 (write_2_short): Use enumeration values instead of hard coded
841 integers. Reset exec_type for default operations. For explicit
842 parallel operations, call parallel_ok to make sure everything is
843 ok. If writing out a parallel operation, and the previous
844 instruction was a 32-bit multiply, indicate current instruction
845 is.
846 (parallel_ok): Allow add/tx ... to be done in parallel with
847 another add/tx ... assuming the gpr registers don't overlap.
848 (md_assemble): Use exec type enumeration values, not hard coded
849 ints. Check for loads or 16-bit multiplies following in the next
850 cycle after a 32-bit multiply. Add nops if that is the case.
851 (do_assemble): Copy prev_mul32_p to cur_mul32_p, and set
852 cur_mul32_p if current instruction is a 32-bit multiply.
853 (find_format): Change spacing and layout.
854
855 end-sanitize-d30v
856 start-sanitize-tic80
857 Tue Dec 16 16:55:45 1997 Fred Fish <fnf@cygnus.com>
858
859 * config/tc-tic80.c (tic80_relax): New static variable.
860 (md_longopts): Add new OPTION_RELAX and OPTION_NO_RELAX options.
861 (md_parse_option): Handle new relax options.
862 (md_show_usage): Document new relax options.
863 (find_opcode): Don't use short forms of PC relative branches if
864 tic80_relax is set.
865
866 end-sanitize-tic80
867 start-sanitize-d30v
868 Tue Dec 16 15:26:03 1997 Michael Meissner <meissner@cygnus.com>
869
870 * config/tc-d30v.c (parallel_ok): Remove non-register bits from
871 used/set flag fields. Make flag vars unsigned long. Use
872 FLAG_A{0,1} for accumulators. Allow any 2 insns to be done in
873 parallel if they use the same conditional flag with reversed
874 meaning. Allow 2 add/sub insns that set the carry or overflow
875 flags but do not query them to be done in parallel. Don't allow 2
876 word store operations to be done in parallel with ADDppp or
877 SUBppp. Don't allow loads to be done in parallel with 16 bit
878 multiplies.
879
880 end-sanitize-d30v
881 Tue Dec 16 09:20:43 1997 Nick Clifton <nickc@cygnus.com>
882
883 * config/tc-arm.c: Prevent use of interworking support for
884 non-COFF targets.
885
886 Mon Dec 15 15:20:32 1997 Nick Clifton <nickc@cygnus.com>
887
888 * doc/all.texi: Add M32R cpu.
889
890 * doc/as.texinfo: Add documentation of m32r processor.
891
892 * doc/c-m32r.texi: New file, documenting m32r specific features.
893
894 start-sanitize-m32rx
895 * config/tc-m32r.c (allow_m32rx): New function.
896 (enable_m32rx): New variable.
897 (md_pseudo_table): Added .m32r and .m32rx pseudo ops
898 (md_show_usage): Document new --m32rx command line option.
899 (md_parse_option): Implement new --m32rx command line option.
900 end-sanitize-m32rx
901
902 Mon Dec 15 10:32:28 1997 Jeffrey A Law (law@cygnus.com)
903
904 * config/tc-mips.c (mips_ip): Correctly insert 'P' operands into
905 the instruction.
906
907 start-sanitize-tic80
908 Fri Dec 12 11:44:20 1997 Fred Fish <fnf@cygnus.com>
909
910 * config/tc-tic80.c (build_insn): Handle instructions that have
911 long (32 bit) PC relative offsets. Fix places that previously
912 misused R_MPPCR for 15 bit offsets to use the new R_MPPCR15W type.
913 (md_apply_fix): Add case to handle long PC relative offsets.
914
915 end-sanitize-tic80
916 Fri Dec 12 10:35:01 1997 Nick Clifton <nickc@cygnus.com>
917
918 * doc/c-arm.texi (ARM Options): Document support for new ARM
919 processor names.
920
921 * config/tc-arm.c (md_parse_option): Add support for new ARM
922 processor names.
923
924 Thu Dec 11 17:46:50 1997 Richard Henderson <rth@cygnus.com>
925
926 * config/tc-m68k.c (m68k_ip): Don't overwrite opcode table data.
927 (insop, m68k_ip): Make `opcode' const so it doesn't happen again.
928
929 Fri Dec 5 11:23:59 1997 Nick Clifton <nickc@cygnus.com>
930
931 * config/tc-v850.c (md_assemble): Fix BFD_RELOC_32 against a
932 symbol + offset.
933
934 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Use
935 SHT_V850_{S|T|Z}COMMON to mark special common sections.
936
937 Tue Dec 2 17:05:13 1997 Nick Clifton <nickc@cygnus.com>
938
939 * config/tc-v850.c: Brought up to date with the branch.
940
941 Mon Dec 1 20:24:18 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
942
943 * config/tc-sh.c (SWITCH_TABLE_CONS): Handle (fix)->fx_size == 1.
944 (SWITCH_TABLE): Handle BFD_RELOC_8.
945 (md_apply_fix): #ifndef BFD_ASSEMBLER code: Handle fixP->fx_size == 1.
946 (coff_reloc_map): Add BFD_RELOC_8_PCREL entry.
947 (sh_coff_reloc_mangle): SWITCH_TABLE case: Handle BFD_RELOC_8.
948
949 Sat Nov 22 16:19:22 1997 Richard Henderson <rth@cygnus.com>
950
951 * tc-alpha.c (range_signed_16, range_signed_32): Work around an
952 apparent bug in gcc's long long support crossing from x86.
953
954 Sat Nov 22 14:26:09 1997 Nick Clifton <nickc@cygnus.com>
955
956 * config/tc-arm.c: Brought up to date with latest changes on arm
957 branch.
958
959 Sat Nov 22 15:50:09 1997 Klaus Kaempf <kkaempf@progis.de>
960
961 * config-gas.com: Get version info from configure.in.
962
963 * makefile.vms: include depend.obj in OBJS.
964
965 * config/tc-alpha.c (s_alpha_section): Remove ".lcomm" handling.
966
967 * config/tc-alpha.c (alpha_basereg_clobbered): Remove variable and
968 all corresponding code.
969
970 Thu Nov 20 15:06:08 1997 Richard Earnshaw <rearnsha@arm.com>
971
972 * config/tc-arm.h (TARGET_FORMAT for generic a.out targets): Allow
973 run-time endian selection.
974
975 Wed Nov 19 17:44:42 1997 Richard Henderson <rth@cygnus.com>
976
977 * tc-sh.c (parse_reg): Properly quote for fv4.
978
979 Wed Nov 19 23:46:18 1997 Ian Lance Taylor <ian@cygnus.com>
980
981 * symbols.c (resolve_symbol_value): Add missing breaks in case on
982 symbol value operator.
983
984 start-sanitize-vr5400
985 Wed Nov 19 02:24:07 1997 Ken Raeburn <raeburn@cygnus.com>
986
987 * config/tc-mips.c (gpr_interlocks, cop_interlocks): VR5400 has
988 these.
989
990 end-sanitize-vr5400
991 Tue Nov 18 18:45:14 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
992
993 * config/tc-d10v.c (parallel_ok, find_opcode):
994 Split OPERAND_FLAG into OPERAND_FFLAG and OPERAND_CFLAG.
995
996 Sun Nov 16 10:05:07 1997 Fred Fish <fnf@cygnus.com>
997
998 * config/obj-coff.c (fixup_segment): Cast second arg of
999 md_apply_fix3 call to type "valueT *".
1000
1001 Thu Nov 13 13:53:10 1997 Andrew Cagney <cagney@b1.cygnus.com>
1002
1003 * configure.in (emulations): Make FreeBSD an aout / i386bsd
1004 variant.
1005 * configure: Re-generate.
1006
1007 Thu Nov 13 11:07:14 1997 Gavin Koch <gavin@cygnus.com>
1008
1009 * config/tc-mips.c (macro_build): Use the membership field
1010 for INSN_MACRO's.
1011 (mips_ip): Same.
1012
1013 Thu Nov 13 02:04:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1014
1015 * config/tc-d10v.c (find_opcode): For OPCODE_FAKE, add check for
1016 first argument if it's supposed to be a register.
1017
1018 start-sanitize-tx49
1019 Wed Nov 12 10:06:27 1997 Gavin Koch <gavin@cygnus.com>
1020
1021 * config/tc-mips.c (mips_4900): Added.
1022 (hilo_interlocks): Added mips_4900.
1023 (md_begin): Set default for mips_4900.
1024 (macro_build,mips_ip): Test for INSN_4900 if mips_4900.
1025 (md_longopts): Add "m4900" and "no-m4900".
1026 (md_parse_option): Handle above options.
1027
1028 end-sanitize-tx49
1029 Tue Nov 11 19:25:05 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1030
1031 * app.c (do_scrub_chars): If d10v, re-insert a space before
1032 a '#' when in state 10.
1033
1034 Tue Nov 11 13:33:15 1997 Ian Lance Taylor <ian@cygnus.com>
1035
1036 * config/tc-h8300.c: Include "subsegs.h".
1037 (tc_reloc_mangle): Handle references to symbols which are not
1038 being output, so that references to `.' work.
1039
1040 Mon Nov 10 13:43:33 1997 Ian Lance Taylor <ian@cygnus.com>
1041
1042 * config/tc-m68k.c (m68k_ip): Call add_fix when needed for '_'
1043 case.
1044
1045 * macro.c (sub_actual): If we don't find a parameter for an &,
1046 just substitute &.
1047
1048 Fri Nov 7 21:29:32 1997 Ken Raeburn <raeburn@cygnus.com>
1049 start-sanitize-vr5400
1050
1051 * config/tc-mips.c (mips_ip): Added cases for "e", "%", and "P"
1052 operand types.
1053 (hilo_interlocks): VR5400 has interlocks.
1054 (md_begin): Expect mips64vr5400, not mips64r5400.
1055 end-sanitize-vr5400
1056
1057 * config/tc-mips.c (mips_ip): In default case, call as_bad
1058 instead of fprintf, to get "assembler messages:" message output
1059 before instead of after.
1060
1061 Fri Nov 7 10:36:22 1997 Doug Evans <devans@canuck.cygnus.com>
1062
1063 * frags.h: Handle multiple inclusion.
1064
1065 Wed Nov 5 10:51:49 1997 Doug Evans <devans@canuck.cygnus.com>
1066
1067 Based on a patch from Ian.Dall@dsto.defence.gov.au.
1068 * as.h (struct frag, frag support): Moved from here.
1069 * frags.h: To here.
1070 (struct frag, member tc_frag_data): New member if TC_FRAG_TYPE
1071 is defined.
1072 (struct frag, member fr_cgen): Renamed from fr_targ.cgen.
1073 * cgen.c (cgen_asm_finish_insn): Update.
1074 * config/tc-m32r.c (md_estimate_size_before_relax): Update.
1075 * config/tc-m32r.h (TC_FRAG_INIT): Renamed from md_init_frag.
1076 (md_convert_frag): Ditto.
1077 * config/tc-ns32k.h (TC_FRAG_TYPE): Define.
1078 (frag_opcode_frag,frag_opcode_offset,frag_bsr): Update.
1079 (TC_FRAG_INIT): Update.
1080
1081 Tue Nov 4 16:35:57 1997 Ian Dall <Ian.Dall@dsto.defence.gov.au>
1082
1083 * write.c (print_fixup): Use TC_FIX_DATA_PRINT (if defined) to
1084 print out MD fields of fix.
1085 * frags.c (frag_var, frag_variant): Use TC_FRAG_INIT macro (if
1086 defined) to initialize MD fields in frag.
1087 * as.h (struct frag, ns32k support): Rename ns32k to fr_ns32k.
1088 Delete pcrel_adjust. Add fr_opcode_fragP, fr_opcode_offset.
1089 * config/tc-ns32k.h: Add comments. Remove obsolete
1090 BFD_FAST_SECTION_FILL definition, change prototypes for
1091 fix_new_ns32k and fix_new_ns32k_exp to add new arguments
1092 opcode_frag and opcode_offset and remove pcrel_adjust.
1093 (TC_FIX_TYPE): add opcode_fragP and opcode_offset fields.
1094 (TC_FIX_DATA_PRINT): new macro to print out TC_FIX_TYPE.
1095 (TC_FRAG_INIT): new macro to initialize machine dependent field in
1096 frags.
1097 (frag_opcode_frag, frag_opcode_offset, frag_bsr): macros to access
1098 MD fields in frag structure.
1099 (fix_im_disp, fix_bit_fixP, fix_opcode_frag, fix_opcode_offset,
1100 fix_bsr): macros to access MD fields in fix structure.
1101 * config/tc-ns32k.c: Avoid overlength lines. Align comments. Don't
1102 use struct opcode_location as these fields are now in the frag
1103 structure.
1104 (convert_iif): Call frag_more as it is needed instead
1105 of trying to allocate for the whole insn. Avoid call of frag_more
1106 with negative argument.
1107 (md_pcrel_adjust, md_fix_pcrel_adjust, md_apply_fix,
1108 md_estimate_size_before_relax, md_pcrel_from,
1109 tc_aout_fix_to_chars): use accessor macros to get md fields in fix
1110 and frag structures.
1111 (fix_new_ns32k, fix_new_ns32k_exp): add new arguments opcode_frag and
1112 opcode_offset and remove pcrel_adjust.
1113 (convert_iif, cons_fix_new_ns32k): call fix_new_ns32k,
1114 fix_new_ns32k_exp with changed arguments.
1115
1116 Mon Nov 3 13:30:17 1997 Gavin Koch <gavin@cygnus.com>
1117
1118 * tc-mips.c (md_begin): Reorganize setting of default values so
1119 that mips_cpu depends on TARGET_CPU, and mips_opts.isa depends on
1120 mips_cpu.
1121 (md_parse_option): Remove all code that sets defaults; md_begin
1122 handles all of this now.
1123
1124 Sun Nov 2 14:46:09 1997 Ian Lance Taylor <ian@cygnus.com>
1125
1126 * Makefile.am (STAGESTUFF): Change bin_PROGRAMS to
1127 noinst_PROGRAMS.
1128 (bootstrap, bootstrap2, bootstrap3): Likewise.
1129 * Makefile.in: Rebuild.
1130
1131 * config/tc-ppc.c (ppc_fix_adjustable): Don't adjust relocs in the
1132 TOC section to be against the csect.
1133
1134 Fri Oct 31 18:19:55 1997 Ken Raeburn <raeburn@cygnus.com>
1135
1136 start-sanitize-vr5400
1137 * config/tc-mips.c (mips_5400): New variable.
1138 (md_begin, md_parse_option): Handle 5400 options/names.
1139 (macro_build, mips_ip): Check for 5400-specific instructions.
1140 (md_longopts, OPTION_M5400, OPTION_NO_M5400): More command-line
1141 support for 5400.
1142
1143 end-sanitize-vr5400
1144 * config/tc-mips.c (validate_mips_insn): New function, checks
1145 match versus mask bits, and also verifies that all bits to be
1146 output are actually specified somewhere.
1147 (md_begin): Call it for 32-bit instructions, instead of doing
1148 match/mask check here. In case of failure, print a message, but
1149 check the rest of the opcode table before exiting.
1150
1151 Thu Oct 30 13:46:20 1997 Nick Clifton <nickc@cygnus.com>
1152
1153 * config/tc-arm.c (md_apply_fix3): Fix thumb ADR pseudo op. Patch
1154 from Tony Thompson at ARM: athompso@arm.com
1155
1156 start-sanitize-d30v
1157 Thu Oct 30 11:11:26 1997 Michael Meissner <meissner@cygnus.com>
1158
1159 * config/tc-d30v.c (build_insn): Allow odd registers for ld2w and
1160 friends.
1161
1162 end-sanitize-d30v
1163 start-sanitize-tx49
1164 Wed Oct 29 16:22:38 1997 Gavin Koch <gavin@cygnus.com>
1165
1166 * config/tc-mips.c (hilo_interlocks): True for tx49.
1167 (md_begin): Add mips64tx49.
1168 (md_parse_option): Add 4900 cpu.
1169
1170 end-sanitize-tx49
1171 Fri Oct 24 15:56:47 1997 Ian Lance Taylor <ian@cygnus.com>
1172
1173 * config/tc-ppc.c (md_assemble): When handling @l, always sign
1174 extend if the operand expects a signed value.
1175
1176 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Don't define; use
1177 default which is to permit dollar labels.
1178
1179 Fri Oct 24 11:19:22 1997 Jakub Jelinek <jj@sunsite.mff.cuni.cz>
1180
1181 * config/tc-sparc.c (sparc_memory_model): New variable.
1182 (md_longopts): Add -TSO/-PSO/-RMO options.
1183 (md_parse_options): Handle them.
1184 (sparc_elf_final_processing): For 64 ELF, set required
1185 memory ordering in e_flags. Default to RMO and let the user
1186 override it through command line.
1187
1188 * config/tc-sparc.h (elf_tc_final_processing): Add.
1189
1190 Wed Oct 22 17:42:12 1997 Richard Henderson <rth@cygnus.com>
1191
1192 * config/tc-sparc.c (v9a_asr_table): New variable.
1193 (sparc_ip): Handle v9a asr's.
1194 Patch from David Miller <davem@vger.rutgers.edu>.
1195
1196 Wed Oct 22 17:22:59 1997 Richard Henderson <rth@cygnus.com>
1197
1198 * config/tc-sparc.h (md_do_align): New macro.
1199 * config/tc-sparc.c (sparc_handle_align): Handle rs_align_code.
1200 Patch from Jakub Jelinek <jj@sunsite.mff.cuni.cz>.
1201
1202 Wed Oct 22 12:51:18 1997 Ian Lance Taylor <ian@cygnus.com>
1203
1204 * config/tc-sh.c (sh_small): New variable.
1205 (OPTION_SMALL): Define.
1206 (md_longopts): Add "small".
1207 (md_parse_option): Handle OPTION_SMALL.
1208 (md_show_usage): Mention -small.
1209 * config/tc-sh.h (sh_small): Declare.
1210 (SUB_SEGMENT_ALIGN): Handle sh_small.
1211 * config/obj-coff.h (TARGET_FORMAT): Check sh_small in TC_SH
1212 case.
1213
1214 * config/tc-mips.c (macro): Correct handling of constant in M_LI_D
1215 case in little endian mode.
1216
1217 Tue Oct 21 10:20:11 1997 Doug Evans <devans@canuck.cygnus.com>
1218
1219 * config/tc-sparc.c (md_apply_fix3, cases ..._H44, ..._HIX22): Leave
1220 overflow signalling to linker.
1221
1222 Mon Oct 20 14:54:06 1997 Klaus K"ampf <kkaempf@progis.de>
1223
1224 * makefile.vms: Fix for dec c.
1225
1226 * config-gas.com: Give explanation for dec c setup in error
1227 message.
1228
1229 * config/tc-alpha.c (s_alpha_comm): Make .comm symbols separate
1230 sections on openvms/alpha.
1231
1232 * config/obj-evax.c: support .weak pseudo-op
1233
1234 Mon Oct 20 10:13:32 1997 Doug Evans <devans@canuck.cygnus.com>
1235
1236 * config/tc-sparc.c (default_arch_size): New static local.
1237 (struct sparc_arch): Rename arch_size to default_arch_size.
1238 New member user_option_p.
1239 (sparc_arch_table): Always include v9, v9a. New entry v9-64.
1240 (init_default_arch): Check whether default arch is valid.
1241 Set default_arch_size in addition to sparc_arch_size.
1242 (OPTION_32,OPTION_64): Define.
1243 (md_longopts): New entries for -32, -64.
1244 (md_parse_option): Handle them.
1245 (md_show_usage): Print them. Ensure init_default_arch called.
1246 * configure.in (sparc64): Set arch to v9-64.
1247 * configure: Regenerated.
1248
1249 Sun Oct 19 13:50:50 1997 Ian Lance Taylor <ian@cygnus.com>
1250
1251 * write.c (subsegs_finish): New function, broken out of
1252 write_object_file.
1253 (write_object_file): Some code moves into subsegs_finish.
1254 * write.c (subsegs_finish): Declare.
1255 * as.c (main): Call subsegs_finish.
1256
1257 * read.c (s_include): Check for error return from
1258 demand_copy_string.
1259
1260 Tue Oct 14 20:50:58 1997 Richard Henderson <rth@cygnus.com>
1261
1262 * read.c (get_line_sb): Accept any eol marker while scanning macros.
1263
1264 Tue Oct 14 19:12:45 1997 Richard Henderson <rth@cygnus.com>
1265
1266 * config/tc-alpha.h (DIFF_EXPR_OK): Define.
1267 * config/tc-i386.h (DIFF_EXPR_OK): Define.
1268 * config/tc-alpha.c (md_apply_fix): Notice fx_pcrel and substitute
1269 the correct relocation when it exists.
1270 * config/tc-i386.c (md_apply_fix3): Likewise.
1271
1272 * config/tc-ppc.h: Correct typo in comment.
1273 * config/tc-v850.h: Likewise.
1274
1275 Fri Oct 10 16:09:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
1276
1277 * config/tc-d10v.c (parallel_ok): Allow parallel instruction issue
1278 when second instruction is writing to first instructions inputs.
1279
1280 Mon Oct 13 15:27:17 1997 Richard Henderson <rth@cygnus.com>
1281
1282 * ecoff.c (PAGE_SIZE): Double to 8k as a hack to allow some C++
1283 templated programs to build with -g.
1284
1285 Fri Oct 10 17:48:29 1997 Nick Clifton <nickc@cygnus.com>
1286
1287 * config/tc-v850.c (md_relax_table): Add support for relaxing
1288 unconditional branches. This patch is courtesy of Jim Wilson.
1289 (md_convert_frag): Fix relaxing of branches. This patch is
1290 courtesy of Jim Wilson.
1291 (md_assemble): Create different fixups for conditional and
1292 unconditional branches. This patch is courtesy of Jim Wilson.
1293 (md_estimate_size_before_relax): Estimate size of variable part of
1294 fixup based on whether it is for a conditional or an unconditional
1295 branch. This patch is courtesy of Jim Wilson.
1296 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
1297 v850_zbss, v850_rosdata, v850_rozdata, v850_bss): Add call to
1298 obj_elf_section_change_hook().
1299 (v850_comm): New function.
1300 (md_pseudo_table): Add new pseudo ops .zcomm, .scomm and .tcomm.
1301 (md_begin): Add bss flag to seg_info of bss sections.
1302
1303 Add support for .scommon, .tcommon and .zcommon sections.
1304
1305 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Add .scommon,
1306 .zcommon, .tbss, .call_table_data and .call_table_text.
1307
1308 Fri Oct 10 15:01:14 1997 Doug Evans <dje@canuck.cygnus.com>
1309
1310 * configure.in (sparc): Set DEFAULT_ARCH from correct target.
1311 * configure: Regenerated.
1312
1313 Fri Oct 10 11:22:45 1997 Martin M. Hunt <hunt@cygnus.com>
1314
1315 * config/tc-d10v.c: Fixes to make sure the AT_WORD
1316 expression is not confused with -1.
1317
1318 Fri Oct 10 11:54:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
1319
1320 * config/tc-d10v.c (parallel_ok): Flag SP as modified for @-sp
1321 operand - OPERAND_ATMINUS.
1322
1323 Fri Oct 10 00:47:44 1997 Michael Meissner <meissner@cygnus.com>
1324
1325 * config/tc-d10v.c (parallel_ok): Note that auto increment and
1326 decrement modify the index register.
1327
1328 Thu Oct 9 15:17:50 1997 Ian Lance Taylor <ian@cygnus.com>
1329
1330 From Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au>:
1331 * config/tc-m68k.c (archs): Add 68306, 68307, 68322, 68356, 68334,
1332 68336, 68341, 68349.
1333 * doc/c-m68k.texi (M68K-Opts): Add -m68ec000 -m68hc000 -m68hc001
1334 -m68306, -m68307, -m68322, -m68356, -m68ec020, -m68ec030,
1335 -m68ec040, -m68ec060, -m68330, -m68334, -m68336, -m68341,
1336 -m68349.
1337
1338 * doc/Makefile.am (CPU_DOCS): Define.
1339 (as.info): Depend upon $(CPU_DOCS).
1340 * doc/Makefile.in: Rebuild.
1341
1342 * configure.in: Remove AM_PROG_INSTALL; it's called by
1343 AM_INIT_AUTOMAKE.
1344 * configure: Rebuild.
1345
1346 Thu Oct 9 01:44:36 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1347
1348 * tc-d10v.h (TC_START_LABEL): Don't define.
1349 (tc_frob_label): Define.
1350
1351 Thu Oct 9 00:07:23 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1352
1353 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't allow
1354 to pair a branch and link with anything but an exe instruction.
1355
1356 Wed Oct 8 16:28:53 1997 Richard Henderson <rth@cygnus.com>
1357
1358 * config/tc-alpha.c (load_expression): Disable the sym+const .got
1359 optimization to reduce the alignment surprises for gcc.
1360
1361 Wed Oct 8 16:11:15 1997 Doug Evans <dje@canuck.cygnus.com>
1362
1363 * config/obj-coff.h (TC_SPARC): Don't define TARGET_FORMAT.
1364 * config/tc-sparc.c (sparc_target_format): Handle coff here.
1365 (sparc_ip): Add %hix,%lox.
1366 (md_apply_fix3): Call as_bad_where, not as_bad.
1367 Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
1368 (tc_gen_reloc): Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
1369
1370 Wed Oct 8 12:33:32 1997 Richard Henderson <rth@cygnus.com>
1371
1372 * configure.in: Change alpha-*-* to alpha*-*-*; config.guess now
1373 recognizes alphaev5 etc.
1374 * configure: Rebuild.
1375
1376 Wed Oct 8 00:04:05 1997 Gavin Koch <gavin@cygnus.com>
1377
1378 * config/tc-mips.c (md_begin): Replace the TARGET_CPU value
1379 of mipsr3900 with mipstx39.
1380
1381 * config/tc-mips.c (mips_ip): Don't print the 'opcode requires
1382 -mipsXX message' if the insn isn't an ISA insn.
1383
1384 Tue Oct 7 12:48:30 1997 Doug Evans <dje@canuck.cygnus.com>
1385
1386 * config/tc-sparc.h (TARGET_FORMAT support): Moved to tc-sparc.c.
1387 Redefine TARGET_FORMAT to call sparc_target_format.
1388 * config/tc-sparc.c (in_unsigned_range): New function.
1389 (sparc_arch_size): Make static.
1390 (sparc_target_format): New function.
1391 (sparc_ip): Delete variable immediate_max. Rewrite %hi/etc reloc
1392 handling. Add support for %hh,%hm,%lm,%h44,%m44,%l44.
1393 (output_insn): Set `fx_no_overflow'.
1394 (md_apply_fix3): Handle BFD_RELOC_SPARC_{7,H44,M44,L44}.
1395 (tc_gen_reloc): Likewise.
1396
1397 Mon Oct 6 14:04:50 1997 Nick Clifton <nickc@cygnus.com>
1398
1399 * config/tc-v850.c (v850_section): Remove.
1400
1401 * config/obj-elf.c (obj_elf_section): Enhance error message.
1402
1403 Fri Oct 3 15:40:38 1997 Ian Lance Taylor <ian@cygnus.com>
1404
1405 * config/tc-mips.c: Undef OBJ_COPY_SYMBOL_ATTRIBUTES before
1406 including obj-elf.h in OBJ_MAYBE_ELF case.
1407 (mips_target_format): Return NULL after abort to avoid warning.
1408
1409 * ecoff.c (generate_ecoff_stab): Remove unused static function.
1410
1411 * expr.c (operator): Accept ==. From Anders Blomdell
1412 <anders.blomdell@control.lth.se>.
1413
1414 * config/atof-ieee.c (gen_to_words): When generating a denormal
1415 number, handle an overflow into the smallest normalized number.
1416
1417 Mon Sep 29 15:24:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1418
1419 * as.h, input-scrub.c (new_logical_line): New return value.
1420 * read.c (s_app_file): Don't note the same file several times
1421 in a row.
1422
1423 Thu Sep 25 13:08:02 1997 Ian Lance Taylor <ian@cygnus.com>
1424
1425 * config/tc-m68k.c (m68k_ip): Remove ` operand specifier.
1426
1427 Wed Sep 24 16:54:40 1997 Joel Sherrill <joel@oarcorp.com>
1428
1429 * configure.in (sh*-*-rtems*): New target, like sh-*-elf*.
1430 * configure: Rebuild.
1431
1432 Wed Sep 24 11:30:25 1997 Ian Lance Taylor <ian@cygnus.com>
1433
1434 * config/tc-m68k.c (m68k_ip): Handle q and v operand specifiers.
1435
1436 * doc/c-i386.texi (i386-Float): Remove incorrect assertion that
1437 fn* instructions do not insert implicit fwait. This was changed
1438 Jan 29, 1996.
1439
1440 * config/m68k-parse.y (yylex): Permit an expression to be used for
1441 the scale factor.
1442
1443 * Makefile.am (EXTRA_as_new_SOURCES): Set to config/m68k-parse.y,
1444 not m68k-parse.y.
1445 * Makefile.in: Rebuild.
1446
1447 * aclocal.m4: Rebuild with new libtool.
1448 * configure: Rebuild.
1449
1450 Tue Sep 23 17:48:09 1997 Ian Lance Taylor <ian@cygnus.com>
1451
1452 * app.c (do_scrub_chars): Clear mri_state at end of .mri
1453 pseudo-op.
1454
1455 * config/tc-mips.c (hilo_interlocks): Change from a static
1456 variable to a macro, so that it varies with the variables upon
1457 which it depends.
1458 (gpr_interlocks, cop_interlocks): Likewise.
1459 (md_begin): Don't initialize them.
1460
1461 Fri Sep 19 17:08:41 1997 Jeffrey A Law (law@cygnus.com)
1462
1463 * config/tc-mn10300.c (md_assemble): Use strcasecomp instead
1464 of strcmp where appropriate.
1465
1466 Thu Sep 18 14:11:56 1997 Nick Clifton <nickc@cygnus.com>
1467
1468 * config/tc-v850.c (md_assemble): Cope with a zero data area
1469 relocation with a constant offset.
1470 (md_assemble): Produce error message when special data area
1471 relocations are used on instructions which do not support them.
1472 (md_assemble): Reset processor mask if defined by command line
1473 switch.
1474
1475 Thu Sep 18 11:24:01 1997 Doug Evans <dje@canuck.cygnus.com>
1476
1477 * config/tc-sparc.c: Reorganize file.
1478 (parse_keyword_arg): Allow numbers in reg names.
1479 (SPECIAL_CASE_NONE): New macro.
1480 (md_assemble): Use it.
1481 (lookup_arch,init_default_arch): New functions.
1482 (default_arch,default_init_p,sparc_arch_table): New static locals.
1483 (sparc_arch_size): New static local.
1484 (max_architecture): Initialize in init_default_arch.
1485 (md_parse_options): Call init_default_arch if necessary.
1486 Rewrite -xarch/-A processing.
1487 (md_show_usage): Print -A values from sparc_arch_table.
1488 (md_begin): Call init_default_arch if necessary.
1489 (sparc_md_end): Handle both 32 and 64 bit environments.
1490 * config/tc-sparc.h (TARGET_FORMAT): Likewise.
1491 * acconfig.h (SPARC_V9,SPARC_ARCH64): Delete.
1492 (DEFAULT_ARCH): Add.
1493 * config.in: Regenerate.
1494 * configure.in (sparc): Default DEFAULT_ARCH based on target cpu.
1495 (SPARC_V9,SPARC_ARCH64): Delete.
1496 * configure: Regenerate.
1497 * config/vms-conf.h (SPARC_V9,SPARC_ARCH64): Delete.
1498
1499 Wed Sep 17 16:54:20 1997 Nick Clifton <nickc@cygnus.com>
1500
1501 * config/tc-v850.c (v850_reloc_prefix): Recoded to use CHECK_ ()
1502 macro.
1503 (handle_tdaoff, handle_zdaoff, handle_sdaoff): New functions.
1504 start-sanitize-v850e
1505
1506 * config/tc-v850.c (md_assemble): Corrected typo.
1507 * config/tc-v850.c Add new sections: call_table_data and
1508 call_table_text.
1509 (v850_reloc_prefix): Add support for ctoff() relocation prefix.
1510 (handle_ctoff): New Function.
1511
1512 * doc/c-v850.texi (V850 Opcodes): Document call table relocations.
1513 end-sanitize-v850e
1514
1515 Tue Sep 16 14:18:22 1997 Nick Clifton <nickc@cygnus.com>
1516
1517 * config/tc-v850.c (v850_reloc_prefix): Add support for a 16 bit
1518 displacement from the tiny data area pointer.
1519
1520 Mon Sep 15 21:28:09 1997 Jeffrey A Law (law@cygnus.com)
1521
1522 * config/tc-hppa.c (fix_new_hppa): Make declaration match
1523 definition.
1524
1525 Mon Sep 15 18:33:06 1997 Nick Clifton <nickc@cygnus.com>
1526
1527 * config/tc-v850.c (processor_mask): New variable.
1528 (set_machine, md_parse_option): Set processor_mask.
1529 (md_assemble): Check that instruction is available to target
1530 processor.
1531
1532 * config/tc-v850.h (TARGET_PROCESSOR): New constant.
1533 start-sanitize-v850e
1534 (TARGET_PROCESSOR): New constant.
1535 (TARGET_PROCESSOR): New constant.
1536 end-sanitize-v850e
1537
1538 start-sanitize-tx19
1539 Mon Sep 15 17:26:46 1997 Gavin Koch <gavin@cygnus.com>
1540
1541 * config/tc-mips.c (mips_1900): Replace with mips_3900 and
1542 mips16.
1543
1544 end-sanitize-tx19
1545 start-sanitize-d30v
1546 Mon Sep 15 11:28:04 1997 Ken Raeburn <raeburn@cygnus.com>
1547
1548 Merge in work from Martin Hunt:
1549
1550 * config/tc-d30v.c (build_insn): For mvfsys and mvtsys,
1551 CR is 0 for PSWL and PSWH.
1552
1553 * config/tc-d30v.c (do_assemble): Don't accept
1554 illegal condition codes for cmpu instruction.
1555
1556 * config/tc-d30v.c: Add support for BFD_RELOC_D30V_9_PCREL
1557 used in d*i instructions.
1558
1559 * config/tc-d30v.c (check_size): New function. Check
1560 relocations for overflows.
1561 (md_pcrel_from_section): Fix relocations between sections.
1562 (md_apply_fix3): Use new relocation types for 15 and 21
1563 bit relocations in the right container. Needed because
1564 the address of the instruction is not eight-byte aligned
1565 but the relocations must be.
1566
1567 * config/tc-d30v.c (md_apply_fix3): Check for overflow.
1568 (find_format): If ".s" or ".l" are used, don't try
1569 to compute branch sizes.
1570
1571 * config/tc-d30v.c (do_assemble): Check for ".s" or
1572 ".l" extensions to opcode names.
1573 (find_format): Generate the correct instructions when
1574 ".s" or ".l" are used.
1575
1576 * config/tc-d30v.c (build_insn): Check for odd registers
1577 on instructions that require even registers.
1578
1579 * config/tc-d30v.h (md_start_line_hook): Define.
1580 * config/tc-d30v.c (md_start_line_hook): New hook.
1581 Checks the beginning of each line for a ".". If it
1582 finds one, assume a pseudo-op and flush any unwritten
1583 instructions.
1584
1585 * config/tc-d30v.c (md_apply_fix3): Fix problem
1586 with determining when fixups were done.
1587
1588 * config/tc-d30v.c (build_insn): Fix bug where the numeric
1589 part of a symbol (for example, "foo+8") was being written
1590 into the instruction.
1591 (md_pseudo_table): Change .word to be 32 bits and add
1592 .hword as 16 bits.
1593
1594 * config/tc-d30v.c (parallel_ok): Check to see if first
1595 instruction is a jump.
1596
1597 * config/tc-d30v.c (parallel_ok): Major code reorganization.
1598
1599 end-sanitize-d30v
1600 Wed Sep 10 10:07:08 1997 Nick Clifton <nickc@cygnus.com>
1601
1602 start-sanitize-v850e
1603 * config/tc-v850.c (md_assemble): Corrected spelling mistake.
1604 end-sanitize-v850e
1605 * configure.in (emulations): Add v850 emulation.
1606
1607 Tue Sep 9 17:14:33 1997 Doug Evans <dje@canuck.cygnus.com>
1608
1609 * Makefile.am (CPU_TYPES): Add arc.
1610 (TARGET_CPU_CFILES): Add tc-arc.c.
1611 (TARGET_CPU_HFILES): Add tc-arc.h.
1612 (dependencies): Rebuild.
1613 * Makefile.in: Rebuild.
1614 * configure.in: Recognize arc-*-elf*.
1615 * configure: Regenerated.
1616 * config/tc-arc.[ch]: New files.
1617
1618 Tue Sep 9 10:19:37 1997 Nick Clifton <nickc@cygnus.com>
1619
1620 * doc/c-v850.texi (V850 Opcodes): Document hi0() reloc prefix.
1621 Correct description of hi() reloc prefix.
1622
1623 start-sanitize-v850e
1624 * doc/c-v850.texi (V850 Opcodes): Document new reloc prefix.
1625 * config/tc-v850.c (v850_reloc_prefix): Add hilo() reloc prefix.
1626 * config/tc-v850.c (md_assemble): Add support for BFD_RELOC_32.
1627 end-sanitize-v850e
1628
1629 * doc/c-v850.texi: Document new pseudo ops and command line
1630 options.
1631
1632 * config/tc-v850.c (set_machine): New function.
1633 * config/tc-v850.c (.v850): New pseudo op.
1634 start-sanitize-v850e
1635 * config/tc-v850.c (.v850e): New pseudo op.
1636 * config/tc-v850.c (.v850ea): New pseudo op.
1637 end-sanitize-v850e
1638
1639
1640 Mon Sep 8 23:08:04 1997 Ian Lance Taylor <ian@cygnus.com>
1641
1642 Support -alh and -ald for DWARF 1:
1643 * listing.c (struct list_info_struct): Add debugging field.
1644 (listing_newline): Initialize the debugging field. If ELF, if the
1645 section starts with .debug or .line, set the debugging field in
1646 the listing structure.
1647 (debugging_pseudo): Add list parameter. Change all callers. If
1648 the debugging field is set, consider it to be a debugging pseudo.
1649 If ELF, skip blank lines between debugging lines.
1650 * read.c (emit_expr): If ELF, look for line numbers.
1651 (stringer): If ELF, look for file names.
1652
1653 Mon Sep 8 12:33:40 1997 Nick Clifton <nickc@cygnus.com>
1654
1655 * config/tc-v850.c (v850_insert_operand): Only test for overflow
1656 if there is no insert function.
1657
1658 * config/tc-v850.h (TARGET_MACHINE): New constant.
1659
1660 * config/tc-v850.c (v850_insert_operand): Add
1661 -mwarn_unsigned_overflow.
1662 (md_begin): Set BFD machine number based on machine variable.
1663 (md_parse_option): Add -mv850, -mv850e and -mv850ea options.
1664
1665 Mon Sep 8 11:20:46 1997 Ian Lance Taylor <ian@cygnus.com>
1666
1667 * as.h: Don't declare alloca if it is a macro.
1668 * macro.c: Likewise.
1669
1670 start-sanitize-tx19
1671 Sun Sep 7 16:04:53 1997 Gavin Koch <gavin@cygnus.com>
1672
1673 * config/tc-mips.c: Add tx19/r1900.
1674
1675 end-sanitize-tx19
1676 Sun Sep 7 00:30:19 1997 Richard Henderson <rth@cygnus.com>
1677
1678 * config/tc-alpha.c (md_parse_option): Move m[] out to top level and
1679 rename to cpu_types[].
1680 (s_alpha_arch): New function.
1681 (md_pseudo_table): Add "arch".
1682
1683 * config/tc-alpha.c (md_begin): Merge the two loops through the
1684 opcode table.
1685 (s_alpha_proc): Add initial SKIP_WHITESPACE.
1686 (s_alpha_set): Likewise. Use get_symbol_end instead local while loop.
1687
1688 Sat Sep 6 19:38:12 1997 Fred Fish <fnf@cygnus.com>
1689
1690 * read.h (s_lcomm_bytes): Add prototype (for real this time).
1691
1692 Thu Sep 4 12:10:01 1997 Ian Lance Taylor <ian@cygnus.com>
1693
1694 * config/obj-elf.c (elf_frob_symbol): Only set BSF_OBJECT for
1695 symbols on Irix.
1696
1697 Wed Sep 3 11:21:33 1997 Nick Clifton <nickc@cygnus.com>
1698
1699 * config/tc-v850.c: Remove BFD_RELOC_V850_16_PCREL.
1700
1701 Tue Sep 2 18:32:30 1997 Jeffrey A Law (law@cygnus.com)
1702
1703 * config/tc-mn10200.c (md_convert_frag): PC relative instructions arex
1704 relative to the next instruction, not the current instruction.
1705 (md_assemble): Similarly.
1706
1707 Tue Sep 2 15:58:52 1997 Nick Clifton <nickc@cygnus.com>
1708
1709 * doc/c-v850.texi: Explanations of offsets in SDA/ZDA areas
1710 correcetd.
1711
1712 * config/tc-v850.c: Add support for SDA/TDA/ZDA sections.
1713 (v850_reloc_prefix): Duplicate code eliminated. Add code to
1714 recognise special instructions.
1715 (md_assemble): Calculation of the size of a fixups corrected.
1716
1717 * config/tc-v850.h (ELF_TC_SPECIAL_SECTIONS): Add SDA/TDA/ZDA
1718 sections.
1719
1720 Tue Sep 2 15:40:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
1721
1722 * config/tc-v850.c (md_assemble): Use opcode->name instead of
1723 opcode->opcode as the sentinal. Zero is a valid opcode.
1724
1725 Tue Aug 26 16:51:14 1997 Ian Lance Taylor <ian@cygnus.com>
1726
1727 * doc/as.texinfo (Machine Dependencies): Add v850 to menu.
1728 * doc/c-v850.texi: Change node name to match other chapter nodes.
1729
1730 Tue Aug 26 09:46:22 1997 Nick Clifton <nickc@cygnus.com>
1731
1732 * doc/c-v850.texi (V850 Opcodes): Correct name for tiny data area
1733 pointer.
1734
1735 Tue Aug 26 12:23:25 1997 Ian Lance Taylor <ian@cygnus.com>
1736
1737 * expr.c (integer_constant): If BFD64, don't make a bignum if the
1738 number will fit in 64 bits.
1739
1740 * config/tc-alpha.c (load_expression): Check explicitly for O_big,
1741 rather than calling abort.
1742
1743 * as.h: Don't define alloca if __GNUC__. Just declare it.
1744 * macro.c: Copy alloca handling from as.h.
1745
1746 * config/tc-i386.c (i386_align_code): Correct 16 bit noops. From
1747 Gabriel Paubert <paubert@iram.es>.
1748
1749 * config/tc-i386.c (md_assemble): In JumpByte case, when looking
1750 for a WORD_PREFIX_OPCODE, change it to ADDR_PREFIX_OPCODE if this
1751 is jcxz or a loop instruction.
1752
1753 Mon Aug 25 16:04:14 1997 Nick Clifton <nickc@cygnus.com>
1754
1755 * config/tc-v850.c (pre_defined_registers): Add 'hp' as alias for
1756 r2.
1757 (md_begin): Set up machine architecture and type.
1758
1759 Mon Aug 25 14:25:48 1997 Ian Lance Taylor <ian@cygnus.com>
1760
1761 * symbols.c (resolve_symbol_value): Store the value back into the
1762 symbol expression, to handle add or subtract simplification
1763 correctly. Handle O_symbol_rva. Add default case.
1764
1765 * config/tc-ppc.c (ppc_change_csect): Temporarily lower the
1766 chunksize while creating the new subsection.
1767 * as.c (chunksize): Initialize to zero.
1768 * subsegs.c (subseg_set_rest): Change 5000 to chunksize when
1769 calling obstack_begin.
1770
1771 Mon Aug 25 11:21:48 1997 Nick Clifton <nickc@cygnus.com>
1772
1773 * config/tc-v850.c (md_assemble): Restore input_line_pointer upon
1774 exit.
1775
1776 start-sanitize-v850e
1777 * config/tc-v850.c (parse_register_list): Support constant
1778 expressions as register lists.
1779 end-sanitize-v850e
1780
1781 Mon Aug 25 10:19:34 1997 Nick Clifton <nickc@cygnus.com>
1782
1783 * doc/c-v850.texi: Change the major node to v850 Machine
1784 Dependencies.
1785
1786 Fri Aug 22 11:16:14 1997 Nick Clifton <nickc@cygnus.com>
1787
1788 * doc/as.texinfo: Add inclusion of c-v850.texi
1789
1790 * doc/c-v850.texi: New file.
1791
1792 * read.c (is_end_of_line): Make NUL character be considered to be
1793 a line terminator.
1794
1795 Fri Aug 22 10:45:33 1997 Nick Clifton <nickc@cygnus.com>
1796
1797 * config/tc-v850.c (parse_register_list): Add support for curly
1798 brace syntax.
1799 (cc_names): Add "e" and "ne" conditions.
1800
1801 Thu Aug 21 11:00:36 1997 Nick Clifton <nickc@cygnus.com>
1802
1803 * app.c (do_scrub_chars): Support a double dash as starting a
1804 comment that extends to end of line.
1805
1806 Thu Aug 21 10:54:27 1997 Nick Clifton <nickc@cygnus.com>
1807
1808 * config/tc-v850.c (v850_section, v850_bss, v850_offset): New
1809 functions.
1810 (md_pseudo_table): New pseudo ops: .bss, .offset, .section
1811
1812 Thu Aug 21 00:59:53 1997 Doug Evans <dje@canuck.cygnus.com>
1813
1814 * config/tc-m32r.c (md_estimate_size_before_relax): Update recorded
1815 insn when changing to a different instruction.
1816
1817 Wed Aug 20 00:45:20 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1818
1819 * tc-sh.c (parse_reg, get_specific, build_Mytes): Add SH4
1820 floating point extensions.
1821 (parse_reg): parse sgr and dbr.
1822
1823 Tue Aug 19 17:07:34 1997 Nick Clifton <nickc@cygnus.com>
1824
1825 * config/tc-v850.c (system_register_name): Support numbers for
1826 system register IDs.
1827
1828 Tue Aug 19 08:59:12 1997 Fred Fish <fnf@cygnus.com>
1829
1830 * read.c (s_lcomm_internal): Renamed from s_lcomm, added arg to
1831 flag when alignment is in bytes instead of power of 2, and code to
1832 use that flag to convert alignment to bytes.
1833 (s_lcomm, s_lcomm_bytes): New helpers that call s_lcomm_internal.
1834 * read.h (s_lcomm_bytes): Add prototype.
1835 * config/obj-coff.c (write_object_file): If ALIGNMENT_IN_S_FLAGS is
1836 defined, write alignment to alignment bits in section header s_flags
1837 rather than the s_align field.
1838 start-sanitize-tic80
1839 * config/obj-coff.h (ALIGNMENT_IN_S_FLAGS): Define for TC_TIC80.
1840 * config/tc-tic80.c (md_pseudo_table): Use s_lcomm_bytes for bss
1841 pseudo, instead of s_lcomm which wants a power of two for alignment.
1842 end-sanitize-tic80
1843
1844 Mon Aug 18 20:42:23 1997 Richard Henderson <rth@cygnus.com>
1845
1846 * macro.c (check_macro): use alloca instead of xmalloc to plug leak.
1847
1848 Mon Aug 18 20:33:06 1997 Richard Henderson <rth@cygnus.com>
1849
1850 * as.c (show_usage): Add -am.
1851 * input-scrub.c (input_scrub_include_sb): Don't add leading \n
1852 if we've already got one.
1853 * listing.c (struct list_info_struct): Add line_contents.
1854 (listing_newline): Put unused argument to work: if non-null, save it...
1855 (listing_listing): ... and regurgitate during listing instead of line
1856 from file.
1857 * listing.h (LISTING_MACEXP): New define.
1858 (LISTING_NEWLINE): Argument is NULL.
1859 * read.c (read_a_source_file): If expanding macros, break up input
1860 lines and pass them to listing_newline.
1861 * doc/as.texinfo: Document -ac and -am.
1862
1863 * cond.c (s_ifc): Add missing demand_empty_rest_of_line.
1864
1865 Mon Aug 18 11:26:36 1997 Nick Clifton <nickc@cygnus.com>
1866
1867 * config/tc-v850.c (md_apply_fix3): Add support for new 16 bit PC
1868 relative reloc.
1869
1870 start-sanitize-v850e
1871 Mon Aug 18 11:24:21 1997 Nick Clifton <nickc@cygnus.com>
1872
1873 * config/tc-v850.c: Remove support_v850e flag and command line
1874 option.
1875
1876 * configure.in (emulations): Add support for v850e target
1877
1878 * configure (emulations): Add support for v850e target
1879
1880 Mon Aug 18 11:24:21 1997 Nick Clifton <nickc@cygnus.com>
1881
1882 * config/tc-v850.c: Remove support_v850ea flag and command line
1883 option.
1884
1885 * configure.in (emulations): Add support for v850ea target
1886
1887 * configure (emulations): Add support for v850ea target
1888 end-sanitize-v850e
1889
1890 Fri Aug 15 14:00:13 1997 Ian Lance Taylor <ian@cygnus.com>
1891
1892 * Makefile.am (check-DEJAGNU): Don't cd into testsuite until after
1893 setting EXPECT and TCL_LIBRARY.
1894 * Makefile.in: Rebuild.
1895
1896 * as.h (enum debug_info_type): Define.
1897 (debug_type): Declare.
1898 * as.c (debug_type): New global variable.
1899 (show_usage): Add --gstabs.
1900 (parse_args): Handle --gstabs.
1901 * read.c (generate_asm_lineno): Remove.
1902 (read_a_source_file): Output stabs debugging if appropriate.
1903 Change checks of generate_asm_lineno to check debug_type. Only
1904 generate ECOFF debugging if ECOFF_DEBUGGING is defined.
1905 * read.h (generate_asm_lineno): Don't declare.
1906 (stabs_generate_asm_lineno): Declare.
1907 * stabs.c (stabs_generate_asm_lineno): New function.
1908 * ecoff.c (add_file): Use debug_type, not generate_asm_lineno.
1909 Don't turn off debugging.
1910 (add_file): Remove old #if 0 code.
1911 (ecoff_new_file): Set debug_type, not generate_asm_lineno.
1912 (ecoff_directive_end): Don't generate stabs line symbols.
1913 (ecoff_generate_asm_lineno): Don't check stabs_seen. Don't set
1914 generate_asm_lineno.
1915 (line_label_cnt): Remove.
1916 (ecoff_generate_asm_line_stab): Remove.
1917 * ecoff.h (ecoff_generate_asm_line_stab): Don't declare.
1918 * doc/as.texinfo, doc/as.1: Document --gstabs.
1919
1920 Wed Aug 13 18:58:56 1997 Nick Clifton <nickc@cygnus.com>
1921
1922 start-sanitize-v850e
1923 * config/tc-v850.c (md_assemble, md_show_usage, md_parse_option):
1924 Add support for v850ea instructions.
1925
1926 * config/tc-v850.c (md_assemble, md_show_usage, md_parse_option):
1927 Add support for v850e instructions.
1928 end-sanitize-v850e
1929
1930 * config/tc-v850.c (md_assemble): Fix error recovery to reload
1931 text of entire opcode.
1932
1933 Tue Aug 12 10:27:34 1997 Richard Henderson <rth@cygnus.com>
1934
1935 * doc/internals.texi: Document rs_leb128.
1936
1937 Tue Aug 12 12:17:03 1997 Ian Lance Taylor <ian@cygnus.com>
1938
1939 * config/tc-m68k.c (m68k_ip): Give an error message for SIZE_BYTE
1940 in ABSL case, rather than calling abort.
1941
1942 Mon Aug 11 21:48:00 1997 Richard Henderson <rth@cygnus.com>
1943
1944 * as.h (enum _relax_state): Add rs_leb128.
1945 * read.c (potable): Add sleb128 and uleb128.
1946 (sizeof_*leb128, output_*leb128, emit_leb128_expr, s_leb128): New
1947 functions.
1948 * read.h: Update prototypes.
1949 * symbols.c (resolve_symbol_value): Streamline quite a bit. Return
1950 the symbol value, add a second FINALIZE argument that prevents
1951 changes from being comitted. Update all callers.
1952 * write.c (cvt_frag_to_fill, relax_segment): Handle rs_leb128.
1953 * doc/as.texinfo: Document the new pseudos.
1954
1955 Sun Aug 10 14:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
1956
1957 * Makefile.am (MOSTLYCLEANFILES): Add site.bak, site.exp, stage,
1958 stage1, and stage2.
1959 (DISTCLEANFILES): Define.
1960 * doc/Makefile.am (DISTCLEANFILES): Define.
1961 * Makefile.in, doc/Makefile.in: Rebuild.
1962
1963 Wed Aug 6 00:30:30 1997 Ian Lance Taylor <ian@cygnus.com>
1964
1965 * configure.in: Define TARGET_BYTES_BIG_ENDIAN if endian is set.
1966 Don't set targ or gas_target. Define SCO_ELF and
1967 TARGET_SOLARIS_COMMENT when appropriate. Don't substitute for
1968 target_frag.
1969 * Makefile.am: Remove @target_frag@.
1970 (INCLUDES): Remove $(INTERNAL_CFLAGS), $(CROSS), $(HDEFINES), and
1971 $(TDEFINES).
1972 (dep-am): Mark as phony.
1973 * acconfig.h: Add TARGET_BYTES_BIG_ENDIAN, TARGET_SOLARIS_COMMENT,
1974 and SCO_ELF.
1975 * config/arm-big.mt, config/arm-lit.mt: Remove.
1976 * config/mips-big.mt, config/mips-lit.mt: Remove.
1977 * config/ppc-big.mt, config/ppc-lit.mt: Remove.
1978 * config/ppc-sol.mt: Remove.
1979 * config/i386coff.mt, config/m68kcoff.mt: Remove.
1980 * config/m88kcoff.mt: Remove.
1981 * config/sco5.mt: Remove.
1982 * configure, config.in, Makefile.in: Rebuild.
1983
1984 * Makefile.am ($(srcdir)/config/m68k-parse.h): New target, to
1985 further try to circumvent the .y.h rule.
1986 * Makefile.in: Rebuild.
1987
1988 Tue Aug 5 12:32:07 1997 Ian Lance Taylor <ian@cygnus.com>
1989
1990 * Makefile.am: New file, based on old Makefile.in.
1991 * acinclude.m4: New file, from old aclocal.m4.
1992 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
1993 shared library handling; now handled by libtool. Replace
1994 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
1995 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
1996 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
1997 * config.in: New file, created by autoheader.
1998 * conf.in: Remove.
1999 * acconfig.h: Mention PACKAGE, VERSION, and USING_CGEN.
2000 * stamp-h.in: New file.
2001 * as.c (print_version_id): Change GAS_VERSION to VERSION.
2002 (parse_args): Likewise.
2003 * config/obj-vms.c: (Write_VMS_MHD_Records): Likewise.
2004 * doc/Makefile.am: New file, based on old doc/Makefile.in.
2005 * Makefile.in, doc/Makefile.in: Now built with automake.
2006 * aclocal.m4: Now built with aclocal.
2007 * configure: Rebuild.
2008
2009 * cond.c (s_else): If not listing false conditionals, turn listing
2010 off in the false branch of the else.
2011
2012 Mon Aug 4 11:28:35 1997 Ian Lance Taylor <ian@cygnus.com>
2013
2014 * config/tc-mips.c (macro): Fix handling of a double load from a
2015 symbol plus an offset.
2016
2017 * ecoff.c (ecoff_build_symbols): Set fMerge to 0 for an FDR which
2018 has an associated external symbol.
2019
2020 Sun Aug 3 23:23:59 1997 Richard Henderson <rth@cygnus.com>
2021
2022 * config/tc-alpha.c (s_alpha_ucons): New function.
2023 (md_pseudo_table): Add unaligned data pseudos for DWARF.
2024
2025 Thu Jul 31 15:13:43 1997 Jeffrey A Law (law@cygnus.com)
2026
2027 * config/tc-v850.c (md_assemble): Ignore the rest of the current
2028 line if we encounter an error.
2029
2030 * config/tc-v850.c (md_assemble): Sign extend constants value
2031 for hi and hi0 expressions.
2032 (v850_insert_operand): Enable range checking for generic 16bit
2033 operands.
2034
2035 Tue Jul 29 14:20:43 1997 Jeffrey A Law (law@cygnus.com)
2036
2037 * config/tc-v850.c (md_assemble): Turn on fx_no_overflow for
2038 LO16, HI16 and HI16_S relocs.
2039
2040 Mon Jul 28 18:41:41 1997 Rob Savoye <rob@chinadoll.cygnus.com>
2041
2042 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
2043 win32 dependencies.
2044 * configure: Regenerated with autoconf 2.12.
2045 * Makefile.in: Add $(EXEEXT) to all executables.
2046
2047 Fri Jul 25 10:54:43 1997 Jeffrey A Law (law@cygnus.com)
2048
2049 * tc-hppa.c (md_apply_fix): Improve warnings for out of range
2050 unconditional branches.
2051 (hppa_fix_adjustable): Don't adjust anything with a RR% or LR%
2052 field selector.
2053
2054 Thu Jul 24 15:21:49 1997 Doug Evans <dje@canuck.cygnus.com>
2055
2056 * tc-sparc.c (md_begin): Cast sparc_opcodes to PTR for hash_insert.
2057
2058 Thu Jul 24 17:51:29 1997 Ian Lance Taylor <ian@cygnus.com>
2059
2060 * macro.c (define_macro): Make sure the index is in range before
2061 checking for '('.
2062
2063 start-sanitize-tic80
2064 Thu Jul 24 12:13:19 1997 Fred Fish <fnf@cygnus.com>
2065
2066 * config/tc-tic80.c (build_insn): Remove "extended" and replace with
2067 "fx" and "fxfrag". Add "ffrag". Change code to initialize and use
2068 the right f/ffrag and fx/fxfrag pairs since instruction may be split
2069 across frags.
2070
2071 end-sanitize-tic80
2072 Tue Jul 22 18:38:56 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
2073
2074 * config/te-go32.h (USE_ALIGN_PTWO): Define.
2075 * config/tc-i386.c (md_pseudo_table): If USE_ALIGN_PTWO is
2076 defined, use s_align_ptwo for .align.
2077 * configure.in (i386-*-msdosdjgpp*): New target.
2078 (i386-*-go32*): Set em to go32 and targ to coffgo32.
2079 * configure: Rebuild.
2080
2081 Tue Jul 22 12:41:40 1997 Doug Evans <dje@canuck.cygnus.com>
2082
2083 * config/tc-sparc.c (last_opcode): New static local.
2084 (md_assemble): Don't issue "FP branch in delay slot" warning if
2085 the delay slot has been annulled.
2086
2087 Tue Jul 22 13:25:13 1997 Ian Lance Taylor <ian@cygnus.com>
2088
2089 * config/tc-m68k.c (md_apply_fix_2): Check for PC relative reloc
2090 code if BFD_ASSEMBLER.
2091
2092 Mon Jul 21 08:57:17 1997 Jeffrey A Law (law@cygnus.com)
2093
2094 * config/tc-v850.c (system_registers): Fix ordering of registers.
2095
2096 start-sanitize-tic80
2097 Tue Jul 15 16:29:54 1997 Fred Fish <fnf@cygnus.com>
2098
2099 * config/tc-tic80.c (build_insn): Initialize extended word to zero
2100 when it will be filled in later by relocation information.
2101
2102 end-sanitize-tic80
2103 Mon Jul 14 23:10:58 1997 Ian Lance Taylor <ian@cygnus.com>
2104
2105 * config/tc-mips.c (macro_build): Restore check of fmt argument.
2106 (mips_ip): Fix ISA checks.
2107
2108 start-sanitize-r5900
2109 Tue Jul 15 10:15:39 1997 Jeffrey A Law (law@cygnus.com)
2110
2111 * configure.in: Default the r5900 to little endian.
2112 * configure: Rebuilt.
2113
2114 end-sanitize-r5900
2115 start-sanitize-tic80
2116 Mon Jul 14 19:30:55 1997 Fred Fish <fnf@cygnus.com>
2117
2118 * config/tc-tic80.c (build_insn): Fix endianness problem with
2119 O_big operands.
2120
2121 end-sanitize-tic80
2122 Sun Jul 13 20:43:46 1997 Ian Lance Taylor <ian@cygnus.com>
2123
2124 * config/tc-mips.c (check_absolute_expr): Change warning to
2125 error.
2126
2127 Fri Jul 11 10:18:47 1997 Jeffrey A Law (law@cygnus.com)
2128
2129 * config/tc-mips.c (macro_build): Refine code to check if an
2130 instruction is available on a particular cpu variant.
2131 (mips_ip): Likewise.
2132
2133 Mon Jul 7 22:53:08 1997 Ian Lance Taylor <ian@cygnus.com>
2134
2135 * config/tc-i386.c (tc_i386_fix_adjustable): Change ifndef
2136 OBJ_AOUT to ifdef OBJ_ELF.
2137 (md_apply_fix3): When mangling 32 bit PC relative reloc for
2138 BFD_ASSEMBLER, handle one ELF case for COFF as well, and add a PE
2139 case.
2140 * write.c (fixup_segment): Change special case for i386-coff to
2141 not apply for i386-pe.
2142 * config/obj-coff.c (coff_adjust_section_syms): Only count fixups
2143 which were not done.
2144 (coff_frob_file_after_relocs): Rename from coff_frob_file.
2145 (coff_format_ops): Initialize frob_file_after_relocs field rather
2146 than frob_file field.
2147 * config/obj-coff.h (coff_frob_file): Don't declare.
2148 (coff_frob_file_after_relocs): Declare.
2149 (obj_frob_file): Don't define.
2150 (obj_frob_file_after_relocs): Define.
2151 * configure.in: Set bfd_gas to yes for i386-*-cygwin32.
2152 * configure: Rebuild.
2153
2154 Wed Jul 2 12:05:00 1997 Ian Lance Taylor <ian@cygnus.com>
2155
2156 * config/obj-coff.c (fixup_segment): Never subtract section
2157 address from PC relative reloc which will be fully resolved.
2158
2159 Tue Jul 1 15:23:07 1997 Jeffrey A Law (law@cygnus.com)
2160
2161 * ecoff.c (page_type): Renamed from page_t to avoid conflict
2162 with hpux10 header files.
2163
2164 Mon Jun 30 12:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
2165
2166 From Jason Merrill <jason@cygnus.com>:
2167 * read.c (do_align): If BFD_ASSEMBLER, only use NOP_OPCODE if
2168 SEC_CODE is set.
2169 * config/tc-i386.h (md_maybe_text): Define.
2170 (md_do_align): Use md_maybe_text.
2171
2172 Fri Jun 27 19:15:27 1997 Michael Meissner <meissner@cygnus.com>
2173
2174 * config/tc-ppc.h (tc_fix_adjustable): Only check for GOT type
2175 relocations, don't check for symbol being external, weak, etc.
2176
2177 Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
2178
2179 * config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
2180 calculate relocations to any external symbol, because we might be
2181 linking a shared object and the symbol might be overriden or moved
2182 (for instance, moved into a static executable's .bss section).
2183 (GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
2184
2185 * config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
2186 be calculated by the assembler.
2187
2188 * config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
2189 whose destination lies in the same file, by ignoring the @plt or
2190 @local and aiming the branch at its destination.
2191
2192 Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2193
2194 * symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
2195 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
2196 expression.
2197
2198 * config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
2199 of obj_copy_symbol_attributes.
2200
2201 Mon Jun 16 12:45:56 1997 Ian Lance Taylor <ian@cygnus.com>
2202
2203 * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
2204 signed operand, sign extend a 32 bit value to the host size.
2205
2206 * Makefile.in (CFLAGS): Subsitute from configure script. From
2207 Jeff Makey <jeff@cts.com>.
2208
2209 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
2210 buffer size to make a copy of the symbol.
2211
2212 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
2213 macro.o.
2214
2215 Thu Jun 12 12:16:20 1997 Ian Lance Taylor <ian@cygnus.com>
2216
2217 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
2218 step through the frags calling cvt_frag_to_fill, switch to
2219 SEG_DATA when we reach data_frag_root.
2220
2221 Tue Jun 10 17:08:34 1997 Jeffrey A Law (law@cygnus.com)
2222
2223 * config/tc-mn10300.c (md_assemble): Allow an empty register
2224 list for instructions which use register lists.
2225
2226 Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2227
2228 * config/tc-arm.c (md_apply_fix3): Make temp unsigned long.
2229
2230 * config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
2231 OBJ_COFF.
2232
2233 * config/tc-arm.c: Add prototypes for many static functions.
2234 (struct asm_opcode ): Add prototypes for parms field.
2235 (struct thumb_opcode ): Likewise.
2236 (fp_op2): Remove unused flags parameter.
2237 (output_inst): Make static.
2238 (arm_after_pass_hook): Remove unused ignore parameter.
2239 * config/tc-arm.h (arm_after_pass_hook): Declare.
2240 (arm_start_line_hook): Declare.
2241 (arm_frob_label): Declare.
2242
2243 Mon Jun 9 12:55:45 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2244
2245 * depend.c (wrap_output): new prototype.
2246
2247 Mon Jun 9 12:52:44 1997 Ian Lance Taylor <ian@cygnus.com>
2248
2249 * config/tc-sh.c (md_apply_fix): Check for overflow.
2250
2251 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
2252 section size to be aligned.
2253
2254 Fri Jun 6 17:15:55 1997 Ian Lance Taylor <ian@cygnus.com>
2255
2256 * config/tc-sh.h (md_cons_align): Define.
2257 (sh_cons_align): Declare.
2258 * config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
2259 (sh_no_align_cons): New static variable.
2260 (s_uacons): New static function.
2261 (sh_cons_align): New function.
2262 (sh_handle_align): Warn about misaligned data.
2263 * doc/c-sh.texi: Document .uaword and .ualong.
2264
2265 Thu Jun 5 15:38:17 1997 Ian Lance Taylor <ian@cygnus.com>
2266
2267 * macro.c (macro_expand): In MRI mode, treat single quote as a
2268 separator character when checking for a positional argument.
2269
2270 Tue Jun 3 16:15:13 1997 Nick Clifton <nickc@cygnus.com>
2271
2272 * config/tc-arm.c (md_parse_option): Merge in changes from
2273 armT-970328-branch.
2274
2275 * config/tc-arm.h: Merge in changes from armT-970328-branch.
2276
2277 * configure.in (emulations): Add Thumb architecture support from
2278 armT-9703-28-branch.
2279
2280 Mon Jun 2 16:25:07 1997 Nick Clifton <nickc@cygnus.com>
2281
2282 * doc/all.texi: Add enabling of ARM documentation.
2283
2284 * doc/as.texinfo: Add ARM documentation from armT-970328-branch.
2285
2286 Mon Jun 2 11:55:12 1997 Gavin Koch <gavin@cygnus.com>
2287
2288 * config/tc-mips.c: Added r3900 support.
2289
2290 Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
2291
2292 * as.c: (parse_args) `-t' option requires an argument.
2293
2294 Wed May 28 15:45:07 1997 Nick Clifton <nickc@cygnus.com>
2295
2296 * config/tc-arm.c (md_begin): Change call to
2297 coff_arm_bfd_set_private_flags() to a call to
2298 bfd_set_private_flags().
2299
2300 Wed May 28 16:17:34 1997 Ian Lance Taylor <ian@cygnus.com>
2301
2302 * Makefile.in: Rebuild dependencies.
2303
2304 * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
2305 of a BFD_RELOC_RVA reloc.
2306
2307 Wed May 28 10:48:14 1997 Jeffrey A Law (law@cygnus.com)
2308
2309 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
2310 (hppa_force_relocation): Force a relocation for an absolute
2311 call/jump.
2312
2313 Mon May 26 13:24:25 1997 Ian Lance Taylor <ian@cygnus.com>
2314
2315 * doc/as.texinfo: Don't use @value in section names or index
2316 entries; it confuses texinfo.tex.
2317
2318 Fri May 23 00:09:35 1997 Tom Tromey <tromey@cygnus.com>
2319
2320 * doc/as.texinfo: Updated for -MD option.
2321 * Makefile.in (CFILES): Added depend.c.
2322 (OBJS): Added depend.o.
2323 * as.h (start_dependencies, register_dependency,
2324 print_dependencies): New declarations.
2325 * depend.c: New file.
2326 * as.c (parse_args): Added -MD option.
2327 (main): Call print_dependencies.
2328 (show_usage): Added help for -MD.
2329 * read.c (s_app_file): Call register_dependency.
2330 (s_include): Call register_dependency when file is found.
2331 (read_a_source_file): Call register_dependency.
2332
2333 Wed May 21 17:39:28 1997 Ian Lance Taylor <ian@cygnus.com>
2334
2335 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
2336 section address to the symbol value.
2337
2338 Tue May 20 11:23:31 1997 Gavin Koch <gavin@cygnus.com>
2339
2340 * config/tc-mips.c (macro_build,mips_ip): Move the INSN_ISA field
2341 into the new membership field.
2342
2343 Thu May 15 10:00:53 1997 Nick Clifton <nickc@cygnus.com>
2344
2345 * config/tc-arm.c (md_begin): If no cpu type is specified on the
2346 command line then the ARM7 is now chosen by default when setting
2347 the BFD machine and architecture.
2348
2349 Wed May 14 09:54:53 1997 Nick Clifton <nickc@cygnus.com>
2350
2351 * config/tc-arm.c (global variables): Added 'uses_apcs_26' flag to
2352 hold APCS selection.
2353 (md_begin): Added code to generate flags to be set into the COFF
2354 header and the calls to the BFD functions to do this.
2355 (md_parse_option, md_show_usage): Added new command line
2356 options -mapcs-32, -mapcs-26, -marmv2, -marmv2a, -marmv3,
2357 -marmv3m, -marmv4, -marmv4t.
2358
2359 * tc-arm.h (LOCAL_LABEL): Removed the definition of this macro
2360 as it is never used.
2361
2362 Tue May 13 22:26:14 1997 Jeffrey A Law (law@cygnus.com)
2363
2364 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
2365 label name with ".".
2366 * config/tc-mn10300.c (md_convert_frag): Likewise.
2367
2368 Tue May 13 14:44:39 1997 Ian Lance Taylor <ian@cygnus.com>
2369
2370 * config/tc-mips.c (set_at): Check for bignum.
2371 (check_absolute_expr, macro, mips16_macro): Likewise.
2372
2373 start-sanitize-tic80
2374 Tue May 13 10:45:56 1997 Fred Fish <fnf@cygnus.com>
2375
2376 * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
2377 for overflow/underflow, only insert lower 15 bits into instruction.
2378
2379 end-sanitize-tic80
2380 Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2381
2382 * config/tc-i386.c (pi): Check for RegMMX.
2383
2384 Thu May 8 11:10:15 1997 Ian Lance Taylor <ian@cygnus.com>
2385
2386 * expr.c (expr): When subtracting values in the same frag,
2387 subtract X_add_number rather than adding it.
2388
2389 Wed May 7 15:39:48 1997 Ian Lance Taylor <ian@cygnus.com>
2390
2391 * config/obj-coff.c (write_object_file): Just pass NULL to
2392 md_do_align, not the address of a char holding NOP_OPCODE.
2393
2394 * config/tc-mips.c (macro): Handle constants for M_LI_D and
2395 M_LI_DD.
2396 (mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
2397 than an address if the floating point value looks sufficiently
2398 simple.
2399
2400 Tue May 6 12:18:09 1997 Ian Lance Taylor <ian@cygnus.com>
2401
2402 * config/tc-i386.c (md_section_align): If a.out and BFD, force
2403 section size to be aligned.
2404
2405 Mon May 5 17:16:55 1997 Ian Lance Taylor <ian@cygnus.com>
2406
2407 * cond.c: Include "macro.h".
2408 (struct conditional_frame): Add macro_nest field.
2409 (initialize_cframe): Initialize macro_nest.
2410 (cond_finish_check): Add nest parameter. Change all callers.
2411 (cond_exit_macro): New function.
2412 * as.h (cond_finish_check): Update declaration.
2413 (cond_exit_macro): Declare.
2414 * input-scrub.c (macro_nest): Make globally visible.
2415 (input_scrub_next_buffer): Call cond_finish_check.
2416 * macro.h (macro_nest): Declare.
2417 * read.c (s_mexit): Call cond_exit_macro.
2418
2419 * config/tc-i386.h (RegMMX): Define.
2420 * config/tc-i386.c (pi): Check for all register types.
2421 (type_names): Add RegMMX.
2422 (md_assemble): Handle RegMMX.
2423
2424 Wed Apr 30 12:47:00 1997 Manfred Hollstein <manfred@s-direktnet.de>
2425
2426 * config/obj-coff.c (c_section_symbol): Clear the LOCAL bit #ifdef
2427 TE_DELTA.
2428
2429 Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
2430
2431 * config/tc-mips.c (nopic_need_relax): Add new parameter
2432 before_relaxing. Use it when testing ecoff_extern_size.
2433 (load_address, macro, md_estimate_size_before_relax): Fix all
2434 callers.
2435
2436 Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
2437
2438 * config/obj-elf.c (elf_pseudo_table): Add "subsection".
2439 (obj_elf_subsection): New static function.
2440
2441 Tue Apr 29 19:52:47 1997 Ian Lance Taylor <ian@cygnus.com>
2442
2443 * config/obj-coff.c (coff_header_append): Don't reset string_size
2444 each time through the loop.
2445
2446 Fri Apr 25 14:17:46 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2447
2448 * Makefile.in (DISTSTUFF): Add itbl-parse.h.
2449
2450 Fri Apr 25 12:03:15 1997 Ian Lance Taylor <ian@cygnus.com>
2451
2452 * doc/internals.texi (Porting GAS): Correct documentation for
2453 current configure handling of targ-cpu.h, et. al.
2454 (CPU backend): Document listing macros.
2455
2456 * listing.c (data_buffer): Set size based on other listing macros,
2457 rather than always using 100.
2458 (data_buffer_size): Remove static variable.
2459 (calc_hex): Make data_buffer_size a local variable. Don't leave
2460 any slop when filling data_buffer.
2461
2462 Mon Apr 21 15:33:19 1997 Ian Lance Taylor <ian@cygnus.com>
2463
2464 * doc/c-mips.texi: Document .set autoextend.
2465
2466 Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
2467
2468 * configure.in (i386-*-openbsd*, m68k-*-openbsd*,
2469 mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
2470 sparc-*-openbsd*): New targets.
2471 * configure: Rebuild.
2472
2473 Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
2474
2475 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
2476 for all undefined symbols.
2477
2478 Fri Apr 18 13:37:35 1997 Ian Lance Taylor <ian@cygnus.com>
2479
2480 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
2481 correctly.
2482
2483 Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
2484
2485 * configure.in (alpha*-*-openbsd*): New target.
2486 * configure: Rebuild.
2487
2488 Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
2489
2490 * configure.in (mips-*-openbsd*): New target.
2491 * configure: Rebuild.
2492
2493 start-sanitize-d30v
2494 Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
2495
2496 * config/tc-d30v.c (parallel_ok): Fix parallel checking
2497 for instructions using conditional execution.
2498
2499 end-sanitize-d30v
2500 Tue Apr 15 18:11:44 1997 Gavin Koch <gavin@cygnus.com>
2501
2502 * config/tc-mips.c (insn_uses_reg): Correct test for fpr pairs.
2503
2504 Tue Apr 15 13:04:47 1997 Ian Lance Taylor <ian@cygnus.com>
2505
2506 * Makefile.in (srcroot): Remove.
2507 (INSTALL): Set to @INSTALL@.
2508 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
2509 (all, dvi): Don't set srcroot.
2510 (install): Depend upon as.new, gasp.new, and installdirs. Use
2511 $(program_transform_name) directly, rather than using
2512 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
2513 (installdirs): New target.
2514 * doc/Makefile.in (INSTALL_XFORM1): Remove.
2515 (install): Depend upon installdirs. Use $(program_transform_name)
2516 directly, rather than using $(INSTALL_XFORM) and
2517 $(INSTALL_XFORM1).
2518 (installdirs): New target.
2519 (install-info-as): Run mkinstalldirs.
2520 (install-info-gasp): Likewise.
2521
2522 Mon Apr 14 11:59:08 1997 Ian Lance Taylor <ian@cygnus.com>
2523
2524 * Makefile.in (INSTALL): Change install.sh to install-sh.
2525
2526 * symbols.c (resolve_symbol_value): Check for division by zero.
2527
2528 From Thomas Graichen <graichen@rzpd.de>:
2529 * Makefile.in: Always use $(SHELL) when running move-if-change.
2530 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
2531 * configure: Rebuild.
2532
2533 Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
2534
2535 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
2536 New argument `want'. Update enum cgen_parse_operand_result values.
2537 Initialize if CGEN_PARSE_OPERAND_INIT.
2538 * config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
2539 (md_assemble): Call cgen_asm_init_parse.
2540 Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
2541
2542 Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
2543
2544 * config/tc-m68k.c (m68k_ip): Handle #j.
2545
2546 Tue Apr 8 16:37:57 1997 Jeffrey A Law (law@cygnus.com)
2547
2548 * config/tc-mn10300.c (md_convert_frag): Create fixup at the
2549 right address for call label:32,regs,imm.
2550
2551 Mon Apr 7 14:58:22 1997 Jeffrey A Law (law@cygnus.com)
2552
2553 * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
2554 zero.
2555 * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
2556 symbol for OBJ_ELF anymore.
2557
2558 Mon Apr 7 10:54:59 1997 Doug Evans <dje@canuck.cygnus.com>
2559
2560 * Makefile.in: Regenerate dependencies.
2561 (TARG_CPU): New variable.
2562 (cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
2563 (.dep1): Delete creating of cgen-opc.h.
2564 (.tcdep): Put proper contents in cgen-opc.h.
2565 * configure.in (m32r): Delete setting of extra_files, extra_links.
2566 (AC_OUTPUT): Create cgen-opc.h.
2567 * configure: Regenerated.
2568
2569 Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
2570
2571 * makefile.vms: Update to build gasp.exe.
2572
2573 Fri Apr 4 16:10:02 1997 Doug Evans <dje@canuck.cygnus.com>
2574
2575 * write.c (relax_frag): Make non-static.
2576 * write.h (relax_frag): Add prototype for.
2577 * config/tc-m32r.h (md_do_align): New arg `max'.
2578 * config/tc-m32r.c (m32r_do_align): Likewise.
2579 Update calls to frag_align, frag_align_pattern.
2580 (fill_insn): Update call to m32r_do_align.
2581 (m32r_scomm): Update call to frag_align.
2582
2583 * config/tc-m32r.[ch]: New files.
2584 * cgen.c: New file.
2585 * Makefile.in (CPU_TYPES): Add m32r.
2586 (TARGET_CPU_CFILES): Add tc-m32r.c.
2587 (TARGET_CPU_HFILES): Add tc-m32r.h.
2588 (DISTCLEAN_HERE): Add cgen-opc.h.
2589 (.dep1,.tcdep): Create empty cgen-opc.h.
2590 (cgen.o): Add dependencies.
2591 (dependencies): Regenerate.
2592 * as.h (struct frag): New member fr_targ.
2593 (fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
2594 * conf.in (USING_CGEN): New macro.
2595 * configure.in (m32r-*-*): Add entry for.
2596 Add cgen.o to extra_objects.
2597 * configure: Regenerate.
2598 * frags.c (frag_var): fr_pcrel_adjust renamed to
2599 fr_targ.ns32k.pcrel_adjust. fr_bsr renamed to fr_targ.ns32k.bsr.
2600 (frag_variant): Likewise.
2601 * write.c (relax_frag): Likewise.
2602 * config/tc-ns32k.c (*): Likewise.
2603
2604 Fri Apr 4 13:26:10 1997 Ian Lance Taylor <ian@cygnus.com>
2605
2606 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
2607 rather than for any end of line character.
2608
2609 * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
2610 call abort (i.e., as_abort) rather than crashing.
2611
2612 * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
2613 OBJ_ELF, rather than of S_GET_OTHER.
2614
2615 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak.
2616
2617 Thu Apr 3 13:16:18 1997 Ian Lance Taylor <ian@cygnus.com>
2618
2619 * Makefile.in (VERSION): Set to 2.8.1.
2620
2621 * Branched binutils 2.8.
2622
2623 Wed Apr 2 12:24:10 1997 Ian Lance Taylor <ian@cygnus.com>
2624
2625 * COPYING: Update FSF address.
2626
2627 * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
2628
2629 Tue Apr 1 18:29:47 1997 Jim Wilson <wilson@cygnus.com>
2630
2631 * config/tc-mips.c (md_begin): Don't set interlocks for 4100.
2632
2633 Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
2634
2635 * config-gas.com: Update to handle both vax and alpha.
2636 * makefile.vms: Update to use config-gas.
2637 * conf-a-gas.com: Remove file.
2638
2639 Tue Apr 1 16:08:21 1997 Ian Lance Taylor <ian@cygnus.com>
2640
2641 * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
2642 itbl-lex.c dependencies. Remove rules for itbl-lex.o,
2643 itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
2644
2645 start-sanitize-tic80
2646 Tue Apr 1 11:25:56 1997 Michael Meissner <meissner@cygnus.com>
2647
2648 * config/tc-tic80.c (line_comment_char): Make '#' start comments
2649 at the beginning of a line for compatibility with .S files where
2650 cpp leaves the filename transitions beginning with '#'.
2651
2652 end-sanitize-tic80
2653 Tue Apr 1 00:07:30 1997 Ian Lance Taylor <ian@cygnus.com>
2654
2655 * config/tc-m68k.c: Only compile tc_coff_symbol_emit_hook and
2656 tc_coff_sizemachdep if OBJ_COFF.
2657
2658 Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2659
2660 * config/tc-ppc.c (register_name): Declare.
2661
2662 Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
2663
2664 * configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
2665 * configure: Rebuild.
2666
2667 Mon Mar 31 14:15:19 1997 Ian Lance Taylor <ian@cygnus.com>
2668
2669 * config/tc-mips.c (mips_pseudo_table): Add "stabn".
2670 (mips16_mark_labels): New static function.
2671 (append_insn): Call mips16_mark_labels.
2672 (mips_emit_delays): Likewise.
2673 (s_insn): Likewise. Don't call mips_clear_insn_labels.
2674 (s_mips_stab): New static function.
2675
2676 * configure.in: Use ELF for mips-*-gnu*.
2677 * configure: Rebuild.
2678
2679 Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2680
2681 * config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
2682 TE_DELTA.
2683
2684 Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
2685
2686 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
2687 set OPCODES_LIB to empty.
2688 * configure: Rebuild.
2689
2690 Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2691
2692 * configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
2693 targets.
2694 * configure: Rebuild.
2695
2696 Fri Mar 28 13:08:33 1997 Ian Lance Taylor <ian@cygnus.com>
2697
2698 * itbl-parse.y (yyerror): Make static. Declare.
2699
2700 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
2701 * configure.in: Set emulations for mips-*-linux*-*.
2702 * configure: Rebuild.
2703
2704 * config/tc-mips.c (struct mips_set_options): Define.
2705 (mips_opts): New static variable.
2706 (mips_isa): Remove. Now a field in mips_opts. Change all
2707 references.
2708 (mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
2709 (mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
2710 (struct mips_option_stack): Define.
2711 (mips_opts_stack): New static variable.
2712 (s_mipsset): Add support for .set push and .set pop.
2713 * doc/c-mips.texi: Document .set push and .set pop.
2714
2715 * config/obj-elf.c (obj_elf_section_change_hook): New function.
2716 * config/obj-elf.h (obj_elf_section_change_hook): Declare it.
2717 * config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
2718
2719 Thu Mar 27 12:23:56 1997 Ian Lance Taylor <ian@cygnus.com>
2720
2721 * as.c (parse_args): Update copyright date in version message.
2722
2723 * Makefile.in (clean-here): Remove dependency files.
2724
2725 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
2726 (s_mri_common): Check S_IS_COMMON unconditionally.
2727 * symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
2728 * config/tc-alpha.c (s_alpha_comm): Likewise.
2729 * config/tc-mips.c (nopic_need_relax): Likewise.
2730 * config/tc-ppc.c (ppc_elf_lcomm): Likewise.
2731 (ppc_pe_comm): Likewise.
2732 * config/obj-elf.c (obj_elf_common): Likewise. Set segment of
2733 common symbol to bfd_com_section_ptr.
2734 * config/tc-sparc.c (s_common): Likewise.
2735 (tc_gen_reloc): Likewise.
2736
2737 start-sanitize-d30v
2738 Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2739
2740 * config/tc-d30v.c (md_apply_fix3): Get the relocs right.
2741
2742 end-sanitize-d30v
2743 Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
2744
2745 * config/tc-i386.c (tc_i386_fix_adjustable): Only define if
2746 BFD_ASSEMBLER.
2747
2748 Wed Mar 26 11:32:51 1997 Ian Lance Taylor <ian@cygnus.com>
2749
2750 * input-scrub.c (input_scrub_next_buffer): Handle very long input
2751 lines correctly.
2752
2753 * listing.c (print_lines): Add lineno parameter. Change all
2754 callers.
2755 (listing_listing): Only call calc_hex for the right line.
2756 (listing_list): Set the new edict based on the current edict, in
2757 order to handle listing commands in macros correctly.
2758
2759 * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
2760 instructions.
2761
2762 * cond.c (cond_finish_check): New function.
2763 * as.h (cond_finish_check): Declare.
2764 * as.c (main): Call cond_finish_check.
2765
2766 start-sanitize-d30v
2767 Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2768
2769 * config/tc-d30v.c (md_assemble): If two instructions
2770 are supposed to be assembled in parallel and the first one is
2771 long, print an error and stop.
2772 (md_apply_fix3): Don't calculate absolute relocs. Just write
2773 them out.
2774
2775 end-sanitize-d30v
2776 Mon Mar 24 12:11:18 1997 Ian Lance Taylor <ian@cygnus.com>
2777
2778 * config/tc-i386.h (iclrKludge): Define.
2779 * config/tc-i386.c (md_assemble): Handle iclrKludge.
2780
2781 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
2782 OBJ_ECOFF.
2783 (alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
2784 * config/tc-alpha.c (alpha_debug): New static variable.
2785 (md_parse_option): Set alpha_debug if -g is seen.
2786 (alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
2787
2788 start-sanitize-d30v
2789 Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2790
2791 * config/tc-d30v.c (build_insn): Enable range-checking code.
2792 (postfix): Stop at space or comma. Fixes PR 11862.
2793 (md_assemble): Change error message.
2794
2795 end-sanitize-d30v
2796 Sat Mar 22 13:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
2797
2798 * Makefile.in: Added automatic dependency building.
2799 * dep-in.sed: New file.
2800
2801 Fri Mar 21 15:42:37 1997 Ian Lance Taylor <ian@cygnus.com>
2802
2803 * config/obj-ieee.c (segment_name): Don't define function if this
2804 is a macro.
2805
2806 * config/obj-coff.h (DO_STRIP): Don't define.
2807 * config/tc-h8300.h (DO_STRIP): Don't define.
2808 * config/tc-h8500.h (DO_STRIP): Don't define.
2809 * config/tc-w65.h (DO_STRIP): Don't define.
2810 * config/tc-z8k.h (DO_STRIP): Don't define.
2811
2812 * symbols.c (colon): Call obj_frob_label if it is defined.
2813 * config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
2814
2815 * configure.in: Don't set files and links. Don't call
2816 AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
2817 obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
2818 * configure: Rebuild.
2819 * Makefile.in (TARG_CPU_C): New variable.
2820 (TARG_CPU_O, TARG_CPU_H): New variables.
2821 (OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
2822 (TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
2823 (SOURCES): Rename from REAL_SOURCES. Delete old definition.
2824 (LINKED_SOURCES): Remove.
2825 (HEADERS): Rename from REAL_HEADERS. Delete old definition.
2826 (LINKED_HEADERS): Remove.
2827 (OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
2828 ($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
2829 targ-cpu.h, etc.
2830 ($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
2831 (targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
2832 (itbl-cpu.h): Remove target.
2833 (DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
2834 atof-targ.h.
2835
2836 Thu Mar 20 19:18:58 1997 Ian Lance Taylor <ian@cygnus.com>
2837
2838 * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro.
2839
2840 Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2841
2842 * config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
2843 open coded loop that does not require the name to start with a
2844 name beginner.
2845
2846 Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
2847
2848 * frags.c (frag_var): Change offset parameter to offsetT.
2849 (frag_variant): Likewise.
2850 * frags.h (frag_variant, frag_var): Update declarations.
2851 * config/tc-m68k.c (struct m68k_it): Change foff field to
2852 offsetT.
2853 (add_frag): Change off parameter to offsetT.
2854 * Several files: Add casts to calls to frag_var.
2855
2856 * Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
2857 serialize a parallel make.
2858 (itbl-parse.h): Split target out from itbl-parse.c.
2859
2860 Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2861
2862 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR).
2863
2864 * config/te-delta.h (COFF_COMMON_ADDEND): Define.
2865 * config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
2866 storing the value of a common symbol.
2867
2868 Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2869
2870 * config/obj-coff.c (glue_symbols): Unused variable symbolP
2871 removed.
2872 (crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
2873 that is done by symbol_remove and symbol_insert.
2874
2875 * config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
2876 symbol.
2877
2878 Wed Mar 19 11:06:29 1997 Ian Lance Taylor <ian@cygnus.com>
2879
2880 * config/tc-mips.c (load_register): In 32 bit mode, when not
2881 dealing with a 64 bit number, permit the upper 32 bits to be set
2882 even if bit 31 is not set.
2883
2884 Tue Mar 18 23:30:14 1997 Ian Lance Taylor <ian@cygnus.com>
2885
2886 * read.c (potable): Add "equiv".
2887 (s_set): Handle .equiv based on argument.
2888 * doc/as.texinfo (Equiv): New node to document .equiv.
2889 (Err): New node to document .err.
2890
2891 Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
2892
2893 * Many files: Add function prototypes.
2894 * as.c (show_usage, parse_args): Make static.
2895 * frags.h (frag_alloc): Declare.
2896 * subsegs.c (subseg_set_rest): Don't declare frag_alloc.
2897 * symbols.c (dollar_label_instance): Change return type to long.
2898 * symbols.h (print_symbol_value): Declare.
2899 (print_expr, print_expr_1, print_symbol_value_1): Declare.
2900 * write.c (fix_new_exp): Don't declare make_expr_symbol.
2901 (remove_subsegs, relax_frag): Make static.
2902 * config/atof-vax.c (atof_vax_sizeof): Change letter to int.
2903 (what_kind_of_float): Likewise.
2904 (atof_vax): Make static. Change what_kind to int.
2905 (md_atof): Change what_statement_type to int.
2906 * config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
2907 * config/tc-alpha.c (vax_md_atof): Declare.
2908 (md_atof): Don't declare atof_ieee and vax_md_atof.
2909 * config/tc-i386.c (set_16bit_code_flag): Make static.
2910 * config/tc-i386.h (tc_i386_fix_adjustable): Declare.
2911 * config/tc-m68k.c (add_fix): Change width to int.
2912 (insert_reg): Change regname to const.
2913 (md_atof): Don't declare atof_ieee.
2914 (demand_empty_rest_of_line): Don't declare.
2915 * config/tc-m88k.c (md_atof): Don't declare atof_ieee.
2916 * config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
2917 (parse_keyword_arg): Change lookup_fn to take const arg.
2918 (md_atof): Don't declare atof_ieee.
2919 * config/tc-sparc.h: Add ifdef for multiple inclusion.
2920 (tc_aout_pre_write_hook): Don't declare.
2921
2922 Mon Mar 17 11:21:09 1997 Ian Lance Taylor <ian@cygnus.com>
2923
2924 * as.h (bfd_alloc_by_size_t): Don't declare.
2925 * Many files: Use xmalloc rather than bfd_alloc_by_size_t.
2926
2927 Sun Mar 16 13:49:21 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2928
2929 * symbols.c (symbol_new): Don't call debug_verify_symchain.
2930 (symbol_append): Set sy_next and sy_previous when adding a single
2931 symbol to an empty list. Call debug_verify_symchain.
2932 (verify_symbol_chain): Use assert, not know.
2933
2934 Sat Mar 15 20:27:12 1997 Fred Fish <fnf@cygnus.com>
2935
2936 * NEWS: Note BeOS support.
2937 * configure.in: (ppc-*-beos): New target, use coff as object format.
2938 * configure: Regenerate with autoconf.
2939
2940 Sat Mar 15 19:14:02 1997 Ian Lance Taylor <ian@cygnus.com>
2941
2942 * config/tc-mips.c (md_apply_fix): Improve error message for out
2943 of range branch.
2944
2945 * Makefile.in: Add dependencies on obstack.h where needed.
2946
2947 Fri Mar 14 15:33:38 1997 Ian Lance Taylor <ian@cygnus.com>
2948
2949 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
2950 case of a symbol equated to another symbol when using SVR4_PIC.
2951
2952 * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h.
2953
2954 Thu Mar 13 11:20:51 1997 Ian Lance Taylor <ian@cygnus.com>
2955
2956 * read.c (read_a_source_file): Call LISTING_NEWLINE before
2957 HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
2958
2959 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
2960 and md_elf_section_change_hook if they are defined.
2961 (obj_elf_text, obj_elf_previous): Likewise.
2962
2963 Wed Mar 12 11:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
2964
2965 * config/obj-multi.h (struct elf_obj_sy): Define if
2966 OBJ_MAYBE_ELF.
2967 (OBJ_SYMFIELD_TYPE): Define as struct elf_obj_sy if
2968 OBJ_MAYBE_ELF.
2969 * config/obj-elf.h (struct elf_obj_sy): Don't define if
2970 OBJ_SYMFIELD_TYPE is defined.
2971
2972 * doc/as.texinfo (bss): Improve description of .bss section. In
2973 ELF or COFF, you are permitted to switch into the section.
2974 (Comm): Rewrite description of common symbols.
2975 (Lcomm): Mention that some targets permit a third argument.
2976
2977 Tue Mar 11 01:13:31 1997 Ian Lance Taylor <ian@cygnus.com>
2978
2979 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
2980
2981 * symbols.c (colon): Change type of local to int. From Alan Modra
2982 <alan@spri.levels.unisa.edu.au>.
2983
2984 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
2985 alignment if a zero fill pattern was explicitly specified.
2986 * config/tc-sh.c (sh_do_align): Likewise.
2987
2988 * read.c (equals): Always permit register names to be redefined.
2989
2990 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
2991 mips16 symbol to be adjusted if a symbol is being subtracted from
2992 it.
2993
2994 From Eric Youngdale <eric@andante.jic.com>:
2995 * config/obj-elf.c (obj_elf_symver): Check for duplicate or
2996 illegal symbol version names.
2997 (elf_frob_symbol): Check for external default versions.
2998
2999 Sun Mar 9 23:49:12 1997 Ian Lance Taylor <ian@cygnus.com>
3000
3001 From Eric Youngdale <eric@andante.jic.com>:
3002 * config/obj-elf.h (struct elf_obj_sy): Define.
3003 (OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct. Change all
3004 users.
3005 * config/obj-elf.c (obj_elf_symver): Just record the name.
3006 (obj_symbol_new_hook): Initialized versioned_name field.
3007 (elf_frob_symbol): If there is a versioned_name, either rename the
3008 symbol, or add an alias with that name.
3009
3010 Thu Mar 6 13:55:32 1997 Jeffrey A Law (law@cygnus.com)
3011
3012 * config/tc-mn10300.c (md_relax_table): Define.
3013 (md_convert_frag): Implement.
3014 (md_assemble): Handle relaxable operands/instructions correctly.
3015 (md_estimate_size_before_relax): Implement.
3016 * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
3017
3018 * config/tc-mn10200.c (md_relax_table): Fix typos.
3019
3020 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
3021 relocs anymore. Tweak fx_offset for pc-relative relocs.
3022
3023 Wed Mar 5 15:46:16 1997 Ian Lance Taylor <ian@cygnus.com>
3024
3025 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
3026 in MRI mode.
3027
3028 start-sanitize-tic80
3029 Tue Mar 4 19:34:21 1997 Fred Fish <fnf@cygnus.com>
3030
3031 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
3032 pseudo-ops.
3033 * config/tc-tic80.c (md_begin): Declare external variable
3034 coff_flags and insert an F_AR32WR bit into it.
3035
3036 end-sanitize-tic80
3037 Tue Mar 4 10:01:04 1997 Ian Lance Taylor <ian@cygnus.com>
3038
3039 * read.c (equals): Add reassign parameter. Change all callers.
3040 * read.h (equals): Update declaration.
3041
3042 Sat Mar 1 01:04:04 1997 Ian Lance Taylor <ian@cygnus.com>
3043
3044 * config/tc-mips.c (mips16_extended_frag): Don't assume that we
3045 can rely on the frag address to determine whether a frag is
3046 earlier or later.
3047
3048 Fri Feb 28 14:40:00 1997 Ian Lance Taylor <ian@cygnus.com>
3049
3050 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
3051 (S_LOCAL_NAME): Likewise.
3052 (FAKE_LABEL_NAME): Define unconditionally.
3053 * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
3054 BFD_ASSEMBLER.
3055 (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
3056 * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
3057 Don't define FAKE_LABEL_NAME.
3058 * config/te-ic960.h: Likewise.
3059 * config/tc-mips.h (tc_frob_file_before_adjust): Define.
3060 (mips_frob_file_before_adjust): Declare.
3061 * config/tc-mips.c (mips_frob_file_before_adjust): New function.
3062 (mips_local_label): Remove.
3063
3064 * config/te-sco386.h: Remove; not used.
3065
3066 start-sanitize-tic80
3067 Thu Feb 27 15:39:16 1997 Fred Fish <fnf@cygnus.com>
3068
3069 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
3070 byte alignment rather than power-of-two alignment that is the
3071 GAS default.
3072
3073 end-sanitize-tic80
3074 Thu Feb 27 13:29:04 1997 Ian Lance Taylor <ian@cygnus.com>
3075
3076 * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.
3077
3078 * gasp.c (hash_add_to_string_table): Correct misspelling in error
3079 message, and add newline.
3080 (process_file): Don't process assignments in the label if this is
3081 a equ or assign pseudo-op.
3082 (process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
3083 and K_EQU, to match documentation.
3084
3085 Thu Feb 27 12:00:03 1997 Michael Meissner <meissner@cygnus.com>
3086
3087 * config/obj-coff.c (obj_coff_section): Add 'r' section attribute
3088 to denote read-only data sections.
3089
3090 Thu Feb 27 00:26:33 1997 Ian Lance Taylor <ian@cygnus.com>
3091
3092 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
3093 * config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
3094
3095 * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
3096 binary number if the next character is '+' or '-'.
3097
3098 start-sanitize-tic80
3099 Wed Feb 26 20:47:12 1997 Fred Fish <fnf@cygnus.com>
3100
3101 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
3102 (find_opcode): Match operands that can be floats.
3103 (build_insn): Handle O_big (float) expressions and build
3104 correct opcode.
3105
3106 end-sanitize-tic80
3107 Wed Feb 26 18:19:00 1997 Stan Shebs <shebs@andros.cygnus.com>
3108
3109 * configure.in (mips*-*-lnews*): New target, also make empty
3110 emulation list for this target.
3111 * configure: Update.
3112 * tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
3113 (mips_target_format): Use.
3114 * te-lnews.h: New file.
3115
3116 start-sanitize-tic80
3117 Wed Feb 26 15:33:46 1997 Fred Fish <fnf@cygnus.com>
3118
3119 * config/tc-tic80.c (find_opcode, build_insn): Changes to match
3120 operands with :m or :s modifiers and generate the right opcodes
3121 for them.
3122
3123 end-sanitize-tic80
3124 Wed Feb 26 11:56:11 1997 Ian Lance Taylor <ian@cygnus.com>
3125
3126 * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
3127 $(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
3128
3129 Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
3130
3131 * config/tc-m68k.c (instring): Useless local declaration of
3132 crack_operand removed.
3133 * expr.h (expressionS): Changed type of X_op field to operatorT if
3134 __GNUC__.
3135
3136 Tue Feb 25 13:17:27 1997 Ian Lance Taylor <ian@cygnus.com>
3137
3138 Based on patches from Robert Lipe <robertl@dgii.com>:
3139 * configure.in: Add i386coff and i386elf to emulation list.
3140 * configure: Rebuild.
3141 * as.c (i386coff, i386elf): Declare.
3142 * obj.h (coff_format_ops): Declare.
3143 * config/obj-coff.c (OBJ_HEADER): Define.
3144 (coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
3145 (coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
3146 (obj_pseudo_table): Add "version".
3147 (coff_pop_insert): New static function.
3148 (coff_sec_sym_ok_for_reloc): New static function.
3149 (no_func): New static function.
3150 (coff_format_ops): New variable.
3151 * config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
3152 (obj_symbol_new_hook): Define.
3153 (coff_obj_read_begin_hook): Declare.
3154 (obj_read_begin_hook): Define.
3155 * config/tc-i386.h (i386_target_format): Declare.
3156 * config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
3157 OUTPUT_FLAVOR when appropriate.
3158 (i386_target_format): New function.
3159 * Makefile.in (obj-coff.o): New target.
3160 (e-i386coff.o, e-i386elf.o): New targets.
3161
3162 From Stephen Williams <steve@icarus.icarus.com>:
3163 * config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
3164 (_tc_get_bal_of_call): Don't declare.
3165 (tc_get_bal_of_call): Declare as function, don't define as macro.
3166 * config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
3167 in sy_tc field, not x_balntry field.
3168 (tc_get_bal_of_call): Rename from _tc_get_bal_of_call. Change
3169 return type to symbolS *. If OBJ_COFF, retrieve value from sy_tc
3170 field, not x_balntry field.
3171
3172 * config/obj-elf.c (obj_elf_section): Permit a .note section to
3173 have the SHF_ALLOC attribute.
3174
3175 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
3176 (TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
3177 (itbl-lex.o): Depend upon itbl-parse.h.
3178
3179 * itbl-parse.y (yyerror): Change return type to int. Change to
3180 use old style function declaration.
3181
3182 * Makefile.in (itbl-lex.o): Remove -Wall.
3183 (itbl-parse.o): Likewise.
3184
3185 * cond.c (s_ifdef): If we should omit conditionals from listings,
3186 call listing_list.
3187 (s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
3188 * listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
3189 (listing_listing): Handle EDICT_NOLIST_NEXT.
3190 (listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
3191 * listing.h (LISTING_NOCOND): Define.
3192 (LISTING_SKIP_COND): Define.
3193 * as.c (show_usage): Mention c as a suboption of -a.
3194 (parse_args): Handle c as a suboption of -a.
3195 * doc/as.texinfo: Document -alc.
3196
3197 start-sanitize-tic80
3198 Mon Feb 24 23:34:14 1997 Fred Fish <fnf@cygnus.com>
3199
3200 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
3201
3202 end-sanitize-tic80
3203 Mon Feb 24 18:27:43 1997 Eric Youngdale <eric@andante.jic.com>
3204
3205 * doc/as.texinfo: Document .symver.
3206
3207 Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3208
3209 * config/tc-d10v.c: Change pre_defined_registers to
3210 d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
3211
3212 Mon Feb 24 10:40:45 1997 Fred Fish <fnf@cygnus.com>
3213
3214 * config/obj-coff.c: Fix typo in comment section.
3215 start-sanitize-tic80
3216 * config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
3217 an additional alignment argument.
3218 (find_opcode): Allow O_symbol relocs for any 32 bit field, not just
3219 base relative ones.
3220 (build_insn): Handle O_symbol relocs for any 32 bit field, not just
3221 base relative ones.
3222 end-sanitize-tic80
3223
3224 Mon Feb 24 02:23:00 1997 Dawn Perchik <dawn@cygnus.com>
3225
3226 * Makefile.in: Remove dependancies on itbl-cpu.h.
3227 * as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
3228 is not defined.
3229
3230 Mon Feb 24 02:03:00 1997 Dawn Perchik <dawn@cygnus.com>
3231
3232 * itbl-ops.h: Include as.h.
3233
3234 Mon Feb 24 01:04:00 1997 Dawn Perchik <dawn@cygnus.com>
3235
3236 * as.c: Remove -t option.
3237 * configure, configure.in: Move itbl-cpu.h to mips specific configure.
3238 * itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
3239 * config/tc-mips.h: Define HAVE_ITBL_CPU.
3240
3241 Sun Feb 23 18:01:00 1997 Dawn Perchik <dawn@cygnus.com>
3242
3243 * itbl-ops.c: Don't define DEBUG.
3244
3245 Sun Feb 23 17:49:00 1997 Dawn Perchik <dawn@cygnus.com>
3246
3247 * Makefile.in: Update itbl-test.c to reflect its new location.
3248
3249 Sun Feb 23 15:50:00 1997 Dawn Perchik <dawn@cygnus.com>
3250
3251 * itbl-ops.c: Add test for itbl_have_entries.
3252 * config/tc-mips.c: Remove test for itbl_have_entries.
3253 * config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
3254
3255 Sun Feb 23 18:13:19 1997 Ian Lance Taylor <ian@cygnus.com>
3256
3257 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
3258 itbl-ops.c. Add itbl-parse.c and itbl-lex.c.
3259 (LEX, LEXFLAGS): Define.
3260 * itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
3261
3262 Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
3263
3264 * itbl-parse.y: Fix indentation mistakes from indent program.
3265 * itbl-lex.l: Fix indentation mistakes from indent program.
3266 * itbl-ops.h: Add include for ansidecl.h.
3267 Add PARAMS around function arguments.
3268 Add declaration for itbl_have_entries.
3269 * itbl-ops.c: Add PARAMS around function arguments.
3270 * Makefile.in: Add itbl build rules.
3271 Add dependancies for itbl files to mips target.
3272 * as.c: Add itbl support.
3273 Add new option "--insttbl" for dynamically extending instruction set.
3274 * as.h: Declare insttbl_file_name;
3275 the name of file defining extensions to the basic instruction set
3276 * configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
3277 itbl-ops.o to extra_objects for mips configuration.
3278 Add include file link from itbl-cpu.h to
3279 config/itbl-${target_cpu_type}.h.
3280 * config/tc-mips.c: Allow copz instructions.
3281 Add notes for future additions to the itbl support.
3282 Add debug macros.
3283 (macro): Call itbl_assemble to assemble itbl instructions.
3284 See if an unknown register is specified in an itbl entry.
3285
3286 Sat Feb 22 20:53:01 1997 Fred Fish <fnf@cygnus.com>
3287 * doc/internals.texi (CPU backend): Fix typo in md_section_align
3288 description.
3289 start-sanitize-tic80
3290 * config/tc-tic80.h (NEED_FX_R_TYPE): Define.
3291 * config/tc-tic80.c (find_opcode): Add code to support O_symbol
3292 operands.
3293 (build_insn): Grab a frag early so we can use the address in
3294 fixups. Take one's complement of BITNUM values before insertion
3295 in opcode. Add code to support O_symbol operands.
3296 (md_apply_fix): Replace unimplemented warning with implementation.
3297 (md_pcrel_from): Ditto.
3298 (tc_coff_fix2rtype): Ditto.
3299 end-sanitize-tic80
3300
3301 Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3302 start-sanitize-d30v
3303 * config/tc-d30v.c (parallel_ok): New function.
3304 * config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
3305 end-sanitize-d30v
3306 * config/tc-d10v.c (md_pcrel_from_section): Return 0 if
3307 relocation is in different section. Fixes PR11574.
3308
3309 Fri Feb 21 10:08:25 1997 Jim Wilson <wilson@cygnus.com>
3310
3311 * tc-mips.c (mips_ip): If configured for an embedded ELF system,
3312 don't set the section alignment to 2**4.
3313
3314 Fri Feb 21 11:55:03 1997 Ian Lance Taylor <ian@cygnus.com>
3315
3316 * config/tc-m68k.c (line_comment_chars): Add '*'.
3317
3318 * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
3319 (do_scrub_begin): Don't set lex['*'].
3320 (do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
3321 check for LEX_IS_TWOCHAR_COMMENT_2ND. Instead, just check for
3322 a literal '*'.
3323
3324 * configure.in: Set em=svr4 for m68k-*-sysv4*.
3325 * configure: Rebuild.
3326 * config/te-svr4.h: New file.
3327 * config/tc-m68k.c (m68k_comment_chars): Only include `#' if
3328 TE_SVR4 or TE_DELTA.
3329
3330 Thu Feb 20 22:24:39 1997 Jeffrey A Law (law@cygnus.com)
3331
3332 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
3333 short conditional branch around a long unconditional branch.
3334
3335 Thu Feb 20 13:56:00 1997 Ian Lance Taylor <ian@cygnus.com>
3336
3337 * config/obj-coff.c (obj_coff_ln [both versions]): Call
3338 new_logical_line.
3339
3340 * config/tc-arm.c (fix_new_arm): Use make_expr_symbol to handle a
3341 complex expression.
3342
3343 * symbols.c (resolve_symbol_value): If both left and right
3344 operands are undefined, warn about both of them.
3345
3346 Wed Feb 19 00:53:28 1997 Ian Lance Taylor <ian@cygnus.com>
3347
3348 Based on patches from Eric Youngdale <eric@andante.jic.com>:
3349 * config/obj-elf.c (elf_pseudo_table): Add "symver".
3350 (obj_elf_symver): New static function.
3351 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
3352 field.
3353
3354 * write.c (relax_segment): Make type and printf format agree.
3355
3356 * read.c (get_line_sb): Don't end the line on a semicolon inside a
3357 string.
3358
3359 start-sanitize-d30v
3360 Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3361
3362 * config/tc-d30v.c, config/tc-d30v.h: New files.
3363
3364 * configure: Rebuilt.
3365
3366 * configure.in: Add case for d30v.
3367
3368 end-sanitize-d30v
3369 Sun Feb 16 17:47:29 1997 Fred Fish <fnf@cygnus.com>
3370
3371 * config/tc-alpha.h (md_operand): Define with a null expansion,
3372 like all the other targets.
3373 * doc/internals.texi (CPU backend): Add missing word in
3374 md_flush_pending_output description. Fix typo in md_convert_frag
3375 description.
3376 start-sanitize-tic80
3377 * config/tc-tic80: Minor comment additions/changes.
3378 end-sanitize-tic80
3379
3380 Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
3381
3382 * config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
3383 (tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
3384 * config/obj-coff.c (obj_coff_def): Use
3385 tc_canonicalize_symbol_name if defined.
3386 (obj_coff_tag, obj_coff_val): Likewise.
3387 * expr.c (operand): Reject '~' as operator if is_name_beginner.
3388
3389 Fri Feb 14 17:24:48 1997 Ian Lance Taylor <ian@cygnus.com>
3390
3391 Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
3392 does not actually work, though:
3393 * configure.in (i386-sequent-bsd*): New target.
3394 * configure: Rebuild.
3395 * config/tc-dynix.h: New file.
3396 * config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
3397
3398 * read.c (do_align): Add max parameter. Change all callers.
3399 Remove useless static variables.
3400 (s_align): New static function. Do common portion of
3401 s_align_bytes and s_align_ptwo.
3402 (s_align_bytes, s_align_ptwo): Just call s_align.
3403 * frags.c (frag_align): Add max parameter. Change all callers.
3404 (frag_align_pattern): Likewise.
3405 * frags.h (frag_align, frag_align_pattern): Update declarations.
3406 * write.c (relax_segment): Limit alignment change to fr_subtype.
3407 Fix some types to be addressT.
3408 * config/obj-coff.c (size_section): Likewise.
3409 * config/obj-ieee.c (size_section): Likewise.
3410 * config/tc-d10v.h (md_do_align): Add max parameter.
3411 * config/tc-i386.h (md_do_align): Likewise.
3412 * config/tc-m88k.h (md_do_align): Likewise.
3413 * config/tc-m88k.c (m88k_do_align): Likewise.
3414 * config/tc-sh.h (md_do_align): Likewise.
3415 * config/tc-sh.c (sh_do_align): Likewise.
3416 * as.h: Improve comments on rs_align and rs_align_code.
3417 * doc/as.texinfo: Document new alignment arguments.
3418 * doc/internals.texi (Frags): Document use of fr_subtype field for
3419 rs_align and rs_align_code.
3420
3421 Fri Feb 14 15:56:06 1997 Gavin Koch <gavin@cygnus.com>
3422
3423 * config/tc-mips.c: Changed opcode parsing.
3424
3425 Thu Feb 13 20:02:16 1997 Fred Fish <fnf@cygnus.com>
3426
3427 * config/{tc-alpha.h, tc-d10v.h, tc-generic.h, tc-i960.h,
3428 tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-vax.h, tc-w65.h}:
3429 Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
3430 * config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
3431 tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
3432 to a location consistent with the rest of the target include files.
3433 * config/tc-i386.c: Remove misleading comment.
3434 * doc/internals.texi (CPU backend): Add description of function
3435 md_undefined_symbol.
3436 start-sanitize-tic80
3437 * config/tc-tic80.c: Add code to insert predefined symbols into the
3438 symbol table so they can be parsed by the standard expression parser.
3439 Remove custom code that use to parse them.
3440 * config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
3441 to a location consistent with the rest of the target include files.
3442 end-sanitize-tic80
3443
3444 Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
3445
3446 * as.h: GNU c provides unlink() function.
3447
3448 Unify section handling on openVMS/Alpha:
3449 * config/tc-alpha.c(s_alpha_link): Remove.
3450 (s_alpha_section): New function.
3451 Remove case-hacking of symbols
3452 Add .code_address pseudo-op.
3453 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
3454 (s_alpha_code_address): New function.
3455 (alpha_ctors_section, alpha_dtors_section): New sections for C++
3456 static constructors/destructors.
3457 Add debug code for crash debugs, to be removed when traceback code
3458 is added to object code.
3459 (s_alpha_name): New function for .name pseudo-op.
3460 (alpha_print_token): New function to print token expressions with
3461 alpha specific extensions.
3462
3463 * makefile.vms: Allow compilation with current gcc snapshot.
3464
3465 Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
3466
3467 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
3468 (DVIPS): Set to dvips.
3469 (ps, as.ps, gasp.ps): New targets.
3470 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
3471 and MAKEINFO env variables.
3472 (internals.ps): Use DVIPS macro.
3473 (clean): Remove core and backup files.
3474 (distclean): Remove temporary files from building internals.
3475 (clean-dvi): Ditto.
3476 * doc/internals.texi (Frags): Fix typo.
3477 (GAS processing): Ditto.
3478 (CPU backend): Ditto.
3479 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
3480 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
3481 * read.c: Remove ugly hack that dealt with config files not
3482 correctly defining TARGET_BYTES_BIG_ENDIAN.
3483 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
3484 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
3485 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
3486 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
3487 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
3488 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
3489 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
3490 with TARGET_BYTES_BIG_ENDIAN defined to 0.
3491 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
3492 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
3493 whether it is defined or not.
3494 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
3495 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
3496 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
3497 whether it is defined or not.
3498 start-sanitize-tic80
3499 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
3500 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
3501 end-sanitize-tic80
3502
3503 Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
3504
3505 * write.c (write_relocs): Correct text in as_fatal error message,
3506 bfd_perform_relocation -> bfd_install_relocation.
3507
3508 Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
3509
3510 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
3511 * read.c (LEX_TILDE): Define if not defined.
3512 (lex_type): Use LEX_TILDE.
3513 * expr.c (get_symbol_end): Check first char with is_name_beginner,
3514 not is_part_of_name.
3515
3516 Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
3517
3518 * config/tc-sparc.c (md_show_usage): Add missing backslash at end
3519 of continued line.
3520
3521 * config/tc-mips.c (mips16_extended_frag): Correct base address
3522 for an extended PC relative instruction.
3523 (md_convert_frag): Likewise.
3524
3525 * config/tc-mips.c (prev_nop_frag): New static variable.
3526 (prev_nop_frag_holds): New static variable.
3527 (prev_nop_frag_required): New static variable.
3528 (prev_nop_frag_since): New static variable.
3529 (append_insn): If we aren't reordering, and prev_nop_frag is not
3530 NULL, and we don't need any nops, then decrease the size of
3531 prev_nop_frag. Don't insert nops because of instructions in
3532 noreorder sections. Remember whether the previous instructions
3533 where in noreorder sections even when not reordering.
3534 (mips_no_prev_insn): Add preserver parameter. Change all
3535 callers. Refer prev_nop_frag variables when appropriate.
3536 (mips_emit_delays): Set up prev_nop_frag.
3537 (s_mipsset): Clear prev_nop_frag if reordering.
3538
3539 Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
3540
3541 * config/tc-mips.c (append_insn): Remove useless code which
3542 handled swapping a mips16 jump with a mips16 instruction with a
3543 reloc.
3544
3545 * config/tc-mips.c (md_parse_option): When debugging, set
3546 mips_optimize to 1, not 0.
3547
3548 * config/tc-mips.c (mips16_ip): Handle an extend operand.
3549
3550 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
3551 like the expression was based on `.', adjust the value of the
3552 symbol.
3553
3554 * config/tc-mips.c (append_insn): Warn about an attempt to put an
3555 extended instruction in a delay slot when not reordering.
3556 (md_convert_frag): Warn if an extended instruction appears in a
3557 delay slot.
3558
3559 * config/tc-mips.c (mips_pseudo_table): Add "insn".
3560 (s_insn): New static function.
3561 * doc/c-mips.texi: Document .insn.
3562
3563 * config/tc-mips.c (md_begin): Add the general registers to the
3564 symbol table.
3565 (mips16_ip): First parse the expression, and then see whether it
3566 came up with a register, rather than trying to first see whether
3567 we are looking at a register.
3568
3569 start-sanitize-tic80
3570 Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
3571
3572 * config/tc-tic80.c: Numerous changes and additions to flesh
3573 out functions that were previously just stubs, and fix some
3574 problems found using the new TIc80 testsuite cases.
3575
3576 end-sanitize-tic80
3577 Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
3578
3579 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
3580 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
3581
3582 * config/tc-mips.c (append_insn): Output jump instruction as a
3583 pair of 2 byte instructions, rather than as a single 4 byte
3584 instruction.
3585
3586 start-sanitize-r5900
3587 * config/tc-mips.c (md_begin): Correct test of mips_5900.
3588 (mips_ip): Don't check INSN_ISA for a macro.
3589
3590 end-sanitize-r5900
3591 start-sanitize-r5900
3592 Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
3593
3594 * config/tc-mips.c: added r5900.
3595
3596 end-sanitize-r5900
3597 Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
3598
3599 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
3600 config/itbl-mips.h: Add copyright message and fix indentation.
3601
3602 Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
3603
3604 * itbl-ops.c: New file. Add support for dynamically read
3605 instruction registers, opcodes and formats. Build internal table
3606 for new instructions and provide callbacks for assembler and
3607 disassembler.
3608 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
3609 spec table.
3610 * itbl-ops.h: New file. Header file for itbl support.
3611 * config/itbl-mips.h: New file. Mips specific definitions for
3612 itbl support.
3613
3614 Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
3615
3616 * config/tc-mn10200.c (md_assemble): If a constant operand won't
3617 fit into the constant field of a relaxable operand, then it does
3618 not match.
3619
3620 Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
3621
3622 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
3623 a jsr target in a different section just like a jsr to
3624 an undefined target.
3625
3626 Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
3627
3628 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
3629 against any mips16 symbols, not just externally visible ones.
3630 (md_apply_fix): Corresponding change.
3631
3632 Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
3633
3634 * config/tc-mips.c (mips16_ip): Accept floating point registers in
3635 the operand of the exit instruction.
3636
3637 Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
3638
3639 * symbols.c (resolve_symbol_value): If we leave an equated symbol
3640 as O_symbol, copy over the segment.
3641
3642 Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
3643
3644 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
3645 fixup to be against the section symbol, adjust the value
3646 accordingly.
3647
3648 * symbols.c (resolve_symbol_value): Don't change X_add_number for
3649 an equated symbol.
3650 * write.c (write_relocs): Avoid looping on equated symbols.
3651 Adjust fx_offset by X_add_number for each symbol.
3652 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
3653 symbols.
3654 (fixup_segment): Add a loop to track down equated symbols and
3655 adjust fx_offset appropriately.
3656
3657 Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
3658
3659 * config/tc-mn10200.c (md_relax_table): Add entries to allow
3660 jmp -> bra relaxing.
3661 (md_convert_frag): Handle jmp->bra relaxing.
3662 (md_assemble): Handle jmp->bra relaxing.
3663 (md_estimate_size_before_relax): Likewise.
3664
3665 Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
3666
3667 * config/tc-i386.c (i386_align_code): Add comments explaining the
3668 nop instructions.
3669
3670 Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
3671
3672 * config/tc-sparc.c (enforce_aligned_data): New static variable.
3673 (sparc_cons_align): Don't do anything unless enforce_aligned_data
3674 is set.
3675 (md_longopts): Add "enforce-aligned-data".
3676 (md_show_usage): Mention --enforce-aligned-data.
3677 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
3678 enforce-aligned-data.
3679
3680 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
3681 "word", and "short".
3682 (ppc_xcoff_cons): New static function.
3683
3684 * write.c (relax_segment): Give an error if a .space symbol is
3685 common or undefined.
3686
3687 * read.c (read_a_source_file): Don't handle mri_pending_align if
3688 the handler is s_globl or s_ignore.
3689
3690 Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
3691
3692 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
3693 start-sanitize-tic80
3694 * config/tc-tic80.c: Many additions to previous placeholder file.
3695 * config/tc-tic80.h: Ditto.
3696 end-sanitize-tic80
3697
3698 Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
3699
3700 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
3701
3702 Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
3703
3704 * config/tc-mips.c (mips_fix_adjustable): New function.
3705 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
3706 (mips_fix_adjustable): Declare.
3707
3708 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
3709 * read.c (read_a_source_file): After doing an mri_pending_align,
3710 adjust the line_label if there is one.
3711 (s_space): Set mri_pending_align if an odd number of bytes were
3712 output.
3713
3714 Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3715
3716 * config/tc-d10v.h (md_do_align): Add this hook to call
3717 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
3718
3719 * config/tc-d10v.c (find_opcode): Correctly calculate
3720 branch displacement when .aligns are present.
3721
3722 Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
3723
3724 * config/tc-mn10200.c (md_relax_table): Define.
3725 (md_convert_frag): Implement.
3726 (md_assemble): Handle relaxable operands/instructions correctly.
3727 (md_estimate_size_before_relax): Implement.
3728 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
3729
3730 Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
3731
3732 * config/tc-mips.c (append_insn): Give an error for jumps to a
3733 misaligned address.
3734 (md_apply_fix): Make a branch to an odd address an error rather
3735 than a warning.
3736
3737 * config/tc-mips.c (md_convert_frag): If the user explicitly
3738 requested an extended opcode, pass warn as true to mips16_immed.
3739
3740 * config/tc-mips.c (mips16_ip): Handle a missing expression like
3741 an explicit 0, so that explicitly extended instructions work
3742 correctly.
3743
3744 Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
3745
3746 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
3747 symbol for a common symbol.
3748
3749 Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
3750
3751 Patch presumed to have been checked in awhile ago but wasn't.
3752 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
3753 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
3754 (relax_segment, case rs_org): Move code inside braces. Move locals
3755 target,after inside too.
3756 (relax_segment, case rs_machine_dependent): Guts moved to ...
3757 (relax_frag): New function.
3758 Call md_prepare_relax_scan if defined.
3759
3760 Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3761
3762 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
3763 'p' operand specifier.
3764
3765 Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
3766
3767 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
3768 m68k family cpus which support long branch addressing modes.
3769 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
3770 md_create_long_jump): Use it.
3771
3772 Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
3773
3774 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
3775 the .reginfo or .MIPS.options section if configured for an
3776 embedded target.
3777
3778 * config/tc-mips.c (md_begin): Don't set interlocks for
3779 mips_4650.
3780
3781 Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
3782
3783 * read.c (read_a_source_file): Make sure the symbol ends with
3784 whitespace before checking whether the next character is '='.
3785
3786 Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
3787
3788 * config/tc-i386.c (sco_id): Moved from here...
3789 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
3790 really is an SCO ELF specific thing, not just a SCO x86 specific
3791 thing.
3792
3793 start-sanitize-tic80
3794 Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3795
3796 * configure.in (tic80-*-*): Don't require 'coff'.
3797 * configure: Regenerate.
3798
3799 end-sanitize-tic80
3800 Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
3801
3802 * read.c (emit_expr): Check for overflow of a negative value
3803 correctly.
3804 * write.c (fixup_segment): Likewise.
3805 * config/obj-coff.c (fixup_segment): Likewise.
3806
3807 * config/tc-m68k.c (struct label_line): Define.
3808 (labels, current_label): New static variables.
3809 (md_assemble): Mark current_label as text, and clear it.
3810 (m68k_frob_label): New function.
3811 (m68k_flush_pending_output): New function.
3812 (m68k_frob_symbol): New function.
3813 * config/tc-m68k.h (tc_frob_label): Define.
3814 (md_flush_pending_output): Define.
3815 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
3816 (tc_frob_coff_symbol): Likewise.
3817
3818 * read.c (read_a_source_file): When defining a macro in MRI mode,
3819 don't add the symbol to the symbol table.
3820
3821 Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
3822
3823 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
3824 here since fixup_segment doesn't (linkrelax is set).
3825 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
3826
3827 Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
3828
3829 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
3830 relocs.
3831
3832 Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
3833
3834 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
3835 to avoid warnings with the native HP compiler.
3836 (fix_new_hppa): Similarly for the r_type argument.
3837 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
3838 in an #if OBJ_ELF to keep gcc -Wall quiet.
3839 (md_apply_fix): Always initialize "result".
3840
3841 * config/tc-mn10200.c (md_assemble): Generate relocations.
3842
3843 Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3844
3845 * config/tc-m68k.c (s_even): Adjust the alignment of the current
3846 section.
3847
3848 Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
3849
3850 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
3851 pass on the new file hook.
3852
3853 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
3854 !alpha_force_relocation, as local LITERALs can be adjusted to be
3855 relative to the section.
3856
3857 Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
3858
3859 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
3860 defined, call it.
3861 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
3862 aligned to odd boundary.
3863 (tc_frob_coff_symbol): Define.
3864
3865 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
3866
3867 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
3868
3869 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
3870 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
3871
3872 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
3873 immediate value.
3874 (md_assemble): If the size is 'B', set fx_signed.
3875 (md_apply_fix_2): Use fx_signed when checking for overflow.
3876
3877 * write.h (struct fix): Add fx_signed field.
3878 * write.c (fix_new_internal): Initialize fx_no_overflow and
3879 fx_signed fields.
3880 (fixup_segment): Use fx_signed when checking for overflow.
3881 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
3882 fx_signed when checking for overflow.
3883
3884 Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
3885
3886 * NOTES, NOTES.config: Removed. These are rarely, if ever,
3887 updated, and all the useful information is in doc/internals.texi.
3888
3889 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3890 * read.c (read_a_source_file): Check for conditional operators
3891 before doing an MRI pending alignment.
3892 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
3893 (tc_conditional_pseudop): Define.
3894 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
3895 * doc/internals.texi (CPU backend): Describe
3896 tc_conditional_pseudoop.
3897
3898 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3899 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
3900 variable.
3901 (md_begin): Check m68k_rel32_from_cmdline before setting
3902 m68k_rel32.
3903 (m68k_mri_mode_change): Likewise.
3904 (md_longopts): Add --disp-size-default-16 and
3905 --disp-size-default-32.
3906 (md_parse_option): Handle new options.
3907 (md_show_usage): Mention new options.
3908 * doc/c-m68k.texi (M68K-Opts): Document new options.
3909
3910 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
3911 * config/tc-m68k.c (m68k_index_width_default): New static
3912 variable.
3913 (m68k_ip): Use m68k_index_width_default to set the size of a base
3914 register whose size was not given.
3915 (md_longopts): Add --base-size-default-16 and
3916 --base-size-default-32.
3917 (md_parse_option): Handle new options.
3918 (md_show_usage): Mention new options.
3919 * doc/c-m68k.texi (M68K-Opts): Document new options.
3920
3921 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
3922
3923 * configure.in: Recognize mips-*-linux* target.
3924 * configure: Rebuild.
3925
3926 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
3927 work if valueT is only 32 bits.
3928
3929 * config/tc-mips.c: Throughout, check target_big_endian rather
3930 than byte_order.
3931 (byte_order): Remove.
3932 (mips_init_after_args): Remove.
3933 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
3934 (mips_init_after_args): Don't declare.
3935 (tc_init_after_args): Don't define.
3936
3937 * config/tc-mips.h (tc_frob_after_relocs): Define if
3938 OBJ_MAYBE_ELF.
3939 (mips_elf_final_processing): Likewise.
3940 (ELF_TC_SPECIAL_SECTIONS): Likewise.
3941
3942 Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3943
3944 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
3945 sld.{h,w} and the operand is relocatable, adjust the adend by
3946 shifting it right one bit.
3947
3948 Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
3949
3950 * read.c (read_a_source_file): Check mri_pending_align after
3951 checking for a macro. From Ronald F. Guilmette
3952 <rfg@monkeys.com>.
3953
3954 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
3955
3956 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
3957 add segment argument. If OBJ_ELF, treat a relocation against a
3958 symbol in a linkonce section like a relocation against an external
3959 symbol.
3960 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
3961
3962 Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
3963
3964 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
3965
3966 Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
3967
3968 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
3969 includes config.h instead of host.h, tc.h instead of tp.h, and
3970 targ-env.h instead of target-environment.h.
3971 Also, obj-format.h includes targ-cpu.h instead of
3972 target-processor.h.
3973 start-sanitize-tic80
3974 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
3975 * configure: Rebuild with autoconf.
3976 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
3977 (TARGET_FORMAT): Define to "coff-tic80".
3978 * config/tc-tic80.c: New file for TIc80 support.
3979 * config/tc-tic80.h: New file for TIc80 support.
3980 end-sanitize-tic80
3981
3982 Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
3983
3984 * doc/as.texinfo (M): Mention explicitly that -M changes macro
3985 handling.
3986
3987 Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
3988
3989 * write.c (adjust_reloc_syms): If the fixup symbol has been
3990 equated to an undefined symbol, convert the fixup to being against
3991 the target symbol. Remove obsolete code handling a special case
3992 for i386 PIC.
3993
3994 Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
3995
3996 * mpw-make.sed: Use NewFolderRecursive for installation.
3997
3998 Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3999
4000 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
4001
4002 Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4003
4004 * config/tc-d10v.c (md_assemble): Fix bug which caused
4005 second instruction in a line to be case sensitize. PR11312
4006
4007 Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
4008
4009 * config/tc-mn10200.c (mn10200_insert_operand): Don't
4010 range check operands with MN10200_OPERAND_NOCHECK set.
4011 (check_operand): Likewise.
4012
4013 Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
4014
4015 * config/tc-mips.c: Undo part of last Friday's alignment changes.
4016 (md_begin): Always align the text section to a four byte
4017 boundary.
4018 (append_insn): Remove call to record_align.
4019
4020 * config/tc-mips.c (insn_label): Remove.
4021 (struct insn_label_list): Define.
4022 (insn_labels, free_insn_labels): New static variables.
4023 (mips_clear_insn_labels): New static function.
4024 (append_insn): Mark all mips16 text labels, and make them odd.
4025 Handle all labels after emitting a nop, not just one. Call
4026 mips_clear_insn_labels rather than just clearing insn_label.
4027 (mips_emit_delays): Add insns parameter, and use it to decide
4028 whether to mark mips16 labels. Handle all labels, not just one.
4029 Force mips16 labels to be odd. Change all callers.
4030 (mips16_immed): Don't check for an odd branch target.
4031 (md_apply_fix): Don't check mips16 mode for a branch reloc.
4032 (mips16_extended_frag): Ignore the low bit in a branch target.
4033 (md_convert_frag): Likewise.
4034 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
4035 clearing insn_label.
4036 (mips_align, mips_flush_pending_output, s_cons): Likewise.
4037 (s_float_cons, s_gpword): Likewise.
4038 (s_align): Use insn_labels rather than insn_label.
4039 (s_cons, s_float_cons, s_gpword): Likewise.
4040 (mips_frob_file_after_relocs): New function.
4041 (mips_define_label): Rewrite to add to insn_labels list.
4042 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
4043 * ecoff.c (ecoff_build_symbols): If the size of a function comes
4044 out odd, increment it.
4045
4046 * config/tc-mips.c (append_insn): Only update prev_insn when not
4047 reordering if place is NULL.
4048
4049 * config/tc-mips.c (mips16_ip): Check for a missing expression
4050 when using the register indirect addressing mode.
4051
4052 Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
4053
4054 * config/tc-mn10200.c (mn10200_insert_operand): Don't
4055 check 24bit operands for overflow.
4056 (check_operand): Likewise.
4057
4058 Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
4059
4060 * doc/as.texinfo (Section): Document how to use the .section
4061 pseudo-op for COFF and ELF.
4062
4063 Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
4064
4065 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
4066
4067 Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
4068
4069 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
4070 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
4071 store them. Adjust other RELAX_MIPS16 macros.
4072 (RELAX_MIPS16_DSLOT): Define.
4073 (RELAX_MIPS16_JAL_DSLOT): Define.
4074 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
4075 handling of whether previous instruction has a fixup. Set
4076 prev_insn_reloc_type.
4077 (mips_no_prev_insn): Clear prev_insn_reloc_type.
4078 (mips16_extended_frag): Use the right base address for a PC
4079 relative add or load.
4080 (md_convert_frag): Likewise. If a PC relative add or load is
4081 used, record the alignment for the section.
4082
4083 Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
4084
4085 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
4086 linkonce section into a reloc against the section symbol.
4087
4088 * config/tc-mips.c (mips16_macro): Remove nop instructions after
4089 branch instructions.
4090
4091 * config/tc-mips.c (md_begin): If configured for an embedded ELF
4092 system, don't set the section alignment to 2**4.
4093 (s_change_sec): Likewise.
4094 (append_insn): Call record_alignment for the section.
4095 (md_section_align): Don't align the section size for an embedded
4096 ELF system.
4097
4098 Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
4099
4100 * write.c (adjust_reloc_syms): Make sure that symbols are
4101 resolved; expression symbols may have been skipped.
4102 * config/obj-coff.c (fixup_segment): Likewise.
4103
4104 Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4105
4106 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
4107 BFD_RELOC_24_PLT_PCREL relocation.
4108 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
4109
4110 Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4111
4112 * config/tc-d10v.c (write_2_short): Remove code that called
4113 parallel_ok() when the programmer specified parallel instructions.
4114
4115 Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
4116
4117 * config/tc-mn10300.c (md_assemble): Update to handle endianness
4118 issues correctly.
4119
4120 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
4121 * config/tc-mn10300.c (md_assemble): Likewise.
4122
4123 Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
4124
4125 * config/tc-mips.c (append_insn): Make sure there is enough room
4126 in a frag after a mips16 instruction to switch it with a jump
4127 instruction.
4128
4129 * config/tc-mips.c (mips16_extended_frag): Give an error for an
4130 attempt to use a non absolute symbol in an extending frag.
4131
4132 Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
4133
4134 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
4135 * config/tc-mn10200.h: Likewise.
4136
4137 Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
4138
4139 * app.c (do_scrub_chars): At the end of a C comment, pass space to
4140 UNGET rather than PUT. Set old_state before setting state to -2.
4141
4142 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
4143 when extending because the value is exactly maxtiny + 1.
4144
4145 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
4146 arguments, and store them. Adjust other RELAX_MIPS16 macros.
4147 (RELAX_MIPS16_USER_SMALL): Define.
4148 (RELAX_MIPS16_USER_EXT): Define.
4149 (mips16_small, mips16_ext): New static variables.
4150 (append_insn): Pass mips16_small and mips16_ext to
4151 RELAX_MIPS16_ENCODE.
4152 (mips16_ip): Set mips16_small and mips16_ext.
4153 (mips16_immed): Don't check mips16_autoextend.
4154 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
4155
4156 * write.c (write_relocs): Print an error for an out of range
4157 fixup, rather than calling abort.
4158
4159 * as.c (main): Unlink the output file if there are errors while
4160 generating the fixups.
4161
4162 Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
4163
4164 * config/tc-mips.c (mips16_extended_frag): Don't call
4165 S_GET_VALUE.
4166 (md_convert_frag): Call resolve_symbol_value before calling
4167 S_GET_VALUE, and don't add in the frag address.
4168
4169 * config/tc-mips.c (mips16_immed): Add file and line parameters,
4170 and use them when reporting errors. Change all callers.
4171
4172 Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
4173
4174 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
4175 Remove '$' prefixing for registers.
4176
4177 Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
4178
4179 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
4180 is initialized before using it.
4181 (d10v_cleanup): No longer uses its argument, so make it void.
4182
4183 * config/tc-d10v.h (d10v_cleanup): Change prototype.
4184
4185 Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
4186
4187 * write.c (fixup_segment): Don't discard the symbol for a PC
4188 relative fixup to an absolute symbol.
4189
4190 Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4191
4192 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
4193 with multiple sections.
4194
4195 Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
4196
4197 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
4198 no-mips-16 to no-mips16.
4199 (s_mipsset): Accept .set mips16 and .set nomips16.
4200
4201 Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4202
4203 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
4204 argument, and check for +/- constant following the suffix, folding
4205 it into the expression.
4206 (ppc_elf_cons): Change ppc_elf_suffix calls.
4207 (md_assemble): Ditto.
4208 (shlib): Replace boolean mrelocatable with enumeration shlib.
4209 (md_parse_option): Discriminate between PIC style shared libraries
4210 and -mrelocatable.
4211 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
4212 libraries.
4213
4214 Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4215
4216 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
4217 change the comment characters.
4218
4219 * config/tc-ppc.c (comment_chars): Delete in favor of
4220 tc_comment_chars.
4221 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
4222 comment chars.
4223 (ppc_comment_chars): Select appropriate comment chars by default.
4224 (msolaris): New flag for -m{,no-}solaris.
4225 (md_parse_option): Recognize -K pic. Add support for
4226 -m{,no-}solaris.
4227 (md_show_usage): Update.
4228 (md_begin): Do not set ELF flags if Solaris.
4229 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
4230 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
4231
4232 Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
4233
4234 * as.c (main): Correct handling of flag_always_generate_output.
4235
4236 Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
4237
4238 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
4239 fx_offset, not fx_addnumber.
4240
4241 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
4242 reloc adjustments.
4243
4244 Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
4245
4246 * config/tc-i386.c: Correct misspelling: balenced to balanced.
4247
4248 Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
4249
4250 * config/tc-mips.c (md_section_align): Check for an alignment of
4251 4, not an alignment of 16. Corrects August 7 patch.
4252
4253 Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
4254
4255 * configure, conf.in: Rebuild with autoconf 2.12.
4256
4257 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
4258 alignment is specified.
4259
4260 Add support for mips16 (16 bit MIPS implementation):
4261 * config/tc-mips.c: Extensive additions for mips16 support, not
4262 listed here.
4263 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
4264 (insn_uses_reg): Change last parameter to an enum.
4265 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
4266 (md_relax_frag): Define as mips_relax_frag.
4267 (mips_relax_frag): Declare.
4268 (struct mips_cl_insn): Add use_extend and extend fields.
4269 (tc_fix_adjustable): Define.
4270 * config/obj-elf.h (S_GET_OTHER): Define.
4271 (S_SET_OTHER): Define.
4272
4273 Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
4274
4275 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
4276 o and p operand specifiers.
4277
4278 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
4279
4280 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
4281 (relax_segment, case rs_org): Move code inside braces. Move locals
4282 target,after inside too.
4283 (relax_segment, case rs_machine_dependent): Guts moved to ...
4284 (relax_frag): New function.
4285 Call md_prepare_relax_scan if defined.
4286 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
4287 M68K_AIM_KLUDGE.
4288
4289 Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
4290
4291 * config/tc-mn10300.c (address_registers): Use '$' as register
4292 prefix instead of '%'.
4293 (data_registers, other_registers, md_assemble): Likewise.
4294
4295 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
4296 (data_registers, other_registers, md_assemble): Likewise.
4297
4298 * config/tc-mn10300.c (md_assemble): Correctly determine the
4299 correct location and type for each relocation.
4300 (md_pcrel_from): Simplify.
4301
4302 Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
4303
4304 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
4305 converted into branch around branch.
4306
4307 Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
4308
4309 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
4310 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
4311 pc-relative relocs.
4312 * config/tc-mn10300.c (md_begin): Set linkrelax.
4313 (md_assemble): Create fixups as needed.
4314 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
4315
4316 Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4317
4318 * config/tc-d10v.c (parallel_ok): When automatically converting
4319 serial ops to parallel, do not consider a branch as the first
4320 instruction.
4321
4322 Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
4323
4324 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
4325
4326 Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
4327
4328 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
4329 via PARAMS.
4330 (check_operand): Likewise.
4331
4332 Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4333
4334 * config/tc-d10v.c (parallel_ok): Branch and link instructions
4335 modify r13.
4336 (write_2_short): Call parallel_ok to check whether two short
4337 instructions the user requested execute in parallel, can be
4338 executed that way.
4339
4340 Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4341
4342 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
4343 allow a branch and link in parallel with an exe instruction.
4344
4345 Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4346
4347 * doc/c-d10v.texi: Add info on @word modifier.
4348
4349 Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
4350
4351 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
4352 operands are assumed to be 32bits. Use "bits" field to hold the
4353 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
4354 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
4355 to be 32bits.
4356
4357 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
4358 of a MN10300_OPERAND_SPLIT operand by operand->shift.
4359
4360 * config/tc-mn10300.c (mn10300_insert_operand): Handle
4361 MN10300_OPERAND_SPLIT.
4362
4363 Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
4364
4365 * config/tc-mn10300.c (md_assemble): Insert operands into
4366 the extension part of the instruction if necessary.
4367 (mn10300_insert_operand): Accept pointer to extension word
4368 argument. Make insn a pointer argument too. Return type
4369 is now void. All callers changed.
4370
4371 Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
4372
4373 * config/tc-mn10300.c (mn10300_insert_operand): Handle
4374 repeated register operands.
4375
4376 Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
4377
4378 * doc/as.texinfo: Added section on reporting bugs.
4379
4380 * config/tc-alpha.c: Change uses of void * to PTR. Change the
4381 alpha_macro emit field to expect a const argument, and change the
4382 arg field to be const. Fix some spacing to follow the GNU
4383 standard.
4384
4385 Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
4386
4387 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
4388 (pca56) and 21264 (ev6) cpus.
4389 (md_apply_fix): Private relocation types are now negative.
4390 (alpha_force_relocation): Likewise.
4391 (tc_gen_reloc): Likewise.
4392 (emit_insn): Likewise.
4393 (emit_ldXu): Do the right thing when the hardware can do byte insns.
4394 (emit_stX): Likewise.
4395 (emit_sextX): Likewise.
4396
4397 Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
4398
4399 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
4400 a symbol found in a reloc.
4401
4402 * symbols.c (resolve_symbol_value): Improve the error message if
4403 an undefined symbol is used in an expression.
4404
4405 Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
4406
4407 * doc/internals.texi: Rewrite, and add a lot of documentation.
4408 * doc/Makefile.in (internals.info): New target.
4409
4410 Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
4411
4412 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
4413 against weak symbols.
4414
4415 Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
4416
4417 * config/tc-v850.c (md_assemble): Don't lose for relaxable
4418 addresses like .+6.
4419
4420 * config/tc-v850.c (md_convert_frag): Make sure we insert the
4421 fixup at the right address within the frag.
4422
4423 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
4424 to an absolute value, instead increment it as needed.
4425
4426 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
4427 * config/tc-v850.c: Fix some indention problems.
4428 (md_relax_table): Define for D9->D99 branch displacement
4429 relaxing.
4430 (md_convert_frag): Do something useful instead of aborting.
4431 (md_estimate_size_before_relax): Likewise.
4432 (md_assemble): Note if the matching instruction has a relaxable
4433 operand. If it does, allocate frag with frag_var and don't
4434 do any fixups.
4435
4436 Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4437
4438 * config/tc-d10v.h (md_cleanup): New function. This is needed to
4439 write out any buffered instructions when a ".end" is found.
4440
4441 Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4442
4443 * read.c (read_a_source_file): New hook md_cleanup().
4444
4445 Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
4446
4447 * write.c (fix_new_exp): Use make_expr_symbol to build an
4448 expression symbol for a complex fixup.
4449
4450 Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
4451
4452 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
4453 hacks to improve parsing of complex hi, lo, zda, etc
4454 expressions.
4455 (md_assemble): Don't demand and eat a trailing ')' after finding
4456 a v850 relocation prefix. Sign extend the constant in a
4457 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
4458 operand.
4459 (parse_cons_expression_v850): Don't eat a trailing ')' after
4460 finding a v850 relocation prefix.
4461
4462 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
4463 (TC_CONS_FIX_NEW): Likewise.
4464 * config/tc-v850.c (parse_cons_expression_v850): New function.
4465 (cons_fix_new_v850): Likewise.
4466
4467 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
4468
4469 Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
4470
4471 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
4472 for an unknown relocation type.
4473
4474 Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
4475
4476 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
4477 4 bytes of space.
4478
4479 Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
4480
4481 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
4482 differently for movea & sst/sld insns.
4483
4484 Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4485
4486 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
4487 of instructions.
4488
4489 Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
4490
4491 * obj.h (struct format_ops): Add frob_file_after_relocs field.
4492 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
4493 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
4494 frob_file_after_relocs field.
4495 * config/obj-elf.c (elf_format_ops): Likewise.
4496 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
4497 including obj-elf.h.
4498
4499 Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
4500
4501 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
4502 specially if not ELF.
4503 (md_apply_fix): Handle BFD_RELOC_64.
4504 (tc_gen_reloc): Handle BFD_RELOC_64.
4505
4506 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
4507 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
4508 reloc hacking).
4509
4510 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
4511 Don't check S_GET_OTHER.
4512
4513 Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
4514
4515 * config/tc-mips.c (mips_ip): Accept an odd floating point
4516 register with l.s or s.s.
4517
4518 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
4519 .type pseudo-op.
4520 (obj_aout_type): New static function.
4521
4522 Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
4523
4524 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
4525
4526 Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
4527
4528 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
4529 and sdaoff expressions.
4530
4531 * write.c (fixup_segment): Don't add symbol value to addend if
4532 TC_V850 and OBJ_ELF.
4533 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
4534 pc-relative fixups.
4535
4536 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
4537 (md_pcrel_from_section): Likewise.
4538 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
4539
4540 Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
4541
4542 * config/tc-v850.c (md_pcrel_from): Delete unused function.
4543 (md_pcrel_from_section): New function.
4544 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
4545
4546 Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
4547
4548 * config/tc-mips.c (load_register): Add cast to offsetT when using
4549 a constant with &~.
4550
4551 Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
4552
4553 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
4554 (elf_frob_file_after_relocs): ... here. New function.
4555 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
4556 * write.c (write_object_file): Call *frob_after_relocs after the
4557 call to write_relocs.
4558
4559 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
4560
4561 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
4562 symbol, as this messes up linking. Instead, expand the recursive call
4563 inline and change up the appropriate bits to get the 0x8000 offset
4564 in the reloc addend.
4565
4566 Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
4567
4568 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
4569 two symbols in the same segment to be adjusted.
4570
4571 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
4572 * configure: Rebuild.
4573
4574 Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4575
4576 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
4577 errors.
4578 (ppc_elf_validate_fix): Ditto.
4579 (md_assemble): Ditto.
4580 (ppc_tc): Ditto.
4581 (ppc_pe_section): Ditto.
4582 (ppc_frob_symbol): Ditto.
4583
4584 Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
4585
4586 * config/mn10300.c (md_assemble): Pass an extra shift count
4587 to mn10300_insert_operand based on the opcode format.
4588 (mn10300_insert_operand): Accept and use extra shift count
4589 parameter.
4590
4591 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
4592 formats rather than hard-coded constants.
4593
4594 * config/tc-mn10300.c (md_assemble): Format D5 instructions
4595 are 7 bytes long. Write out instructions in big-endian format.
4596
4597 Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
4598
4599 * config/tc-mn10300.c (md_assemble): Tweak further so
4600 that all instructions are parsed correctly.
4601
4602 Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
4603
4604 * as.h: Include libiberty.h.
4605 (xmalloc, xrealloc): Don't declare.
4606 * as.c: Don't include libiberty.h.
4607 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
4608 * config/tc-mips.c: Likewise.
4609 * messages.c: Likewise.
4610 (xstrerror): Don't declare.
4611 * xmalloc.c: Remove.
4612
4613 Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
4614
4615 * config/tc-mn10300.h (pre_defined_registers) Remove.
4616 (system_registers, cc_names): Likewise.
4617 (address_registers, data_registers, other_registers): New register
4618 arrays.
4619 (register_name, system_register_name, cc_name): Remove.
4620 (mn10300_reloc_prefix): Likewise.
4621 (data_register_name): New function.
4622 (address_register_name, other_register_name): Likewise.
4623 (md_assemble): Rough cut at parsing operands. Remove lots of
4624 unwanted code.
4625 (md_apply_fix3): Disable for now.
4626
4627 Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4628
4629 * config/tc-m68k.c (select_control_regs): New function, extracted
4630 out of m68k_init_after_args.
4631 (m68k_init_after_args): Use it.
4632 (mri_chip): Use it here as well to update set of allowed control
4633 regs for movec.
4634
4635 Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
4636
4637 * config/obj-elf.c (elf_begin): New function.
4638 (obj_elf_section): Add the section symbol to the symbol table.
4639 * config/obj-elf.h (obj_begin): Define.
4640 (elf_begin): Declare.
4641 * as.c (perform_an_assembly_pass): Call obj_begin if it is
4642 defined.
4643
4644 Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
4645
4646 * config/obj-coff.c (fixup_segment): Subtract the section address
4647 from a PC relative reloc if TC_M68K.
4648
4649 Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
4650
4651 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
4652 .uaxword available even if not OBJ_ELF.
4653 (md_atof): Remove unused local variable wordP.
4654
4655 Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
4656
4657 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
4658 for Matsushita MN10x00 support.
4659 * configure.in: Recognize mn10x00-*-*
4660 * configure: Rebuilt.
4661
4662 Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
4663
4664 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
4665 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
4666 (load_expression): track clobbering of base reg before jmp/jsr.
4667 (s_alpha_file): pass case_hack flags and source filename via
4668 symbol table to bfd.
4669 * tc-alpha.h (TC_CONS_FIX_NEW): define
4670
4671 Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
4672
4673 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
4674 * configure: Rebuild.
4675
4676 Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
4677
4678 * read.c (s_macro): Warn if a macro has the same name as a
4679 pseudo-op.
4680 (s_space): In m68k MRI mode, align to a word boundary.
4681 * macro.c (define_macro): Add namep parameter. Change all
4682 callers.
4683 * macro.h (define_macro): Update declaration.
4684
4685 * as.c (show_usage): Print bug report address.
4686 (parse_args): Change version printing to match current GNU
4687 standards.
4688 * gasp.c (show_usage): Print bug report address.
4689 (main): Change version printing to match current GNU standards.
4690
4691 * config/tc-m68k.c (init_table): Correct access control unit
4692 register numbers. From Ken Rose <rose@netcom.com>.
4693
4694 * config/tc-alpha.c: Add some static function prototypes.
4695 (alpha_macros): Move to top of file. Make static.
4696 (alpha_num_macros): Move to top of file.
4697
4698 Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
4699
4700 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
4701 generated by DWARF.
4702
4703 Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
4704
4705 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
4706 and just call sprintf_vma.
4707
4708 Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
4709
4710 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
4711
4712 Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
4713
4714 * read.c (float_cons): Call md_flush_pending_output if it is
4715 defined.
4716
4717 Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4718
4719 * config/tc-d10v.c (md_operand): Created. Allows operands to
4720 start with '#'.
4721 * config/tc-d10v.h (md_operand): Undefined.
4722
4723 Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
4724
4725 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
4726 (md_assemble): A fixup width of '3' means a 1 byte reloc.
4727
4728 Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
4729
4730 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
4731 reloc for the i960 for a reloc in the same section. This undoes
4732 one of the two changes made Aug 19.
4733
4734 Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
4735
4736 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
4737 symbols to the position of the debugging information.
4738
4739 Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
4740
4741 * expr.c (expr): Always use unsigned right shifts for >>.
4742
4743 Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
4744
4745 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
4746 slots when processing BL fixups.
4747
4748 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
4749 on the first half of the instruction.
4750
4751 Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
4752
4753 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
4754 stabs expression, rather than giving an error.
4755
4756 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
4757 the same file.
4758
4759 Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
4760
4761 * config/tc-mips.c (append_insn): Fill in the value for a constant
4762 jump, rather than creating a reloc.
4763
4764 Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
4765
4766 * config/tc-mips.c (append_insn): Don't swap an instruction which
4767 sets a condition code with an instruction which uses a condition
4768 code.
4769 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
4770 immediate value.
4771
4772 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
4773 (mips_ip): Give a better error message if the ISA level is wrong.
4774 (md_parse_option): Recognize -mcpu=[v][r]5000.
4775
4776 Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
4777
4778 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
4779 leading zeroes.
4780 (load_register): Ensure hi32 bits are not lost during lo32bit
4781 processing. Fix shift offset that was overflowing into the next
4782 instruction field. Add code to generate shorter sequences for
4783 constants with a single contiguous seqeuence of ones.
4784
4785 Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4786
4787 * config/tc-d10v.c (d10v_dot_word): New function to support
4788 "@word" with the word pseudo-op.
4789 (md_apply_fix3): Cleanup and changes to support correct sizes
4790 for 16 and 18-bit relocs.
4791
4792 Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
4793
4794 * configure.in (sparc-*-aout): Set `em'.
4795 * configure: Regenerated.
4796 * config/te-sparcaout.h: New file.
4797 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
4798 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
4799 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
4800 (SPECIAL_CASE_{SETSW,SETX}): Define.
4801 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
4802 (md_begin): Delete setting of `target_big_endian'.
4803 (output_insn): New function.
4804 (md_assemble): Rewrite. Add `setx' support.
4805 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
4806 special cases.
4807 (md_atof): Add little endian support.
4808 (md_number_to_chars): Likewise.
4809 (md_apply_fix): Likewise.
4810 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
4811 (md_parse_option): Likewise.
4812 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
4813
4814 Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
4815
4816 * ecoff.c (ecoff_new_file): New function.
4817 * ecoff.h (ecoff_new_file): Declare.
4818 * config/obj-ecoff.h (obj_app_file): Define.
4819
4820 Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
4821
4822 * config/tc-alpha.c (load_expression): Bias the .lit8 section
4823 symbol by 32k so that our 16-bit signed offset can address the
4824 entire chunk. Reported by <matt@lkg.dec.com>.
4825
4826 Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
4827
4828 * config/tc-mips.c (load_register): Remove unused variable tmp.
4829
4830 Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
4831
4832 * config/tc-mips.c (load_register): Remove unnecessary code that
4833 was causing the high 32bits of 64bit constants to be lost.
4834
4835 Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4836
4837 * config/tc-d10v.c: Added changes to support function
4838 pointers and "@word" syntax.
4839
4840 Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
4841
4842 * config/tc-v850.c: Remove commented out and #if 0'd code.
4843 (v850_reloc_prefix): Provide prototype.
4844 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
4845 functions.
4846 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
4847 (md_assemble): Add default to case statement.
4848
4849 Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
4850
4851 * config/tc-v850.c (md_assemble): Compute size of the instrction
4852 from the opcode.
4853
4854 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
4855 word fixups too.
4856
4857 Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
4858
4859 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
4860 routines to fetch/store the updated instruction from/to memory.
4861 (v850_insert_operand): If the operand has a specialized insert
4862 routine, call it.
4863
4864 Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
4865
4866 * config/tc-v850.c (reg_name_search): Align calling convention to
4867 be like identical function found in tc-ppc.c.
4868 (get_reloc): Removed.
4869 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
4870 (md_assemble): emit fixups.
4871 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
4872 displacement.
4873 (md_apply_fix3): handle fixups/relocs.
4874 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
4875
4876 Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
4877
4878 Add SH ELF support.
4879 * configure.in (sh-*-elf*): New target.
4880 * config/tc-sh.h (TARGET_ARCH): Define.
4881 (WORKING_DOT_WORD): Define.
4882 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
4883 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
4884 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
4885 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
4886 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
4887 (SUB_SEGMENT_ALIGN): Likewise.
4888 (RELOC_32): Don't define.
4889 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
4890 (target_big_endian): Declare if OBJ_ELF.
4891 (TARGET_FORMAT): Define if OBJ_ELF.
4892 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
4893 numbers throughout.
4894 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
4895 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
4896 (struct sh_count_relocs): Define.
4897 (sh_count_relocs): New static function, broken out of
4898 sh_frob_file. Add BFD_ASSEMBLER code.
4899 (sh_frob_section): Likewise.
4900 (sh_frob_file): Call sh_frob_section.
4901 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
4902 call section_symbol rather than seg_info (seg)->dot.
4903 (md_section_align): Add OBJ_ELF version.
4904 (SWITCH_TABLE_CONS): Define.
4905 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
4906 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
4907 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
4908 BFD_ASSEMBLER.
4909 (struct reloc_map): Define if not BFD_ASSEMBLER.
4910 (coff_reloc_map): Likewise.
4911 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
4912 (tc_gen_reloc): New function if BFD_ASSEMBLER.
4913 * write.c (write_relocs): Ifdef out fx_where test which triggers
4914 inappropriately for SH ELF.
4915 (write_object_file): Call tc_frob_file_before_adjust and
4916 obj_frob_file_before_adjust if they are defined.
4917
4918 * write.c (write_object_file): Use BFD_RELOC_16, not
4919 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
4920
4921 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
4922 code.
4923
4924 Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4925
4926 * config/tc-d10v.c (find_opcode): Fix problem with calculating
4927 branch sizes in across sections.
4928
4929 Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
4930
4931 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
4932 hi0() too.
4933
4934 Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
4935
4936 * config/tc-v850.c (md_begin): Deal with end of opcode
4937 table marker.
4938
4939 Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4940
4941 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
4942 the wrong opcode for cases like st2w where there are many forms
4943 of the same instruction.
4944
4945 Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
4946
4947 * expr.c (operand): If md_parse_name is defined, call it before
4948 calling symbol_find_or_make.
4949 * config/tc-ppc.h (md_parse_name): Define.
4950 (ppc_parse_name): Declare.
4951 * config/tc-ppc.c (reg_name_search): Add regs and regcount
4952 parameters.
4953 (register_name): Update call to reg_name_search.
4954 (cr_operand): New static variable.
4955 (cr_names): New static const array.
4956 (ppc_parse_name): New function.
4957 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
4958 cr_operand before calling expression.
4959
4960 Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
4961
4962 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
4963 hppa_gen_reloc_type call.
4964
4965 Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4966
4967 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
4968 on addresses. Improved error messages.
4969 * doc/c-d10v.texi: Added docs for register pairs.
4970
4971 Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4972
4973 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
4974 checking code.
4975
4976 Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
4977
4978 * ecoff.c (init_file): Initialize fMerge to 1.
4979 (add_file): Restore old file merging code, but only merge files if
4980 fMerge is set.
4981 (ecoff_directive_loc): Clear fMerge field of current file.
4982 (ecoff_generate_asm_lineno): Likewise.
4983
4984 Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4985
4986 * doc/c-d10v.texi: Fix typo.
4987
4988 Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
4989
4990 * config/tc-v850.c (md_assemble): Correct bit masking for
4991 hi and lo expressions.
4992
4993 * config/tc-v850.c (md_assemble): Rough cut at demanding
4994 "ep" or "r30" in sst and sld instructions.
4995 (md_apply_fix3): Don't abort. Just warn that we don't
4996 have relocs yet.
4997
4998 * config/tc-v850.c (CC_NAME_CNT): Define.
4999 (cc_name): New function.
5000 (md_assemble): Handle V850_OPERAND_CC correctly.
5001
5002 * config/tc-v850.c (md_assemble): Don't forget to initialize
5003 "insn"!
5004
5005 * config/tc-v850.c (reg_name_search): Generalize to search
5006 any given register table.
5007 (register_name): Pass appropriate table and size to reg_name_search.
5008 (system_register_name): New function.
5009 (SYSREG_NAME_CNT): Define.
5010 (md_assemble): Handle operands which are system registers.
5011
5012 * config/tc-v850.c (md_assemble): If we find a register, but the
5013 opcode doesn't want a register, then we don't have a match.
5014 (md_assemble): Get size of the instruction from the opcode table.
5015
5016 Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
5017
5018 * configure.in: Set and substitute HLDENV.
5019 * configure: Rebuild.
5020 * Makefile.in (HLDENV): New variable.
5021 (as.new): Use $(HLDENV).
5022
5023 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
5024 if an array dimension is not known.
5025
5026 Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5027
5028 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
5029 * doc/c-d10v.texi: Cleanup.
5030
5031 Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
5032
5033 * config/tc-v850.c: New file.
5034 * config/tc-v850.h: New file.
5035 * configure (v850-*-elf): New target.
5036 * configure.in (v850-*-elf): New target.
5037
5038 Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5039
5040 * doc/c-d10v.texi: New file.
5041 * doc/all.texi: Added D10V stuff.
5042 * doc/as.texinfo: Added D10V stuff.
5043
5044 Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5045
5046 * config/tc-d10v.c: All references to defined symbols should
5047 now use the optimal instruction. .float and .double now work.
5048
5049 Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
5050
5051 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
5052 section address for the i960 as is done for the i386.
5053
5054 Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
5055
5056 * mpw-config.in: Add wildcards for config matching, add mips-*-*
5057 case, forward-include bfd/elf-bfd.h.
5058
5059 Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5060
5061 * config/tc-d10v.c: Add additional information to the opcode
5062 table to help determinine which instructions can be done
5063 in parallel.
5064
5065 Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
5066
5067 * config/tc-arm.c: Major changes to add Thumb support, with lots
5068 of change input from <rearnsha@armltd.co.uk>.
5069 Reverted to INSN_SIZE macro, rather than insn_size variable.
5070 (insns): Added ARM "bx" instruction support.
5071 (tinsns): Added Thumb instruction definition structure.
5072 (arm_tops_hsh): Added hash structure for Thumb opcodes.
5073 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
5074 (opcode_select,s_arm,s_thumb,s_code): Added.
5075 (decode_shift): Allow upper-case RRX.
5076 (do_ldst): Simpler halfword support.
5077 (do_ldmstm): Improved.
5078 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
5079 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
5080 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
5081 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
5082 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
5083 do_t_adr): Added.
5084 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
5085 (md_parse_option): Add support for -mthumb.
5086 (md_show_usage): Updated to reflect new command line option.
5087 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
5088 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
5089 fragment information to be held.
5090
5091 Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
5092
5093 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
5094 non-null, but is a constant.
5095 (fix_new_arm): Call make_expr_symbol to make the expression symbol
5096 so that error reporting will work correctly.
5097
5098 Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
5099
5100 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
5101 against weak symbols.
5102
5103 Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
5104
5105 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
5106 (ppc_force_relocation): Declare if OBJ_XCOFF.
5107 * config/tc-ppc.c (ppc_force_relocation): New function if
5108 OBJ_XCOFF.
5109
5110 Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
5111
5112 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
5113
5114 Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5115
5116 * config/tc-d10v.c: Fix problem with relocs.
5117
5118 Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
5119
5120 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
5121 with nops if not in data_section or bss_section.
5122
5123 Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
5124
5125 Add support for openVMS/Alpha.
5126 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
5127 * config/obj-evax.c: New file.
5128 * config/obj-evax.h: New file.
5129 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
5130 defined.
5131 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
5132 defined. Add case for bfd_target_evax_flavour.
5133 * config/vms-a-conf.h: New file.
5134 * conf-a-gas.com: New file.
5135 * configure.in: Add target alpha-*-*vms*.
5136 * configure: Rebuild.
5137 * makefile.vms: New file.
5138 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
5139 Don't call ffs on openVMS/Alpha.
5140
5141 Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
5142
5143 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
5144 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
5145 and sbrk.
5146 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
5147 (NEED_DECLARATION_SBRK): New macro.
5148 * configure, conf.in: Rebuild.
5149 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
5150 (strstr): Declare if NEED_DECLARATION_STRSTR.
5151 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
5152
5153 Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
5154
5155 * symbols.c (resolve_symbol_value): Handle addition or subtraction
5156 by a constant before entering the main switch. Reject attempts to
5157 apply an arithmetic function to non-absolute symbols, except for
5158 the special case of subtraction of two symbols in the same
5159 section.
5160
5161 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
5162 not to more than a 16 byte boundary.
5163
5164 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
5165 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
5166 (tc_gen_reloc): If out of memory call as_fatal rather than
5167 assert. If no howto found, call as_bad_where rather than
5168 as_fatal. Change the error message slightly. Set howto to a
5169 non-NULL value in order to keep going.
5170
5171 Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5172
5173 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
5174
5175 Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
5176
5177 * config/tc-h8300.c (get_specific): New operand "size" derived
5178 from ".b", ".w" and ".l" extensions. All callers changed. If
5179 the base instruction has no operands, then use the size to
5180 determine which specific instruction to use.
5181
5182 Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
5183
5184 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
5185
5186 Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
5187
5188 * config/tc-mips.c (md_section_align): Don't change addr if
5189 OBJ_ELF.
5190
5191 Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
5192
5193 * config/tc-hppa.c: Revert yesterday's changes.
5194
5195 Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5196
5197 * config/tc-d10v.c: Disable range checking on 16-bit values.
5198
5199 Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
5200
5201 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
5202 not just the ones that don't match.
5203
5204 Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5205
5206 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
5207
5208 Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
5209
5210 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
5211 pre-cursor to adding Thumb support. Also added cpu_variant flag
5212 information to each of the asm_flg structures.
5213 (md_parse_option): Updated ARM7 parsing to allow 't' for
5214 thumb/halfword support, aswell as 'm' for long multiply.
5215 (md_show_usage): Updated help message.
5216 (md_assemble): Check that instruction flags are applicated to the
5217 current cpu variant.
5218 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
5219 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
5220 signextension instructions.
5221 (do_ldst): Generate halfword and signextension variants if
5222 mnemonic flags match.
5223 (ldst_extend): Do not allow shifts in the offset field of halfword
5224 or signextension instructions.
5225 (validate_offset_imm): Provide check on halfword and signextension
5226 immediate range.
5227 (add_to_lit_pool): Merge identical literal pool values.
5228
5229 Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
5230
5231 * config/tc-hppa.c (selector_table): Add 'E' selector.
5232 (cons_fix_new_hppa): Don't coke on e_esel.
5233 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
5234 to help generate exception handling tables.
5235 (md_apply_fix): Don't try to apply fixups with an e_esel
5236 selector.
5237 (hppa_fix_adjustable): Fixups with e_esel selectors
5238 are not adjustable.
5239
5240 Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
5241
5242 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
5243 pseudo-ops.
5244
5245 Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5246
5247 * config/tc-d10v.c: Added lots of error checking. Added hacks
5248 to support accumulator shifts.
5249
5250 Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
5251
5252 * symbols.c (S_SET_EXTERNAL): Let .weak override.
5253 (S_CLEAR_EXTERNAL): Likewise.
5254 (S_SET_WEAK): Remove error; just let .weak override.
5255
5256 Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5257
5258 * config/tc-d10v.c (md_assemble): Now handles multiline
5259 instructions.
5260
5261 Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5262
5263 * config/tc-d10v.c: Fix packaging bug. Added range checking.
5264 Added kludge for divs instruction. Fixed minor problem with
5265 multiple text sections.
5266 * config/tc-d10v.h (d10v_cleanup): Change prototype.
5267
5268 Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5269
5270 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
5271 addresses to be right-shifted by 2.
5272
5273 Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5274
5275 * config/tc-d10v.c: Many changes to get relocs working.
5276 (register_name): No longer creates a symbol for register names.
5277 (pre_defined_registers): moved to opcodes/d10v-opc.c.
5278 (d10v_insert_operand): Now works correctly for either container.
5279 * config/tc-d10v.h (d10v_cleanup): Declare.
5280
5281 Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
5282
5283 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
5284 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
5285
5286 Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
5287
5288 * tc-alpha.c: Patches to track current minimum alignment to reduce
5289 the number of fragments created with frag_align.
5290 (alpha_current_align): New static variable.
5291 (s_alpha_text): Reset alignment to 0.
5292 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
5293 (s_alpha_stringer, s_alpha_space): New functions.
5294 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
5295 (alpha_cons_align): New function to replace both of them.
5296 (emit_insn): Only align if alpha_current_align is less than 2;
5297 reset alpha_current_align to 2.
5298 (s_alpha_gprel32): Likewise.
5299 (s_alpha_section): New function. Basically duplicate the other
5300 alpha section change hooks. Only define for ELF.
5301 (s_alpha_float_cons): Simplify alignment handling.
5302 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
5303 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
5304 Don't define the s_alpha_cons pseudo-ops. Do define
5305 s_alpha_stringer and s_alpha_space pseudo-ops.
5306 (alpha_align): Skip if less than current default alignment. Set
5307 default alignment.
5308 * tc-alpha.h (md_flush_pending_output): Remove.
5309 (md_cons_align): Add.
5310
5311 * tc-alpha.c: Add oodles of function description comments.
5312 (md_bignum_to_chars): Remove; there are no callers.
5313 (md_show_usage): Mention some more variants.
5314
5315 Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
5316
5317 From Andrew Gierth <ANDREWG@microlise.co.uk>:
5318 * configure.in (sparc-*-sysv4*): New target.
5319 * configure: Rebuild.
5320
5321 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
5322 uaxword to use s_uacons.
5323 (sparc_no_align_cons): New static variable.
5324 (s_uacons): New static function.
5325 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
5326 and return.
5327
5328 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
5329
5330 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
5331 5 with regard to shared libraries.
5332 * configure: Rebuild.
5333
5334 * config/tc-m68k.c (m68k_ip): Use the correct length when
5335 allocating space for the unsupported architecture error message.
5336
5337 Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5338
5339 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
5340
5341 Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5342
5343 * config/tc-d10v.c: New file.
5344 * config/tc-d10v.h: New file.
5345 * configure (d10v-*-elf): New target.
5346 * configure.in (d10v-*-elf): New target.
5347
5348 Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5349
5350 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
5351
5352 Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
5353
5354 * config/tc-alpha.c (alpha_align): Change fill parameter
5355 to a pointer. Take NULL as 0 or nop depending on section. Change
5356 all callers.
5357 (s_alpha_align): Rename local variables.
5358
5359 * doc/as.texinfo (.align): Document action of omitted
5360 fill parameter.
5361
5362 Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
5363
5364 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
5365 when an unsupported PC relative reloc is seen, rather than calling
5366 abort.
5367
5368 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
5369 Instead, check state when '#' comment is seen.
5370
5371 Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
5372
5373 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
5374 OBJ_MAYBE_ELF.
5375 (tc_gen_reloc): If fixup was changed to be PC relative, change
5376 reloc type accordingly. Use name of reloc in error message.
5377
5378 * as.h: Don't define const or volatile.
5379 * flonum.h: Don't define const.
5380
5381 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
5382 if fx_pcrel is set. Correct setting the addend case in the
5383 OBJ_ELF case (from Andreas Schwab
5384 <schwab@issan.informatik.uni-dortmund.de>).
5385 (md_show_usage): Correct -mfc5200 to -m5200.
5386
5387 Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
5388
5389 * doc/c-m68k.texi: Document -m5200 flag.
5390 * doc/as.texinfo: Likewise.
5391
5392 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
5393 scale factor.
5394
5395 Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
5396
5397 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
5398 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
5399
5400 Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
5401
5402 * Makefile.in (VERSION): Set to cygnus-2.7.1.
5403
5404 * Released binutils 2.7.
5405
5406 Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
5407
5408 * config/tc-mips.c (mips_ip): Only perform range check when
5409 dealing with O_constant expressions.
5410
5411 Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
5412
5413 * m68k-parse.h (m68k_register): Add new coldfile control
5414 registers.
5415
5416 * config/tc-m68k.c (mcf5200_control_regs): New variable,
5417 array of control registers for the coldfire.
5418 (cpu_of_arch): Added mcf5200.
5419 (archs): Added mcf5200.
5420 (init_table): Add new control registers.
5421 (m68k_ip): Added support for new control registers.
5422 (m68k_init_after_args): Likewise.
5423
5424 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
5425
5426 Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
5427
5428 * read.h (is_it_end_of_statement): Declare.
5429 * read.c (is_it_end_of_statement): Remove declaration.
5430
5431 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
5432 within &&.
5433 (md_assemble): Fix handling of @l with an unsigned constant. Add
5434 default case to reloc switch.
5435
5436 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
5437
5438 Based on patches from Tom Quiggle <quiggle@sgi.com>:
5439 * ecoff.c (last_lineno): New static variable.
5440 (add_procedure): Set last_lineno.
5441 (ecoff_directive_loc): Likewise.
5442 (ecoff_generate_asm_lineno): Likewise.
5443 (ecoff_fix_loc): New function.
5444 * ecoff.h (ecoff_fix_loc): Declare.
5445 * config/tc-mips.c (append_insn): When inserting nops, and using
5446 ECOFF debugging, call ecoff_fix_loc.
5447
5448 Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
5449
5450 * config/tc-h8300.c (build_bytes): If an operand type is
5451 marked as SRC_IN_DST retrieve it from the "destination" op.
5452
5453 Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
5454
5455 * configure.in (arm-*-riscix*): Set emulation to riscix.
5456 * configure: Rebuild.
5457 * config/te-riscix.h: New file to define TE_RISCIX.
5458
5459 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
5460
5461 Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
5462
5463 * Makefile.in (config.status): Just run config.status as other
5464 tools do.
5465
5466 Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
5467
5468 * mpw-config.in (TARGET_OS): Add definition to conf.
5469
5470 Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
5471
5472 * config/tc-mips.c (append_insn): Parenthesize
5473 cop_interlocks expressions.
5474
5475 Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
5476
5477 * listing.c (listing_print): Close the listing file if it is not
5478 stdout. Close the other files opened for the listing.
5479
5480 * config/tc-sparc.h (md_cons_align): Define.
5481 (sparc_cons_align): Declare.
5482 (HANDLE_ALIGN): Define.
5483 (sparc_handle_align): Declare.
5484 * config/tc-sparc.c (sparc_cons_align): New function.
5485 (sparc_handle_align): New function.
5486 * read.c (cons_worker): Call md_cons_align if it is defined.
5487
5488 * as.h (struct frag): Add fr_file and fr_line fields.
5489 * frags.c (frag_new): Set fr_file and fr_line.
5490 (frag_var): Likewise.
5491 (frag_variant): Likewise.
5492
5493 * as.h (struct frag): Remove unused align_mask and align_offset
5494 fields.
5495
5496 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
5497 From <uddeborg@carmen.se>.
5498
5499 Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
5500
5501 * configure.in (mips-*-osf*): New target.
5502 * configure: Rebuild.
5503
5504 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
5505
5506 Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
5507
5508 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
5509 between co-processor comparisons and branches for the VR4300.
5510
5511 Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
5512
5513 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
5514 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
5515 (docdir): Removed.
5516 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
5517 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
5518 includedir): Use autoconf set values.
5519 (docdir): Removed.
5520
5521 Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
5522
5523 * listing.c (listing_eject): Don't do anything if listing is 0.
5524 (listing_list): Likewise.
5525 (listing_source_line): Likewise.
5526 (listing_title): Don't save title if listing is 0.
5527 (listing_source_file): Check listing rather than listing_tail.
5528
5529 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
5530 using shared libraries.
5531 * configure: Rebuild.
5532
5533 Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
5534
5535 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
5536 absolute expression if a relocation type was specified.
5537
5538 Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
5539
5540 * configure.in: Add support for *-*-rtems* configurations.
5541 * configure: Rebuild.
5542
5543 Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
5544
5545 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
5546 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
5547 opcodes library for alpha.
5548 * configure: Rebuild with autoconf 2.10.
5549 * config/tc-alpha.c: Substantial rewrite to add ELF support and
5550 use new opcode table.
5551 * config/tc-alpha.h (md_undefined_symbol): Don't define.
5552 (LOCAL_LABEL): Define differently if OBJ_ELF.
5553 (FAKE_LABEL_NAME): Define if OBJ_ELF.
5554 * config/alpha-opcode.h: Remove.
5555 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
5556 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
5557 include/opcode/alpha.h rather than config/alpha-opcode.h.
5558
5559 Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
5560
5561 * config/obj-aout.c (obj_emit_relocations): Give an error if the
5562 relocation symbol was not resolved.
5563 * config/obj-coff.c (do_relocs_for): Likewise.
5564
5565 * write.c (adjust_reloc_syms): Refetch the symbol section after
5566 calling S_GET_VALUE, since it may have changed.
5567
5568 * expr.c (struct expr_symbol_line): Define.
5569 (expr_symbol_lines): New static variable.
5570 (make_expr_symbol): Add entry to expr_symbol_lines.
5571 (expr_symbol_where): New function.
5572 * expr.h: Use extern on function declarations.
5573 (expr_symbol_where): Declare.
5574 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
5575 rather than printing the meaningless name of an expression
5576 symbol.
5577
5578 Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
5579
5580 * config/tc-i386.c (md_number_to_chars): Deleted.
5581 * config/tc-i386.h (md_number_to_chars): New macro.
5582
5583 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
5584 the file.
5585 (load_symbol_address, load_expression): Use build_mem.
5586 (build_operate): New function.
5587 (emit_addq_r): Use it.
5588
5589 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
5590
5591 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
5592
5593 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
5594
5595 * config/tc-vax.h (NOP_OPCODE): Define.
5596
5597 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
5598
5599 * config/obj-vms.h (S_IS_COMMON): Define.
5600 (S_IS_LOCAL): Check for \002 as well as \001.
5601 (LONGWORD_ALIGNMENT): New macro.
5602 (SUB_SEGMENT_ALIGN): Use it.
5603
5604 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
5605
5606 * config/vms-conf.h: Reconcile with conf.in.
5607
5608 Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
5609
5610 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
5611 defined.
5612
5613 * doc/as.texinfo: Document that any number of hex digits can
5614 follow \x.
5615
5616 * as.c (struct defsym_list): Define.
5617 (defsyms): New static variable.
5618 (parse_args): Just put --defsym arguments on defsyms list, rather
5619 than defining them.
5620 (main): Define defsyms after output file is created.
5621
5622 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
5623 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
5624
5625 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
5626 insn_error rather than calling check_absolute_expr.
5627
5628 * as.c (emulation_name): Remove unused static variable.
5629 (default_emul_bfd_name): Add return NULL to avoid warning.
5630 * ecoff.c (ecoff_stab): Remove unused variables name and
5631 name_end.
5632 * frags.c (frag_new): Remove unused variable tmp.
5633 * hash.c (hash_grow): Parenthesize + within <<.
5634 (hash_print_statistics): Use %lu, not %d, to print unsigned
5635 long variables.
5636 * messages.c: Include "libiberty.h".
5637 (fprint_value): Add cast to avoid printf warning.
5638 (sprint_value): Likewise.
5639 * read.c: Include "ecoff.h".
5640 (emit_expr): Add casts to avoid printf warnings.
5641 * read.h: Use extern for function declarations.
5642 (pop_insert): Declare.
5643 * stabs.c: Include "ecoff.h".
5644 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
5645 former_last_fragP, and new_fragP.
5646 * subsegs.h (subsegs_print_statistics): Declare.
5647 * symbols.c (debug_verify_symchain): Change macro to discard
5648 arguments.
5649 * write.c (dump_section_relocs): Likewise.
5650 * write.h: Use extern for function declarations.
5651 (write_print_statistics): Declare.
5652 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
5653 warning.
5654 * config/e-mipself.c (mipself_bfd_name): Likewise.
5655 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
5656
5657 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
5658 emit relocations against external symbols.
5659
5660 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
5661 message if bfd_reloc_type_lookup fails, rather than calling
5662 assert.
5663
5664 * config/tc-alpha.c (alpha_force_relocation): Add
5665 BFD_RELOC_12_PCREL to switch.
5666
5667 Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
5668
5669 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
5670 TE_PE (Lfoo, not .Lfoo).
5671
5672 Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
5673
5674 * read.c (s_fill): Don't warn about a zero repeat count.
5675
5676 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
5677 coprocessor register.
5678
5679 * config/tc-i386.c (md_assemble): When checking the size of a
5680 register to set the size of an instruction, do a bitwise and with
5681 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
5682 or Reg16.
5683
5684 Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5685
5686 * config/tc-h8300.c (parse_reg): Tweak error messages.
5687 (build_bytes): Likewise.
5688 (skip_colonthing): Handle :32 suffix.
5689 (get_specific): Promote L_24 to L_32 if it makes a match.
5690 Don't always promote L_8 to L_16.
5691 (do_a_fix_imm): Clean up L_32 and L_24 handling.
5692
5693 * config/tc-h8300.c (Smode): New variable.
5694 (h8300hmode): Turn off Hmode.
5695 (h8300smode): New function. Turn on Smode and Hmode.
5696 (md_pseudo_table): New ".h8300s" pseudo-op.
5697 (parse_reg): Handle "exr" register.
5698 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
5699 Handle "mach" and "machl" operands for ldmac.
5700 (get_specific): Handle "stm.l" and "ldm.l".
5701 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
5702 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
5703 (Smode): Declare.
5704
5705 Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
5706
5707 * doc/as.texinfo: Reorder chapter of machine dependent options so
5708 that it is sorted by chip name.
5709
5710 * doc/as.texinfo: Use consistant spelling of Vax.
5711 * doc/c-vax.texi: Likewise.
5712
5713 Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5714
5715 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
5716 pseudo ops.
5717 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
5718 (md_apply_fix): Likewise.
5719 (pa_try): New function.
5720 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
5721
5722 Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5723
5724 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
5725 (pa_level): New function.
5726
5727 Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
5728
5729 * listing.c (listing_newline): Don't do anything if listing is 0.
5730
5731 Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
5732
5733 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
5734 symbol_create, not symbol_new.
5735
5736 Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
5737
5738 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
5739 absolute symbol unless TC_FORCE_RELOCATION returns true.
5740
5741 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
5742 version.
5743 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
5744 the symbol to a pointer. Don't set previous_file_symbol.
5745 Simplify symbol list rearrangement.
5746 (coff_frob_symbol): Don't do anything with C_FILE symbols.
5747 (coff_adjust_symtab): Don't check previous_file_symbol.
5748
5749 Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5750
5751 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
5752 directive.
5753 (md_pseudo_table): Add ppc_elf_lcomm.
5754
5755 Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
5756
5757 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
5758 d0{24:1},d0' works without an immediate prefix on the bit numbers.
5759 (md_begin): Add digits to alt_notend_table.
5760 (md_parse_option): Make s a const pointer.
5761
5762 * config/tc-sparc.c (md_pseudo_table): Add "empty".
5763 (s_empty): New static function.
5764
5765 * config/obj-coff.c (struct filename_list): Only define if not
5766 BFD_ASSEMBLER.
5767 (filename_list_head, filename_list_tail): Likewise.
5768 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
5769 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
5770 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
5771 have a section of N_ABS rather than N_DEBUG. If we do a merge,
5772 remove the new symbol from the list.
5773 (obj_coff_endef, both versions): Call tag_insert even if there is
5774 an old symbol with the same name, if the old symbol does not
5775 happen to be a tag.
5776 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
5777 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
5778 symbol that will be moved to the end of the symbol list.
5779 (coff_adjust_section_syms): Always call section_symbol for .text,
5780 .data, and .bss.
5781 (coff_frob_section): Likewise. Also, remove unused variable
5782 strname.
5783
5784 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
5785 manipulating frags directly.
5786 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
5787 defined.
5788
5789 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
5790 whether the next character is '*' before checking whether we are
5791 at the start of a line. Permit LINE_COMMENT_START to start a
5792 comment in state 1 (seen some whitespace) as well, to match the
5793 documentation.
5794
5795 * gasp.c (do_align): Permit a fill value for .align.
5796
5797 Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
5798
5799 * read.c (next_char_of_string): Warn if a newline is seen in the
5800 middle of a string. Call bump_line_counters when appropriate.
5801
5802 Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
5803
5804 * symbols.c (colon): Use LOCAL_LABEL.
5805
5806 Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
5807
5808 * Makefile.in (install): Don't check to see if tooldir exists.
5809 Make $(tooldir) and $(tooldir)/bin.
5810
5811 Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5812
5813 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
5814 default.
5815
5816 Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
5817
5818 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
5819 insn_error. Don't put the string "ERROR" in insn_error. Set
5820 insn_error rather than calling as_warn for an unsupported opcode.
5821
5822 Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
5823
5824 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
5825 before permitting -64.
5826 * output-file.c (output_file_create): Remove duplicate
5827 bfd_perror.
5828
5829 Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
5830
5831 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
5832 section rather than a .reginfo section.
5833 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
5834 information.
5835
5836 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
5837 bit value with the high bit set.
5838
5839 Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
5840
5841 * read.c (s_lcomm): Set section flags for .sbss section.
5842
5843 * config/tc-mips.c (mips_64): New static variable.
5844 (mips_target_format): If mips_64, return elf64 targets rather than
5845 elf32 ones.
5846 (md_longopts): Add "32" and "64".
5847 (md_parse_option): Handle -32 and -64.
5848 (md_show_usage): Mention -32 and -64.
5849 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
5850 a 4 byte one.
5851
5852 Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5853
5854 * config/tc-ppc.c (comment_chars): Make '!' a comment character
5855 for Solaris compatibility.
5856
5857 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
5858 .stabd with 4 arguments into a .stabn.
5859
5860 Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
5861
5862 * config/tc-mips.c (macro): When passing X_add_number to
5863 macro_build, cast it to int first.
5864
5865 Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
5866
5867 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
5868 created by emit_expr.
5869
5870 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
5871 as_perror rather than assert.
5872
5873 Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
5874
5875 * config/tc-mips.c (mips_ip): Mark sections created to hold
5876 floating point information as read only.
5877
5878 Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
5879
5880 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
5881
5882 Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5883
5884 * read.c (potable): Add .skip as a synonym for .space.
5885
5886 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
5887 4 arguments, providing the 4th argument is 0, to allow
5888 compatibility with the Solaris assembler.
5889
5890 Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
5891
5892 * config/tc-sh.h (struct sh_segment_info_type): Define.
5893 (TC_SEGMENT_INFO_TYPE): Define.
5894 (sh_frob_label): Declare.
5895 (tc_frob_label): Define.
5896 (sh_flush_pending_output): Declare.
5897 (md_flush_pending_output): Define.
5898 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
5899 reloc before the instruction if necessary.
5900 (sh_frob_label): New function.
5901 (sh_flush_pending_output): New function.
5902 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
5903 when looking for the reloc for the target of .uses.
5904 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
5905 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
5906 emitted.
5907 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
5908 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
5909 the absolute symbol.
5910
5911 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
5912 TC_SEGMENT_INFO_TYPE is defined.
5913
5914 Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
5915
5916 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
5917 matches the register size.
5918
5919 Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
5920
5921 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
5922 fx_done set.
5923 (do_relocs_for): Likewise.
5924 (fixup_segment): Don't just quit if linkrelax is set. Try to
5925 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
5926 nonzero.
5927
5928 Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5929
5930 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
5931 relative relocations with -mrelocatable. Also allow unfixed
5932 relocs in .ex_shared.
5933
5934 Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
5935
5936 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
5937 non-zero before assuming this is a long file name.
5938 (w_strings): Likewise.
5939 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
5940
5941 * config/obj-coff.c (w_strings): Move declaration of i inside
5942 #ifdef block which uses it.
5943
5944 Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
5945
5946 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
5947 "relaxmode". Output relocs which identify various relaxing
5948 possibilities for mov.[bwl] instructions.
5949 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
5950
5951 Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
5952
5953 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
5954 (MD_APPLY_FIX3): Define.
5955 * config/tc-arm.c (my_get_expression): Only watch for bad segments
5956 if OBJ_AOUT.
5957 (md_apply_fix3): Renamed from md_apply_fix.
5958 If pcrel reloc and symbol is in different section, undo effects
5959 of md_pcrel_from.
5960
5961 Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
5962
5963 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
5964 any reloc with an LR% or RR% field selector for SOM.
5965
5966 Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
5967
5968 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
5969 variables.
5970
5971 Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
5972
5973 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
5974 SF_GET_STATICS set.
5975 (yank_symbols): Likewise.
5976
5977 Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
5978
5979 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
5980 BFD_ASSEMBLER, add name field.
5981 * config/obj-coff.c: Include "libiberty.h".
5982 (coff_header_append): Handle long section names.
5983 (crawl_symbols): Just use the name field for the symbol name,
5984 without worrying about null byte termination.
5985 (w_strings): Handle long section names.
5986 (write_object_file): Likewise. Also, use the name field, rather
5987 than scnhdr.s_name.
5988 (obj_coff_add_segment): Permit long section names.
5989 (obj_coff_init_stab_section): Use the name field, rather than
5990 scnhdr.s_name.
5991 (adjust_stab_section): Likewise.
5992 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
5993
5994 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
5995 (mem_fmt): Likewise.
5996 (md_apply_fix): Don't check fx_im_disp field.
5997
5998 Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
5999
6000 * configure.in: Add * after sparc*-*-vxworks.
6001 * configure: Rebuild.
6002
6003 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
6004 define it to comment_chars. Use tc_comment_chars rather than
6005 comment_chars.
6006 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
6007 * config/tc-m68k.h (tc_comment_chars): Define.
6008 (m68k_comment_chars): Declare.
6009 * config/tc-m68k.c (m68k_comment_chars): Rename from
6010 comment_chars. Change into a pointer rather than an array.
6011 (md_longopts): Add "bitwise-or".
6012 (md_parse_option): Handle OPTION_BITWISE_OR.
6013 (md_show_usage): Mention --bitwise-or.
6014 * doc/c-m68k.texi: Document --bitwise-or.
6015
6016 Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
6017
6018 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
6019 in 68000 mode.
6020
6021 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
6022 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
6023 correct handling of input line pointer, and call
6024 demand_empty_rest_of_line.
6025
6026 Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
6027
6028 * config/tc-sparc.c (in_bitfield_range): New static function.
6029 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
6030 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
6031 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
6032 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
6033 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
6034
6035 Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
6036
6037 * config/obj-coff.c: BFD_ASSEMBLER:
6038 (coff_last_bf): New static variable.
6039 (coff_frob_symbol): Set endndx of a .bf symbol.
6040 Non BFD_ASSEMBLER:
6041 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
6042 (last_bfP): New static variable.
6043 (yank_symbols): Set endndx of a .bf symbol.
6044
6045 Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6046
6047 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
6048 and -s options. Add -be for good measure.
6049
6050 Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
6051
6052 * read.c (s_space): Support non-constant fill value. Handle fill
6053 value correctly for a size other than 1.
6054
6055 Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
6056
6057 * config/tc-arm.c (my_get_float_expression): Update call to
6058 gen_to_words, X_PRECISION changed from 6 to 5.
6059
6060 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6061
6062 * config/tc-ppc.c (register_name,reg_name_search): Move register
6063 name lookup from PE specific code to all targets. Add support for
6064 -mregnames/-mno-regnames to control whether register names are
6065 expanded or not.
6066 (md_assemble): Call register_name for all platforms.
6067 (md_parse_option): Add support for -mregnames/-mno-regnames.
6068
6069 * configure.in (powerpcle*-*-solaris): Add support.
6070 (powerpc*-*-linux): Ditto.
6071 * configure: Regenerate.
6072
6073 * config/ppc-sol.mt: New config file for PowerPC Solaris.
6074
6075 Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
6076
6077 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
6078 be associated with a single %lo reloc.
6079
6080 * config/tc-mips.c (load_address): Cast X_add_number to valueT
6081 before comparing against MAX_GPREL_OFFSET, so that negative
6082 numbers are handled correctly.
6083 (macro): Likewise.
6084
6085 Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
6086
6087 * config/tc-sparc.c (last_insn): New static variable.
6088 (md_assemble): Warn about putting floating point branches in a
6089 delay slot. If architecture is less than v9, insert NOP
6090 instructions between floating point instructions and floating
6091 point branches. (The SunOS assembler does both these operations.)
6092 Save the last instruction opcode.
6093 (sparc_ip): Add pinsn parameter. Change caller.
6094
6095 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
6096 for byte jump to next instruction to skip empty frags.
6097
6098 Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
6099
6100 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
6101 for addq with a 16 bit signed value, just emit a lda instruction
6102 instead.
6103
6104 Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
6105
6106 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
6107 of a 32bit operand.
6108
6109 Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
6110
6111 * configure.in: Permit --enable-shared to specify a list of
6112 directories.
6113 * configure: Rebuild.
6114
6115 Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
6116
6117 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
6118 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
6119
6120 Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6121
6122 * config/atof-ieee.c: Fix handling of denormalized extended
6123 precision numbers and overflow/underflow detection.
6124 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
6125 not include the 16 bit gap in the m68k extended precision format.
6126
6127 Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
6128
6129 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
6130 <jdp@polstra.com>.
6131 * configure: Rebuild.
6132
6133 Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
6134
6135 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
6136 be accessed using the $gp register.
6137 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
6138
6139 Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
6140
6141 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
6142 bfd_mach_sparc_sparclet if current_architecture is sparclet.
6143
6144 Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
6145
6146 * read.c (get_line_sb): Bump line counters based on
6147 input_line_pointer[-1], not *input_line_pointer. Don't bother to
6148 call LISTING_NEWLINE.
6149 (s_macro): Don't call demand_empty_rest_of_line.
6150 * app.c (do_scrub_chars): When handling C style comments, unget
6151 ch2 rather than ch.
6152
6153 Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
6154
6155 * read.h (enum linkonce_type): Define.
6156 (s_linkonce): Declare.
6157 * read.c (potable): Add "linkonce".
6158 (s_linkonce): New function.
6159 * subsegs.h (segment_info_type): Add linkonce field to
6160 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
6161 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
6162 (obj_coff_pe_handle_link_once): Declare if TE_PE.
6163 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
6164 "coff/pe.h".
6165 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
6166 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
6167 entry based on the linkonce field in segment_info.
6168 * doc/as.texinfo: Document .linkonce.
6169
6170 Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
6171
6172 * doc/as.1: Changed to be recognized by catman -w on Solaris.
6173
6174 Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
6175
6176 * stabs.c (s_stab_generic): Call the listing functions before
6177 doing the rest of the processing, which may involve freeing the
6178 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
6179 SEPARATE_STAB_SECTIONS case.
6180
6181 * config/tc-hppa.c: Remove nested comment.
6182 (tc_gen_reloc): Move label done inside the ifdef in which it is
6183 used.
6184 (md_apply_fix): Pass pointers to correct types to libhppa.h
6185 functions. Always return a value.
6186
6187 * config/tc-mips.h (tc_frob_file): Define.
6188 (mips_frob_file): Declare.
6189 * config/tc-mips.c (struct mips_hi_fixup): Define.
6190 (mips_hi_fixup_list): New static variable.
6191 (imm_unmatched_hi): New static variable.
6192 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
6193 offset_reloc. Pass imm_unmatched_hi to append_insn.
6194 (append_insn): Add unmatched_hi parameter. If it is set, add the
6195 new fixup to mips_hi_fixup_list. Change all callers.
6196 (mips_ip): Set imm_unmatched_hi when appropriate.
6197 (mips_frob_file): New function.
6198
6199 Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
6200
6201 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
6202 * configure: Regenerated.
6203
6204 Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
6205
6206 * as.c (main): Call bfd_set_error_program_name.
6207
6208 Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
6209
6210 * as.h (strdup): Don't declare.
6211 * stabs.c: Include libiberty.h
6212 (get_stab_string_offset): Use xstrdup rather than strdup.
6213 (s_stab_generic): Likewise.
6214 * as.c (parse_args): Likewise.
6215 * read.c (s_mri_sect): Likewise.
6216
6217 * gasp.c (change_base): Recognize \(...) construct documented to
6218 pass through enclosed characters literally through to the output.
6219 (process_assigns): Likewise. Also, be more careful to avoid
6220 looking past the end of the buffer.
6221
6222 Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
6223
6224 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
6225 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
6226
6227 Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6228
6229 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
6230
6231 Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
6232
6233 * config/alpha-opcode.h: Added cvtst instruction.
6234
6235 Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
6236
6237 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
6238 string. Extract the addend from the result of expression.
6239
6240 Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
6241
6242 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
6243 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
6244 mode, change the state to 3 rather than 1.
6245
6246 Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
6247
6248 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
6249 correspond to 11 March change.
6250
6251 Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
6252
6253 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
6254 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
6255
6256 Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
6257
6258 * configure: Rebuild with autoconf 2.8.
6259
6260 Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
6261
6262 * config/atof-ieee.c (gen_to_words): Improve handling of
6263 X_PRECISION numbers. Based on patches from Andreas Schwab
6264 <schwab@issan.informatik.uni-dortmund.de>.
6265
6266 Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
6267
6268 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
6269 (SEG_LAST): New.
6270 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
6271 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
6272 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
6273 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
6274 SEG_E9.
6275
6276 Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
6277
6278 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
6279
6280 Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
6281
6282 * config/tc-hppa.c (SUBSEG_MILLI): Define.
6283 (pa_def_subspaces): Add $MILLICODE$.
6284 (pa_spaces_begin): Set section flags for $MILLICODE$.
6285
6286 Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
6287
6288 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
6289 not SHT_NOBITS. Don't tamper with flags based on type if a
6290 special section was found (revert Feb 29 change).
6291
6292 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
6293 if aligning to a longword boundary or greater.
6294
6295 Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
6296
6297 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
6298
6299 Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
6300
6301 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
6302 * configure: Regenerated.
6303
6304 Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
6305
6306 * config/tc-hppa.c: Add default definitions for R_N0SEL and
6307 R_N1SEL since they're not defined for old versions of hpux.
6308
6309 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
6310 Set "sym_ptr_ptr" and "addend" fields to dummy values for
6311 R_N0SEL and R_N1SEL.
6312
6313 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6314
6315 * flonum-konst.c: Add two more constants for 1e+-2048 and
6316 1e+-4096, and correct the other constants.
6317
6318 * symbols.c (resolve_symbol_value): Handle O_logical_not.
6319
6320 Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6321
6322 * config/obj-elf.c (obj_elf_section): Allow predefined section
6323 types to set the nobits type. Avoid a shadowed declaration.
6324
6325 Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
6326
6327 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
6328 reduce relocs using e_nlrsel field selectors.
6329
6330 * write.c (fix_new_exp): Don't use #elif. Some compilers
6331 don't handle it.
6332
6333 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
6334 the selector table.
6335 (pa_chk_field_selector): Handle new field selectors for SOM.
6336
6337 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6338
6339 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
6340 * configure: Rebuild.
6341 * config/te-linux.h (LOCAL_LABELS_FB): Define.
6342 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
6343 "a.out-m68k-linux".
6344 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
6345 is defined.
6346
6347 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
6348
6349 * mpw-make.sed: Update to handle shared library support.
6350
6351 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
6352
6353 * config/tc-sparc.c (sparc_ip): Print all architectures that support
6354 the insn on mismatch.
6355
6356 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
6357
6358 * configure.in: Add support for a29-coff.
6359 * configure: Rebuild.
6360
6361 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
6362
6363 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
6364 of the section when looking for the R_SH_USES fixup, because the
6365 frag addresses have not yet been adjusted.
6366
6367 * gdbinit.in: Set a breakpoint on as_warn_where.
6368
6369 * config/tc-mips.c (macro): Add missing arguments to macro_build
6370 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
6371
6372 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
6373
6374 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
6375 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
6376
6377 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
6378
6379 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
6380
6381 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
6382
6383 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
6384 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
6385 Recognize [uU] format args as sparclet cpregs.
6386
6387 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
6388
6389 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
6390 in bss_section.
6391
6392 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
6393
6394 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
6395 well as S_IS_EXTERNAL.
6396 (tc_fix_adjustable): Likewise.
6397 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
6398 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
6399 early.
6400 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
6401 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
6402
6403 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
6404
6405 * config/tc-sparc.c (max_architecture): Change to sparclite for
6406 32 bit arch.
6407 (default_compatible): Delete.
6408 (sparc_ffs): New function.
6409 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
6410 (sparc_ip): Rewrite architecture match and bump logic.
6411
6412 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
6413
6414 * configure.in: Check for 'do not mix' from native linker before
6415 trying to use -rpath.
6416 * configure: Rebuild.
6417
6418 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
6419
6420 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
6421 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
6422 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
6423 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
6424 is set.
6425 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
6426 to the symbol lnnoptr field, to get the correct file offset.
6427
6428 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6429
6430 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
6431 symbols that are not function, file, or section symbols to be
6432 object types.
6433
6434 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
6435
6436 * configure: Set and substitute RPATH_ENVVAR.
6437 * configure: Rebuild.
6438 * Makefile.in (RPATH_ENVVAR): New variable.
6439 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
6440
6441 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
6442 doesn't need opcodes. If configuring shared, opcodes needs bfd.
6443 * configure: Rebuild.
6444
6445 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
6446
6447 * read.c (s_mri_sect): Don't return '\0' in type. Set all
6448 appropriate flags in BFD section.
6449
6450 * configure.in (m68k-*-psos*): New target.
6451 * configure: Rebuild.
6452 * config/te-psos.h: New file.
6453 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
6454 is defined.
6455
6456 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
6457
6458 From Alan Modra <alan@spri.levels.unisa.edu.au>:
6459 * configure.in: Remove duplicate setting of cpu_type. Check
6460 whether opcodes library is required for on all targets, not just
6461 primary one.
6462 * configure: Rebuild.
6463
6464 * config/tc-mips.c (mips_big_got): New static variable.
6465 (s_extern): Don't declare.
6466 (reg_needs_delay): New static function.
6467 (macro_build): Permit GOT/CALL_HI/LO relocs.
6468 (macro_build_lui): If place is not NULL, use the number in the
6469 expression.
6470 (load_address): Handle mips_big_got case.
6471 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
6472 store macros.
6473 (OPTION_XGOT): Define.
6474 (md_longopts): Add "xgot" if OBJ_ELF.
6475 (md_parse_option): Handle -xgot.
6476 (md_show_usage): Mention -xgot.
6477 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
6478 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
6479
6480 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6481
6482 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
6483 the byte relocation, point it to the low byte of the word.
6484
6485 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
6486
6487 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
6488 * configure: Rebuild.
6489
6490 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
6491
6492 * configure.in: Recognize any sparc* cpu.
6493 * configure: Regenerated.
6494
6495 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
6496
6497 * read.c (potable): Add "mri" and ".mri".
6498 (s_mri): New function.
6499 * read.h (s_mri): Declare.
6500 * app.c (scrub_m68k_mri): New static variable.
6501 (mri_pseudo): New static variable.
6502 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
6503 flag_m68k_mri. Initialize scrub_m68k_mri.
6504 (mri_state, mri_last_ch): New static variables.
6505 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
6506 fields.
6507 (app_push): Save new fields.
6508 (app_pop): Restore new fields.
6509 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
6510 If TC_M68K, use a trivial state machine to look for occurrences of
6511 the .mri pseudo-op, and change the mode appropriately.
6512 * as.h (do_scrub_begin): Update prototype.
6513 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
6514 do_scrub_begin.
6515 * config/tc-m68k.c (reg_prefix_optional_seen): New static
6516 variable.
6517 (m68k_mri_mode_change): New function.
6518 (md_parse_option): Set reg_prefix_optional_seen.
6519 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
6520 (MRI_MODE_CHANGE): Define.
6521 * doc/as.texinfo: Document .mri pseudo-op.
6522
6523 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
6524 comment character.
6525
6526 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6527
6528 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
6529 * config/m68k-parse.h (enum pic_relocation): Define.
6530 (struct m68k_exp): Add pic_reloc field.
6531 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
6532 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
6533 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
6534 otherwise.
6535 * config/tc-m68k.c: Delete definition of NO_RELOC.
6536 (struct m68k_it): Add pic_reloc field.
6537 (add_fix): Copy over pic_reloc field.
6538 (md_pseudo_table): Interpret .align parameter as byte count.
6539 (mote_pseudo_table): Likewise.
6540 (tc_m68k_fix_adjustable): New function.
6541 (get_reloc_code): New function.
6542 (md_assemble): Use it as last argument to fix_new_exp.
6543 (md_apply_fix_2): For a relocation against a symbol don't put the
6544 addend into the data.
6545 (tc_gen_reloc): Different addend computation for OBJ_ELF.
6546 (m68k_ip): Don't relax an operand that requires pic relocation.
6547 (md_begin): Align .text, .data and .bss on 4 byte boundary by
6548 default.
6549 * write.c (fixup_segment): Don't add symbol value to addend if
6550 TC_M68K and OBJ_ELF.
6551 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
6552 (motorola_operand): Add rule for `(zapc, EXPR)'.
6553
6554 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
6555
6556 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
6557 *really* is permissible before the comma.
6558
6559 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
6560
6561 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
6562 inserting nop instructions.
6563
6564 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
6565
6566 * config/te-aux.h: Change include of aux.h to aux-coff.h.
6567
6568 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
6569
6570 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
6571 class setting for a CALLNAME symbol in COFF.
6572
6573 * read.c (potable): Pass negative numbers for new .balign[wl] and
6574 .p2align[wl] pseudo-ops.
6575 (s_align_bytes): Treat a negative argument as specifying the fill
6576 length.
6577 (s_align_ptwo): Likewise.
6578
6579 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
6580
6581 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
6582 (do_align): Take new len parameter. Change all callers. Pass it
6583 to md_do_align.
6584 (s_align_bytes): Arg now indicates the length of the fill pattern.
6585 (s_align_ptwo): Likewise.
6586 * config/obj-coff.c (write_object_file): Pass length to
6587 md_do_align.
6588 * config/tc-i386.h (md_do_align): Take new len parameter.
6589 * config/tc-m88k.h (md_do_align): Likewise.
6590 * config/tc-m88k.c (m88k_do_align): Likewise.
6591 * config/tc-sh.h (md_do_align): Likewise.
6592 * config/tc-sh.c (sh_do_align): Likewise.
6593 * doc/as.texinfo: Document new pseudo-ops.
6594
6595 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
6596 done in cvt_frag_to_fill.
6597
6598 * config/tc-sh.h (sh_do_align): Declare.
6599 (md_do_align): Define.
6600 * config/tc-sh.c (sh_do_align): New function.
6601
6602 * ecoff.c (ecoff_build_lineno): Don't try to store the address
6603 difference if the next address is before the current one.
6604
6605 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
6606 (archs): Initialize new field.
6607 (m68k_ip): Don't list alias names when listing CPUs which support
6608 an instruction.
6609
6610 * as.c (main): Call parse_args before read_begin.
6611 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
6612 front of generated pseudo-ops.
6613 * read.c (potable): Ignore "name".
6614 (s_app_file): Permit a single quote after the string, since one
6615 may appear in m68k MRI mode.
6616
6617 * configure.in: Check for --enable-shared. If linking against
6618 shared BFD and opcodes, fix library name on SunOS, and try to set
6619 -rpath reasonably.
6620 * configure: Rebuild.
6621
6622 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
6623
6624 * as.h (flag_m68k_mri): Declare.
6625 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
6626 * Many files: For MRI syntax that is specific to the m68k MRI
6627 assembler, check flag_m68k_mri rather than flag_mri or
6628 MRI_MODE_NEEDS_PSEUDO_DOT.
6629
6630 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
6631
6632 * config/tc-i960.c (ARCH_HX): Define.
6633 (arch_tab): Add HX.
6634 (targ_has_sfr): Handle ARCH_HX.
6635 (targ_has_iclass): Handle ARCH_HX.
6636 (tc_coff_fix2rtype): Add return 0 to avoid warning.
6637 (tc_headers_hook): If the architecture was specified explicitly,
6638 use it when setting the flags. Set the extern variable coff_flags
6639 rather than headers->filehdr.f_flags, since the latter is set
6640 unconditionally in obj-coff.c.
6641 (i960_handle_align): Remove unused variable fixp.
6642
6643 Support for building bfd and opcodes as shared libraries, based on
6644 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
6645 * configure.in: Set OPCODES and BFD to search directories.
6646 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
6647 * configure: Rebuild.
6648 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
6649 (LIBDEPS): New variable.
6650 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
6651 $(HLDFLAGS) in link.
6652 (check): Set LD_LIBRARY_PATH in the environment.
6653
6654 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
6655
6656 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
6657 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
6658 read-only, not read/write.
6659
6660 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
6661
6662 * Makefile.in (INSTALL_XFORM): Remove -e.
6663
6664 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
6665
6666 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
6667 than comparing S_GET_SEGMENT to undefined_section.
6668 (write_object_file): Skip symbols which were equated to an
6669 undefined or common symbol.
6670 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
6671 S_IS_COMMON rather than comparing S_GET_SEGMENT to
6672 undefined_section.
6673 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
6674 or S_IS_COMMON call S_GET_VALUE.
6675 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
6676 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
6677 to an undefined or common symbol, convert the reloc to be against
6678 the target symbol.
6679 (obj_crawl_symbol_chain): Skip symbols which were equated to an
6680 undefined or common symbol.
6681 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
6682 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
6683 to an undefined or common symbol, convert the reloc to be against
6684 the target symbol.
6685 (obj_crawl_symbol_chain): Skip symbols which were equated to an
6686 undefined or common symbol.
6687 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
6688 S_IS_COMMON rather than comparing S_GET_SEGMENT to
6689 undefined_section.
6690 (yank_symbols): Skip symbols which were equated to an undefined or
6691 common symbol.
6692
6693 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
6694
6695 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
6696 * config/obj-bout.h (S_IS_LOCAL): Likewise.
6697
6698 * configure.in: Make sure we only add m68k-parse.o to
6699 ${extra_objects} once, no matter how many m68k targets have been
6700 enabled.
6701 * configure: Rebuild.
6702
6703 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
6704
6705 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
6706 * configure: Rebuild.
6707
6708 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
6709
6710 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
6711 * doc/c-m68k.texi: Document .extend and .ldouble.
6712
6713 * configure.in (m68*-apple-aux*): New target.
6714 * config/te-aux.h: New file.
6715 * config/obj-coff.c (compare_external_relocs): New static function
6716 if TE_AUX.
6717 (do_relocs_for): Sort relocs if TE_AUX.
6718 (fixup_segment): If TE_AUX, store common symbol value in segment.
6719 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
6720
6721 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
6722
6723 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
6724
6725 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
6726 BSF_FUNCTION.
6727 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
6728 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
6729 symbol.
6730 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
6731 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
6732 an undefined symbol and the size of a function symbol.
6733 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
6734 for all common symbols.
6735
6736 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
6737
6738 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
6739 scaling of index.
6740
6741 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
6742 m68k.
6743
6744 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
6745
6746 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
6747 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
6748
6749 * ecoff.c (localsym_t): Add addend field.
6750 (add_ecoff_symbol): Add addend argument. Change all callers.
6751 (coff_sym_value): Make static.
6752 (coff_sym_addend): New static variable.
6753 (ecoff_directive_def): Initialize coff_sym_addend.
6754 (ecoff_directive_val): Accept symbol + constant.
6755 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
6756 (ecoff_build_symbols): Include the addend in the symbol value.
6757
6758 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
6759
6760 * config/tc-ppc.c (md_assemble): Ignore overflow on
6761 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
6762
6763 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6764
6765 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
6766 bytes in size, so offset appropriately in big endian mode when
6767 writing the bottom 2 bytes.
6768
6769 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
6770
6771 * config/tc-sparc.c (default_compatible): New static local.
6772 (md_begin): Initialize it. Rewrite warn_on_bump handling.
6773 (sparc_ip): If no architecture or -bump specified, don't mark as
6774 mismatched those in default_compatible.
6775
6776 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
6777
6778 SCO ELF support from Robert Lipe <robertl@arnet.com>:
6779 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
6780 * configure: Rebuild.
6781 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
6782 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
6783 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
6784 (sco_id): Declare if SCO_ELF.
6785
6786 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
6787
6788 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
6789 ({max,warn_after}_architecture): New static locals.
6790 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
6791 If both architecture and -bump requested, set max_architecture to max.
6792 (sparc_md_end): Simplify.
6793 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
6794 Rewrite code to bump architecture and check for conflicts.
6795 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
6796 with Solaris assembler.
6797 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
6798 (md_show_usage): Update.
6799
6800 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
6801
6802 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
6803
6804 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
6805
6806 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
6807 #ifdef sparcv9 when choosing value.
6808 (ENV64): Delete.
6809 (md_end): Define.
6810 (sparc_md_end): Declare.
6811 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
6812 (initial_architecture): New static local.
6813 (can_bump_v9_p): Likewise.
6814 (NO_V9): Delete all occurrences.
6815 (sparc_md_end): New function.
6816 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
6817 Don't bump architecture to v9 unless can_bump_v9_p set.
6818 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
6819 * configure.in (sparc64 target cpu): Don't set obj_format here.
6820 (SPARC_V9): Renamed from sparcv9.
6821 (sparc64-*-elf*): Define SPARC_ARCH64.
6822 * configure: Regenerated.
6823 * acconfig.h (SPARC_V9): Renamed from sparcv9.
6824 (SPARC_ARCH64): Add.
6825 * conf.in: Regenerated.
6826 * config/vmsconf.h: Update.
6827
6828 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
6829
6830 * config/tc-mips.c (load_register): Optimise "dli" loads.
6831 (md_show_usage): add "-mcpu=vr4100" to help text.
6832
6833 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
6834
6835 * symbols.c (resolve_symbol_value): If a symbol is equated to an
6836 undefined symbol, preserve the X_op of O_symbol.
6837 (S_GET_VALUE): Fix check to permit this case.
6838 * write.c (write_relocs): If a reloc is against an undefined
6839 symbol equated to another symbol, change the reloc to be against
6840 the latter symbol.
6841 * config/obj-coff.c (do_relocs_for): Likewise.
6842
6843 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
6844 XMC_PR.
6845
6846 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6847
6848 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
6849 computer is PowerPC.
6850
6851 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
6852
6853 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
6854 mentioned in the eabi.
6855
6856 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
6857
6858 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
6859 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
6860
6861 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6862
6863 * config/tc-ppc.c (mapping): Add more relocation suffixes.
6864
6865 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6866
6867 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
6868 as a section it is ok to have unadorned -mrelocatable pointers in.
6869
6870 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6871
6872 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
6873 #ifdef OBJ_ELF.
6874
6875 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6876
6877 * config/obj-elf.c (obj_elf_section): Add hooks so machine
6878 dependent section attributes can be handled.
6879
6880 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
6881 macros to add support for exclude section flag and ordered section
6882 type.
6883
6884 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
6885 functions to add support for exclude section flag and ordered
6886 section type.
6887
6888 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
6889
6890 * subsegs.c (section_symbol): Don't try to look up the section
6891 symbol in the hash table. It should be possible to have a symbol
6892 with the same name as a section, but no connection to it.
6893
6894 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
6895 From James Carlson <carlson@xylogics.com>.
6896
6897 * expr.c (operand): Skip whitespace after a close parenthesis.
6898 From James Carlson <carlson@xylogics.com>.
6899
6900 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
6901
6902 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
6903 as_warn_where for relocation overflow.
6904 (parse_reg): Accept register name only if next character is
6905 not alphanumeric.
6906
6907 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
6908
6909 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
6910 addresses for static variables.
6911
6912 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6913
6914 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
6915 and xgot give the old toc16 relocation.
6916 (md_apply_fix3): Support all GOT relocations.
6917
6918 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
6919
6920 * config/tc-mips.c (load_address): Correctly handle a constant in
6921 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
6922
6923 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
6924
6925 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
6926 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
6927 (build_Mbytes): Handle REG_B.
6928
6929 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
6930
6931 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
6932
6933 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
6934
6935 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
6936
6937 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
6938
6939 * config/obj-coff.c (write_object_file): Set the s_align field to
6940 the number of bytes, rather than to the power of 2.
6941
6942 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
6943
6944 * Makefile.in (DISTCLEAN_HERE): New variable.
6945 (distclean): Use it.
6946 (maintainer-clean): Depend upon clean-here rather than clean,
6947 distclean, and clean-info. Run make maintainer-clean in doc.
6948 Remove files listed in DISTCLEAN_HERE.
6949 * doc/Makefile.in (maintainer-clean realclean): Split out from
6950 distclean. Depend upon clean-info and distclean.
6951
6952 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
6953
6954 * mac-as.r: Fix copyright and version strings.
6955 (cfrg): Use PROG_NAME instead of literal name.
6956
6957 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
6958
6959 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
6960 call it.
6961 * config/tc-a29k.h (tc_unrecognized_line): Define.
6962 * config/tc-a29k.c (a29k_unrecognized_line): New function.
6963 (md_operand): Handle a29k style local dollar labels.
6964
6965 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
6966
6967 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
6968
6969 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
6970
6971 * read.c (s_fill): If md_flush_pending_output is defined, call
6972 it.
6973
6974 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
6975
6976 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
6977 Treat rs_align_code like rs_align.
6978
6979 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
6980
6981 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
6982 converting an absolute address into a PC-relative one.
6983
6984 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
6985
6986 * mpw-config.in: Don't always use te-generic.h for emulation.
6987 (powerpc-apple-macos): Use emulation te-macos.h.
6988 * mpw-make.sed (install, install-only): Edit in Mac-specific
6989 install procedure.
6990
6991 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
6992
6993 * configure.in: Improve message about unsupported ELF targets.
6994 * configure: Rebuild.
6995
6996 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
6997 pattern is zero. From Manfred Hollstein.
6998
6999 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
7000
7001 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
7002 the various idata sections, we check the name on the .section pseudo.
7003
7004 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
7005
7006 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
7007 add section's paddr to add_number; compatibility to native as and
7008 ld forbids.
7009
7010 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
7011
7012 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
7013
7014 * hash.c (struct hash_entry): Moved here...
7015 * hash.h (struct hash_entry): ...from here.
7016
7017 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
7018 if it's already known to be null.
7019
7020 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7021
7022 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
7023 bit relocs converted to PC relative relocs. This turned out to
7024 add the offset from the beginning of .text twice.
7025
7026 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
7027
7028 * stabs.c (s_stab_generic): In 's' case, free string from
7029 obstack.
7030
7031 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
7032 sy_name_offset.
7033 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
7034 Ditto.
7035
7036 * subsegs.h (segment_info_type): Make bitfields unsigned.
7037
7038 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
7039 and move them together. On most systems this will reduce the
7040 structure size by one word.
7041 (operatorT): Define O_max.
7042 * expr.c (expr_begin): Verify that X_op is wide enough to hold
7043 O_max.
7044
7045 * read.c (pop_insert): Print error returned by hash table
7046 insertion code.
7047
7048 * as.c (dump_statistics): Split out from main; dump some hash
7049 table stats and target-specific stats.
7050 (start_time): No longer automatic to main.
7051 (main): Set file-level start_time and call dump_statistics at
7052 exit. Exit by calling xexit.
7053 (show_usage): Make --statistics description less specific.
7054 * subsegs.c (subsegs_print_statistics): New function.
7055 * write.c (write_print_statistics): New function.
7056 (n_fixups): New static variable.
7057 (fix_new_internal): Increment it.
7058 * read.c (read_print_statistics): New function.
7059 * read.h (read_print_statistics): Declare.
7060 * symbol.c (symbol_print_statistics): New function.
7061 * symbol.h (symbol_print_statistics): Declare.
7062 * hash.c (hash_print_statistics): New function.
7063 * hash.h (hash_print_statistics): Declare.
7064 * config/tc-i386.c (i386_print_statistics): New function.
7065 * config/tc-i386.h (i386_print_statistics): Declare.
7066 (tc_print_statistics): New macro.
7067 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
7068 exit.
7069
7070 * hash.c (DELETED): Rewrite to use a valid but unique address.
7071 (START_POWER): Reduce to 10.
7072 (enum stat_enum): New enumerator, replacing STAT_* index macros.
7073 Add new values for counting strcmp calls.
7074 (GROW_FACTOR): New macro.
7075 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
7076 of nesting blocks.
7077 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
7078 (hash_new): Use FULL_VALUE.
7079 (struct hash_control): Definition moved here.
7080 (hash_code): Don't mask to low bits.
7081 (hash_ask): Mask returned hash code here. Check hash value before
7082 calling strcmp; count strcmp calls.
7083 * hash.h (struct hash_control): Declare, don't define, here.
7084 (HASH_STATLENGTH): Deleted.
7085 (struct hash_entry): Add field for hash code.
7086 (hash_say, hash_apply): Don't declare.
7087
7088 * hash.c (destroy): Return void.
7089 (applicatee): Ditto.
7090 (main): Fix declarations.
7091 (hash_apply): Return void. Argument `function' returns void. Put
7092 inside "#ifdef TEST".
7093 (hash_say): Define only if TEST is defined.
7094 * hash.h (hash_apply, hash_say): Declarations deleted.
7095
7096 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
7097
7098 * configure: Rebuild with autoconf 2.7.
7099
7100 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
7101
7102 * aclocal.m4 (AC_PROG_CC): Remove local definition.
7103 * configure: Rebuild with autoconf 2.6.
7104
7105 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
7106
7107 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
7108 (ppc_stabx): Don't increment ppc_debug_name_section_size.
7109 (ppc_bc): Likewise.
7110 (ppc_frob_file): Remove.
7111 * config/tc-ppc.h (tc_frob_file): Don't define.
7112 (ppc_frob_file): Don't declare.
7113
7114 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
7115
7116 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
7117 * config/alpha-opcode.h: Include one-operand variants of jmp and
7118 jsr.
7119
7120 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
7121 with te-delta.h in 8.3 file systems.
7122 * configure.in: Adjusted.
7123
7124 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
7125
7126 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
7127
7128 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
7129 number.
7130 * expr.c (operand): Handle MRI suffixes after unadorned 0.
7131
7132 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
7133
7134 Version 2.6 released.
7135 * Makefile.in (VERSION): Updated to 2.6.
7136
7137 * config/obj-coff.c (write_object_file): Change use of md_do_align
7138 to pass a pointer rather than a fill value, to match other uses.
7139
7140 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
7141
7142 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
7143
7144 * as.c (main): Move md_end call to just after call to
7145 perform_an_assembly_pass. Delete cpu-specific code here.
7146 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
7147 * config/tc-arm.c (md_end): Unused function deleted.
7148 * config/tc-ns32k.c (md_end): Ditto.
7149
7150 * config/tc-i386.c (i386_align_code): New function, moved here
7151 from HANDLE_ALIGN macro.
7152 * config/tc-i386.h (HANDLE_ALIGN): Call it.
7153
7154 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
7155
7156 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
7157 before comparing
7158
7159 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
7160
7161 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
7162 multi-byte nops to avoid changing gcc. The necessary gcc change
7163 might break old assemblers.
7164
7165 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
7166
7167 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
7168 generate optimal multi-byte nop instructions for ".align n"
7169 ".align n,0x90", and aligns requiring more than 15 bytes of
7170 padding still generate multiple 0x90's as before.
7171
7172 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
7173
7174 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
7175
7176 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
7177
7178 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
7179 * configure: Update.
7180 * mpw-make.sed: Reorder commands to make sed happier.
7181 * config/te-macos.h: New file.
7182 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
7183
7184 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
7185
7186 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
7187 conditional branches.
7188 (md_apply_fix): Likewise.
7189
7190 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
7191
7192 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
7193 generate a reloc which the linker will not handle correctly. Fix
7194 overflow checking--R_IREL is 18 bits, not 17.
7195
7196 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
7197
7198 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
7199 from a PC relative reloc if TC_A29K.
7200
7201 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
7202 code depends upon it.
7203
7204 * config/tc-a29k.c (md_operand): Handle $float, $double, and
7205 $extend. Based on code from Eric Freudenthal
7206 <freudenthal@nyu.edu>.
7207 * config/tc-a29k.h (LEX_DOLLAR): Define.
7208 * read.c (LEX_DOLLAR): Define if not defined.
7209 (lex_type): Use LEX_DOLLAR.
7210
7211 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
7212
7213 * configure.in (a29k-nyu-sym1): New target, just like other a29k
7214 targets.
7215
7216 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
7217
7218 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
7219
7220 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
7221
7222 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
7223 used only by "dlltool.c".
7224
7225 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
7226
7227 * config/tc-alpha.c: Undefine inline if not __GNUC__.
7228 (md_pseudo_table): Don't define "extern".
7229
7230 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
7231
7232 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
7233
7234 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
7235
7236 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
7237
7238 * macro.c (macro_expand_body): Don't warn about == with a
7239 nonexistent parameter, in case it is in a comment field.
7240
7241 * as.c (main): On TC_A29K, call macro_init with macro_alternate
7242 set to 1.
7243 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
7244 set, even if macro_alternate is set.
7245 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
7246 (sub_actual): If macro_strip_at, and kind is '@', don't look up
7247 the token unless it ended in '@'.
7248 * config/tc-a29k.c (line_separator_chars): Remove '@'.
7249 * doc/c-a29k.texi: Document macro usage on A29K.
7250
7251 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
7252
7253 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
7254 signed word.
7255 (install_operand): Likewise.
7256
7257 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
7258
7259 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
7260
7261 * configure.in (m88k-motorola-sysv*): New target.
7262 * configure: Rebuild.
7263 * config/te-delta88.h: New file.
7264 * config/obj-coff.c (write_object_file): Use md_do_align if it is
7265 defined.
7266 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
7267 (md_do_align): Define.
7268 * config/tc-m88k.c: Include "subsegs.h".
7269 (m88k_do_align): New function.
7270
7271 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
7272 (COFF_NOLOAD_PROBLEM): Define.
7273 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
7274
7275 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
7276
7277 * config/tc-i386.c (md_assemble): For a jump instruction with
7278 non-constant target, require 7 available bytes in the current
7279 frag, not 6.
7280
7281 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
7282
7283 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
7284 bfd/libelf.h.
7285
7286 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
7287
7288 * configure.in (alpha-*-linux*): Use ecoff.
7289 * configure: Rebuild.
7290 * ecoff.c (ecoff_directive_extern): New function.
7291 (ecoff_directive_weakext): New function.
7292 (ecoff_build_symbols): Handle weak symbols.
7293 (ecoff_setup_ext): Likewise.
7294 (ecoff_frob_symbol): Warn about weak common symbols.
7295 * ecoff.h (ecoff_directive_extern): Declare.
7296 (ecoff_directive_weakext): Declare.
7297 * symbols.c (S_IS_WEAK): New function.
7298 * symbols.h (S_IS_WEAK): Declare.
7299 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
7300 "weakext".
7301 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
7302 (s_extern): Remove.
7303
7304 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
7305
7306 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
7307
7308 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
7309 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
7310 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
7311 * config/obj-coff.c (coff_frob_symbol): Don't call
7312 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
7313 one. If OBJ_XCOFF, try to figure out whether the symbol is going
7314 to be dropped.
7315
7316 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
7317 (ppc_stab_symbol): New static variable.
7318 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
7319 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
7320 sy_tc.real_name to the stab string.
7321 (ppc_bc, ppc_ec): New static functions.
7322 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
7323 do anything.
7324 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
7325 suffix.
7326 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
7327 entries.
7328
7329 * input-scrub.c (input_scrub_push): Reset sb_index.
7330
7331 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
7332
7333 * listing.c (listing_newline): Don't create a frag in the absolute
7334 section.
7335
7336 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
7337
7338 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
7339 (ppc_csect): Move most of the code to ppc_change_csect, and call
7340 it.
7341 (ppc_change_csect): New static function, taken from ppc_csect.
7342 (ppc_section): New static function.
7343 (ppc_saw_abs): New static varable.
7344 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
7345 a symbol has no csect.
7346 (ppc_adjust_symtab): New function.
7347 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
7348 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
7349
7350 * write.c (write_object_file): If tc_adjust_symtab is defined,
7351 call it just before the call to obj_adjust_symtab.
7352
7353 * symbols.c (symbol_find_or_make): Change name to be const.
7354 * symbols.h (symbol_find_or_make): Update declaration.
7355
7356 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
7357
7358 * doc/as.texinfo (Align): Mention SH.
7359 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
7360 .align value.
7361 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
7362 (Z8000 Directives, even): Don't give numeric align value, instead
7363 explain behavior.
7364
7365 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
7366
7367 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
7368 instruction.
7369
7370 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
7371
7372 * Makefile.in (diststuff): Also make info.
7373 (maintainer-clean realclean): Also make clean-info.
7374
7375 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
7376
7377 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
7378 (pa_subspace): For ".nsubspa", always create a new subspace
7379 with the given attributes, even if one already exists with the
7380 same name.
7381
7382 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7383
7384 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
7385 TC_FORCE_RELOCATION, taking an additional section argument. If
7386 the section of the target symbol is not the same as the current
7387 section, always force the relocation to be used.
7388 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
7389
7390 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
7391 md_pcrel_from function, taking an additional section argument.
7392 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
7393
7394 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
7395 older TC_FORCE_RELOCATION if not defined.
7396 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
7397 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
7398 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
7399 TC_FORCE_RELOCATION.
7400
7401 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
7402
7403 * input-scrub.c (as_where): Set name to null pointer if we don't
7404 have a file name.
7405 * messages.c (identify): Only print filename if non-null.
7406 (as_show_where): Ditto, for line number too.
7407 (as_warn_internal, as_bad_internal): Ditto.
7408
7409 * input-file.c (input_file_open): If the input file can't be
7410 opened, consider it an error.
7411
7412 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
7413
7414 * config/tc-mips.c: Added mips_4100 control, and support for
7415 accepting the 4100 as a MIPS architecture variant (md_begin,
7416 macro_build, mips_ip, md_parse_option). Adding suitable
7417 command-line OPTIONs, and updating the help text (md_show_usage).
7418
7419 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
7420
7421 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
7422 BFD_ASSEMBLER is defined.
7423
7424 * Use one active frag and one obstack per frag chain:
7425 * frags.c (frags): Variable deleted.
7426 (frag_alloc): New function.
7427 (frag_grow, frag_more, frag_variant, frag_now_fix,
7428 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
7429 frags variable.
7430 (frag_new): Ditto. Verify that frch_last and frag_now match on
7431 entry and exit, and that old frag_now has non-zero type. Replace
7432 "know" uses with "assert". Use frag_alloc instead of mucking with
7433 obstack alignment.
7434 * frags.h (frags): Declaration deleted.
7435 * subsegs.h (struct frchain): Add new field frch_frag_now.
7436 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
7437 variables.
7438 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
7439 give it any stricter alignment than frchainS structures need. Do
7440 not initialize frags obstack. Set frag_now to point to
7441 dummy_obstack. Initialize absolute_frchain.
7442 (subseg_set_rest): Save and restore frag_now in frch_frag_now
7443 field of frchainS. Don't create new frags on section switch, and
7444 use frag_alloc when creating a new frag chain. For absolute
7445 section, set frchain_now to absolute_frchain. Verify that
7446 frch_last and frag_now match on entry and exit. Initialize
7447 per-chain obstack, and under gcc, set required alignment to that
7448 needed by fragS structure.
7449
7450 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
7451
7452 * stabs.c (get_stab_string_offset): Only copy input string if a
7453 fresh copy is needed, not if the section already exists.
7454 (s_stab_generic): Cache stab section name to bypass lookups, since
7455 usually it will match. Could be made faster still by changing the
7456 memory allocation rules.
7457 (s_xstab): Cache section name to bypass repeated string
7458 allocation.
7459
7460 * frags.c (frag_new): Deleted register declarations.
7461
7462 * listing.c (frag_now): Don't declare.
7463
7464 * as.c (chunksize): New variable.
7465 (debug_memory): New variable.
7466 (main): If debug_memory is set, reduce chunksize and
7467 _bfd_chunksize.
7468 * as.h (chunksize): Declare it.
7469 * read.c (read_begin): Use it.
7470
7471 * config/tc-alpha.c (md_shortopts): Include 'g'.
7472 (md_parse_option): Ignore it.
7473
7474 * Makefile.in (distclean): Remove Makefile and config.status from
7475 testsuite directory.
7476 (clean-here): Don't delete testsuite. Instead, delete only the
7477 files within it that would be generated by running tests.
7478
7479 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
7480 frag_now_fix instead of accessing obstack info directly.
7481 * config/tc-arm.c (s_ltorg): Ditto.
7482 (md_assemble): Ditto.
7483
7484 * config/tc-i386.c (md_assemble): Call frag_grow instead of
7485 obstack_room.
7486
7487 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
7488
7489 * stabs.c (aout_process_stab): Insert debug symbol into symbol
7490 chain after parsing value expression, if any, to avoid separating
7491 continued .stabs lines.
7492
7493 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
7494
7495 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
7496 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
7497
7498 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
7499
7500 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
7501 -mcom support and PPC_OPCODE_ANY for -many.
7502 (md_parse_option): Ditto.
7503 (ppc_arch): Ditto.
7504 (md_begin): For duplicate instructions, print all duplicates
7505 before aborting.
7506
7507 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
7508
7509 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
7510 common mode operation.
7511 (md_show_usage): Add -mcom to usage message.
7512
7513 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
7514
7515 * expr.c (op_rank): Add O_symbol_rva.
7516 * expr.h (operatorT): Add O_symbol_rva.
7517 * read.c (cons_worker): Set O_symbol_rva when necessary.
7518 * write.c (fix_new_exp): Understand O_symbol_rva.
7519
7520 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
7521
7522 * config/tc-mips.c: Correct s_cons arguments. From Michael
7523 Joosten <joost@ori.cadlab.de>.
7524
7525 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
7526
7527 * config/tc-ppc.c (ppc_macro): Make count unsigned.
7528 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
7529 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
7530 the fix_line field.
7531 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
7532 make non-static. Change all users.
7533 * config/obj-coff.h (coff_n_line_nos): Declare.
7534
7535 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
7536
7537 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7538
7539 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
7540
7541 * config/obj-elf.c (obj_elf_common): Convert specified byte
7542 alignment to power of two. Set size of local bss symbol.
7543
7544 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
7545
7546 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
7547
7548 * sb.c, macro.c: Decide whether to include <string.h> or
7549 <strings.h> just as as.h does.
7550
7551 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
7552
7553 * Makefile.in (site.exp): Fix setting of $srcdir.
7554
7555 * config/tc-arm.c (md_atof): Fix little-endian output.
7556 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
7557 all coff targets.
7558
7559 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
7560
7561 * doc/as.texinfo: Split out the NS32k family documentation,
7562 despite its being commented out for now.
7563 * doc/c-ns32k.texi: New file.
7564
7565 * sb.c, macro.c: Include string.h.
7566
7567 * Makefile.in (comparison): Only check *.o; we don't care if
7568 timestamps inserted by the native linker differ.
7569
7570 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
7571 if alignment stricter than 4 bytes is requested; in that case,
7572 align to a 4-byte boundary first.
7573
7574 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
7575
7576 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
7577 uninitialized" warning for `Max_Source_Offset'.
7578
7579 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
7580
7581 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
7582 qualifiers and detect errors if present.
7583 (md_assemble): Add call to parse_toc_entry. Also added some support
7584 for the [tocv] qualifier.
7585 (ppc_pe_tocd): New function to support data in the toc section.
7586
7587 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
7588
7589 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
7590 an absolute symbol.
7591
7592 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
7593
7594 * config/tc-m68k.c (isword): Accept all values from -65536 to
7595 +65535, so ~VAL will not be rejected.
7596
7597 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
7598 skip characters after the pseudo-op.
7599 (s_else): Likewise.
7600 * read.c (get_line_sb): Don't look past buffer_limit.
7601 (s_include): In MRI mode, skip characters after the file name.
7602
7603 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
7604
7605 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
7606 periods in register names.
7607
7608 For older changes see ChangeLog.1.
This page took 0.172996 seconds and 5 git commands to generate.