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