log entry for config/tc-arm.c change
[platform/upstream/binutils.git] / gas / ChangeLog
1 Mon Nov 15 20:12:43 1999  Donald Lindsay  <dlindsay@cygnus.com>
2
3         * config/tc-arm.c (do_mia,do_mar,do_mra,do_pld,do_ldrl,do_co_reg): Small
4         improvements in error checking.
5         (md_assemble): Support for unconditional ARM instructions.
6         (md_parse_option): Support for -m[arm]v5e flag.
7
8 1999-11-12  Nick Clifton  <nickc@cygnus.com>
9
10         * macro.c (buffer_and_nest): Do not check beyond the end of the
11         buffer. 
12
13 1999-11-11  Nick Clifton  <nickc@cygnus.com>
14
15         * macro.c (buffer_and_nest): Look for seperator after TO and
16         FROM tokens.
17
18 1999-11-08  Andrew Haley  <aph@cygnus.com>
19
20         * app.c (do_scrub_chars): When in State 10, treat backslash
21         characters in the same way as as symbol characters.
22
23 1999-11-07  Richard Henderson  <rth@cygnus.com>
24
25         * config/tc-alpha.c (alpha_align): Check, don't assert, that
26         the previous label was in the current section before playing
27         with auto-alignment.
28
29 1999-11-06  Nick Clifton  <nickc@cygnus.com>
30
31         * config/tc-v850.c (v850_force_relocation): Force relocation
32         for weak symbols.
33         (v850_pcrel_from_selection): Do not compute a pcrel offset if
34         the symbol is weak.
35
36 1999-11-05  Michael Meissner  <meissner@cygnus.com>
37
38         * expr.h (operatorT): Increase machine dependent operators to 16.
39         * expr.c (op_rank): Ditto.
40
41 1999-11-03  Ian Lance Taylor  <ian@zembu.com>
42
43         * read.c (pseudo_set): Reject attempts to set the value of a
44         section symbol.
45
46         * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
47         if it is defined.
48
49         * config/obj-elf.c (elf_set_index): Add ATTRIBUTE_UNUSED.
50
51         * config/obj-elf.c (elf_frob_file_after_relocs): Don't pass NULL
52         to bfd_set_section_contents.
53
54 1999-11-03  Nick Clifton  <nickc@cygnus.com>
55
56         * config/tc-mcore.h (TARGET_BYTES_BIG_ENDIAN): Change to false.
57
58 1999-11-01  Gavin Romig-Koch  <gavin@cygnus.com>
59
60         * config/tc-mips.c (macro_build): Use OPCODE_IS_MEMBER.
61         (mips_ip): Use OPCODE_IS_MEMBER.
62
63 Wed Oct 27 16:50:44 1999  Don Lindsay  <dlindsay@cygnus.com>
64
65         * config/tc-arm.c (reg_required_here): Improve comments.
66
67         * config/tc-arm.c (thumb_opcode): Add "variants" field.
68         (tinsns): Initialize variants field.
69
70         * config/tc-arm.c (bad_args, bad_pc): Renamed to BAD_ARGS and
71         BAD_PC respectively.
72
73 1999-10-27  Scott Bambrough  <scottb@netwinder.org>
74
75         * config/tc-arm.c (reloc_map[]): Fix compiler warning.
76         * config/tc-arm.h: Fix compile time warnings.
77
78 Mon Oct 18 18:11:10 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
79
80         * tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
81         form @abs16, @(abs16) and @(abs16 + imm).
82
83 1999-10-21  Gavin Romig-Koch  <gavin@cygnus.com>
84
85         * config/tc-mips.c (ISA_HAS_COPROC_DELAYS) : New.
86         (ISA_HAS_64_BIT_REGS) New.
87         (gpr_interlocks,md_begin,reg_needs_delay,append_insn,
88         mips_emit_delays,macro_build,load_register,load_addresss,
89         macro,macro2,mips_ip,s_cprestore,s_cpadd): Simplify
90         and/or use new ISA_xxx macros in expressions involving
91         ISA, particularly mips_opts.isa.
92
93 1999-10-18  Michael Meissner  <meissner@cygnus.com>
94
95         * expr.h (operatorT): Add machine dependent operators md1..md8.
96         (expressionS): Make X_op 8 bits instead of 7.  Add a X_md field
97         for the machine dependent operators to use.
98
99         * expr.c (op_rank): Add machine dependent operators.
100
101         * config/tc-alpha.c (O_pregister): Define as a machine dependent
102         operator.
103         (O_cpregister): Ditto.
104         (md_begin): Change X_op test that field is wide enough to use
105         O_max instead of O_alpha_max.
106         (cpu_types): Fill in missing initializer.
107         (alpha_num_macros): Make unsigned.
108         (md_assemble): Make opnamelen be size_t.
109         (md_apply_fix): Cast alpha_num_operands to int before testing.
110         (alpha_force_relocation): Ditto.
111         (alpha_fix_adjustable): Ditto.
112         (alpha_fix_adjustable): Mark unused arguments ATTRIBUTE_UNUSED.
113         (tc_gen_reloc): Ditto.
114         (tc_get_register): Ditto.
115         (emit_ldgp): Ditto.
116         (emit_lda): Ditto.
117         (emit_ldah): Ditto.
118         (emit_ldil): Ditto.
119         (s_alpha_ent): Ditto.
120         (s_alpha_end): Ditto.
121         (s_alpha_frame): Ditto.
122         (s_alpha_prologue): Ditto.
123         (s_alpha_file): Ditto.
124         (s_alpha_gprel32): Ditto.
125         (s_alpha_proc): Ditto.
126         (s_alpha_set): Ditto.
127         (s_alpha_base): Ditto.
128         (s_alpha_align): Ditto.
129         (s_alpha_arch): Ditto.
130         (alpha_align): Ditto.
131         (assemble_insn): Suppress unused variable warning.
132         (emit_insn): Ditto.
133         (assemble_insn): Don't assume X_op and X_unsigned are in a given
134         order in the structure.
135         (s_alpha_coff_wrapper): Avoid int/unsigned comparison.
136
137 Sun Oct 17 17:15:58 1999  Jeffrey A Law  (law@cygnus.com)
138
139         * config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
140
141 1999-10-12  Alan Modra  <alan@spri.levels.unisa.edu.au>
142
143         * config/tc-i386.c (i386_index_check): Correct #endif location.
144
145 Mon Oct 11 14:02:40 1999  Geoffrey Keating  <geoffk@cygnus.com>
146
147         * as.c (show_usage): Document new options.
148         (parse_args): Add --no-warn, --warn, --fatal-warnings,
149         which become 'W', OPTION_WARN, and OPTION_WARN_FATAL.
150         (parse_args): Parse the new options.
151         (main): If there were warnings, and --fatal-warnings
152         was specified, print an error.
153         * as.h: New variable, flag_fatal_warnings, for new option.
154
155 Sun Oct 10 01:47:23 1999  Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
156
157         * config/tc-hppa.c (pa_ip):  Add new codes 'cc', 'cd', 'cC', 'co',
158         '@'.  Change autoincrement completers to fall through to cache control
159         completers.
160
161         * config/tc-hppa.c (pa_ip):  Remove unused args.  Add code to '?W'
162         arg. 
163         (pa_parse_addb_64_cmpltr):  New function.
164
165         * config/tc-hppa.c (pa_ip):  Change error message.
166         (pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr)  Fix '?N' and
167         '?Q' args to allow falling through.
168
169         * configtc-hppa.c (pa_ip):  Implement conditional codes "?N", "?Q".
170         Remove unused conditional codes.
171         (pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr):  New.
172
173 Thu Oct  7 00:23:53 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
174
175         * config/tc-d30v.c (CHAR_BIT): Define.
176         (check_range): Fix bit operations to support integers bigger than
177         32 bits.
178
179 Thu Oct  7 00:11:50 MDT 1999    Diego Novillo <dnovillo@cygnus.com>
180
181         * config/tc-d10v.c (check_range): Check range for RESTRICTED_NUM3
182         operands.
183
184 Mon Oct  4 17:24:23 1999  Nick Clifton  <nickc@cygnus.com>
185                           Doug Evans  <devans@cygnus.com>
186
187         Add support for m32rx.
188         * config/tc-m32r.c (enable_m32rx): New static global.
189         (enable_special,warn_explicit_parallel_conflicts,optimize): Ditto.
190         (allow_m32rx): New function.
191         (M32R_SHORTOPTS): Add `O'.
192         (md_longopts): Add --m32rx plus several warning options.
193         (md_parse_option): Handle new options.
194         (md_show_usage): Print them.
195         (md_begin): Enable m32rx.
196         (OPERAND_IS_COND_BIT): New macro.
197         (first_writes_to_seconds_operands): New function.
198         (writes_to_pc,can_make_parallel,make_parallel): New functions.
199         (target_make_parallel,assemble_two_insns): New functions.
200         (md_assemble): Recognize "insn1 -> insn2" and "insn1 || insn2".
201         If optimizing and m32rx, try to make consecutive insns parallel.
202
203 Tue Sep 28 14:06:44 1999  Geoffrey Keating  <geoffk@cygnus.com>
204
205         * config/tc-mips.c (nopic_need_relax): Allow for the
206         .sdata.foo sections generated by -fdata-sections,
207         and for the .gnu.linkonce.s sections generated by C++.
208
209 Thu Sep 23 07:13:45 1999  Jerry Quinn <jquinn@nortelnetworks.com>
210
211         * config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
212         with cleaner code using completer prefixes.   Add 'Y'.
213
214         * config/tc-hppa.c (pa_ip):  Add parens to silence compiler.
215
216 Wed Sep 22 09:37:19 1999  Jeffrey A Law  (law@cygnus.com)
217
218         * config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
219         (pa_ip, case 'm'): Failure to get a CBIT specifier just means the
220         insn does not match and we should try the next insn in the table.
221
222 1999-09-22  Nick Clifton  <nickc@cygnus.com>
223
224         * config/tc-arm.c (MULTI_SET_PSR): Rename to LDM_TYPE_2_OR_3.
225
226 Mon Sep 20 04:01:41 1999  Jeffrey A Law  (law@cygnus.com)
227
228         * config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
229         of PA2.0 support.
230
231 1999-09-19  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
232
233         * config/tc-i386.c (md_shortopts): Check OBJ_MAYBE_ELF as well as
234         OBJ_ELF.  If ELF, add "sq".
235         (md_parse_option): If ELF, ignore -s and -q.
236         (md_show_usage): Mention ELF options.
237
238 Sun Sep 19 10:43:31 1999  Jeffrey A Law  (law@cygnus.com)
239
240         * config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc' 
241         operands.
242
243         * config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
244
245         * config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
246
247         * config/tc-hppa.c (struct pa_it): New field "trunc".
248         (pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
249         (pa_parse_ftest_gfx_completer): New function
250         (pa_parse_fp_cnv_format): New function.
251
252         * config/tc-hppa.c (pa_ip): Handle 'X' operand.
253         (md_apply_fix): Handle 22bit pc-rel branches.
254
255         * config/tc-hppa.c (pa_ip): Handle 'B' operand.
256
257         * config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
258
259         * config/tc-hppa.c (pa_ip): Handle 'l' operand.
260
261         * config/tc-hppa.c (pa_ip): Handle 'g' operand.
262
263 at Sep 18 12:13:28 1999  Jeffrey A Law  (law@cygnus.com)
264
265         * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
266         (pa_ip): Handle 'fX'.
267
268 Sat Sep 18 12:13:28 1999  Jeffrey A Law  (law@cygnus.com)
269
270         * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
271         (pa_ip): Handle 'fX'.
272
273 Fri Sep 17 11:57:34 1999  Jeffrey A Law  (law@cygnus.com)
274
275         * config/tc-hppa.c (pa_build_unwind_subspace): Do not build
276         unwinds unless the function is in the text space.
277         (pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
278
279 Wed Sep 15 05:14:32 1999  Jeffrey A Law  (law@cygnus.com)
280
281         * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
282         (md_assemble): To here.  Tweak address generation.
283
284         * config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF.  Declare
285         debug_line.
286         (md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
287         (md_assemble): Call dwarf2_where for OBJ_ELF.
288         (pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
289         (pa_end_of_source): New function.
290         * tc-hppa.h (md_end): Define for OBJ_ELF.
291
292 1999-09-14  Michael Meissner  <meissner@cygnus.com>
293
294         * configure.in (Canonicalization of target names): Remove adding
295         ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
296         generates $ac_config_sub with a ${CONFIG_SHELL} already.
297         * configure: Regenerate.
298
299 1999-09-14  Donn Terry  <donn@interix.com>
300
301         * config/te-interix.h (GLOBAL_OFFSET_TABLE_NAME): Define.
302
303 1999-09-13  Alan Modra  <alan@spri.levels.unisa.edu.au>
304
305         * config/tc-i386.c (md_assemble): Handle "jmp/call constant" as a
306         pc-relative jmp/call to an absolute symbol.
307         (md_apply_fix3): When OBJ_ELF, don't add the values in twice for
308         absolute section symbols.
309
310         * config/tc-i386.c (md_assemble): Correct frag_var size.  Tidy
311         jump handling code and comments.
312
313 1999-09-12  Ian Lance Taylor  <ian@zembu.com>
314
315         * config/tc-i386.c (md_apply_fix3): Add horrible adjustments to
316         the value if TE_PE and a global defined symbol.
317
318 1999-09-11  Ian Lance Taylor  <ian@zembu.com>
319
320         * write.c (dump_section_relocs): Call print_symbol_value_1 to
321         print the symbol, rather than printing it here.
322
323 1999-09-11  Donn Terry  <donn@interix.com>
324
325         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
326         BFD_RELOC_RVA relocations.
327
328         * config/tc-i386.c (md_undefined_symbol): Compare the name against
329         the macro GLOBAL_OFFSET_TABLE_NAME, rather than assuming that it
330         starts with "_G".
331
332         * write.c (write_relocs): Call SET_SECTION_RELOCS if it is
333         defined.
334         * config/obj-coff.h (SET_SECTION_RELOCS): Define.
335         * doc/internals.texi (Object format backend): Document
336         SET_SECTION_RELOCS.
337
338         * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
339         relocations against global symbols if TE_PE.
340
341         * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
342         (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
343
344         * config/obj-coff.c (coff_frob_symbol): Prohibit weak common
345         symbols.
346
347         * config/obj-coff.c (obj_coff_endef): Don't merge labels, or
348         symbols which do not have a constant value, or tags with
349         non-tags.  Remove the symbol from the list before adding it at the
350         end.
351
352         * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Handle .ef
353         C_FCN symbol differently if TE_PE.
354         (obj_coff_line) [BFD_ASSEMBLER]: Always use the line number which
355         appears in the pseudo-op, rather coff_line_base which is only set
356         for a .bf symbol.
357
358         * config/obj-coff.c (obj_coff_loc): New static function.
359         (obj_pseudo_table): Add "loc".
360
361         * config/obj-coff.c (add_lineno): Check that the line number is
362         positive.
363
364         * config/atof-ieee.c (atof_ieee): Change what_kind to int.
365         * config/atof-vax.c (flonum_gen2vax): Change format_letter to
366         int.
367         (md_atof): Return NULL rather than 0.
368         * config/tc-i386.c (md_atof): Change type to int.
369         * expr.c (expr): Change first parameter to int.
370         * config/obj-coff.c: Add declarations for static functions.
371         (coff_frob_symbol): Use SYM_AUXENT.
372         * config/tc-i386.h (flag_16bit_code): Don't declare.
373
374         * config/obj-coff.c (obj_coff_section): Default to setting
375         SEC_LOAD.  Don't set SEC_DATA for 'w' modifier.
376
377         * write.c (adjust_reloc_syms): Print adjusted fixup.
378
379         * expr.c (integer_constant): Correct too_many_digits calculation
380         in base 10 case.
381
382 1999-09-09  Andreas Schwab  <schwab@suse.de>
383
384         * doc/c-arm.texi: Fix arguments of @var to not contain
385         punctuation.
386
387 1999-09-08  Philip Blundell  <pb@nexus.co.uk>
388
389         * config/tc-arm.c (s_thumb_set): Only support interworking for ELF 
390         and COFF targets.
391         (md_parse_option): Only support -k flag for ELF and COFF targets.
392
393 Tue Sep  7 13:28:59 1999  Jeffrey A Law  (law@cygnus.com)
394
395         * config/tc-hppa.c (pa_ip): Put strict register checks before
396         call to pa_parse_number.
397
398         * config/tc-hppa.c (pa_ip): Support 'Z' argument.
399
400 1999-09-06  Ian Lance Taylor  <ian@zembu.com>
401
402         * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
403         BFD_ASSEMBLER code.
404
405 1999-09-06  Donn Terry  <donn@interix.com>
406
407         * as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
408
409 Mon Sep  6 04:26:56 1999  Jeffrey A Law  (law@cygnus.com)
410
411         * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
412         candidate instruction.  Require registers for register arguments
413         when in strict mode.  Require assemble-time constants for
414         constants when in strict mode.
415         (pa_get_absolute_expression): Require a constant when in strict
416         mode.
417         
418 1999-09-06  Nick Clifton  <nickc@cygnus.com>
419
420         * config/tc-m32r.c (md_longopts): Fix value for -Wnuh.
421
422 1999-09-04  Steve Chamberlain  <sac@pobox.com>
423
424         * config/tc-pj.c: New file, supports picoJava in ELF.
425         * config/tc-pj.h: Ditto.
426         * configure.in (pjl*, pj*): New targets.
427         * Makefile.am: Rebuild dependencies.
428         (CPU_TYPES): Add pj.
429         (TARGET_CPU_CFILES): Add config/tc-pj.c.
430         (TARGET_CPU_HFILES): Add config/tc-pj.h.
431         * doc/c-pj.texi: New file.
432         * doc/as.texinfo: Add some PJ specifics.
433         * doc/all.texi: Add PJ to the list of all architectures, sort them
434         all alphabetically.
435         * doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
436         * configure, Makefile.in, doc/Makefile.in: Rebuild.
437
438 1999-09-02  Alan Modra  <alan@spri.levels.unisa.edu.au>
439
440         * config/obj-multi.h: Include obj-elf.h if OBJ_MAYBE_ELF. Reformat.
441         (obj_frob_file): Test for null pointer.
442         (OBJ_COPY_SYMBOL_ATTRIBUTES): Here too.
443         (OBJ_PROCESS_STAB): And here.
444         (elf_obj_sy): Remove
445
446         * config/obj-elf.h: #ifndef everything defined in obj-multi.h,
447         except OBJ_PROCESS_STAB, which we #undef for ecoff.
448         (elf_obj_sy): Remove #ifndef OBJ_SYMFIELD_TYPE.
449
450         * config/obj-coff.c (no_func): Remove.
451         (coff_format_ops): Change occurrences of no_func to 0, as we test
452         for 0 in obj-multi.h.
453
454         * configure.in:  Enable bfd for i386-coff when primary target is
455         bfd.  Enable i386 elf,coff emulation support.  Don't set
456         USE_EMULATIONS=1 or te_file=multi unless there is more than one
457         emulation to support.
458         *configure: Regenerate.
459
460 1999-09-02  Nick Clifton  <nickc@cygnus.com>
461
462         * config/tc-mcore.c (mcore_s_section): Do not dump literals if a
463         .section .line directive is encountered.
464
465 1999-09-01  Nick Clifton  <nickc@cygnus.com>
466
467         * config/tc-arm.c (md_section_align): Do not align sections in ELF
468         format. 
469
470         * as.c (show_usage): Add --gdwarf2 to list of options displayed.
471         * as.texinfo: Document --gdwarf2 command line option.
472         Add additional documentation of ARM command line switches.
473
474 1999-08-30  Alan Modra  <alan@spri.levels.unisa.edu.au>
475
476         * config/tc-i386.c (i386_intel_memory_operand): Combine
477         i386_is_reg and parse_register calls.  Remove END_STRING_AND_SAVE
478         and RESTORE_END_STRING around parse_register calls.
479         (i386_operand): Here too.
480         (i386_is_reg): Remove.
481         (parse_register): Move as_bad calls from within this function to
482         callers.
483
484 1999-08-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
485
486         Based on a patch from H.J. Lu  <hjl@gnu.org>
487         * config/tc-i386.c (parse_register): Handle FP regs specially.
488         (md_begin): Remove '(' and ')' from register_chars.
489
490 1999-08-29  Doug Evans  <devans@casey.cygnus.com>
491
492         * config/tc-m32r.c (md_parse_option): Delete unrecognized option
493         error message (done elsewhere).
494
495 Sat Aug 28 01:23:11 1999  Jeffrey A Law  (law@cygnus.com)
496
497         * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
498
499 Sat Aug 28 00:26:26 1999  Jerry Quinn <jquinn@nortelnetworks.com>
500
501         * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'.  Prefix float register
502         args by 'f'.
503
504         * config/tc-hppa.c (pa_ip): Add args q, %, and |.
505
506         * config/tc-hppa.c (pa_ip):  Absorb white space in instructions
507         between args.
508         Add new completers.  Fix bug in 64 bit condition handling.
509
510         * config/tc-hppa.c (pa_ip):  Add completer codes 'a', 'ch', 'cH',
511         'cS', and 'c*'.
512
513         * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
514
515         * config/tc-hppa.c (pa_ip):  Add cases for '.', '~'. '$'. and '!'
516
517         * config/tc-hppa.c (pa_ip):  Add case for 'I'.  
518
519 1999-08-27  Jim Wilson  <wilson@cygnus.com>
520
521         * dwarf2dbg.c (MAX_SPECIAL_ADDR_DELTA): Correct typo in comment.
522         (struct ls): Add frag field.  Initialize it to zero.
523         (out_end_sequence): New local text_frag.  Set it while in text section.
524         Replace address check with frag check.  Set ls.frag to text_frag if
525         out_set_addr called.
526         (dwarf2_gen_line_info): Add explanatory comment.  New local saved_frag.
527         Set it before switching sections.  Replace address check with frag
528         check.  Set ls.frag to saved_frag if out_set_addr called.
529
530 1999-08-26  David Mosberger  <davidm@hpl.hp.com>
531
532         * dwarf2dbg.c (out_end_sequence): If address changed, directly
533         output "advance_pc" opcode instead of calling gen_addr_line().
534         The latter has the undesired side-effect of creating a new row
535         in the debug line info matrix. 
536
537 1999-08-26  Jim Wilson  <wilson@cygnus.com>
538
539         * dwarf2dbg.c (out_end_sequence): Correct comments.  Set last to
540         ls.last_filename if last is less than zero.  Set ls.last_filename
541         when allocating new entry.
542         (dwarf2_gen_line_info): Save seg and subseg info before subseg_new
543         call.
544
545 1999-08-20  Alan Modra  <alan@spri.levels.unisa.edu.au>
546
547         * config/tc-i386.c (i386_index_check): Fix the displacement size
548         when INFER_ADDR_PREFIX.
549
550 1999-08-18  Nick Clifton  <nickc@cygnus.com>
551
552         * config/tc-arm.c (md_apply_fix3): If an offset is invalid,
553         display its value.
554
555 1999-08-17  Ian Lance Taylor  <ian@zembu.com>
556
557         * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
558         handle 0xffffNNNN constants correctly.
559
560 1999-08-16  Nick Clifton  <nickc@cygnus.com>
561
562         * config/tc-arm.c (do_ldst): Look for register conflicts on stores
563         as well as loads.
564
565 1999-08-13  Nick Clifton  <nickc@cygnus.com>
566
567         * config/tc-arm.c (validate_offset_imm): Work on unsigned values.
568         (md_apply_fix3): Always pass positive values to
569         validate_offset_imm.
570
571 1999-08-12  Nick Clifton  <nickc@cygnus.com>
572
573         * config/tc-arm.c (skip_whitespace): New macro.
574         Formatting tidy ups.
575         
576         (md_apply_fix3): Store relocation offset in addend for ELF based
577         relocs.
578         (arm_force_relocation): Always generate relocs for Thumb function
579         calls. 
580         
581 1999-08-11  Alan Modra  <alan@spri.levels.unisa.edu.au>
582
583         * config/tc-i386.c (md_assemble): Remove dead code.  intel_syntax
584         LONG_DOUBLE_MNEM_SUFFIX floating point is done in opcode/i386.h
585
586 Tue Aug 10 12:58:31 1999  Jeffrey A Law  (law@cygnus.com)
587
588         * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
589         flags for the unwind subspace.
590
591         * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
592         (pa_build_unwind_subspace): Remove #if 0 wrapper.  Select a
593         suitable relocation based on the size of the target's pointer.
594         Always Use subsegment zero for the unwinders.
595         (pa_level): Handle "2.0w".
596
597 Mon Aug  9 20:02:22 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
598
599         * config/tc-d30v.c (write_2_short): Don't group repeat instructions
600         with the following instruction unless this was specified.
601
602 1999-08-09  Ian Lance Taylor  <ian@zembu.com>
603
604         * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
605         certain sections, to match BFD changes.
606
607 1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>
608
609         * Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
610         (EXTRA_SCRIPTS): Define to keep automake happy.
611         * Makefile.in: Rebuild.
612
613 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
614
615         * Makefile.am: Rename .dep* files to DEP*.
616         (MKDEP): Rename from DEP.  Change all uses.  Use $${srcdir} rather
617         than $(srcdir).  Rename TCDEP targets to DEPTC.  Rename OBJDEP
618         targets to DEPOBJ.
619         * Makefile.in: Rebuild.
620
621 1999-08-08  Jakub Jelinek  <jj@ultra.linux.cz>
622
623         * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg.
624
625 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
626
627         * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
628         avoid problems on DOS filesystems.
629         * Makefile.in: Rebuild.
630
631         * doc/as.texinfo (Section): Document 's' flag for COFF version.
632
633 1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>
634
635         * config/obj-coff.c (obj_coff_section): Handle 's' (shared)
636         section flag.
637
638 1999-08-08  Ian Lance Taylor  <ian@zembu.com>
639
640         * configure.in: Define and substitute GDBINIT.  Change AC_OUTPUT
641         line to create ${GDBINIT} rather than .gdbinit.
642         * configure, Makefile.in, doc/Makefile.in: Rebuild.
643
644 Fri Aug  6 12:12:44 1999  Jeffrey A Law  (law@cygnus.com)
645
646         * config/tc-hppa.c (pa_ip, case '?'): Add missing break.
647
648 Fri Aug  6 09:46:35 1999  Jerry Quinn <jquinn@nortelnetworks.com>
649
650         * config/tc-hppa.c (pa_ip):  Add 64 bit condition completers.
651
652 1999-08-06  Jakub Jelinek  <jj@ultra.linux.cz>
653
654         * config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
655         non-adjustable symbols.
656
657 Thu Aug  5 16:52:51 1999  Jerry Quinn <jquinn@nortelnetworks.com>
658
659         * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
660
661 Thu Aug  5 23:05:56 1999  J"orn Rennecke  <amylaar@cygnus.co.uk>
662
663         * config/tc-sh.c (md_assemble):  Call as_bad when there are excess
664         operands.
665
666 1999-08-05  Donn Terry  <donn@interix.com>
667
668         * config/te-interix.h: New file.
669         * configure.in (i386-*-interix*): New target.
670         * configure: Rebuild.
671
672 Wed Aug  4 13:12:17 1999  Jeffrey A Law  (law@cygnus.com)
673
674         * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
675         selectors for ELF too.
676         (selector_table): Add "ltp" and "rtp" selectors.
677
678 1999-08-04  Alan Modra  <alan@spri.levels.unisa.edu.au>
679
680         * config/tc-i386.c (i386_operand): No need to change
681         operand_string pointer in segment reg case before goto
682         do_memory_reference.  Initialise displacement_string_start and
683         displacement_string_end after do_memory_reference label.
684         (i386_index_check): Add operand_string param, and print error
685         message on failure here.
686         (i386_intel_memory_operand): Instead of here.
687         (i386_operand): And here.
688         (INFER_ADDR_PREFIX): Enable.
689
690         * doc/c-i386.texi (i386-16bit): Document .code16gcc.
691
692         * config/tc-i386.h (DefaultSize): Define.  Renumber following
693         opcode_modifier defines.
694
695         From Etienne Lorrain  <etienne.lorrain@ibm.net>
696         * config/tc-i386.c (stackop_size): New variable.
697         (set_16bit_code_flag): Clear it here.
698         (set_16bit_gcc_code_flag): New function.
699         (md_pseudo_table): Add "code16gcc" entry.
700         (md_assemble): Set i.suffix for insns with DefaultSize modifier.
701
702 1999-08-03  Ian Lance Taylor  <ian@zembu.com>
703
704         * config/obj-coff.c (coff_frob_symbol): Always update set_end with
705         next_set_end even if the end symbol is being discarded.
706
707         * gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
708         * output-file.c, symbols.c, config/tc-i386.c: Likewise.
709         * config/obj-coff.c: Likewise.
710         (seg_info_type): Remove.
711         (seg_info_off_by_4): Change to array of segT.
712         (s_get_segment): Adjust accordingly.
713         (obj_pseudo_table): Fully initialize sentinel entry.
714
715         * config/tc-mips.c (append_insn): Correct INSN_SYNC test.  From
716         Ralf Baechle <ralf@uni-koblenz.de>.
717
718 1999-08-03  Etienne Lorrain  <etienne.lorrain@ibm.net>
719
720         * config/tc-i386.c (f16_3): New. Fixes 16 bit 3 byte nop.
721
722 1999-08-03  Alan Modra  <alan@spri.levels.unisa.edu.au>
723
724         * config/tc-i386.c: Indentation and white space changes.
725         (i386_index_check): New function.  Add INFER_ADDR_PREFIX code, but
726         don't enable it by default.
727         (i386_intel_operand): Remove redundant prototype.
728         Move check on number of memory operands, and i.mem_operands++
729         (i386_intel_memory_operand): To here.
730         Remove i386_immediate code from here.  Remove special case code
731         for input and output using (%dx).  Remove base/index checks and
732         call i386_index_check instead.  Save initial operand_string
733         argument for error message.
734         (i386_operand): Remove redundant prototype.  Move base/index
735         checks to i386_index_check.
736         (i386_displacement): Move intel mode check for non-zero
737         i.disp_operand
738         (i386_intel_memory_operand): To here.
739
740 1999-07-30  Jakub Jelinek  <jj@ultra.linux.cz>
741
742         * config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
743         (sparc_ip): Warn if %g2 or %g3 register is used and not covered
744         by .register pseudo-op if -64 and --no-undeclared-regs.
745         (s_register, sparc_adjust_symtab): New functions.
746         * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
747         Declare sparc_adjust_symtab as tc_adjust_symtab.
748         * doc/c-sparc.texi: Add description of #ignore special literal
749         for .register pseudo-op.
750
751 1999-07-30  Catherine Moore  <clm@cygnus.com>
752
753         * config/tc-arm.c (tc_gen_reloc):  Record the vtable entry in
754         the relocation's section offset.
755
756 1999-07-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
757
758         * write.c (fixup_segment): Fix generic error check overflow test.
759
760         * config/tc-i386.c (pe): Change %d to %ld, %x to %lx, and cast
761         X_add_number to long.
762
763 Wed Jul 28 02:04:24 1999  "Jerry Quinn" <jquinn@nortelnetworks.com>
764
765         * config/tc-hppa.c (pa_ip):  Add 'J' and 'K' code
766         processing. 
767
768 1999-07-27  Ian Lance Taylor  <ian@zembu.com>
769
770         * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
771         VTABLE relocations.
772
773 1999-07-21  Mark Elbrecht  <snowball3@bigfoot.com>
774
775         * config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
776
777         * configure.bat: Remove; obsolete.
778         * config/go32.cfg: Likewise.
779
780 1999-07-21  Brad M. Garcia  <bgarcia@fore.com>
781
782         * configure.in (i386-*-vxworks*): New target.
783         * configure: Rebuild.
784
785 1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
786
787         * doc/c-sparc.texi: Document .register and .nword pseudo-ops.
788
789 1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
790
791         * config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
792         on -64 and not pic.
793         (output_insn): Put OLO10's secondary addend into tc_fix_data.
794         (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
795         (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
796         * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
797         MAX_RELOC_EXPANSION): Define.
798         (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
799
800 1999-07-16  Alan Modra  <alan@spri.levels.unisa.edu.au>
801
802         * config/tc-i386.c (intel_float_operand): Add prototype, make static.
803         (md_assemble): Localize *exp variable to if (fake_zero_displacement)
804         block.  Print a warning if an 8-bit or 16-bit constant
805         displacement or immediate is truncated on output.
806         (i386_immediate): Ensure Imm16 is always legal for a 16-bit mode
807         immediate.
808         (i386_operand): Disallow immediate jump absolute operand.
809
810 1999-07-15  Ian Lance Taylor  <ian@zembu.com>
811
812         * configure.in: Bump version number to 2.9.5.
813         * configure: Rebuild.
814
815         * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
816         or %llx work.
817
818 Thu Jul 15 02:45:30 1999  Jeffrey A Law  (law@cygnus.com)
819
820         * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
821         (cons_fix_new_hppa): Derive size of fixup from size of the object.
822
823 1999-07-14  Philip Blundell  <pb@nexus.co.uk>
824
825         * symbols.c (dollar_label_name): Prepend LOCAL_LABEL_PREFIX if it
826         is defined.
827         * config/tc-arm.h (LOCAL_LABEL_PREFIX): Define to '.' for ELF.
828
829         * config/tc-arm.c (md_begin): Set F_SOFTFLOAT in the output file
830         if -mno-fpu was given.
831         (tc_gen_reloc): Fix typo.  Delete bogus code related to GOTPC
832         relocs.
833         (cons_fix_new_arm): Remove misleading comments.
834
835 1999-07-14  Ian Lance Taylor  <ian@zembu.com>
836
837         * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
838         error message.
839         (relax_segment): Likewise.  After giving a rs_org error, convert
840         the frag to rs_align to avoid cascading errors.
841
842 1999-07-12  Andreas Schwab  <schwab@suse.de>
843
844         * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED.
845
846 1999-07-11  Ian Lance Taylor  <ian@zembu.com>
847
848         * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
849         as appropriate.  Fill in structure initializations.  Add variable
850         initializations.  Add casts.
851         * dwarf2dbg.c (print_stats): Change i to size_t.
852         * listing.c (listing_listing): Change list_line to unsigned int.
853
854 1999-07-10  Ian Lance Taylor  <ian@zembu.com>
855
856         * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
857         rather than checking for \001 and \002 in symbol name.
858         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
859
860 Thu Jul  8 12:32:23 1999  John David Anglin <dave@hiauly1.hia.nrc.ca>
861
862         * configure.in (hppa*-linux-gnu*): New target.
863         * configure: Rebuilt.
864
865 1999-07-08  Nick Clifton  <nickc@cygnus.com>
866
867         * doc/c-arm.texi (ARM Directives): Document .thumb_set directive. 
868
869 1999-07-07  Nick Clifton  <nickc@cygnus.com>
870
871         * config/tc-v850.c (v850_comm): Use symbol_get_obj() rather than
872         accessing symbolP directly.
873
874 Tue Jul  6 10:41:42 1999  Jeffrey A Law  (law@cygnus.com)
875
876         * config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
877         for ELF.
878
879 1999-07-05  Nick Clifton  <nickc@cygnus.com>
880
881         * config/tc-arm.c (ARM_EXT_V5): Define.
882         (ARM_ARCH_V5, ARM_ARCH_V5T): Define.
883         (md_begin): Detect ARM v5 architectures.
884         (md_parse_option): Accept arm v5 specification.
885         (md_show_usage): Documment -marmv5 switch.
886
887         * doc/c-arm.texi: Document -marmv5 command line option.
888         
889         * config/tc-arm.c (do_adrl): New function.  Implement ADRL pseudo
890         op.
891         (validate_immediate_twopart): New function.  Determine if a
892         constant can be computed by two ADD instructions.
893         (output_inst): Remove its command line parameter - it was never
894         used.
895         (md_apply_fix3): Support BFD_RELOC_ARM_ADRL_IMMEDIATE, used to
896         implememt the ADRL pseudo op.
897         (tc_gen_reloc): Generate a suitable error message if an ADRL
898         instruction tries to generate a real reloc.
899
900         * doc/c-arm.texi: Document NOP, ADR and ADRL pseudo ops.
901
902 Thu Jul  1 15:33:10 1999  Jeffrey A Law  (law@cygnus.com)
903
904         * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
905         into lower case.
906
907 1999-06-27  H.J. Lu  <hjl@gnu.org>
908
909         * subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
910         non BFD_ASSEMBLER case.
911
912 1999-06-26  Mumit Khan  <khan@xraylith.wisc.edu>
913
914         * config/obj-coff.c (obj_coff_section): Mark writable sections as
915         data.
916
917 1999-06-26  David Mosberger  <davidm@hpl.hp.com>
918
919         * dwarf2dbg.c (dwarf2_gen_line_info): Don't call
920         out_end_sequence() when the address decreases due to a new frag.
921         (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
922         numbering starts with 1.
923
924 1999-06-23  Nick Clifton  <nickc@cygnus.com>
925
926         * config/tc-mcore.c (md_pseudo_table): Add .comm for ELF and allow
927         .section for COFF.
928         (mcore_s_text): Call obj_elf_text for ELF target.
929         (mcore_s_data): Call obj_elf_data for ELF target.
930         (mcore_s_section): No longer ELF specific.  Call obj_coff_section
931         for COFF target.
932         (mcore_s_bss): New function:  Dump literal table before changing
933         sections.
934         (mcore_s_comm): New function:  Dump literal table before changing
935         sections.
936         
937         * config/obj-elf.c (obj_elf_common, obj_elf_data, obj_elf_text):
938         No longer static functions.
939         * config/obj-elf.h (obj_elf_common, obj_elf_data, obj_elf_text):
940         Provide prototypes for these functions.
941
942 1999-06-22  Ian Lance Taylor  <ian@zembu.com>
943
944         * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
945         a list of names, to try obj_segment_name, and to try abbreviated
946         names when using COFF without long section names.
947
948         * config/tc-alpha.c: More use of symbol accessor functions.
949         * config/tc-arc.c: Likewise.
950         * config/tc-d30v.c: Likewise.
951         * config/tc-fr30.c: Likewise.
952         * config/tc-i860.c: Likewise.
953         * config/tc-m88k.c: Likewise.
954         * config/tc-mcore.c: Likewise.
955         * config/tc-ns32k.c: Likewise.
956         * config/tc-sparc.c: Likewise.
957         * config/tc-v850.c: Likewise.
958
959         * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
960         sy_value with appropriate accessor functions.
961         * config/tc-arm.c (md_apply_fix3): Likewise.
962         * config/tc-d10v.c (AT_WORD_P): Likewise.
963         * config/tc-v850.c (reg_name_search): Likewise.
964
965         * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
966         use symbol_get_bfdsym instead.
967         * config/tc-ppc.c (md_assemble): Likewise.
968         * config/tc-v850.c (v850_comm): Likewise.
969
970 1999-06-22  Jonathan Larmour  <jlarmour@cygnus.co.uk>
971
972         * config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
973         the symbol, rather than accessing the bsym member.
974         * config/tc-d10v.c (tc_gen_reloc): Likewise.
975         * config/tc-d30v.c (tc_gen_reloc): Likewise.
976         * config/tc-mcore.c (tc_gen_reloc): Likewise.
977         * config/tc-mn10200.c (tc_gen_reloc): Likewise.
978         * config/tc-mn10300.c (tc_gen_reloc): Likewise.
979         * config/tc-ns32k.c (tc_gen_reloc): Likewise.
980         * config/tc-tic30.c (tc_gen_reloc): Likewise.
981         * config/tc-v850.c (tc_gen_reloc): Likewise.
982
983 Mon Jun 21 16:45:19 1999  Jeffrey A Law  (law@cygnus.com)
984
985         * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
986         (hppa_gen_reloc_type): Conditionalize on BFD64.
987         (tc_gen_reloc): Re-enable ELF relocations.
988         * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
989
990 1999-06-21  Ian Lance Taylor  <ian@zembu.com>
991
992         * config/tc-arm.c (ldst_extend): Add parentheses to avoid
993         warning.
994         (do_ldst): Move assignment out of if condition.
995         (md_apply_fix3): Add casts to avoid printf format warnings.  Add
996         parentheses to avoid warning.
997
998 1999-06-21  Nick Clifton  <nickc@cygnus.com>
999
1000         * config/tc-arm.c (arm_adjust_symtab): Use symbol_get_bfdsym()
1001         macro to get at the BFD symbol associated with a GAS symbol.
1002
1003 1999-06-19  Ian Lance Taylor  <ian@zembu.com>
1004
1005         * config/tc-ppc.c: Update for symbol handling changes.
1006         * config/obj-coff.c: Likewise.
1007
1008 Fri Jun 18 14:34:18 1999  Jeffrey A Law  (law@cygnus.com)
1009
1010         * tc-hppa.c: General cleanups of ELF support.  No more spaces
1011         and subspaces for ELF.
1012         (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
1013         (GDB_STRINGS_SUBSPACE_NAME): Likewise.
1014         (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
1015         (UNWIND_SECTION_NAME): Likewise.
1016         (space/subspace related structures): Conditionalize definitions
1017         on OBJ_SOM.
1018         (space/subspace directives and support routines): Conditionalize
1019         definitions and references/uses on OBJ_SOM.
1020         (label_symbol_struct): For ELF, track the symbol's segment.  For
1021         SOM track its space.
1022         (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
1023         changes.
1024         (USE_ALIASES): Kill for both SOM & ELF.
1025         (pa_def_subspaces, pa_def_spaces): Corresponding changes.
1026         (pa_space, pa_subspace): Corresponding changes.
1027         (pa_spaces_begin): Corresponding chagnes.
1028         (md_begin): Do not muck around with space/subspace stuff for
1029         OBJ_ELF.
1030         (md_apply_fix): Temporarily disable argument relocation stuff
1031         for OBJ_ELF.
1032         (tc_gen_reloc): Temporarily disable relocation generation for
1033         OBJ_ELF
1034         (pa_build_unwind_subspace): Similarly.
1035
1036 1999-06-16  Nick Clifton  <nickc@cygnus.com>
1037
1038         * config/tc-arm.c (thumb_set): New pseudo op.
1039         (text, data, section): Override these pseudo ops with ARM
1040         specific versions.
1041         (s_thumb_set): New function: Perform the same as a .set pseudo
1042         op, but also mark the alias'ed symbol as being a Thumb
1043         function.
1044         (arm_s_text): New function: Perform the same as the .text
1045         pseudo op, but dump the literal pool before changing
1046         sections. 
1047         (arm_s_data): New function: Perform the same as the .data
1048         pseudo op, but dump the literal pool before changing
1049         sections. 
1050         (arm_s_section): New function: Perform the same as the
1051         .section pseudo op, but dump the literal pool before changing 
1052         sections. 
1053         (arm_cleanup): Do not reset the current section before dumping
1054         the literal pool.
1055
1056 1999-06-17  Nick Clifton  <nickc@cygnus.com>
1057
1058         * config/tc-m32r.c (md_longopts): Fix OPTION_WARN_UNMATCHED and
1059         OPTION_NO_WARN_UNMATCHED entries.
1060         (md_parse_option): Generate a warning message if an unrecognised
1061         option is encountered.
1062
1063         * config/tc-d10v.c (do_not_ignore_hash): New variable.
1064         (get_operands): When parsing an expression after an '@' symbol
1065         has been detected, do not ignore '#' symbols.
1066         (md_operand): Only ignore '#' symbols if do_not_ignore_hash is
1067         false. 
1068
1069 1999-06-13  Ian Lance Taylor  <ian@zembu.com>
1070
1071         From K. Richard Pixley <rich@noir.com>:
1072         * configure.in (ppc-*-vxworks*): New target.
1073         * configure: Rebuild.
1074
1075 1999-06-12  Philip Blundell  <philb@gnu.org>
1076
1077         * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
1078
1079 1999-06-13  Ian Lance Taylor  <ian@zembu.com>
1080
1081         * write.c (adjust_reloc_syms): Rather than never reducing reloc
1082         which refer to symbols in linkonce sections, permit reducing the
1083         relocs if the symbol is local.
1084
1085 1999-06-12  Ian Lance Taylor  <ian@zembu.com>
1086
1087         * subsegs.c (subseg_text_p): New function.
1088         * as.h (subseg_text_p): Declare.
1089         * read.c (do_align): Use subseg_text_p to set the default fill.
1090         * write.c (subsegs_finish): Likewise.
1091         * config/obj-coff.c (write_object_file): Likewise.
1092         * config/tc-i386.h (md_maybe_text): Don't define.
1093         (md_do_align): Use subseg_text_p to set the default fill.
1094         * config/tc-m32r.c (m32r_do_align): Likewise.
1095         * config/tc-sh.c (sh_do_align): Likewise.
1096         * config/tc-sparc.h (md_do_align): Likewise.
1097
1098 1999-06-12  David O'Brien  <obrien@freebsd.org>
1099
1100         * configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
1101         * configure: Rebuild.
1102
1103 1999-06-12  Ian Lance Taylor  <ian@zembu.com>
1104
1105         * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
1106         * Makefile.am: Rebuild dependencies.
1107         * Makefile.in: Rebuild.
1108
1109         * config/tc-i386.c (i386_immediate): Remove unused label
1110         seg_unimplemented.
1111
1112         * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
1113         * symbols.c: Likewise.
1114         * config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
1115         sy_next field when taking address, rather than symbol_next.
1116
1117         * dwarf2dbg.c: Change bfd_vma to addressT and bfd_signed_vma to
1118         offsetT.
1119         (out_set_addr): Don't use BYTES_PER_ADDRESS.  Instead, get the
1120         value from the output file architecture.
1121         (dwarf2_gen_line_info): Ifdef BFD_ASSEMBLER specific code.
1122         * dwarf2dbg.h: Change bfd_vma to addressT.
1123
1124 1999-06-11  Ian Lance Taylor  <ian@zembu.com>
1125
1126         * dwarf2dbg.h: Use PARAMS in function declarations.
1127
1128 1999-06-11  Martin Dorey  <mdorey@madge.com>
1129
1130         * write.c (fixup_segment): Don't add symbol value for i960 ELF.
1131         * config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
1132         OBJ_ELF.
1133         (md_apply_fix): Simplify BFD_ASSEMBLER handling.
1134
1135 1999-06-11  Ian Lance Taylor  <ian@zembu.com>
1136
1137         * config/tc-i386.c (md_apply_fix3): Add default case to switch.
1138
1139         * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
1140         popsection.
1141
1142         * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
1143
1144         * read.c (read_a_source_file): Only declare inescape if
1145         QUOTES_IN_INSN.
1146
1147         * itbl-ops.c (itbl_disassemble): Change sprintf format strings to
1148         match parameters.
1149         (find_entry_byval): Add parens to avoid warning.
1150
1151         * as.c: If HAVE_ITBL_CPU, include "itbl-ops.h".
1152
1153         * symbols.c (resolve_symbol_value): Don't permit subtraction of
1154         undefined symbols.
1155
1156 1999-06-10  Jakub Jelinek  <jj@ultra.linux.cz>
1157
1158         * config/tc-sparc.c (sparc_ip): Don't use side-effect expression
1159         with isoctal.
1160
1161         * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
1162         synthetize_setx): New functions.
1163         (md_assemble): Broken the special cases into the above
1164         functions. Make compiler happy if sizeof(bfd_vma)==4.
1165         Fix sethi generated from set/setuw. If instructions have a relloc,
1166         always clear the fields to be relocated in the opcode.
1167         (sparc_ip): Remove special_case global variable.
1168
1169 1999-06-10  Ian Lance Taylor  <ian@zembu.com>
1170
1171         Based on patches from John W. Woznack <jwoznack@concentric.net>:
1172         * itbl-ops.c (itbl_get_reg_val): Add pval parameter.  Return
1173         indication of success rather than a value.
1174         (itbl_get_val): Likewise.
1175         (itbl_get_field): Use strcspn.  Change delimiters to include
1176         parens.
1177         * itbl-ops.h (itbl_get_reg_val): Update declaration.
1178         (itbl_get_val): Likewise.
1179         * config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
1180
1181         * symbols.c (copy_symbol_attributes): Convert local symbols to
1182         regular symbols.
1183
1184 1999-06-10  Nick Clifton  <nickc@cygnus.com>
1185
1186         * config/tc-arm.c (md_parse_option): Add support for ARM920 and
1187         ARM920t. 
1188
1189 1999-06-07  Jakub Jelinek  <jj@ultra.linux.cz>
1190
1191         * config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
1192         Optimize set if sizeof(bfd_vma) == 64.
1193         (sparc_ip): Fix sethi - without %hi() it should generate
1194         R_SPARC_22 reloc, not R_SPARC_HI22.
1195         (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
1196
1197 1999-06-07  Jakub Jelinek  <jj@ultra.linux.cz>
1198
1199         * config/tc-sparc.c (md_begin): Handle native wordsize aliases.
1200         (s_ncons): New function.
1201         (native_op_table): New table.
1202         (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
1203         R_SPARC_OLO10 handling.
1204
1205 Mon Jun  7 10:22:16 1999  Richard Henderson  <rth@cygnus.com>
1206
1207         * expr.h (struct expressionS): Revert last change; widen X_op.
1208         * config/tc-alpha.c (md_begin): Check the field is wide enough.
1209
1210 Mon Jun  7 11:25:16 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
1211
1212         * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
1213         (TARGET_CPU_HFILES): Add config/tc-fr30.h.
1214         (TARG_ENV_HFILES): Add config/te-epoc-pe.h.
1215         * Makefile.in: Regenerated.
1216
1217         * config/obj-elf.c (obj_elf_common): In MRI mode if called as
1218         `common' pass on to s_mri_common.
1219         (elf_pseudo_table): Pass 1 to obj_elf_common for `common'. 
1220
1221 1999-06-06  Richard Henderson  <rth@cygnus.com>
1222
1223         * config/obj-elf.c (obj_elf_section): Don't free the return
1224         value of demand_copy_C_string.
1225
1226 1999-06-05  Richard Henderson  <rth@cygnus.com>
1227
1228         * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
1229         creation logic from obj_elf_create_section.
1230
1231         * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
1232         (section_stack): New.
1233         (special_sections): Make const.
1234         (obj_elf_section): Gut and rewrite parsing.
1235         (obj_elf_change_section): New function broken out of obj_elf_section.
1236         (obj_elf_parse_section_letters): Likewise.
1237         (obj_elf_section_word): Likewise.
1238         (obj_elf_section_type): Likewise.
1239         (obj_elf_previous): Treat as a toggle.
1240         (obj_elf_popsection): New.
1241         * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
1242         (ppc_section_type): Likewise.
1243         * config/tc-ppc.h: Likewise.
1244
1245         * expr.h (struct expressionS): Don't make X_op a bitfield.
1246         * config/tc-alpha.c: Update for symbol handling changes.
1247         (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
1248         (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
1249
1250 1999-06-05  Richard Henderson  <rth@cygnus.com>
1251
1252         * dwarf2dbg.c (*): Convert to K&R + prototypes.
1253         (dwarf2_gen_line_info): Kill unused variables.
1254         (dwarf2_finish): Likewise.
1255         (dwarf2_where): Likewise.
1256         (dwarf2_directive_file): If we've only got a string,
1257         hand off to s_app_file.
1258         * ecoff.c: Move the include of ecoff.h.
1259         * symbols.h (S_IS_FUNCTION): Prototype.
1260
1261         * read.c (LEX_HASH): Supply a default.
1262         (lex_type): Use it.
1263         (s_globl): Update `c' after skipping whitespace.
1264         * read.h (LEX_END_NAME, is_name_ender): New.
1265         * expr.c (get_symbol_end): Respect it.
1266
1267 1999-06-04  Mark Klein <mklein@dis.com>
1268
1269         * config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
1270         to real if OBJ_SOM
1271         (tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
1272
1273         * config/tc-hppa.c: Update for symbol handling changes.
1274
1275 1999-06-03  Ian Lance Taylor  <ian@zembu.com>
1276
1277         * cgen.c: Update for symbol handling changes.
1278         * config/tc-m32r.c: Likewise.
1279
1280         * config/tc-hppa.h: Update for symbol handling changes.
1281         * config/tc-hppa.c: Likewise.
1282
1283         * config/tc-arm.h: Update for symbol handling changes.
1284         * config/tc-arm.c: Likewise.
1285         (symbol_make_empty): Remove.  Just use symbol_create.
1286
1287         * symbols.c (symbol_set_tc): Correct name.
1288
1289         * Makefile.am: Rebuild dependencies.
1290         ($(OBJS)): Don't depend upon struc-symbol.h.
1291         (.dep1, .tcdep, .objdep): Create itbl-parse.h.
1292         * dep-in.sed: Don't remove struc-symbol.h.
1293         * Makefile.in: Rebuild.
1294
1295         * doc/internals.texi (Symbols): Describe changes in symbol
1296         handling.
1297
1298 1999-06-03  Richard Henderson  <rth@cygnus.com>
1299
1300         * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
1301         instead of doing the work by hand.
1302
1303 1999-06-03  David Mosberger  <davidm@hpl.hp.com>
1304
1305         * dwarf2dbg.c (INITIAL_STATE): New macro encapsulating initial
1306         state of line state-machine.
1307         (struct ls): Collect DWARF2 line state-machine state in new member
1308         SM.  Add member EMPTY_SEQUENCE to keep track if a code sequence
1309         resulted in any DWARF2 directives.
1310         (reset_state_machine): New function.
1311         (out_end_sequence): Ditto.
1312         (dwarf2_gen_line_info): When switching sections or switching to a
1313         lower text address, call out_end_sequence() first to terminate the
1314         previous code sequence as code sequences MUST have monotonically
1315         increasing addresses.
1316         (dwarf2_finish): Call out_end_sequence() instead of open coding it.
1317
1318 1999-06-03  David Mosberger  <davidm@hpl.hp.com>
1319
1320         * as.c (parse_args): Add option -gdwarf2 to allow requesting
1321         DWARF2 debug info (line information only, at this point).
1322         * as.h: Update comment about supported debug formats.
1323         * dwarf2dbg.c, dwarf2dbg.h: New files.
1324         * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
1325
1326         * expr.c (operand): Don't use [ for parens if we want an index op.
1327         (op_encoding): Switch [ into O_index, if desired.
1328         (op_rank): Renumber with O_index on bottom.
1329         (expr): If O_index, match closing bracket.
1330         * expr.h (O_index): New.
1331
1332         * read.c (read_a_source_file): Conditionally allow matched "
1333         in lines passed to md_assemble.
1334
1335         * config/obj-elf.c (elf_pseudo_table): Add `common'.
1336
1337 1999-06-03  Ian Lance Taylor  <ian@zembu.com>
1338
1339         Add support for storing local symbols in a small structure to save
1340         memory when assembling large files.
1341         * as.h: Don't include struc-symbol.h.
1342         (symbolS): Add typedef.
1343         * symbols.c: Include struc-symbol.h.
1344         (local_hash): New static variable.
1345         (save_symbol_name): New static function, from symbol_create.
1346         (symbol_create): Call save_symbol_name.
1347         (local_symbol_count): New static variable.
1348         (local_symbol_conversion_count): Likewise.
1349         (LOCAL_SYMBOL_CHECK): Define.
1350         (local_symbol_make): New static function.
1351         (local_symbol_convert): New static function.
1352         (colon): Handle local symbols.  Create local symbol for local
1353         label name.
1354         (symbol_table_insert): Handle local symbols.
1355         (symbol_find_or_make): Create local symbol for local label name.
1356         (symbol_find_base): Check for local symbol.
1357         (symbol_append, symbol_insert): Check for local symbols.
1358         (symbol_clear_list_pointers, symbol_remove): Likewise.
1359         (verify_symbol_chain): Likewise.
1360         (copy_symbol_attributes): Likewise.
1361         (resolve_symbol_value): Handle local symbols.
1362         (resolve_local_symbol): New static function.
1363         (resolve_local_symbol_values): New function.
1364         (S_GET_VALUE, S_SET_VALUE): Handle local symbols.
1365         (S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
1366         (S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
1367         (S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
1368         (S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
1369         (symbol_previous, symbol_next): New functions.
1370         (symbol_get_value_expression): Likewise.
1371         (symbol_set_value_expression): Likewise.
1372         (symbol_set_frag, symbol_get_frag): Likewise.
1373         (symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
1374         (symbol_mark_used_in_reloc): Likewise.
1375         (symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
1376         (symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
1377         (symbol_mri_common_p): Likewise.
1378         (symbol_mark_written, symbol_clear_written): Likewise.
1379         (symbol_written_p): Likewise.
1380         (symbol_mark_resolved, symbol_resolved_p): Likewise.
1381         (symbol_section_p, symbol_equated_p): Likewise.
1382         (symbol_constant_p): Likewise.
1383         (symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
1384         (symbol_get_obj, symbol_set_obj): Likewise.
1385         (symbol_get_tc, symbol_set_tc): Likewise.
1386         (symbol_begin): Initialize local_hash.
1387         (print_symbol_value_1): Handle local symbols.
1388         (symbol_print_statistics): Print local symbol statistics.
1389         * symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
1390         Declare new symbols.c functions.  Move many declarations here from
1391         struc-symbol.h.
1392         (SYMBOLS_NEED_BACKPOINTERS): Define if needed.
1393         * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
1394         (struct symbol): Move bsym to make it clearly the first field.
1395         Remove TARGET_SYMBOL_FIELDS.
1396         (symbolS): Don't typedef.
1397         (struct broken_word): Remove.
1398         (N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
1399         (SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
1400         (symbol_clear_list_pointers): Likewise.
1401         (symbol_insert, symbol_remove): Likewise.
1402         (symbol_previous, symbol_append): Likewise.
1403         (verify_symbol_chain, verify_symbol_chain_2): Likewise.
1404         (struct local_symbol): Define.
1405         (local_symbol_converted_p, local_symbol_mark_converted): Define.
1406         (local_symbol_resolved_p, local_symbol_mark_resolved): Define.
1407         (local_symbol_get_frag, local_symbol_set_frag): Define.
1408         (local_symbol_get_real_symbol): Define.
1409         (local_symbol_set_real_symbol): Define.
1410         Define.
1411         * write.c (write_object_file): Call resolve_local_symbol_values.
1412         * config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
1413         (TARGET_SYMBOL_FIELDS): Don't define.
1414         * config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field.  If
1415         ECOFF_DEBUGGING, add ECOFF fields.
1416         (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
1417         * config/obj-multi.h (struct elf_obj_sy): Add local field.  If
1418         ECOFF_DEBUGGING, add ECOFF fields.
1419         (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
1420         (ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
1421         * config/tc-mcore.h: Don't include struc-symbol.h.
1422         (TARGET_SYMBOL_FIELDS): Don't define.
1423         (struct mcore_tc_sy): Define.
1424         (TC_SYMFIELD_TYPE): Define.
1425         * Many files: Use symbolS instead of struct symbol.  Use new
1426         accessor functions rather than referring to symbolS fields
1427         directly.
1428
1429         * read.c (s_mri_common): Don't add in value of line_label.
1430
1431         * config/tc-mips.c (md_apply_fix): Correct parenthesization when
1432         checking for SEC_LINK_ONCE.
1433
1434         * config/tc-sh.h (sh_fix_adjustable): Declare.
1435
1436         * app.c (input_buffer): New static variable.
1437         (app_push): Save saved_input in allocated buffer.
1438         (app_pop): Restored saved_input.
1439         (do_scrub_chars): Change get parameter to take char * and int as
1440         arguments.  Change GET macro to pass input_buffer to get
1441         function.  Don't save input into allocated buffer.
1442         * as.h (do_scrub_chars): Update declaration.
1443         * input-file.c (input_file_get): Change to take char * and int.
1444         Read data into passed in buffer.  Remove static buffer.
1445         * read.c (scrub_from_string): Change to take char * and int.  Copy
1446         data into passed in buffer.
1447
1448         * hash.h: Neaten.  Declare hash_traverse.
1449         * hash.c: Complete rewrite based on BFD hashing code.
1450         * gasp.c (chunksize): New variable.
1451         * macro.c (macro_expand_body): Call hash_jam with NULL rather than
1452         hash_delete.
1453
1454 1999-05-28  Nick Clifton  <nickc@cygnus.com>
1455
1456         * config/tc-arm.c (md_apply_fix3): Add pipeline offset into reloc
1457         addend unless the target uses an old ABI.
1458
1459 Mon May 24 13:36:55 1999  Doug Evans  <devans@canuck.cygnus.com>
1460
1461         -Wchar-subscripts cleanup
1462         * listing.c (listing_newline): Use unsigned char variable, so
1463         calls to isascii,iscntrl are correct.
1464         * atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
1465         (unsigned char).
1466         * ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
1467         * config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
1468         * config/tc-mips.c (mips_ip,mips16_ip): Ditto.
1469         (my_getSmallExpression,get_number,s_mips_ent): Ditto.
1470
1471 1999-05-28  Torbjorn Granlund  <tege@matematik.su.se>
1472
1473         * config/tc-m68k.c (m68k_ip): Check for disallowed index register
1474         width for Coldfire.
1475         (arch_coldfire_p): New #define.
1476         (m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
1477
1478 1999-05-28  Linus Nordberg  <linus.nordberg@canit.se>
1479
1480         * config/tc-m68k.c (install_operand): Add places `n', `o'.
1481
1482         * config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
1483         (install_operand): Add place `N'.
1484         (init_table): Add registers ACC, MACSR, MASK.
1485
1486         * config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
1487
1488         * config/tc-m68k.c: Change mcf5200 --> mcf.
1489         (archs): Add mcf5206e, mcf5307.
1490         (m68k_ip): Add format `u'.
1491         (install_operand): Add place `m', `M', `h'.
1492         (init_table): Add upper/lower registers.
1493
1494         * config/m68k-parse.h (m68k_register): Add upper/lower registers.
1495
1496 1999-05-28  Martin Dorey  <mdorey@madge.com>
1497
1498         * config/tc-i960.c: Several minor changes to add ELF and
1499         BFD_ASSEMBLER support.
1500         * config/tc-i960.h: Likewise.
1501         * configure.in (i960-*-elf*): New target.
1502         * aclocal.m4, configure: Rebuild.
1503
1504 1999-05-25  Alan Modra  <alan@spri.levels.unisa.edu.au>
1505
1506         * config/tc-i386.c (md_apply_fix3): Only do 1999-05-17 fx_pcrel
1507         reloc changes when defined(BFD_ASSEMBLER).
1508
1509 1999-05-17  Alan Modra  <alan@spri.levels.unisa.edu.au>
1510
1511         * config/tc-i386.c (tc_gen_reloc): Remove F and MAP macros.
1512
1513         * write.c (write_print_statistics): Output to file, not stderr.
1514
1515         * expr.c (generic_bignum_to_int32,64): Prototype.
1516
1517         * read.c (s_lcomm_internal, sizeof_sleb128, sizeof_uleb128,
1518         output_sleb128, output_uleb128, output_big_sleb128,
1519         output_big_uleb128, output_big_leb128): Prototype.
1520         (output_big_sleb128, output_big_uleb128): Make inline.
1521         (output_big_leb128): Remove inline
1522
1523         From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1524         * config/tc-i386.c (md_apply_fix3): Convert BFD_RELOC_16 with
1525         fx_pcrel set to BFD_RELOC_16_PCREL.  Similarly for BFD_RELOC_8.
1526         Handle BFD_RELOC_16_PCREL and BFD_RELOC_8_PCREL.  Return changed
1527         value for correct overflow check in write.c:fixup_segment.
1528         * write.c (fixup_segment): Move bitfield overflow checks to after
1529         the md_apply_fix call.
1530         * config/obj-coff.c (fixup_segment): Likewise.
1531         * doc/internals.texi (CPU backend): Mention md_apply_fix modifying
1532         valueT *val argument.
1533
1534 Fri May 14 10:52:13 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
1535
1536         * config/atof-ieee.c (gen_to_words): Correctly round a
1537         denormalized number.  Fix off-by-one in range checking for
1538         exponent in a denormal. 
1539
1540 1999-05-10  Nick Clifton  <nickc@cygnus.com>
1541
1542         * config/tc-mcore.c (parse_reg): Accept 'sp' as a valid register
1543         name. 
1544
1545 Thu May 13 09:46:59 1999  Joel Sherrill (joel@OARcorp.com)
1546
1547         * configure.in (i386-*-rtemself*, sh-*-rtemself*): New targets.
1548
1549 1999-05-12  Alan Modra  <alan@spri.levels.unisa.edu.au>
1550
1551         * config/tc-i386.h (InvMem): New flag.  Add to AnyMem.
1552         (ReverseRegRegmem): Remove.
1553         (ImmExt): New flag.  Renumber some of the opcode_modifier bits.
1554         * config/tc-i386.c (md_assemble): Test for PIII SIMD and AMD
1555         3DNow! via ImmExt opcode_modifier.  Remove ReverseRegRegmem
1556         kludge.
1557
1558         From  Doug Ledford <dledford@redhat.com>
1559         * config/tc-i386.h (RegXMM): New for P/III.
1560         * config/tc-i386.c: Add support for P/III.
1561
1562 Sat May  8 23:28:50 1999  Richard Henderson  <rth@cygnus.com>
1563
1564         * config/tc-ppc.c (md_parse_option): Recognize -mppc64bridge.
1565         (md_begin): Allow ppc32 insns in ppc64bridge mode.
1566         (ppc_insert_operand): Accept SIGNOPT in ppc64 mode.
1567
1568 Thu May  6 23:13:39 1999  Richard Henderson  <rth@cygnus.com>
1569
1570         * config/tc-i386.c (i386_immediate): Skip whitespace before
1571         complaining about junk after expression.
1572         (i386_displacement): Likewise.
1573
1574 Thu May  6 19:50:14 1999  Richard Henderson  <rth@cygnus.com>
1575
1576         * symbols.c (symbol_find_base): Use memcpy instead of strcpy.
1577         Don't copy before downcaseing.
1578
1579 1999-05-05  Catherine Moore  <clm@cygnus.com>
1580  
1581         * tc-m68k.c: Include elf/m68k.h.
1582         (m68k_elf_final_processing): New routine.
1583         * tc-m68k.h (elf_tc_final_processing m68k_elf_final_processing):
1584         Define.
1585  
1586 Mon May  3 10:26:03 1999  Jeffrey A Law  (law@cygnus.com)
1587
1588         * config/tc-hppa.c (md_apply_fix): Handle 22 bit fmt insn like a
1589         17 bit fmt insn.
1590
1591 1999-04-30  Nick Clifton  <nickc@cygnus.com>
1592
1593         * config/tc-mcore.c (mcore_s_section): Dump literals before
1594         changing section.
1595
1596 1999-04-29  Nick Clifton  <nickc@cygnus.com>
1597
1598         * config/tc-mcore.c (md_apply_fix3): Insert reloc addend into insn
1599         for COFF/PE port.
1600
1601 Mon Apr 26 12:34:37 1999  Doug Evans  <devans@canuck.cygnus.com>
1602
1603         * config/tc-fr30.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
1604         (TC_INIT_FIX_DATA): Delete.
1605         * config/tc-m32r.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
1606         (TC_INIT_FIX_DATA): Delete.
1607         * write.h (struct fix): New member fx_cgen, ifdef USING_CGEN.
1608         * write.c (fix_new_internal): Initialize fx_cgen member.
1609         * cgen.c (gas_cgen_record_fixup,gas_cgen_record_fixup_exp): Update.
1610         (gas_cgen_md_apply_fix3): Update.
1611         * config/tc-m32r.c (md_cgen_lookup_reloc): Update.
1612         (md_cgen_record_fixup_exp): Update.
1613         (FX_OPINFO_R_TYPE): Update.
1614
1615         * frags.c (frag_var,frag_variant): Initialize fr_cgen here.
1616         * config/tc-fr30.h (TC_FRAG_INIT): Delete.
1617         * config/tc-m32r.h (TC_FRAG_INIT): Delete.
1618         * frags.h (struct frag): Make opindex, opinfo ints.
1619
1620         * config/tc-fr30.c (FX_OPINFO_R_TYPE): Delete, unused.
1621
1622 1999-04-26  Tom Tromey  <tromey@cygnus.com>
1623
1624         * aclocal.m4, configure: Updated for new version of libtool.
1625
1626 1999-04-22  Nick Clifton  <nickc@cygnus.com>
1627
1628         * config/tc-mcore.c (md_apply_fix3): Renamed function from
1629         md_apply_fix. 
1630         (md_apply_fix3): Do not fix up absolute relocations against
1631         symbolic values.
1632
1633         * config/tc-mcore.h (MD_APPLY_FIX3): Define.
1634
1635 1999-04-20  Nick Clifton  <nickc@cygnus.com>
1636
1637         * config/tc-mcore.c (md_pseudo_table): Add intercepts for section
1638         changes and data-in-text directives.
1639         (mcore_cons): New function: intercept cons() operations.
1640         (mcore_float_cons): New function: intercept float_cons()
1641         operations. 
1642         (mcore_stringer): New function: intercept stringer() operations.
1643
1644 1999-04-18  Ian Lance Taylor  <ian@zembu.com>
1645
1646         * obj.h (struct format_ops): Change generate_asm_lineno field to
1647         take no parameters.
1648         * config/obj-ecoff.h (OBJ_GENERATE_ASM_LINENO): Don't define.
1649
1650         * config/tc-alpha.c (find_opcode_match): Add default case to
1651         switch.
1652         (find_macro_match): Likewise.
1653         (load_expression): Parenthesize && within ||.
1654
1655         * config/tc-alpha.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
1656
1657 1999-04-17  Nick Clifton  <nickc@cygnus.com>
1658
1659         * config/tc-mcore.c (md_pseudo_table): Add overrides for .bss
1660         .text .data .section pseudo ops.
1661         (mcore_s_section): New function.  Dump lits before changing secs. 
1662         (mcore_s_text): New function.  Dump lits before changing secs. 
1663         (mcore_s_data): New function.  Dump lits before changing secs. 
1664
1665 1999-04-16  Gavin Romig-Koch  <gavin@cygnus.com>
1666
1667         * config/tc-mips.c (mips_32bitmode): New.
1668         (md_begin): Set mips_32bitmode if needed.
1669         (mips_elf_final_processing): Don't set EF_MIPS_ARCH.
1670         Set EF_MIPS_32BITMODE.
1671
1672 Fri Apr 16 12:26:39 1999  Bob Manson  <manson@charmed.cygnus.com>
1673
1674         * config/obj-coff.c (c_section_symbol): Fix typo in previous
1675         change.
1676
1677 1999-04-16  Nick Clifton  <nickc@cygnus.com>
1678
1679         * config/tc-mcore.h (LOCAL_LABELS_FB): Define to 1.
1680
1681 Thu Apr 15 16:52:09 1999  Jeffrey A Law  (law@cygnus.com)
1682
1683         * tc-hppa.c (pa_get_absolute_exression): Try to handle "5 %r3" 
1684         expressions correctly.
1685
1686
1687 1999-04-15  Gavin Romig-Koch  <gavin@cygnus.com>
1688
1689         * config/tc-mips.c (mips_elf_final_processing): Set EF_MIPS_ARCH.
1690
1691 Mon Apr 12 23:45:07 1999  Jeffrey A Law  (law@cygnus.com)
1692
1693         * tc-hppa.c (pa_ip, case '3'): New case for PA2.0 fmpyfadd
1694         and fmpynfadd instructions.
1695
1696 1999-04-11  Richard Henderson  <rth@cygnus.com>
1697
1698         * as.h (environ): Declare it, if needed.
1699         * as.c (dump_statistics): Don't declare environ.
1700         * configure.in (environ): Detect declaration.
1701         * configure, config.in: Rebuild
1702
1703         * config/tc-i386.c (i386_immediate): Accept @GOT relocations.
1704         (i386_displacement): Allocate enough space for replacement buffer.
1705         Clean up replacement buffer initialization.
1706
1707 1999-04-11  Bob Manson <manson@charmed.cygnus.com>:
1708
1709         * subsegs.c (section_symbol): Don't create a new symbol if one
1710         already exists; instead, use the existing one, but set its segment
1711         and frag data if it hasn't already been defined.
1712         * config/obj-coff.c (c_section_symbol): Likewise.
1713
1714 Sat Apr 10 20:10:02 1999  Richard Henderson  <rth@cygnus.com>
1715
1716         * tc-alpha.c (load_expression): Call as_bad instead of abort.
1717
1718 1999-04-08  Nick Clifton  <nickc@cygnus.com>
1719
1720         * config/tc-mcore.c: New File: Support routines for MCore
1721         assembler.
1722         * config/tc-mcore.h: New File: Definitions for MCore assembler. 
1723         * config/obj-coff.c: Add support for mcore-pe target.
1724
1725         * Makefile.am: Add support for MCore targets.
1726         * Makefile.in: Regenerate.
1727         * configure.in: Add support for MCore targets.
1728         * configure: Regenerate.
1729
1730         * doc/all.texi: Set MCORE.
1731         * doc/as.texinfo: Document MCore specific command line options.
1732         
1733         * write.h: Prevent multiple inclusion.
1734
1735 1999-04-06  Ian Lance Taylor  <ian@zembu.com>
1736
1737         * asintl.h (LC_MESSAGES): Never define.
1738         * as.c (main): Don't pass LC_MESSAGES to setlocale if the system
1739         does not define it.
1740         * gasp.c (main): Don't pass LC_MESSAGES to setlocale if the system
1741         does not define it.
1742
1743         * Makefile.am (m68k-parse.c): If configuring in the source
1744         directory, copy m68k-parse.y into the local directory before
1745         running ylwrap, to remove spurious differences when generating
1746         snapshots.
1747         * Makefile.in: Rebuild.
1748
1749         * config/tc-sparc.h (md_do_align): Just allocate the number of
1750         bytes necessary, rather than always allocating 1024.
1751
1752 1999-04-04  Ian Lance Taylor  <ian@zembu.com>
1753
1754         * listing.c (listing_newline): Add cast to avoid warning.
1755         * read.c (generate_lineno_debug): Add cases to switch.  Reindent.
1756         * config/tc-i386.c (i386_scale): Add return value.
1757         (build_displacement_string): Remove unused local temp_disp2.
1758         (i386_intel_memory_operand): Add parentheses to avoid warning.
1759         (i386_intel_operand): Remove unused local end_of_operand_string.
1760         (i386_operand): Remove unused local operand_modifier.
1761         (i386_operand): Add parens to avoid warning.
1762
1763 1999-04-04  Don Bowman <don@pixsci.com>
1764
1765         * configure.in: Add mips*-*-vxworks* target; have it define
1766         MIPS_STABS_ELF.
1767         * configure, config.in: Rebuild.
1768
1769 1999-03-31  Nick Clifton  <nickc@cygnus.com>
1770
1771         * configure.in (emulations): Add support for arm-epoc-pe.
1772         * configure: Regenerate.
1773         * config/te-epoc-pe.h: New file.  Define macros specific to
1774         arm-epoc-pe target.
1775         * config/tc-arm.h: Select epoc-pe-arm target format if configured
1776         for arm-epoc-pe target.
1777
1778 Mon Mar 29 10:15:40 CST 1999  Catherine Moore  <clm@cygnus.com>
1779
1780         * tc-mips.c (md_apply_fix):  Adjust value for linkonce sections.
1781
1782 Wed Mar 24 14:11:10 1999  Jeffrey A Law  (law@cygnus.com)
1783
1784         * tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Clean up code to
1785         detect ",n" without a condition.
1786         (pa_parse_neg_cmpsub_cmpltr): Likewise.
1787
1788
1789 Tue Mar 23 11:28:23 1999  Jeffrey A Law  (law@cygnus.com)
1790
1791         * tc-hppa.c (pa_ip, case '~'): The condition for a branch on bit
1792         instruction is encoded with one bit.
1793
1794
1795 1999-03-23  Ian Lance Taylor  <ian@zembu.com>
1796
1797         * doc/internals.texi (CPU backend): Mention that
1798         line_separator_chars should not include newline.  From thi
1799         <ttn@mingle.glug.org>.
1800
1801 1999-03-22  Doug Evans  <devans@casey.cygnus.com>
1802
1803         * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
1804         * config/tc-m32r.c (md_begin): Update call to m32r_cgen_cpu_open.
1805
1806 Sun Mar 21 18:08:18 1999  Richard Henderson  <rth@cygnus.com>
1807
1808         * tc-alpha.c (md_assemble): Allow '6' in an opcode.
1809
1810 Thu Mar 18 10:55:30 1999  Jeffrey A Law  (law@cygnus.com)
1811
1812         * tc-hppa.c (pa_ip, case 'a'): Do not call pa_parse_..._cmpsub_cmpltr.
1813
1814
1815 Thu Mar 18 02:30:07 1999  Jeffrey A Law  (law@cygnus.com)
1816
1817         * tc-hppa.c (pa_ip, case 'd'): Do not allow ",n".
1818         
1819 1999-03-15  Martin Hunt  <hunt@cygnus.com>
1820
1821         * app.c (do_scrub_begin): Change '-' back to a symbol char
1822         so we can use multiple opcodes on a line again.
1823
1824         * config/tc-d30v.c: By default, warn if a symbol has
1825         the same name as a register.  Plus some minor
1826         updates from the branch.
1827
1828 1999-03-13  Nick Clifton  <nickc@cygnus.com>
1829
1830         * config/tc-d30v.c (md_apply_fix3): Handle BFD_RELOC_8,
1831         BFD_RELOC_16 and BFD_RELOC_64.
1832
1833 1999-03-12  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
1834
1835         * expr.c (expr): Add missing else.
1836
1837 1999-03-12  Nick Clifton  <nickc@cygnus.com>
1838
1839         * config/tc-arm.c (md_apply_fix3): Improve error message.
1840
1841 1999-03-11  Doug Evans  <devans@casey.cygnus.com>
1842
1843         * Makefile.am (CPU_TYPES): Add fr30.
1844         (cgen.o): Add $(CGEN_CPU_PREFIX)-desc.h dependency.
1845         (fr30,m32r dependencies): Update.
1846         * Makefile.in: Rebuild.
1847
1848         * cgen.c (gas_cgen_record_fixup): Update use of operand->type.
1849         (gas_cgen_record_fixup_exp): Ditto.
1850         (gas_cgen_finish_insn): Call cgen_operand_lookup_by_num.
1851         (gas_cgen_md_apply_fix3): Ditto.  Update call to set_vma_operand.
1852         * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
1853         (md_cgen_lookup_reloc): Update use of operand->type.
1854         * config/tc-m32r.c (md_begin): Update call to fr30_cgen_cpu_open.
1855         (md_convert_frag): Call cgen_operand_lookup_by_num.
1856         (md_cgen_lookup_reloc): Update use of operand->type.
1857         (m32r_cgen_record_fixup_exp): Ditto.
1858
1859 1999-03-09  Jim Blandy  <jimb@zwingli.cygnus.com>
1860
1861         * config/tc-mips.c (md_show_usage): Fix message.
1862
1863 1999-03-03  Nick Clifton  <nickc@cygnus.com>
1864
1865         * doc/c-arm.texi (ARM Syntax): Document new command line switches
1866         and LDR reg,=<expr> instruction.
1867
1868         * config/tc-arm.c: Add support for -mcpu=arm810, -mcpu=arm9 and
1869         -mcpu=arm9tdmi.
1870
1871 Fri Feb 19 09:36:30 1999  Ian Lance Taylor  <ian@cygnus.com>
1872
1873         * doc/c-arm.texi (ARM-Chars): Fix typo in use of '@'.
1874
1875 1999-02-17  Nick Clifton  <nickc@cygnus.com>
1876
1877         This patch was created by: Scott Bambrough
1878         <scottb@corelcomputer.com>
1879         
1880         * app.c: 
1881           Special cased '@' character.  The '@' character is used as the
1882           ARM assembler comment character, as a special character 
1883           and in ELF .symver pseudo-op's, and as a special character in
1884           .type and .section pseudo-ops.
1885         (symver_pseudo): New static variable.
1886         (symver_state): New static variable.
1887         (struct app_save): Add field 'symver_state'.
1888         (app_push): Save global symver_state int struct app_save.
1889         (app_pop): Restore global symver_state from struct app_save.
1890         (do_scrub_chars): Special case handling of '@' character in
1891         .symver pseudo-ops. 
1892
1893         * configure.in: Modified to recognize armv* uname syntax from ARM
1894         Linux kernel.
1895         * configure: Regenerated.
1896         
1897         * config/obj-elf.c (obj_elf_section): Allow '%' as well as '@' as
1898         a prefix to the section's type.
1899         (obj_elf_type): Allow '%' as well as '@' and '#' as prefixes to
1900         the type's typename.
1901
1902         * config/tc-arm.h: Add support for PIC generation:
1903         (pic_code): New boolean.
1904         (obj_relocate_extern): Define.
1905         (TC_RELOC_RTSYM_LOC_FIXUP): Define
1906         (TC_CONS_FIX_NEW): Define.
1907         (tc_fix_adjustable): Define.
1908         (GLOBAL_OFFSET_TABLE_NAME): Define.
1909         
1910         * config/tc-arm.c: Add support for PIC generation:
1911         (line_seperator_chars): Allow ';' as a seperator for Linux.
1912         (is_immediate_prefix): New macro.
1913         (arm_parse_reloc): New function.
1914         (s_arm_elf_cons): New function.
1915         (do_branch): Special case for BFD_RELOC_ARM_PLT32.
1916         (md_undefined_symbol): Special case handling for the Global Offset
1917           Table's symbol.
1918         (md_apply_fix3): Handle PIC relocs.
1919         (tc_gen_reloc): Handle PIC relocs.
1920         (md_parse_option): Add support for '-k' command line switch to
1921           enable PIC generation.
1922         (cons_fix_new_arm): New function.
1923         (s_arm_elf_cons): New function.
1924
1925 Tue Feb 16 16:31:53 1999  Ian Lance Taylor  <ian@cygnus.com>
1926
1927         * configure.in: Add comments for uses of AC_DEFINE.
1928         * acinclude.m4: Likewise.
1929         * acconfig.h: Remove.
1930         * aclocal.m4: Rebuild.
1931         * configure: Rebuild.
1932         * Makefile.in: Rebuild.
1933         * config.in: Rebuild.
1934
1935 1999-02-15  Jim Lemke  <jlemke@cygnus.com>
1936
1937         * config/tc-mips.c (mips_ip: case 'o'): Fix assertion failure for
1938         non-constant offset from a base register.
1939
1940 1999-02-14  Ken Raeburn  <raeburn@raeburn.org>
1941
1942         * config/tc-alpha.c (md_show_usage): Put \ before newline in
1943         strings always.
1944
1945 Sat Feb 13 14:10:10 1999  Richard Henderson  <rth@cygnus.com>
1946
1947         * config/tc-alpha.c (cpu_types): Enable EV6 PALcode with -m21264.
1948         (emit_insn): Look for pc-relative and no-overflow specifiers on
1949         internal relocation types.
1950
1951 1999-02-13  Jim Blandy  <jimb@zwingli.cygnus.com>
1952
1953         * doc/c-mips.texi (MIPS Opts): Updated list of -mNNNN and
1954         -mcpu=NNNN flags.
1955
1956         * config/tc-mips.c: Remove all the mips_NNNN variables; just use
1957         mips_cpu instead.
1958         (mips_4650, mips_4010, mips_4100): Variables removed.
1959         (hilo_interlocks, gpr_interlocks, append_insn, macro_build, macro,
1960         macro2, mips16_macro, mips_ip): Test mips_cpu, not the mips_NNNN
1961         variables.
1962         (md_begin): Don't bother initializing the mips_NNNN variables;
1963         mips_cpu is set, and that's good enough now.
1964         (md_parse_option): Have the -mNNNN options set mips_cpu instead of
1965         the mips_NNNN variable.  The -no-mNNNN flags are now no-ops.
1966         (show): New function, to handle wrapping in the CPU lists.
1967         (md_show_usage): Update lists of -mcpu and -mNNNN switches.
1968
1969 Sat Feb 13 00:17:26 1999  Richard Henderson  <rth@cygnus.com>
1970
1971         * config/tc-i386.c (i386_intel_operand): Ignore `SHORT' rather
1972         than treat as an immediate specifier.
1973
1974 Thu Feb 11 16:18:31 1999  Richard Henderson  <rth@cygnus.com>
1975
1976         * config/tc-i386.c: Prototype many functions.
1977         (set_intel_syntax): Accept `prefix'/`noprefix' specifiers.
1978         (i386_immediate): Remove unused second argument.
1979         (i386_intel_operand): Fix i386_is_reg typo.
1980         (i386_operand): Use allow_naked_reg.
1981         (output_invalid): Make operand int for K&R.
1982
1983 Thu Feb 11 11:21:02 1999  Ian Lance Taylor  <ian@cygnus.com>
1984
1985         * Makefile.am (EXTRA_as_new_SOURCES): Uncomment--fixed by automake
1986         patch.
1987         * Makefile.in: Rebuild.
1988
1989 1999-02-09  Doug Evans  <devans@casey.cygnus.com>
1990
1991         * Makefile.am (DISTCLEANFILES): Change cgen-opc.h to cgen-desc.h.
1992         (cgen.o): Ditto.
1993         (EXTRA_as_new_SOURCES): Comment out.
1994         (.tcdep): <arch>-opc.h renamed to <arch>-desc.h.
1995         * Makefile.in: Rebuild.
1996         * doc/Makefile.in: Rebuild.
1997         * configure.in: Require autoconf 2.13.  Redo using_cgen handling.
1998         Delete call to AM_CYGWIN32.  Replace AM_EXEEXT with AC_EXEEXT.
1999         (AC_OUTPUT): <arch>-opc.h renamed to <arch>-desc.h.
2000         * configure: Rebuild.
2001         * aclocal.m4: Rebuild.
2002         * config.in: Rebuild.
2003         * cgen.c: Include cgen-desc.h, not cgen-opc.h.
2004         (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
2005         (gas_cgen_cpu_desc): Renamed from gas_cgen_opcode_desc.
2006         CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
2007         CGEN_OPERAND_ATTR renamed to CGEN_OPERAND_ATTR_VALUE.
2008         (gas_cgen_record_fixup): Remove unnecessary != 0 test.
2009         (gas_cgen_record_fixup_exp): Ditto.
2010         (gas_cgen_finish_insn): Ditto.  Refer to operand table via cpu
2011         descriptor, not global variable.
2012         (gas_cgen_md_apply_fix3): Refer to operand_table via cpu
2013         descriptor, not global variable.  Refer to insert_operand handler
2014         via cpu descriptor, not global function.
2015         * cgen.h (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
2016         * config/tc-fr30.c: Include opcodes/fr30-desc.h.
2017         (*): gas_cgen_opcode_desc renamed to gas_cgen_cpu_desc.
2018         CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
2019         Update call to CGEN_OPERAND_TYPE,CGEN_INSN_OPERANDS.
2020         * config/tc-m32r.c: Ditto.
2021         (assemble_two_insns): Update calls to cgen_lookup_get_insn_operands.
2022         (md_assemble): Ditto.
2023         (md_convert_frag): Update call to CGEN_OPERAND_ENTRY.
2024
2025 1999-02-09  Nick Clifton  <nickc@cygnus.com>
2026
2027         * config/tc-arm.c (md_apply_fix3): Fix handling of label1 - label2
2028         relocations for ELF targets.
2029
2030 1999-02-08  Nick Clifton  <nickc@cygnus.com>
2031
2032         * configure.in: Add support for StrongARM target.
2033         * configure: Regenerate.
2034
2035 1999-02-05  Nick Clifton  <nickc@cygnus.com>
2036
2037         * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
2038
2039         * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
2040         for COFF ports.
2041
2042 Wed Feb  3 11:35:47 1999  Richard Henderson  <rth@cygnus.com>
2043
2044         * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
2045
2046 Mon Feb  1 20:37:30 1999  Catherine Moore  <clm@cygnus.com>
2047
2048         * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX):  Define.
2049         (INTEL_DWORD_MNEM_SUFFIX):  Define.
2050         (BYTE_PTR):  Define.
2051         (WORD_PTR):  Define.
2052         (DWORD_PTR):  Define.
2053         (XWORD_PTR):  Define.
2054         (SHORT):  Define.
2055         (OFFSET_FLAT):  Define.
2056         (FLAT):  Define.
2057         (NONE_FOUND):  Define.
2058         (No_dSuf):  Define.
2059         (No_xSuf):  Define.
2060         * config/tc-i386.c  (set_intel_syntax):  New routine.
2061         (intel_syntax):  Declare.
2062         (allow_naked_reg):  Declare.
2063         (md_pseudo_table):  Support .intel_syntax and .att_syntax.
2064         (intel_float_operand):  New routine.
2065         (md_assemble):  Handle INTEL_DWORD_MNEM_SUFFIX.
2066         Handle brackets as well as parens.  Call i386_intel_operand for
2067         intel syntax.  Reverse operands if appropriate.  Handle new
2068         suffixes.  Handle movzx and movsx.
2069         (i386_is_reg):  New routine.
2070         (i386_immediate):  New routine.
2071         (i386_scale):  New routine.
2072         (i386_displacement):  New routine.
2073         (i386_operand_modifier):  New routine.
2074         (build_displacement_string):  New routine.
2075         (i386_parse_seg):  New routine.
2076         (i386_intel_memory_operand):  New routine.
2077         (i386_intel_operand):  New routine.
2078         (i386_operand):  Call i386_displacement, i386_immediate,
2079         i386_scale, etc.  instead of handling inline.
2080         (parse_register):  Handle registers without prefix.
2081
2082 Mon Feb  1 12:24:58 1999  Catherine Moore  <clm@cygnus.com>
2083
2084         * configure:  Regenerate.
2085         * configure.in (arm-*-oabi):  New.
2086         (thumb-*-oabi):  New.
2087         * config/tc-arm.c (target_oabi):  Declare.
2088         (md_apply_fix3): Support REL relocs.
2089         (md_parse_option):  Handle -oabi.
2090         (elf32_arm_target_format):  New routine.
2091         (md_longopts):  Add OPTION_OABI.
2092         * config/tc-arm.h:  Redefine TARGET_FORMAT.
2093
2094
2095 1999-01-28  Nick Clifton  <nickc@cygnus.com>
2096
2097         * write.c (write_relocs): Handle out of range error.
2098
2099         * config/tc-fr30.c (fr30_fix_adjustable): New function.
2100         (fr30_force_relocation): Default to 0.
2101
2102         * config/tc-fr30.h (obj_fix_adjustable): Define.
2103         (TC_FORCE_RELOCATION): Define.
2104
2105         * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
2106         relocs. 
2107
2108 1999-01-16  Nick Clifton  <nickc@cygnus.com>
2109
2110         * config/tc-d30v.c (write_2_short): Do not generate a sequential
2111         merge of two instructions if the left instruciton kills the right.
2112
2113 1999-01-11  Doug Evans  <devans@casey.cygnus.com>
2114
2115         * Makefile.in: Regenerate.
2116         * configure.in: Redo test for using cgen.
2117         * configure: Regenerate.
2118
2119 1999-01-09  Nick Clifton  <nickc@cygnus.com>
2120
2121         * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
2122         redefinition of this macro.
2123
2124 Tue Jan  5 21:58:03 1999  Doug Evans  <devans@canuck.cygnus.com>
2125
2126         * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
2127         warning.
2128
2129 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
2130
2131         * config/tc-mips.c (append_insn): For mips16, insert a nop between
2132         a read of HI or LO and an immediatly following branch.
2133
2134 1998-12-29  Gavin Romig-Koch  <gavin@cygnus.com>
2135
2136         * config/tc-mips.c (md_begin): Another correction to the setting of
2137         mips_eabi64.
2138
2139 1998-12-23  Gavin Romig-Koch  <gavin@cygnus.com>
2140
2141         * config/tc-mips.c (md_begin): Correct type-o in setting of mips_eabi64.
2142
2143 1998-12-21  Nick Clifton  <nickc@cygnus.com>
2144
2145         * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
2146         bit insn when optimizing, so that parallelised instructions will
2147         start on a 32 bit boundary.
2148
2149 1998-12-19  Gavin Romig-Koch  <gavin@cygnus.com>
2150
2151         * config/tc-mips.c (mips_eabi64): New.
2152         (md_begin): Set mips_eabi64.
2153         (mips_elf_final_processing): Use it.
2154
2155 1998-12-18  Gavin Romig-Koch  <gavin@cygnus.com>
2156
2157         * config/tc-mips.c (mips_elf_final_processing): 
2158         Correct setting of ABI in e_flags.
2159
2160 Wed Dec 16 16:17:22 1998  Dave Brolley  <brolley@cygnus.com>
2161
2162         * config/tc-fr30.c (md_assemble): Warn about invalid instructions in delay slots.
2163
2164 1998-12-16  Gavin Romig-Koch  <gavin@cygnus.com>
2165
2166         * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
2167         
2168 1998-12-15  Doug Evans  <devans@casey.cygnus.com>
2169
2170         * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
2171         warning, values that don't fit in the field.
2172
2173 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
2174
2175         * config/tc-mips.c (mips_abi_string): New.
2176         (md_parse_option,md_longopts): Add mabi.
2177         (mips_elf_final_processing): Set e_flags based on mabi flag.
2178
2179 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
2180
2181         * config/tc-mips.c (md_parse_option): Handle vr4111. 
2182
2183 98-12-11  Ken Raeburn  <raeburn@cygnus.com>
2184
2185         * config/tc-h8300.c (build_bytes): Change message given if the
2186         instruction requires H8/300H mode and we're not in Hmode, to
2187         suggest that it may be the operand modes that are the problem, not
2188         necessarily the opcode.
2189
2190 1998-12-10  Nick Clifton  <nickc@cygnus.com>
2191
2192         * config/tc-fr30.c: Add line separator character.
2193
2194 Tue Dec  8 19:51:50 1998  Mark Klein  <mklein@dis.com>
2195
2196         * configure.in (hppa-*-mpeix*): New target.
2197         * config/obj-som.h (obj_som_compiler): Declare.
2198         * config/obj-som.c (compiler_seen): New static variable.
2199         (obj_som_compiler): New function.
2200         * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
2201         (md_pseudo_table): Add "compiler" if OBJ_SOM.
2202         (pa_type_args): Set hppa_priv_level.
2203         (pa_compiler): New static function if OBJ_SOM.
2204         * configure: Rebuild.
2205
2206 Tue Dec  8 15:00:50 1998  Ian Lance Taylor  <ian@cygnus.com>
2207
2208         * read.c (output_leb128): Don't mark as inline.
2209
2210 1998-12-08  Andrew MacLeod  <amacleod@cygnus.com>
2211
2212         * config/tc-ppc.c (ppc_vbyte): Prototype and new function for 
2213         AIX .vbyte unaligned data support.
2214         (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
2215         (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable 
2216         sections.
2217
2218 1998-12-07  Nick Clifton  <nickc@cygnus.com>
2219
2220         * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
2221         input handling. 
2222
2223 Mon Dec  7 09:48:34 1998  Catherine Moore  <clm@cygnus.com>
2224
2225         * config/tc-arm.c (elf32_arm_force_relocation):  Check for
2226         BFD_RELOC_ARM_PCREL_BRANCH.
2227
2228 Sun Dec  6 12:46:36 1998  Ian Lance Taylor  <ian@cygnus.com>
2229
2230         * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
2231         checking the target type.
2232         (mips-dec-bsd*): Set endian to little.
2233         * configure: Rebuild.
2234
2235         COFF weak symbol support, based on patches from Mark Elbrecht
2236         <snowball3@usa.net>:
2237         * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
2238         * config/obj-coff.c (obj_coff_weak): New static function.
2239         (obj_coff_endef) [both versions]: Handle weak symbols.
2240         (coff_frob_symbol): Likewise.
2241         (yank_symbols): Likewise.
2242         (obj_pseudo_table): Add "weak".
2243
2244         * configure.in (m68k-*-gnu*): New target.  From Aymeric Vincent
2245         <aymeric.vincent@emi.u-bordeaux.fr>.
2246         * aclocal.m4: Rebuild with current tools.
2247         * configure: Rebuild.
2248
2249         * config/tc-alpha.c (emit_ldgp): Give an error message rather than
2250         an assertion failure for a case we can't handle when OBJ_ECOFF.
2251
2252         * expr.c (operator): And with 0xff to avoid problems with signed
2253         char.
2254
2255 1998-12-03  Nick Clifton  <nickc@cygnus.com>
2256
2257         * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
2258         BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
2259
2260 1998-12-02  Nick Clifton  <nickc@cygnus.com>
2261
2262         * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
2263         LDI:20 insn.
2264
2265 Thu Nov 26 11:23:48 1998  Dave Brolley  <brolley@cygnus.com>
2266
2267         * config/tc-fr30.c (md_pcrel_from_section): Restore previous calculation
2268         of pcrel point.
2269
2270 Tue Nov 24 17:21:52 1998  Nick Clifton  <nickc@cygnus.com>
2271
2272         * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
2273         pcrel point.
2274
2275 Tue Nov 24 14:54:38 1998  Nick Clifton  <nickc@cygnus.com>
2276
2277         * config/tc-d10v.c (md_assemble): Make static 'etype' have file
2278         scope.
2279         (d10v_cleanup): Only generate previous insn if a multiline insn is
2280         not pending.
2281
2282 Fri Nov 20 11:41:13 1998  Nick Clifton  <nickc@cygnus.com>
2283
2284         * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
2285         FR30_OPERAND_I32. 
2286
2287 Thu Nov 19 15:01:29 1998  Nick Clifton  <nickc@cygnus.com>
2288
2289         * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
2290         -marm6xxx command line switches.
2291
2292 1998-11-18  Doug Evans  <devans@casey.cygnus.com>
2293
2294         * Makefile.am (DEP): Use $(srcdir)/../mkdep.
2295         (itbl-ops.o): Delete duplicate dependencies.
2296         Rebuild dependencies.
2297         Add fr30 dependencies.
2298         * Makefile.in: Rebuild.
2299
2300 Tue Nov 17 13:42:42 1998  Nick Clifton  <nickc@cygnus.com>
2301
2302         * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
2303         opcode list.
2304         * listing.c: Ignore line terminator characters found inside
2305         strings. 
2306
2307 Thu Nov 12 19:21:24 1998  Dave Brolley  <brolley@cygnus.com>
2308
2309         * po/gas.pot: Regenerated.
2310
2311 Thu Nov 12 10:54:16 1998  Nick Clifton  <nickc@cygnus.com>
2312
2313         * config/tc-fr30.c (fr30_is_colon_insn): New name for
2314         fr30_is_label_start().  Also checks for delay slot insns.
2315
2316         * config/tc-fr30.c (fr30_is_label_start): New function: Handle
2317         FR30 instructions which contain a colon in the mnemonic.
2318
2319         * config/tc-fr30.h (TC_START_LABEL): Define this macro.
2320
2321 Wed Nov 11 09:58:21 1998  Nick Clifton  <nickc@cygnus.com>
2322
2323         * config/tc-fr30.c: Removed currently superflous code.
2324
2325 Tue Nov 10 13:13:05 1998  Nick Clifton  <nickc@cygnus.com>
2326
2327         * config/tc-fr30.h: New file.
2328         * config/tc-fr30.c: Tweaking so that it will compile.
2329
2330 Tue Nov 10 14:41:33 1998  Catherine Moore  <clm@cygnus.com>
2331
2332         * config/tc-d10v.h (obj_fix_adjustable):  Define.
2333         (TC_FORCE_RELOCATION):  Define.
2334         (d10v_force_relocation):  Declare.
2335         * config/tc-d10v.c (tc_gen_reloc):  Handle Vtable relocs.
2336         (md_apply_fix3):  Handle Vtable relocs.
2337         (d10v_fix_adjustable):  New.
2338         (d10v_force_relocation):  New.
2339
2340 Mon Nov  9 14:25:06 1998  Nick Clifton  <nickc@cygnus.com>
2341
2342         * config/tc-d30v.c: Change default behaviour to ignore potential
2343         conflicts between register name and symbol names.
2344
2345 Wed Nov  4 18:42:00 1998  Dave Brolley  <brolley@cygnus.com>
2346
2347         * configure.in: Add fr30-*-*.
2348         * config/tc-fr30.c: New file.
2349         * Makefile.in: Regenerated.
2350         * config.in: Regenerated.
2351         * configure: Regenerated.
2352         * doc/Makefile.in: Regenerated.
2353         * po/gas.pot: Regenerated.
2354
2355 Mon Nov  2 20:54:16 1998  Doug Evans  <devans@canuck.cygnus.com>
2356
2357         * config/tc-m32r.c (assemble_two_insns): Ensure both insns
2358         are 16 bit insns.
2359
2360 Mon Nov  2 20:10:18 1998  Martin von Loewis  <loewis@informatik.hu-berlin.de>
2361
2362         * app.c (do_scrub_begin): Set characters above 127 to be symbol
2363         characters.
2364         (do_scrub_chars): Add some casts to unsigned char to avoid
2365         unwanted sign extension.
2366         * read.c (lex_type): Set characters about 127 to be symbol
2367         characters.
2368         * config/tc-i386.c (md_begin): Set identifier_chars and
2369         operand_chars for values above 127.
2370
2371 Mon Nov  2 15:05:33 1998  Geoffrey Noer  <noer@cygnus.com>
2372
2373         * configure.in: detect cygwin* instead of cygwin32*
2374         * configure: regenerate
2375
2376 Tue Oct 27 13:18:40 1998  Nick Clifton  <nickc@cygnus.com>
2377
2378         * listing.c: Add support for producing a listing from piped
2379         input. 
2380
2381 Tue Oct 27 08:56:44 1998  Gavin Romig-Koch  <gavin@cygnus.com>
2382
2383         * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
2384         (append_insn): Account for the tx39's multiply behavior.
2385
2386 1998-10-26  Michael Meissner  <meissner@cygnus.com>
2387
2388         * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
2389         from assemble_parallel_insns.  Add support for '->' to indicate
2390         explicitly serializing the instructions.
2391         (md_assemble): Ditto.
2392
2393 Sat Oct 24 15:12:19 1998  Catherine Moore  <clm@cygnus.com>
2394
2395         * config/tc-sh.c (sh_fix_adjustable):  Adjust EXTERN and
2396         WEAK handling.
2397
2398 Thu Oct 22 12:41:33 1998  Catherine Moore  <clm@cygnus.com>
2399
2400         * cgen.c (gas_cgen_md_apply_fix3):  Revert last change.
2401
2402 Thu Oct 22 10:03:15 1998  Ron Unrau  <runrau@cygnus.com>
2403
2404         * config/tc-mips.c : support frame and regmask/fregmask when
2405           MIPS_STABS_ELF is specified.
2406
2407 Wed Oct 21 11;34:51 1998  Catherine Moore  <clm@cygnus.com>
2408
2409         * config/tc-sh.c (sh_fix_adjustable):  Only include if OBJ_ELF.
2410         (md_apply_fix):  Don't return 1 for VTABLE relocs.
2411         * config/tc-sh.h (obj_fix_adjustable):  Define only if OBJ_ELF.
2412
2413 Tue Oct 20 11:18:28 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2414
2415         * doc/c-i386.texi: Replace occurences of "opcode" with
2416         "instruction mnemonic", "instruction", or "mnemonic" when
2417         referring to the name of an instruction.  Use "opcode" when
2418         referring to the sequence of machine bytes.
2419
2420         * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
2421         (is_opcode_char): Rename to is_mnemonic_char.
2422         (md_assemble and i386_operand): Correct error messages from
2423         "opcode" to "instruction mnemonic"
2424         Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
2425         MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
2426         DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
2427         WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
2428         BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
2429         SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
2430         LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
2431
2432         * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
2433
2434         * config/tc-i386.c (i386_operand): Check for garbage after
2435         register name.
2436
2437 Tue Oct 20 10:49:42 1998  Ian Lance Taylor  <ian@cygnus.com>
2438
2439         * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
2440         for BFD_ASSEMBLER to only change value when COFF if TE_PE.
2441
2442 Mon Oct 19 20:20:42 1998  Catherine Moore  <clm@cygnus.com>
2443
2444         * config/tc-sh.h (obj_fix_adjustable):  Define.
2445         * config/tc-sh.c (sh_force_relocation):  Handle VT relocs.
2446         (md_apply_fix):  Likewise.
2447         (tc_gen_reloc):  Likewise.
2448         (sh_fix_adjustable):  New.
2449
2450 Mon Oct 19 12:35:43 1998  Doug Evans  <devans@seba.cygnus.com>
2451
2452         * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
2453         * cgen.h (gas_cgen_finish_insn): Update prototype.
2454         * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
2455         cgen_insn_t -> CGEN_INSN_INT.
2456         (make_parallel): Update handling of CGEN_INT_INSN_P.
2457         (assemble_parallel_insn): Ditto.
2458         (target_make_parallel): New function.
2459         (md_assemble): Use it.
2460
2461 Mon Oct 19 13:16:12 1998  Catherine Moore  <clm@cygnus.com>
2462
2463         * config/tc-m32r.c (m32r_force_relocation):  Fix typo.
2464
2465 Sun Oct 18 18:48:57 1998  Jeffrey A Law  (law@cygnus.com)
2466
2467         * config/tc-sh.c (md_assemble): Make sure the entire opcode is
2468         converted into lower case.
2469
2470 Fri Oct 16 13:36:34 CDT Catherine Moore  <clm@cygnus.com>
2471
2472         * cgen.c (gas_cgen_md_apply_fix3):  Handle VTABLE relocs.
2473         (gas_cgen_tc_gen_reloc):  Likewise.
2474         * config/tc-m32r.h (obj_fix_adjustable):  Define.
2475         * config/tc-m32r.c (m32r_fix_adjustable):  New.
2476         (m32r_force_relocation):  Handle VTABLE relocs.
2477
2478 Wed Oct 14 11:33:38 1998  Nick Clifton  <nickc@cygnus.com>
2479
2480         * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
2481
2482 Mon Oct 12 11:07:21 1998  Nick Clifton  <nickc@cygnus.com>
2483
2484         * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
2485         to lower case before parsing.
2486
2487         * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
2488         parallel insns modift buts in the PSW as a side effect.
2489
2490 Thu Oct  8 10:18:33 1998  Nick Clifton  <nickc@cygnus.com>
2491
2492         * config/tc-d30v.c (find_format): Test for missing flag and
2493         control registers.
2494         
2495         (md_apply_fix3): Fix error messages to avoid
2496         assumption about presence of a symbol.
2497
2498         (parallel_ok): Disallow parallel instructions that both modify the
2499         same flag register.
2500
2501         (find_format): Generate a warning if an odd numbered register is
2502         used as the first register in a mutli-register instruction.
2503
2504 Wed Oct  7 14:09:14 1998  Nick Clifton  <nickc@cygnus.com>
2505
2506         * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
2507         relocations are always associated with a symbol.
2508
2509 Tue Oct  6 09:31:15 1998  Catherine Moore  <clm@cygnus.com>
2510
2511         * tc-sparc.h (TC_FORCE_RELOCATION):  Define.
2512         (elf32_sparc_force_relocation):  Declare.
2513         * tc-sparc.c (md_apply_fix3):  Handle vtable relocs.
2514         (tc_gen_reloc):  Handle vtable relocs.
2515         (elf32_sparc_force_relocation):  New.
2516
2517 Mon Oct  5 09:25:32 1998  Catherine Moore  <clm@cygnsu.com>
2518
2519         * symbols.c (S_IS_FUNCTION):  New.
2520         * config/tc-v850.h (obj_fix_adjustable):  Define.
2521         (TC_FORCE_RELOCATION):  Define.
2522         (v850_force_relocation):  Declare.
2523         * config/tc-v850.c (tc_gen_reloc):  Use offset instead
2524         of fx_addnumber for VTABLE reloc addends.
2525         (md_apply_fix3):  Handle VTABLE relocs.
2526         (v850_fix_adjustable):  New.
2527         (v850_force_relocation):  New.
2528
2529 Mon Oct  5 00:48:52 1998  Jeffrey A Law  (law@cygnus.com)
2530
2531         * tc-hppa.c (fp_operand_format): Add some additional formats.
2532         (pa_ip): Do not automatically promote into pa2.0 mode.
2533         (pa_level): Handle ".level 2.0".
2534
2535 Sun Oct  4 20:57:43 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2536
2537         * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
2538         * config/tc-i386.h (template.extension_opcode): Change to
2539         unsigned int to allow full range of 8-bit opcode suffixes.
2540         (None): Redefine as 0xffff.
2541
2542         From Jeff B Epler <jepler@usgs.gov>
2543         * doc/c-i386.texi (i386-SIMD): New section.
2544
2545 Thu Oct  1 15:37:54 1998  Richard Henderson  <rth@cygnus.com>
2546
2547         * read.c (discard_rest_of_line): New function.
2548         * read.h: Declare it.
2549         * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
2550
2551 Thu Oct  1 10:33:53 1998  Nick Clifton  <nickc@cygnus.com>
2552
2553         * config/tc-d10v.c (find_symbol_matching_register): New function.
2554         (find_opcode): Cope with the case where a register name matches
2555         a symbol name.
2556
2557 Wed Sep 30 10:52:32 1998  Nick Clifton  <nickc@cygnus.com>
2558
2559         * config/tc-v850.c (md_pcrel_from): Rename to
2560         v850_pcrel_from_section.
2561         (v850_pcrel_from_section): Do not resolves symbols in other
2562         sections. 
2563
2564         * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
2565
2566 Mon Sep 28 11:01:20 1998  Nick Clifton  <nickc@cygnus.com>
2567
2568         * config/tc-d10v.c (find_opcode): Generate an error if a register
2569         is supplied for an operand that should not be a register.
2570
2571 Fri Sep 25 10:04:21 1998  Nick Clifton  <nickc@cygnus.com>
2572
2573         * config/tc-d30v.c (write_2_short): But do allow delayed branch
2574         instructions to have another instruction in the right bin.
2575
2576 Thu Sep 24 09:28:34 1998  Nick Clifton  <nickc@cygnus.com>
2577
2578         * config/tc-d30v.c (write_2_short): Do not allow instructions in
2579         the right container if the left container holds a branch
2580         instruction. 
2581
2582 Wed Sep 23 10:54:29 1998  Nick Clifton  <nickc@cygnus.com>
2583
2584         * config/tc-d30v.c (reg_name_search): Only warn if a name matches
2585         both a register name and symbol name.
2586         (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
2587
2588 Tue Sep 22 17:49:16 1998  Nick Clifton  <nickc@cygnus.com>
2589
2590         * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
2591         execution unit class.
2592
2593         (reg_name_search): If a name matches a register and a symbol,
2594         prefer the register.
2595         (find_format): Disallow flag registers when a general purpose
2596         register is required.
2597         If a number is required, but a register has been given, check to
2598         see if a symbol with the same name as the register exists, and if
2599         so, use that symbol.
2600
2601 Tue Sep 22 16:40:52 1998  Jim Wilson  <wilson@cygnus.com>
2602
2603         * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
2604
2605 Tue Sep 22 15:44:21 1998  Nick Clifton  <nickc@cygnus.com>
2606
2607         * config/tc-d30v.c (find_format): Do not accept flag registers as
2608         general purpose registers.
2609         (find_format): If an immediate value is expected at a given place
2610         in a format, but a register name has been provided instead, check
2611         to see if that register name matches the name of a predefined
2612         symbol and if it does, then use the symbol instead.
2613         (reg_name_search): If a register name matches a symbol name,
2614         prefer the register name to the symbol name.
2615
2616 Mon Sep 21 10:42:57 1998  Nick Clifton  <nickc@cygnus.com>
2617
2618         * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
2619         the previous insn to empty.
2620
2621 1998-09-20  Michael Meissner  <meissner@cygnus.com>
2622
2623         * config/tc-ppc.c (md_apply_fix3): Do not break string into two
2624         pieces, forcing the use of an ANSI compiler.
2625
2626 Sun Sep 20 00:58:12 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2627
2628         * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro.  Force vtable
2629         relocs.
2630         * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
2631
2632 Tue Sep 15 08:51:07 1998  Catherine Moore  <clm@cygnus.com>
2633  
2634         * config/obj-elf.c (obj_elf_vtable_inherit):  Handle arm
2635         assembler syntax.
2636         (obj_elf_vtable_entry):  Likewise.
2637         * config/tc-arm.h:  Define TC_FORCE_RELOCATION for OBJ_ELF.
2638         * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
2639         (tc_gen_reloc): Likewise.
2640         (arm_fix_adjustable): Likewise.
2641         (elf32_arm_force_relocation): New.
2642         (armelf_frob_symbol):  Remove coff-style symbol support.
2643
2644 Wed Sep  9 11:27:16 1998  Richard Henderson  <rth@cygnus.com>
2645
2646         * config/tc-i386.c (i386_operand): Fix typo in last patch.
2647
2648 Tue Sep  8 18:10:01 1998  Catherine Moore  <clm@cygnus.com>
2649  
2650         * config/tc-arm.c (arm_adjust_symtab):  Move #ifdef
2651         OBJ_COFF so that routine is defined for a.out format.
2652
2653 Tue Sep  8 15:56:19 1998  Richard Henderson  <rth@cygnus.com>
2654
2655         * config/tc-i386.c (i386_operand): Detect non-segment registers
2656         used as segment prefixes.
2657
2658 Sat Sep  5 19:00:38 1998  Ian Lance Taylor  <ian@cygnus.com>
2659
2660         * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
2661         optimize across FDE boundaries.
2662
2663         * config/obj-coff.c (obj_coff_section): Preserve any link once
2664         flags when setting the section flags.
2665
2666 Fri Sep  4 17:07:14 1998  Nick Clifton  <nickc@cygnus.com>
2667
2668         * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
2669         * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
2670
2671 Fri Sep  4 13:57:43 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
2672
2673         * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
2674         to the host width.
2675
2676 Wed Sep  2 11:31:14 1998  Richard Henderson  <rth@cygnus.com>
2677
2678         * frags.c (frag_grow): Include the size of the frag struct in the
2679         obstack chunk size.
2680
2681         * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
2682         if the new subseg comes before the old.
2683
2684 Tue Sep  1 15:01:33 1998  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
2685
2686         * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
2687         to handle edge8 and edge16.
2688
2689 Mon Aug 31 09:51:14 1998  Richard Henderson  <rth@cygnus.com>
2690
2691         * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
2692         before we clobber the symbol involved.
2693
2694 Mon Aug 31 10:58:06 1998  Catherine Moore  <clm@cygnus.com>
2695
2696         * config/tc-arm.c:  Remove OBJ_ELF definitions for 
2697         S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.  Only
2698         use arm_adjust_symtab for OBJ_COFF.
2699         (armelf_adjust_symtab):  New Routine.
2700         * config/tc-arm.h:  Define obj_adjust_symtab to
2701         armelf_adjust_symtab for OBJ_ELF.
2702         
2703 Sat Aug 29 22:18:51 1998  Richard Henderson  <rth@cygnus.com>
2704
2705         * configure.in: Make all i386-elf targets use bfd_gas.
2706         * config/tc-i386.c (tc_i386_force_relocation): New.
2707         (tc_i386_fix_adjustable): Don't fix vtable relocs.
2708         (md_apply_fix3): Likewise.
2709         (tc_gen_reloc): Handle them.
2710         * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
2711         tc_i386_force_relocation.
2712
2713 Mon Aug 24 13:40:21 1998  Nick Clifton  <nickc@cygnus.com>
2714
2715         * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
2716
2717 Fri Aug 21 18:43:48 1998  Nick Clifton  <nickc@cygnus.com>
2718
2719         * config/tc-d30v.c (md_assemble): Copy previous opcode over
2720         current opcode after writing the first insturction of a reverse
2721         sequential pair. 
2722         
2723 Fri Aug 21 07:30:35 1998  Doug Evans  <devans@canuck.cygnus.com>
2724
2725         * read.h (generate_lineno_debug): Add prototype.
2726         * read.c (generate_lineno_debug): Make non-static.
2727
2728 Thu Aug 20 23:17:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2729
2730         * config/tc-i386.c (md_assemble): Only warn for address/data size
2731         prefixes.
2732
2733 Thu Aug 20 14:45:08 1998  Nick Clifton  <nickc@cygnus.com>
2734
2735         * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
2736         against Thumb function names, as the linker needs this information.
2737
2738 1998-08-20  Vladimir N. Makarov  <vmakarov@cygnus.com>
2739
2740         * expr.c (operand): Check also that there is no advance in operand
2741         after atof_generic in order to decide "is it label 0f or floating
2742         point number?".
2743
2744 Wed Aug 19 09:30:16 1998  Nick Clifton  <nickc@cygnus.com>
2745
2746         * config/tc-m32r.c: Replace double dash prefix to M32R specific
2747         command line options with a single dash.
2748         * doc/c-m32r.texi: Replace double dash prefix with a single dash.
2749
2750 Tue Aug 18 11:59:43 1998  Catherine Moore  <clm@cygnus.com>
2751
2752        * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
2753        * tc-arm.c (arm_fix_adjustable): New routine.
2754
2755 1998-08-13  Vladimir N. Makarov  <vmakarov@cygnus.com>
2756
2757         * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
2758         s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
2759         demand_empty_rest_of_line before mri_comment_end.
2760         (equals): Check garbage after expression before
2761         mri_comment_end in MRI mode.
2762
2763 Thu Aug 13 15:08:42 1998  Ian Lance Taylor  <ian@cygnus.com>
2764
2765         * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
2766         small immediate constant to use the constant itself rather than
2767         always using 1.
2768
2769 Wed Aug 12 18:47:38 1998  Ian Lance Taylor  <ian@cygnus.com>
2770
2771         * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
2772         (pa_leave): Likewise.
2773
2774 Wed Aug 12 13:25:03 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2775
2776         * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
2777         prefixes.
2778         (i386_operand): Fix an error message.
2779
2780 Tue Aug 11 14:44:32 1998  Nick Clifton  <nickc@cygnus.com>
2781
2782         * doc/c-arm.texi (ARM Directives): Document .req directive.
2783
2784         * config/tc-arm.c (reg_required_here): Display erroneous string if
2785         the register name could not be decoded.
2786         Do not set inst.instruction if the sift is -1.
2787
2788 Mon Aug 10 15:39:56 1998  Richard Henderson  <rth@cygnus.com>
2789
2790         * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
2791         we do for EXTERN.
2792
2793 Mon Aug 10 15:06:18 1998  Nick Clifton  <nickc@cygnus.com>
2794
2795         * config/tc-d30v.c (d30v_align): Always perform alignment request,
2796         even if it is belived to be unnecessary.
2797
2798 Mon Aug 10 17:48:09 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2799
2800         config/tc-i386.c (i386_operand): Size immediate constants by
2801         suffix (erroneously removed as part of July 7 change).
2802
2803 Sun Aug  9 20:45:32 1998  Catherine Moore  <clm@cygnus.com>
2804
2805         * config/obj-elf.h:  Check for redefinition of obj_frob_symbol.
2806         * config/tc-arm.c:  Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
2807         (armelf_frob_symbol):  New Routine.
2808         * config/tc-arm.h:  Define obj_frob_symbol if OBJ_ELF.
2809
2810 Sat Aug  8 15:21:28 1998  Richard Henderson  <rth@cygnus.com>
2811
2812         * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
2813
2814 Wed Aug  5 15:54:14 1998  Nick Clifton  <nickc@cygnus.com>
2815
2816         * config/tc-arm.c (md_begin): Set BFD private flags depending upon
2817         command line switches passed to assembler.
2818
2819 Mon Aug  3 14:02:52 1998  Doug Evans  <devans@seba.cygnus.com>
2820
2821         * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
2822         (gas_cgen_opcode_desc): Declare.
2823         (gas_cgen_parse_operand): Declare.
2824         (*): Prepend gas_ to gas specific fns to denote them as such.
2825         All uses updated.
2826         * cgen.c (gas_cgen_opcode_desc): New global
2827         (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
2828         (queue_fixup): Renamed from cgen_queue_fixup.
2829         (*): Prepend gas_ to gas specific fns to denote them as such.
2830         All uses updated.
2831         (gas_cgen_md_apply_fix3): Update call to insert_operand.
2832         (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
2833         * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
2834         Open opcode table and initialize it.
2835         (make_parallel): Use gas_cgen_opcode_desc.
2836         (assemble_parallel_insn): Ditto.  Remove use of CGEN_SYM.
2837         (md_assemble): Ditto.
2838
2839 Sat Aug  1 19:27:30 1998  Richard Henderson  <rth@cygnus.com>
2840
2841         * as.h (debug_info_type): Add entries for unspecified and dwarf*.
2842         * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
2843         as_where ourselves.  Provide a stub for !ECOFF_DEBUGGING.
2844         * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
2845         Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
2846         * read.c (generate_lineno_debug): Tidy ECOFF bits.  Use
2847         DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
2848         * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
2849         (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
2850         (INIT_STAB_SECTION): Likewise.
2851         (OBJ_PROCESS_STAB): Likewise.
2852         
2853         * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
2854         (md_parse_option): Watch for them.
2855         (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
2856         (md_begin): Kill neverdef code.
2857         (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
2858         (s_alpha_prologue): Watch alpha_cur_ent_sym.
2859         (s_alpha_coff_wrapper): New.
2860         (md_pseudo_table): Trap all ECOFF pseudos.
2861         
2862 Fri Jul 31 16:45:54 1998  Ron Unrau <runrau@cygnus.com>
2863
2864         Start of changes to remove mdebug section from mips*-elf
2865         Based on MIPS_STAB_ELF definition
2866         * acconfig.h: undef if not configured
2867         * config.in: undef if not configured
2868         * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
2869         * config/tc-mips.c (s_ent): set BSF_FUNCTION
2870         * stabs.c (s_stab_generic): flush frag
2871
2872 Fri Jul 31 16:14:45 1998  Catherine Moore  <clm@cygnus.com>
2873
2874         * configure.in: (arm-*-elf):  Handle.
2875         (thumb-*-elf): Handle.
2876         * configure:  Regenerate.
2877         * read.c (stringer): Fix typo in comment.
2878         * write.c (fixup_segment): Don't add symbol value to addend if
2879         TC_ARM and OBJ_ELF.
2880         * config/tc-arm.c (md_section_align):  Don't align dwarf debug
2881         sections.
2882         (tc_gen_reloc):  Always set the reloc addend to fixp->fx_offset
2883         for OBJ_ELF.
2884
2885 Thu Jul 30 21:38:43 1998  Frank Ch. Eigler  <fche@cygnus.com>
2886
2887         * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
2888         (write_2_short): Emit warning if new flag is set.
2889         (do_assemble): Set flags if left instruction is one of special
2890         "right-instruction-killer" type.
2891
2892 Tue Jun 28 18:12:28 1998  Stan Cox  <scox@cygnus.com>
2893         
2894         * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
2895         Always output words in debug_info section as big endian.
2896         (sparc_target_format): Choose correct bfd target.
2897         (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
2898         
2899 Tue Jul 28 11:01:21 1998  Jeffrey A Law  (law@cygnus.com)
2900
2901         * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
2902         to work with internationalization code.  Issue an error when two
2903         operands match that are not allowed to match.
2904
2905 Mon Jul 27 16:25:58 1998  Doug Evans  <devans@canuck.cygnus.com>
2906
2907         * configure.in (install_tooldir): Allow target to specify whether
2908         it wants to be installed in $(tooldir)/bin.
2909         * configure: Regenerate.
2910         * Makefile.am (install-exec-local): Set install-exec-tooldir
2911         dependency via configure.
2912         * Makefile.in: Regenerate.
2913
2914 Fri Jul 24 19:58:59 1998  Doug Evans  <devans@canuck.cygnus.com>
2915
2916         * Makefile.am (install-exec-local): Split into two ...
2917         (install-exec-bindir,install-exec-tooldir): New rules.
2918         * Makefile.in: Regenerate.
2919
2920 Fri Jul 24 16:31:49 1998  Ian Lance Taylor  <ian@cygnus.com>
2921
2922         * Makefile.am (install-exec-local): Don't remove the file before
2923         checking whether $(bindir) == $(tooldir)/bin.  From Maciej
2924         W. Rozycki <macro@ds2.pg.gda.pl>.
2925         * Makefile.in: Rebuild.
2926
2927 Fri Jul 24 09:13:46 1998  Doug Evans  <devans@canuck.cygnus.com>
2928
2929         * cgen.c: Include libiberty.h.
2930         (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
2931         (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
2932         * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
2933         (md_cgen_lookup_reloc)): Declare.
2934         (md_cgen_record_fixup_exp): Declare.
2935         * config/tc-m32r.h (md_pcrel_from_section): Declare.
2936         (m32r_relax_frag): Declare.
2937         (cgen_md_apply_fix3): Decls moved to cgen.h.
2938         (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
2939         (m32r_cgen_record_fixup_exp): Delete decl.
2940         * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
2941         (assemble_nop): Delete.
2942         (expand_debug_syms): Delete unused `exp'.
2943         (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
2944         Add default case for -Wall.
2945         (m32r_cgen_record_fixup_exp): Add default case for -Wall.
2946         (md_atof): Delete unused wordP.
2947
2948 Thu Jul 23 13:19:50 1998  Jeffrey A Law  (law@cygnus.com)
2949
2950         * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
2951         value.
2952
2953 Wed Jul 22 14:36:56 1998  Ian Lance Taylor  <ian@cygnus.com>
2954
2955         * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
2956         .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
2957         .print, .purgem, and .struct.  Remove documentation for
2958         .app-file.
2959
2960 Tue Jul 21 16:50:52 1998  Doug Evans  <devans@seba.cygnus.com>
2961
2962         * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
2963         Update call to insert_operand.
2964
2965 Fri Jul 17 11:42:20 1998  Nick Clifton  <nickc@cygnus.com>
2966
2967         * config/tc-m32r.c (ms_show_usage): Formatting changes.
2968
2969 Wed Jul 15 15:38:28 1998  Ian Lance Taylor  <ian@cygnus.com>
2970
2971         * config/tc-i386.c (md_assemble): Don't get confused by trailing
2972         whitespace after a prefix operator.
2973
2974 Tue Jul 14 15:32:56 1998  Richard Henderson  <rth@cygnus.com>
2975
2976         * configure.in (i386-*-beos{pe,elf,}*): Recognize.
2977
2978 Tue Jul 14 12:33:44 1998  Chris Torek  <torek@bsdi.com>
2979
2980         * config/tc-sparc.c (log2): New static function.
2981         (s_reserve): Use log2 to convert alignment before calling
2982         record_alignment.
2983         (s_common): Use log2 to convert alignment before calling
2984         record_alignment and frag_align.
2985         (sparc_cons_align): Use log2.
2986
2987 Tue Jul 14 11:58:40 1998  Ian Lance Taylor  <ian@cygnus.com>
2988
2989         * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
2990         (s_common): Likewise.
2991
2992         * config/tc-sparc.c (sparc_handle_align): Reindent a bit.  Correct
2993         initialization of waddr.
2994         (sparc_elf_final_processing): Add default case to switch.
2995
2996 Tue Jul 14 11:00:16 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
2997
2998         * doc/c-i386.texi: Fix a typo.  Use the term 80-bit real rather
2999         than temporary real.
3000
3001 Mon Jul 13 13:55:42 1998  Ian Lance Taylor  <ian@cygnus.com>
3002
3003         * write.c (subsegs_finish): Don't align the segments if there were
3004         any errors.
3005
3006         * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
3007         copying aux information.
3008
3009         * expr.c (make_expr_symbol): Catch attempts to turn an O_big
3010         expression into a symbol.
3011
3012 Mon Jul 13 13:29:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3013
3014         * config/tc-i386.c (mode_from_disp_size): Change arg and return
3015         type to unsigned int.
3016         (md_assemble): Change type used to store offsets from unsigned
3017         long to long.
3018         (i386_operand): Switch error check to only call RESTORE_END_STRING
3019         once after parse_register.
3020
3021 Fri Jul 10 16:00:04 1998  Nick Clifton  <nickc@cygnus.com>
3022
3023         * config/tc-v850.c (md_show_usage): Changed format to match that
3024         of gcc, ld, etc.
3025
3026         * as.c (show_usage): Changed format to match that of gcc, ld, etc.
3027
3028 Thu Jul  9 12:09:57 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3029
3030         * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
3031         relocs.
3032         (md_apply_fix_2): Force the symbol of the vtable reloc to be
3033         weak.
3034
3035 Thu Jul  9 11:31:54 1998  Ian Lance Taylor  <ian@cygnus.com>
3036
3037         * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
3038         * doc/Makefile.in: Rebuild.
3039
3040 Wed Jul  8 12:18:56 1998  Jeffrey A Law  (law@cygnus.com)
3041
3042         * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
3043         for %lo expressions.
3044         (mips_ip, case 'u'): Move range check after code to mask
3045         off bits in %hi/%lo expressions.  Mask off high bits for
3046         %lo expressions.
3047
3048 Tue Jul  7 17:57:38 1998  Ian Lance Taylor  <ian@cygnus.com>
3049
3050         * doc/Makefile.am (gasver.texi): New target.
3051         (as.info, as.dvi): Depends upon gasver.texi.
3052         * doc/as.texinfo: Include gasver.texi.  Mention version number on
3053         title page and in top node.
3054         * doc/Makefile.in: Rebuild.
3055
3056 Tue Jul  7 11:42:16 1998  Richard Henderson  <rth@cygnus.com>
3057
3058         * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
3059         but not including the line containing the edict.
3060         * listing.h (LISTING_EOF): New.
3061         * input-scrub.c (input_scrub_next_buffer): Call it.
3062
3063 Tue Jul  7 13:00:37 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3064
3065         * config/tc-i386.c (i386_operand): Don't set the size of an
3066         immediate address based solely on the suffix and the mode.
3067
3068         * config/tc-i386.c (md_assemble): Add assertion to make sure
3069         overlap2 does not set Imm.
3070
3071         * config/tc-i386.c (space_chars): Remove. The scrubber converts
3072         sequences of whitespace to a single space.
3073         (is_space_chars): Just compare with space.
3074         (md_begin): Don't initialize space_chars.
3075         (md_assemble): Just skip a single whitespace character.
3076         (i386_operand): Rewrite base-index parsing to use new
3077         parse_register, and to skip white space.  Skip white space in a
3078         number of other places too.  Don't give error message if
3079         parse_register fails.
3080         (parse_register): Change reg_string parameter to be non-const.
3081         Add end_op parameter.  Skip white space after the `%', and return
3082         end of register string.  Give error message here rather than
3083         caller.
3084
3085 Fri Jul  3 15:34:34 1998  Ian Lance Taylor  <ian@cygnus.com>
3086
3087         Based on patch from Matt Semersky <matts@scd.hp.com>:
3088         * expr.c (op_encoding): Make const.
3089         (expr_set_precedence): New function.
3090         (expr_begin): Don't set operator rankings, just call
3091         expr_set_precedence.
3092         * expr.h (expr_set_precedence): Declare.
3093         * read.c (s_mri): Call expr_set_precedence.
3094
3095 Thu Jul  2 16:24:58 1998  Ian Lance Taylor  <ian@cygnus.com>
3096
3097         * doc/as.texinfo (Statements): Remove paragraph discussing
3098         continuing lines with a backslash.  This hasn't worked for years,
3099         if it ever did.
3100
3101 Thu Jul  2 14:06:22 1998  Klaus Kaempf  <kkaempf@rmi.de>
3102
3103         * obj-vms.c: Add C++ support with ctors/dtors sections.  Add weak
3104         symbol definitions.
3105         (Ctors_Symbols, Dtors_Symbols): New symbol chains.
3106         (ps_CTORS, ps_DTORS): New section types.
3107         (vms_fixup_xtors_section): New function
3108         (Ctors_Psect, Dtors_Psect): Define.
3109         (IS_GXX_XTOR): Define
3110         (global_symbol_directory): Change check of gxx_bug_fixed to 0.
3111         Filter static constructors/destructors and add to
3112         Ctors_Symbols/Dtors_Symbols chain.
3113         (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
3114         appropriate section.
3115
3116         * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
3117         * makefile.vms: Merge vax/vms support.
3118
3119 Wed Jul  1 20:06:20 1998  Richard Henderson  <rth@cygnus.com>
3120
3121         * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
3122         (elf_pseudo_table): Add them.
3123         * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
3124         (md_apply_fix): Accept them.
3125         (mips_fix_adjustable): Don't adjust them.
3126         (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
3127         * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
3128         * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
3129         (tc_fix_adjustable): Don't adjust them.
3130
3131 Wed Jul  1 16:35:32 1998  Doug Evans  <devans@seba.cygnus.com>
3132
3133         * Makefile.am (CGEN_CPU_PREFIX): New variable.
3134         (cgen.o): Use it.
3135         * Makefile.in: Regenerate.
3136         * configure.in: AC_SUBST cgen_cpu_prefix.
3137         * configure: Regenerate.
3138
3139 Wed Jul  1 21:38:56 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
3140
3141         * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
3142         Changed all users of COND12_DELAY.
3143
3144 Fri Jun 26 11:21:11 1998  Jeffrey A Law  (law@cygnus.com)
3145
3146         * config/tc-mn10300.c (set_arch_mach): New function.
3147         (md_pseudo_table): Add pseudo-ops to set the current machine type.
3148         (md_begin): Default to mn10300 mode.
3149         (md_assemble): Only accept instructions for the core mn10300
3150         chip and the active machine type.
3151
3152 Wed Jun 24 19:06:04 1998  Ian Lance Taylor  <ian@cygnus.com>
3153
3154         * subsegs.h (segment_info_type): Give the struct a name.
3155         * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
3156         * config/tc-h8500.h (tc_reloc_mangle): Declare.
3157         * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
3158         * config/tc-w65.h (tc_reloc_mangle): Declare.
3159         * config/tc-z8k.h (tc_reloc_mangle): Declare.
3160
3161 Wed Jun 24 13:45:00 1998  Catherine Moore  <clm@cygnus.com>
3162
3163         * config/tc-v850.c (v850_comm):  Restore old section
3164         after common processing.
3165
3166 Wed Jun 24 11:50:54 1998  Klaus Kaempf  <kkaempf@progis.de>
3167
3168         * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
3169
3170 Tue Jun 23 17:47:31 1998  Jim Wilson  <wilson@cygnus.com>
3171
3172         * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
3173         char with code that explicitly sign-extends.
3174
3175 Tue Jun 23 13:54:57 1998  Nick Clifton  <nickc@cygnus.com>
3176         
3177         * config/tc-v850.c (md_begin): Restore text section as the current
3178         section after creating call table sections.
3179         * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
3180         code. 
3181
3182         * config/obj-coff.c (c_symbol_merge): Replace complex expresion
3183         with call to macro SYM_AUXINFO.
3184
3185 Tue Jun 23 15:09:27 1998  Mike Stump  <mrs@wrs.com>
3186
3187         * Makefile.am (install-exec-local): Don't let EXEEXT interfere
3188         with the program transform name.
3189         * Makefile.in: Rebuild.
3190
3191 Mon Jun 22 19:52:42 1998  Ian Lance Taylor  <ian@cygnus.com>
3192
3193         * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
3194         information.
3195
3196 Mon Jun 22 15:18:58 1998  Ian Lance Taylor  <ian@cygnus.com>
3197
3198         * config/tc-i386.c (i386_operand): Be prepared for a space between
3199         the open parenthesis and the start of the register operand,
3200         because of the June 16 change.
3201
3202 Sun Jun 21 21:27:03 1998  Ian Lance Taylor  <ian@cygnus.com>
3203
3204         * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
3205         BFD_ASSEMBLER.
3206
3207 Sun Jun 21 12:26:36 1998  Nick Clifton  <nickc@cygnus.com>
3208
3209         * config/tc-d30v.c (d30v_align): Always perform alignment request,
3210         even if it is belived to be unnecessary.
3211
3212 Fri Jun 19 13:57:06 1998  Ian Lance Taylor  <ian@cygnus.com>
3213
3214         * write.c (adjust_reloc_syms): Never adjust relocs against weak
3215         symbols.
3216         * config/tc-mips.c (md_apply_fix): Adjust accordingly.
3217
3218 Fri Jun 19 09:50:17 1998  Jeffrey A Law  (law@cygnus.com)
3219
3220         * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
3221         shift amount for a repeated operand.  The shift amount for the
3222         repeated copy comes from the size of the operand.
3223
3224 Fri Jun 19 00:44:19 1998  Jeffrey A Law  (law@cygnus.com)
3225
3226         * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
3227
3228 Wed Jun 17 13:07:05 1998  Ian Lance Taylor  <ian@cygnus.com>
3229
3230         * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
3231
3232 Tue Jun 16 13:06:21 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3233
3234         * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
3235         characters in it as LEX_IS_SYMBOL_COMPONENT.
3236         * config/tc-i386.h (tc_symbol_chars): Define.
3237         (extra_symbol_chars): Declare.
3238         * config/tc-i386.c (extra_symbol_chars): Define.
3239         (comment_chars): Don't use '/' as comment start if TE_LINUX.
3240         (line_comment_chars): Set to '/' if TE_LINUX.
3241         * doc/c-i386.texi (i386-prefixes): Update.
3242         * doc/internals.texi (CPU backend): Document tc_symbol_chars.
3243
3244 Fri Jun 12 13:36:54 1998  Tom Tromey  <tromey@cygnus.com>
3245
3246         * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
3247         ($(PACKAGE).pot): Unconditionally depend on POTFILES.
3248
3249 1998-06-12  Vladimir N. Makarov  <vmakarov@cygnus.com>
3250
3251         * config/tc-d10v.c (md_apply_fix3): Checking displacement
3252         constraint in instructions REP & REPI.
3253
3254 Thu Jun 11 08:56:46 1998  Nick Clifton  <nickc@cygnus.com>
3255
3256         * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
3257         BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.  
3258
3259         (check_range): If the operand is shifted, then shift the number
3260         before checking its range.
3261
3262         * write.c (adjust_reloc_syms): Add more checks for NULL pointers. 
3263
3264         * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
3265         common sections.
3266
3267 Wed Jun 10 17:26:35 1998  Nick Clifton  <nickc@cygnus.com>
3268
3269         * config/tc-v850.c (v850_comm): Create special sections as needed.
3270
3271 1998-06-10  Vladimir N. Makarov  <vmakarov@cygnus.com>
3272
3273         * config/tc-d10v.c (write_2_short): Addition of swapping
3274         instructions for sequential and reverse sequential order when
3275         given order is not possible.
3276
3277 Tue Jun  9 13:52:53 1998  Ian Lance Taylor  <ian@cygnus.com>
3278
3279         * Makefile.am: Rebuild dependencies.
3280         (DEP_INCLUDES): Fix reference to intl build directory.
3281         * Makefile.in: Rebuild.
3282
3283 Tue Jun  9 12:20:05 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3284
3285         * doc/c-i386.texi: Update 16 bit documentation.
3286
3287         * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
3288         IgnoreDataSize to IgnoreSize as they are used for address size as
3289         well as data size.
3290         * config/tc-i386.c: Likewise.  Add code to reject addr32/data32 in
3291         32-bit mode, similarly addr16/data16 and variants.
3292
3293 Mon Jun  8 18:32:01 1998  Nick Clifton  <nickc@cygnus.com>
3294
3295         * config/tc-d30v.c (md_assemble): Fix handling of reverse
3296         sequential word multiply instructions.
3297         
3298         (do_assemble): Add extra command line argument, to allow mul32
3299         attribute to be preserved across parallel insns.
3300         (md_assemble): Insert NOPs between explicitly parallel insns which
3301         contain an 32 bit multiply and a 16 multiply.
3302
3303 Mon Jun  8 12:20:30 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3304
3305         * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
3306         likewise for REPE.
3307
3308         * config/tc-i386.c (reloc): Add braces.
3309
3310         * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
3311         consistent with Intel naming.
3312         * config/tc-i386.h (base_index_byte): Rename to sib_byte.  Don't
3313         use bitfields in sib_byte.
3314         (modrm_byte): Don't use bitfields here either.
3315
3316         * config/tc-i386.c (current_templates): Add const.
3317         (parse_register): Add const to return, param, and char *s.
3318         (i386_operand): Add const to reg_entry *r.
3319         * config/tc-i386.h (templates): Add const to start, end.
3320
3321         Inspired by code for 16 bit gas support from Martynas Kunigelis
3322         <martynas@nm3.ktu.lt>:
3323         * config/tc-i386.c (md_assemble): Add full support for 16 bit
3324         modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
3325         (uses_mem_addrmode): Remove.
3326         (md_estimate_size_before_relax): Add support here too.
3327         (md_relax_table): Rewrite interface to md_relax for 16 bit
3328         support.
3329         (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
3330         (opcode_suffix_to_type): Remove.
3331         (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
3332         (SIZE_FROM_RELAX_STATE): Modify to suit above.
3333         (md_convert_frag): Likewise.
3334         (i386_operand): Add support for 16 bit base/index regs,
3335         immediates, and displacements.  Remove some unnecessary casts, and
3336         localise end_of_operand_string, displacement_string_start,
3337         displacement_string_end variables.  Add GCC_ASM_O_HACK.
3338         * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
3339
3340         * config/tc-i386.c (prefix_hash): Remove.
3341         (md_begin): Rewrite without obstacks.  Remove prefix hash table
3342         handling.  Rewrite lexical table handling.
3343         (i386_print_statistics): Don't print prefix statistics.
3344         (md_assemble): Rewrite instruction parser so that line is not
3345         converted to lower case.  Don't do a hash_find for prefixes,
3346         instead recognise them via opcode modifier.
3347         (expecting_operand, paren_not_balanced): Localise variables.
3348         * config/tc-i386.h (IsPrefix): Define.
3349         (prefix_entry): Remove.
3350
3351         * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
3352         * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
3353         '\\' in case where comment_chars contains '/'.
3354
3355         * config/tc-i386.c (MATCH): Ensure given operand and template
3356         match for JumpAbsolute.  Makes e.g. `ljmp table(%ebx)' invalid;
3357         you must write `ljmp *table(%ebx)'.
3358
3359         From H.J. Lu <hjl@gnu.org>:
3360         * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
3361         as 0 ifndef BFD_ASSEMBLER.
3362         (md_assemble): Allow immediate operands without suffix or
3363         other reg operand to default in size to the current code size.
3364
3365 Mon Jun  8 09:45:00 1998  Catherine Moore  <clm@cygnus.com>
3366  
3367         * config/tc-v850.c (md_begin):  Restore creation of
3368         .call_table_text and .call_table_data sections.
3369
3370 Sat Jun  6 00:02:41 1998  Nick Clifton  <nickc@cygnus.com>
3371
3372         * config/tc-d30v.c (md_assemble): Set execution type to unknown
3373         after emitting a word of noops.
3374
3375 Fri Jun  5 23:27:04 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3376
3377         * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
3378         (i386_operand): Simplify checks for valid base/index combinations.
3379         Disallow `in 4(%dx),%al'.
3380
3381         * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
3382         index_reg const.
3383         (add_prefix): Change parameter from char to int.
3384
3385         * config/tc-i386.h (Ugh): Define opcode modifier.
3386         * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
3387
3388         * config/tc-i386.c (md_assemble): Rewrite MATCH and
3389         CONSISTENT_REGISTER_MATCH macros to check register types more
3390         thoroughly.  Check for illegal suffix/operand combinations
3391         when matching insns with operands.  Handle new `s' suffix, and
3392         associated FloatMF opcode modifier for float insns with memory
3393         operands.
3394         * config/tc-i386.h (FloatMF): Define new opcode modifier.
3395         (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
3396         (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
3397         * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
3398         DATA_PREFIX_OPCODE throughout.
3399
3400         * config/tc-i386.c (REGISTER_WARNINGS): Define.
3401         (md_assemble): Rewrite suffix/register operand checking code to be
3402         more thorough.  Remove Abs8,16,32.  Change occurrences of Mem to
3403         AnyMem, the better to grep.
3404         (pi): Remove Abs.
3405         (i386_operand): Don't set Mem bits in i.types[this_operand] when
3406         given a memory operand.  Don't set Abs bits either.
3407         (type_names): Remove Mem*, Abs*.
3408         * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
3409         define opcode_modifiers as these cases are handled by Disp8,
3410         Disp16, Disp32 and suffix checks.
3411         (COMES_IN_BOTH_DIRECTIONS): Remove.
3412         (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
3413
3414         * config/tc-i386.c (md_assemble): Don't emit operand size prefix
3415         if IgnoreDataSize modifier given.  Remove ShortformW modifier
3416         test.  Add test for ShortForm in W base_opcode modification.
3417         Merge Seg2ShortForm and Seg3ShortForm code.
3418         * config/tc-i386.h (ShortFormW): Remove.
3419         (IgnoreDataSize): Define.
3420
3421 Fri Jun  5 10:50:53 1998  Nick Clifton  <nickc@cygnus.com>
3422
3423         * config/tc-d30v.c (md_assemble): Store previous segment state
3424         with previous instruction.
3425
3426 Wed Jun  3 18:21:56 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3427
3428         * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
3429         (ebp, esp): Remove static variables.
3430         (MATCH): Remove test for InOutPortReg.
3431         (i386_operand): Properly handle InOutPortReg here instead.
3432         Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
3433         (md_assemble): Simplify and correct modrm and sib generation.
3434         (i386_operand): Add warning for scale without index.
3435         Rewrite checks for valid base/index combinations.
3436
3437         * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
3438         macros and enclose in do while(0).
3439         (RESTORE_END_STRING): Likewise.
3440         (md_assemble): Add one to printed operand number so we start
3441         from 1 not 0.  Add some more gettext invocations.
3442         (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
3443         number here too.
3444
3445         * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
3446         DATA_PREFIX, SEG_PREFIX): Define.
3447         * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
3448         (check_prefix): Remove function.
3449         (add_prefix): New function.  Add prefix to i.prefix as well as
3450         doing checks.
3451         (md_assemble): Changes for add_prefix.  Remove hack for wait
3452         prefix, instead always output prefixes in fixed order.  Test
3453         for jcxz/loop when selecting between word & dword operations,
3454         and add address size prefix rather than operand size prefix.
3455         Remove operand -> address size hack when emitting jcxz/loop.
3456         (i386_operand): Remove O_Absent check as it's done in expr.
3457
3458 Wed Jun  3 15:09:10 1998  Ian Lance Taylor  <ian@cygnus.com>
3459
3460         * configure.in: Recognize m5200 as a cpu_type of m68k.
3461         * aclocal.m4: Rebuild with current libtool.
3462         * configure: Rebuild.
3463
3464 Wed Jun  3 14:11:59 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3465
3466         * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
3467         to relaxable_symbol to prevent references to external symbol from
3468         being relaxed.
3469
3470 Wed Jun  3 14:10:36 1998  Ian Lance Taylor  <ian@cygnus.com>
3471
3472         * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
3473         symbols are relaxable.
3474
3475 Wed Jun  3 09:16:00 1998  Catherine Moore  <clm@cygnus.com>
3476  
3477         * config/tc-v850.c (md_begin):  Don't create special
3478         sections by default.
3479  
3480 Tue Jun  2 14:52:56 1998  Jeffrey A Law  (law@cygnus.com)
3481
3482         * config/tc-mips.c (macro): For div and udiv, close the
3483         reorder block as soon as possible.
3484
3485 Tue Jun  2 15:36:13 1998  Ian Lance Taylor  <ian@cygnus.com>
3486
3487         From Matt Semersky <matts@scd.hp.com>:
3488         * macro.c (macro_mri_mode): New function.
3489         * macro.h (macro_mri_mode): Declare.
3490         * read.c (s_mri): Call macro_mri_mode when switching in and out of
3491         MRI mode.
3492
3493 Tue Jun  2 13:32:22 1998  Klaus Kaempf  <kkaempf@progis.de>
3494
3495         * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
3496         OBJ_EVAX case.
3497
3498         * config/tc-alpha.c (s_alpha_comm): Defer restoring character
3499         until after xstrdup in OBJ_EVAX case.
3500
3501 Tue Jun  2 13:11:13 1998  Pat Rankin  <rankin@eql.caltech.edu>
3502
3503         * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
3504         offset calculation.  Also, use VAX_BRW from vax-inst.h instead
3505         of hardcoded magic number.
3506         (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
3507
3508 Tue Jun  2 09:25:34 1998  Doug Evans  <devans@canuck.cygnus.com>
3509
3510         * read.c (do_s_func): New function.
3511         (s_func): Call it.
3512         * read.h (do_s_func): Add prototype.
3513
3514 Mon Jun  1 12:47:30 1998  Doug Evans  <devans@canuck.cygnus.com>
3515
3516         * config/tc-m32r.c (m32r_do_align): Only fill code sections with
3517         nops if fill pattern not specified.
3518
3519 Mon Jun  1 14:08:35 1998  Ian Lance Taylor  <ian@cygnus.com>
3520
3521         From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
3522         * config/te-go32.h (TE_GO32): Define.
3523         * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
3524
3525 Sun May 31 15:43:06 1998  Doug Evans  <devans@canuck.cygnus.com>
3526
3527         Implement .func/.endfunc pseudo-ops.
3528         * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
3529         (s_func): Declare.
3530         * read.c (potable): Add .func,.endfunc.
3531         (s_func): New function.
3532         * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
3533         functions.
3534         (in_doc_func_p,current_function_label): New static globals.
3535         (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
3536
3537 Fri May 29 18:13:12 1998  Ian Lance Taylor  <ian@cygnus.com>
3538
3539         * config/tc-a29k.h (WORKING_DOT_WORD): Define.
3540         * config/tc-alpha.h (WORKING_DOT_WORD): Define.
3541         * config/tc-arm.h (WORKING_DOT_WORD): Define.
3542         * config/tc-h8300.h (WORKING_DOT_WORD): Define.
3543         * config/tc-h8500.h (WORKING_DOT_WORD): Define.
3544         * config/tc-hppa.h (WORKING_DOT_WORD): Define.
3545         * config/tc-i860.h (WORKING_DOT_WORD): Define.
3546         * config/tc-i960.h (WORKING_DOT_WORD): Define.
3547         * config/tc-tic30.h (WORKING_DOT_WORD): Define.
3548         * config/tc-w65.h (WORKING_DOT_WORD): Define.
3549         * config/tc-z8k.h (WORKING_DOT_WORD): Define.
3550         * config/tc-a29k.c: Don't define md_short_jump_size,
3551         md_long_jump_size, md_create_short_jump or md_create_long_jump.
3552         * config/tc-alpha.c: Likewise.
3553         * config/tc-alpha.h: Likewise.
3554         * config/tc-arm.c: Likewise.
3555         * config/tc-h8300.c: Likewise.
3556         * config/tc-h8500.c: Likewise.
3557         * config/tc-hppa.c: Likewise.
3558         * config/tc-i860.c: Likewise.
3559         * config/tc-i960.c: Likewise.
3560         * config/tc-ppc.c: Likewise.
3561         * config/tc-sh.c: Likewise.
3562         * config/tc-sparc.h: Likewise.
3563         * config/tc-tic30.c: Likewise.
3564         * config/tc-w65.c: Likewise.
3565         * config/tc-z8k.c: Likewise.
3566
3567 Fri May 29 16:03:26 1998  Pat Rankin  <rankin@eql.caltech.edu>
3568
3569         * config/tc-vax.c (_): Delete this macro used for placeholder
3570         values in vax_operand_width_size; it conflicts with the _() macro
3571         used for internationalization.
3572
3573 Fri May 29 13:46:07 1998  Ian Lance Taylor  <ian@cygnus.com>
3574
3575         * symbols.c (symbol_find_base): Fix case insensitive symbol name
3576         code.  From Chris Moller <moller@bops.com>.
3577
3578         Based on patch from Klaus Kaempf <kkaempf@progis.de>:
3579         * struc-symbol.h (struct broken_word): Add seg and subseg fields.
3580         * read.c (emit_expr): Initialize seg and subseg fields of a new
3581         broken word.
3582         * write.c (write_object_file): Switch to the appropriate segment
3583         and subsegment when processing a broken word.
3584
3585         * config/tc-m68k.c (mri_assemble): New static function.
3586         (build_mri_control_operand): Call mri_assemble rather than
3587         md_assemble.
3588         (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
3589         (s_mri_endf, s_mri_endw): Likewise.
3590
3591 Wed May 27 11:16:25 1998  Ian Lance Taylor  <ian@cygnus.com>
3592
3593         * read.c (s_org): Call md_flush_pending_output if it is defined.
3594
3595         * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
3596
3597 Tue May 26 19:27:52 1998  Stan Cox  <scox@equinox.cygnus.com>
3598
3599         * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
3600         (md_parse_option): Add for same.
3601         (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
3602         (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
3603         (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
3604
3605         * config/tc-sparc.h (cons_fix_new_sparc): Added.
3606         
3607 Thu May 21 15:02:41 1998  Nick Clifton  <nickc@cygnus.com>
3608
3609         * config/tc-arm.c (find_real_start): Relax definition of local
3610         labels.
3611
3612 Tue May 19 16:59:44 1998  Nick Clifton  <nickc@cygnus.com>
3613
3614         * config/tc-d30v.c (d30v_align): Apply address adjustment to all
3615         symbols at the given address, not just the last one specified.
3616
3617 Tue May 19 08:25:19 1998  Catherine Moore <clm@cygnus.com>
3618
3619         * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
3620         or number_to_chars_littleendian to write data.
3621
3622 Mon May 18 17:09:30 1998  Nick Clifton  <nickc@cygnus.com>
3623
3624         * config/tc-v850.c (md_assemble): Remove artificially created
3625         register name symbols.
3626
3627 Mon May 18 13:47:06 1998  Doug Evans  <devans@canuck.cygnus.com>
3628
3629         * write.c (fixup_segment): Change "segment" to "section" in
3630         error message.
3631
3632 Mon May 18 16:55:40 1998  Michael Meissner  <meissner@cygnus.com>
3633
3634         * write.c (fixup_segment): Change sym1-sym2 message again.
3635
3636 Mon May 18 09:31:43 1998  Michael Meissner  <meissner@cygnus.com>
3637
3638         * write.c (fixup_segment): Improve error message for sym1-sym2
3639         errors when sym1 is in a different segment from sym2.
3640
3641 Wed May 13 10:16:37 1998  Doug Evans  <devans@canuck.cygnus.com>
3642
3643         * config/tc-m32r.c (warn_unmatched_high): New static local.
3644         (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
3645         (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
3646         (md_longopts): Recognize --{no-,}warn-unmatched-high.
3647         (md_parse_option): Likewise.
3648         (md_show_usage): Likewise.
3649         (m32r_frob_file): Likewise.
3650
3651         * read.c (generate_file_debug,generate_lineno_debug): New functions.
3652         (read_a_source_file): Call them.
3653         * read.h (stabs_generate_asm_file): Declare.
3654         * stabs.c (stabs_generate_asm_file): New function.
3655         (generate_asm_file): New function.
3656         (stabs_generate_asm_lineno): Move file name handling into
3657         generate_asm_file.
3658
3659 Tue May 12 12:03:44 1998  Richard Henderson  <rth@cygnus.com>
3660
3661         * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
3662         (d30v_current_align, d30v_current_align_seg): New variables.
3663         (d30v_last_label): New variable.
3664         (d30v_align, s_d30v_align, s_d30v_text): New functions.
3665         (s_d30v_data, s_d30v_section): Likewise.
3666         (md_pseudo_table): Call them.
3667         (md_begin): Initialize d30v_current_align_seg.
3668         (md_assemble): Call d30v_align when needed by known current alignment.
3669         (d30v_frob_label, d30v_cons_align): New functions.
3670         * config/tc-d30v.h (md_do_align): Remove.
3671         (tc_frob_label): Call d30v_frob_label.
3672         (md_cons_align): New.
3673
3674         * config/tc-d30v.c (find_format): Convert complex expressions to 
3675         expression symbols before processing.  Clean up code formatting.
3676
3677 Sun May 10 22:35:02 1998  Jeffrey A Law  (law@cygnus.com)
3678
3679         * po/Make-in (install-info): New target.
3680
3681 Thu May  7 15:49:07 1998  Jeffrey A Law  (law@cygnus.com)
3682
3683         * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
3684         instructions.
3685         * config/tc-mn10300.c (md_assemble): Likewise.
3686
3687 Thu May  7 11:47:22 1998  Doug Evans  <devans@canuck.cygnus.com>
3688
3689         * Makefile.am: Update with `make dep-am'.
3690         (HFILES): Add cgen.h.
3691         (cgen.o): Depend on cgen.h.
3692         * Makefile.in: Regenerate.
3693
3694         * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
3695
3696 Thu May  7 13:20:56 1998  Anders Blomdell  <anders.blomdell@control.lth.se>
3697
3698         * gasp.c (grab_label): Permit a label to be a preprocessor
3699         variable by permitting a label to start with a backslash.
3700
3701 Thu May  7 12:50:33 1998  Frank Ch. Eigler  <fche@cygnus.com>
3702
3703         * config/tc-mips.c (validate_mips_insn): Removed hack
3704         for previously inaccessible bitfields in some INSN_TRAP
3705         instructions.
3706
3707 Thu May  7 11:13:00 1998  Frank Ch. Eigler  <fche@cygnus.com>
3708
3709         * config/tc-d30v.c (do_assemble): Abort with error message
3710         if opcode operands do not match.
3711         
3712 Thu May  7 09:36:06 1998  Frank Ch. Eigler  <fche@cygnus.com>
3713
3714         * config/tc-mips.c (macro_build, validate_mips_insn): Implement
3715         'q' operand format for 20-bit "break"/"sdbbp" instructions.
3716         (mips_ip): Truncate overflowed "break" 'c' operand.  Implement
3717         similar new 'q' operand.
3718
3719 Thu May  7 07:47:14 1998  Michael Meissner  <meissner@cygnus.com>
3720
3721         * cgen.c (cgen_asm_finish_insn): Fix typo.
3722
3723 Thu May  7 02:19:14 1998  Doug Evans  <devans@charmed.cygnus.com>
3724
3725         * cgen.h: New file.
3726         * cgen.c: Include it.
3727         (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
3728         (cgen_asm_finish_insn): Result is now void.  New arg `result'.
3729         All callers updated.
3730         * config/tc-m32r.c: Include cgen.h.
3731         (m23r_insn): New members num_fixups,fixups.
3732
3733 Wed May  6 16:29:19 1998  Jeffrey A Law  (law@cygnus.com)
3734
3735         * config/tc-hppa.c (md_apply_fix): Slightly rework some code
3736         to avoid compiler warning.
3737
3738 Wed May  6 15:26:34 1998  Klaus Kaempf  <kkaempf@progis.de>
3739
3740         * makefile.vms: Run dec c with /nodebug.  Pass CC value when
3741         calling make.
3742
3743         * makefile.vms (OBJS): Add ehopt.obj
3744
3745 Wed May  6 15:11:12 1998  Klaus Kaempf  <kkaempf@progis.de>
3746
3747         * doc/c-vax.texi: Correct and extend vax/vms documentation.
3748
3749 Wed May  6 11:51:51 1998  Richard Henderson  <rth@cygnus.com>
3750
3751         * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
3752         a short format insn.
3753         (md_assemble): Set it for explicitly packed insns.
3754         
3755 Tue May  5 13:23:13 1998  Nick Clifton  <nickc@cygnus.com>
3756
3757         * config/obj-coff.c (c_symbol_merge): Do not take address of
3758         native fields when performing the memcpy.
3759
3760 Tue May  5 13:10:41 1998  Gavin Koch  <gavin@cygnus.com>
3761
3762         * config/tc-mips.c (macro,macro2): Implement 
3763         M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
3764
3765 Mon May  4 17:49:14 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3766
3767         * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
3768         relocations against globally visible symbols.
3769         * config/tc-m68k.c (relaxable_symbol): New macro.
3770         (m68k_ip, md_estimate_size_before_relax): Use it.
3771         (tc_m68k_fix_adjustable): Also handle weak symbols.
3772
3773 Mon May  4 16:12:23 1998  Ian Lance Taylor  <ian@cygnus.com>
3774
3775         * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
3776         references to externally visible symbols.
3777         * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
3778         values in twice for a PC relative reloc if the symbol is
3779         externally defined.
3780
3781         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
3782         don't adjust a PC relative reloc against an externally visible
3783         symbol.
3784         * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
3785         for a PC relative fixup against an externally visible defined
3786         symbol, arrange to store object file and addend values as though
3787         the symbol were not defined.
3788         (tc_gen_reloc): Likewise.
3789
3790 Thu Apr 30 13:09:39 1998  Fred Fish  <fnf@ninemoons.com>
3791
3792         * read.c (sizeof_leb128): Referenced externally by write.c so
3793         don't inline.
3794
3795 Wed Apr 29 15:45:57 1998  Michael Meissner  <meissner@cygnus.com>
3796
3797         * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
3798         and expand a 'debug' symbol associated with the next instruction
3799         that does not cause a short instruction to be filled with a NOP.
3800         (md_pseudo_table): Add support for .debugsym.
3801         (assemble_parallel_insn): Add calls to expand_debug_sym as
3802         appropriate.
3803         (md_assemble): Ditto.
3804
3805 Tue Apr 28 19:16:26 1998  Tom Tromey  <tromey@cygnus.com>
3806
3807         * as.c (main): Conditionally call setlocale.
3808         * gasp.c (main): Likewise.
3809         * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
3810         (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
3811
3812 Tue Apr 28 18:33:23 1998  Frank Ch. Eigler  <fche@cygnus.com>
3813
3814         * config/tc-d30v.c (md_show_usage): Correct gettext typo.
3815         
3816 Tue Apr 28 12:16:30 1998  Ian Lance Taylor  <ian@cygnus.com>
3817
3818         * config/tc-hppa.c: Change all calls to bzero to use memset.
3819         (pa_ip): Add cast to avoid warning.
3820         (tc_gen_reloc, md_apply_fix): Likewise.
3821         (pa_find_space_by_number): Likewise.
3822         (hppa_force_relocation): Likewise.
3823         (pa_block): Change i to unsigned int.
3824         * config/obj-som.h (obj_som_copyright): Declare.
3825
3826 Tue Apr 28 11:35:56 1998  Frank Ch. Eigler  <fche@cygnus.com>
3827
3828         * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
3829         for line numbers for assembly source.
3830
3831 Mon Apr 27 15:58:46 1998  Ian Lance Taylor  <ian@cygnus.com>
3832
3833         * configure.in: Change version number to 2.9.4
3834         * configure: Rebuild.
3835
3836 Mon Apr 27 12:07:33 1998  Doug Evans  <devans@seba.cygnus.com>
3837
3838         * cgen.c (cgen_asm_finish_insn): New arg relax_p.  All callers updated.
3839
3840 Mon Apr 27 15:16:12 1998  Ian Lance Taylor  <ian@cygnus.com>
3841
3842         * ecoff.h: Change symbolS in function declaration to struct
3843         symbol.
3844
3845 Sun Apr 26 13:44:22 1998  Ian Lance Taylor  <ian@cygnus.com>
3846
3847         * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
3848         (md_convert_frag): Fix i18n typo.
3849
3850 Sat Apr 25 20:12:02 1998  Richard Henderson  <rth@cygnus.com>
3851
3852         * ecoff.c (ecoff_get_cur_proc_sym): New function.
3853         * ecoff.h: Protoype it.
3854         * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
3855         [EVAX] (s_alpha_prologue): Delete.
3856         (md_pseudo_table): Update.
3857
3858 Sat Apr 25 14:00:52 1998  Ian Lance Taylor  <ian@cygnus.com>
3859
3860         * config/tc-i960.c (md_assemble): Change bp_error_msg from static
3861         array to local pointer.
3862         (get_args, parse_expr): Add casts to avoid warnings.
3863
3864 Fri Apr 24 12:47:42 1998  Philippe De Muyter  <phdm@macqel.be>
3865
3866         * read.c (s_set): Cast xmalloc return value to fragS *.
3867         * config/tc-m68k.c (m68k_ip): Function made static to match
3868         previous forward declaration.
3869         (insert_reg, init_regtable, md_convert_frag_1): Likewise.
3870
3871 Fri Apr 24 09:26:46 1998  Nick Clifton  <nickc@cygnus.com>
3872
3873         * config/tc-v850.c: Add internationalisation macros to error
3874         strings.  
3875
3876         * config/tc-m32r.c (can_make_parallel): Add internationalisation
3877         macros to error strings.
3878
3879 Thu Apr 23 19:23:23 1998  Ian Lance Taylor  <ian@cygnus.com>
3880
3881         * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
3882         reloc is in the TOC csect.
3883         (md_apply_fix3): Correct gettext typo.
3884
3885 Thu Apr 23 14:58:31 1998  Nick Clifton  <nickc@cygnus.com>
3886
3887         * config/tc-arm.c (find_real_start): Ignore symbols starting with
3888         .L - they are local labels and the branches are not really
3889         function calls but rather far jumps.
3890
3891 Wed Apr 22 15:57:21 1998  Tom Tromey  <tromey@cygnus.com>
3892
3893         * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
3894
3895 Wed Apr 22 14:52:36 1998  Ian Lance Taylor  <ian@cygnus.com>
3896
3897         * config/tc-i386.c (md_assemble): Print operand number rather than
3898         using ordinal_names.
3899         (i386_operand): Likewise.
3900
3901 Tue Apr 21 22:34:25 1998  Tom Tromey  <tromey@scribbles.cygnus.com>
3902
3903         * Makefile.am (INTLLIBS): Define to work around apparent automake
3904         bug.
3905         All Makefiles: Regenerated.
3906
3907         * Many files: Added gettext invocations around user-visible
3908         strings.
3909         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
3910         HAVE_LC_MESSAGES): Define.
3911         * dep-in.sed: Added asintl.h.
3912         * po/Make-in: New file.
3913         * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
3914         Include "asintl.h".
3915         * read.c (Z_): Renamed from `_'.
3916         * Makefile.am (SUBDIRS): Added po.
3917         (POTFILES): new macro.
3918         (po/POTFILES.in): New target.
3919         ($(OBJS)): Added asintl.h.
3920         (HFILES): Likewise.
3921         (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
3922         (as_new_LDADD): Added $(INTLLIBS).
3923         (as_new_DEPENDENCIES): Added $(INTLDEPS).
3924         (gasp_new_LDADD): Added $(INTLLIBS).
3925         (gasp_new_DEPENDENCIES): New macro.
3926         * configure, aclocal.m4: Rebuilt.
3927         * configure.in: Call CY_GNU_GETTEXT.  Generate po/Makefile.in and
3928         po/Makefile.
3929         (ALL_LINGUAS): Define.
3930         * macro.c: Include "asintl.h".
3931         * as.c (main): Call setlocale, bindtextdomain, and textdomain.
3932         * as.h: Include "asintl.h".
3933         * config/tc-i386.c (ordinal_names): Removed.
3934         (md_assemble): Changed error text to avoid ordinal_names.
3935         (i386_operand): Likewise.
3936         (reloc): Added as_bad to avoid i18n problems.
3937         (tc_gen_reloc): Likewise.
3938         * config/tc-arm.c (bad_args): Now a #define.
3939         (bad_pc): Likewise.
3940         * config/obj-vms.c (VMS_stab_parse): Changed type of
3941         `long_const_msg'.
3942         (global_symbol_directory): Unified strings to avoid i18n
3943         problems.
3944         * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
3945         avoid i18n problems.
3946         * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
3947         * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
3948         i18n problems.
3949         * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
3950         problems.
3951         * config/tc-v850.c (md_assemble): Changed C++ comment into C
3952         comment.
3953         * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
3954         problems.
3955         * as.c (print_version_id): Added an fprintf to avoid i18n
3956         problems.
3957         * cond.c (cond_finish_check): Added as_bad call to avoid i18n
3958         problems.
3959         * expr.c (expr): Added as_warn call to avoid i18n problems.
3960         * messages.c (as_assert): Changed code to avoid i18n problems.
3961         (as_abort): Likewise.
3962         * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
3963         (s_space): Likewise.
3964         * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
3965
3966 Tue Apr 21 17:01:22 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
3967
3968         * config/tc-i386.c (check_prefix): New static function, split out
3969         from md_assemble.
3970         (struct _i386_insn): Add wait_prefix field.
3971         (md_assemble): Remove wait_prefix local variable.  Use
3972         check_prefix when adding a prefix.
3973
3974         * config/tc-i386.c (current_templates): New static variable.
3975         (md_assemble): Remove current_templates local variable.
3976         (md_assemble, i386_operand): Improve error and warning messages in
3977         many places.  Add RESTORE_END_STRING in many places before error
3978         return.  Clarify some comments.
3979
3980         * config/tc-i386.c (struct _i386_insn): Change seg field to a two
3981         element array.
3982         (md_assemble): Parse string instruction operands, looking for
3983         segment override prefixes.  Check for invalid segment prefixes on
3984         string instruction.
3985         (i386_operand): i.seg[] and max mem_operand changes for string
3986         insns.
3987         * config/tc-i386.h (EsSeg): Define.
3988
3989         * config/tc-i386.h (regKludge): Define.
3990         (iclrKludge, imulKludge): Don't define.
3991         * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
3992         code.  Move ReverseRegRegmem fudges into Modrm case.  Reorder
3993         opcode_modifier checks to look for more common cases first.  Add
3994         default_seg for IsString case.
3995
3996 Tue Apr 21 16:18:12 1998  Ian Lance Taylor  <ian@cygnus.com>
3997
3998         * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
3999         AC_DECL_YYTEXT.
4000         * configure: Rebuild with new automake and libtool.
4001         * aclocal.m4, Makefile.in: Likewise.
4002
4003         * doc/Makefile.am (as.dvi): New target.
4004         * doc/Makefile.in: Rebuild.
4005
4006 Sat Apr 18 01:21:04 1998  Stan Cox  <scox@cygnus.com>
4007
4008         * configure.in: Added sparc86x support.
4009         
4010         * configure: Rebuild.
4011         
4012         * config/tc-sparc.c (lookup_arch): Added arch_type to struct
4013         sparc_arch.
4014         (md_parse_option): Warn if -EL is not supported for this architecture.
4015
4016         * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
4017         
4018 Sat Apr 18 01:19:01 1998  Jeffrey A Law  (law@cygnus.com)
4019
4020         * config/tc-mips.c (mips_ip): Note when we use get match on
4021         the full instruction name.
4022
4023 Wed Apr 15 15:17:27 1998  Richard Henderson  <rth@cygnus.com>
4024
4025         * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
4026         back into the expression to handle add/sub simplification correctly.
4027
4028 Wed Apr 15 07:06:04 1998  Catherine Moore  <clm@cygnus.com>
4029
4030         * config/tc-mips.c (hilo_interlocks): Remove 4300.
4031
4032 Mon Apr 13 16:51:04 1998  Nick Clifton  <nickc@cygnus.com>
4033
4034         * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
4035         #<n>' instruction.
4036
4037 Thu Apr  9 10:29:42 1998  Doug Evans  <devans@canuck.cygnus.com>
4038
4039         * symbols.c (max_indent_level): New global.
4040         (print_symbol_value_1): Use it.
4041         * expr.h (expr_build_dot): Declare.
4042         * expr.c (expr_build_dot): New function.
4043
4044 Wed Apr  8 16:16:11 1998  Doug Evans  <devans@canuck.cygnus.com>
4045
4046         * symbols.c (print_binary): New function.
4047         (print_expr_1): Call it.
4048
4049 Mon Apr  6 12:06:39 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4050
4051         * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
4052         operand in the opcode.
4053
4054 Fri Apr  3 11:58:19 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
4055
4056         * config/tc-i386.h: Reorder operand flags and opcode modifier
4057         flags for clarity.  Remove unused definitions: Unknown,
4058         ImmUnknown, DispUnknown, NoModrm.
4059         * config/tc-i386.c (type_names): Add missing Debug type.
4060         (md_assemble): Better duplicate prefix checking.  Quicker string
4061         instruction check via new opcode_modifier flag.
4062
4063 Fri Apr  3 11:44:34 1998  Ian Lance Taylor  <ian@cygnus.com>
4064
4065         * doc/as.texinfo (Invoking): Clarify -Wa example.
4066
4067 Fri Apr  3 09:12:23 1998  Gavin Koch  <gavin@cetus.cygnus.com>
4068
4069         * config/tc-mips.c (mips_pseudo_table): Add weakext entry. 
4070         (s_mips_weakext): Define.
4071         * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
4072         * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if 
4073         defined(TC_MIPS).       
4074         
4075 Thu Apr  2 22:42:02 1998  Jeffrey A Law  (law@cygnus.com)
4076
4077         * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
4078         is an error if the value can not be computed at assembly time.
4079         * config/tc-mn10300.c (tc_gen-reloc): Likewise.
4080
4081 Thu Apr  2 16:36:47 1998  Ian Lance Taylor  <ian@cygnus.com>
4082
4083         * gasp.c (main): Set next field of new include_path structure to
4084         NULL.  From Avery Pennarun <averyp@gdc.ca>.
4085
4086         * read.c (s_mri_sect): Call as_bad rather than abort for an
4087         unsupported MRI target.
4088
4089 Wed Apr  1 11:08:27 1998  Nick Clifton  <nickc@cygnus.com>
4090
4091         * config/tc-arm.c (arm_validate_fix): New function.  Determine if
4092         the destination of a branch instruction should be altered.
4093         (find_real_start): New function:  Locate the real, Thumb coded
4094         start of a Thumb function.
4095         (do_t_branch23): Alter the destination of branches to Thumb
4096         functions. 
4097
4098         * config/tc-arm.h: Define TC_VALIDATE_FIX.
4099
4100 Tue Mar 31 13:27:33 1998  Dean M. Deaver  <deaver@amt.tay1.dec.com>
4101
4102         * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
4103         also.
4104
4105 Wed Apr  1 13:13:20 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4106
4107         * doc/as.texinfo: Use @itemx for a secondary item in a table.
4108         * doc/c-hppa.texi: Likewise.
4109
4110 Tue Mar 31 17:52:40 1998  Ian Lance Taylor  <ian@cygnus.com>
4111
4112         * Makefile.am: Rebuild dependencies.
4113         * Makefile.in: Rebuild.
4114
4115         * Makefile.am (DEP_INCLUDES): New variable.
4116         (.dep1): Change to work when srcdir is not an absolute path.
4117         (.tcdep, .objdep, .dep2, dep.sed): Likewise.
4118         * Makefile.in: Rebuild.
4119
4120 Mon Mar 30 12:46:48 1998  Ian Lance Taylor  <ian@cygnus.com>
4121
4122         * config/tc-i386.h, config/tc-i386.c: Revert March 24
4123         LinearAddress patch.
4124
4125         * configure.in: Set version to 2.9.1.
4126         * configure: Rebuild.
4127
4128         * Branched binutils 2.9.
4129
4130 Mon Mar 30 11:22:08 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
4131
4132         * config/tc-i386.h (FWait): Define.
4133         * config/tc-i386.c (md_assemble): Emit fwait prefix before any
4134         other prefixes.  Check FWait flag in opcode table to see which
4135         instructions require an fwait prefix.
4136
4137 Mon Mar 30 10:12:00 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4138
4139         * stabs.c (get_stab_string_offset): Always create a stab string
4140         section.
4141
4142 Sat Mar 28 22:28:02 1998  Ian Lance Taylor  <ian@cygnus.com>
4143
4144         Fix some gcc -Wall warnings:
4145         * atof-generic.c (atof_generic): Add casts to avoid warnings.
4146         * ehopt.c (eh_frame_code_alignment): Likewise.
4147         * expr.c (integer_constant, operand): Likewise.
4148         * frags.c (frag_align): Likewise.
4149         * gasp.c (level_0, change_base, doinstr): Likewise.
4150         * hash.c (hash_ask): Likewise.
4151         * listing.c (listing_page, calc_hex, print_lines): Likewise.
4152         (debugging_pseudo): Likewise.
4153         * macro.c (define_macro, check_macro): Likewise.
4154         * read.c (read_a_source_file, s_align, s_float_space): Likewise.
4155         (ignore_rest_of_line, float_cons): Likewise.
4156         * symbols.c (decode_local_label_name): Likewise.
4157         * write.c (record_alignment, cvs_frag_to_fill): Likewise.
4158         (fixup_segment, number_to_chars_bigendian): Likewise.
4159         (number_to_chars_littleendian): Likewise.
4160         * config/atof-ieee.c (gen_to_words): Likewise.
4161         * config/tc-sparc.c (md_begin, md_assemble): Likewise.
4162         (sparc_ip, parse_keyword_arg, s_common): Likewise.
4163         * read.c (output_big_sleb128): Initialize locals to avoid
4164         warnings.
4165         (output_big_uleb128, equals): Likewise.
4166         * atof-generic.c (atof_generic): Change number_of_digits_* locals
4167         to unsigned int.  Change zeros to unsigned int.
4168         * cond.c (s_if): Add return to default case.
4169         * frags.c (frag_now_fix): Change return type to addressT.
4170         * frags.h (frag_now_fix): Update declaration.
4171         * listing.c (file_info_struct): Change linenum to unsigned int.
4172         (struct list_info_struct): Change hll_line to unsigned int.
4173         (print_source): Update format string.
4174         * read.c (emit_expr): Change scan to unsigned int, and don't
4175         bother to initialize it.
4176         * symbols.c (dollar_label_count): Change to unsigned long.
4177         * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
4178         * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
4179         * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
4180
4181 Fri Mar 27 12:46:47 1998  Ian Lance Taylor  <ian@cygnus.com>
4182
4183         * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
4184         mcf5200 just as we do for m68000.
4185         (m68k_init_after_args): Likewise.
4186         (md_estimate_size_before_relax): Likewise.
4187
4188 Fri Mar 27 10:30:01 1998  Catherine Moore  <clm@cygnus.com>
4189
4190         * config/tc-v850.c (md_assemble):  Store relocation addend in
4191         fixup instead of instruction.
4192
4193 Thu Mar 26 23:07:18 1998  Alan Modra  <alan@spri.levels.unisa.edu.au>
4194
4195         * config/tc-i386.c (md_assemble): Swap template arguments to
4196         CONSISTENT_REGISTER_MATCH macro in reverse direction test.
4197         This macro is currently symmetric, so passing them the wrong
4198         way didn't cause any problem, but may if the macro is changed
4199         in the future.
4200         After copying template to i.tm, use i.tm. rather than t-> to
4201         access fields, and make t a const*
4202         Move i.tm.operand_types[] swap to immediately after the copy.
4203
4204 Wed Mar 25 13:44:18 1998  Doug Evans  <devans@canuck.cygnus.com>
4205
4206         * expr.h (expr_build_uconstant): Add prototype.
4207         (expr_build_unary,expr_build_binary): Add prototypes.
4208         * expr.c (expr_build_uconstant): New function.
4209         (expr_build_unary,expr_build_binary): New functions.
4210
4211 Wed Mar 25 13:10:42 1998  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>
4212
4213         * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
4214         * macro.c (macro_expand_body): Increase buffer size.
4215         * messages.c (as_warn): Likewise.
4216         (as_warn_where, as_bad, as_bad_where): Likewise.
4217
4218 Wed Mar 25 12:59:07 1998  Ian Lance Taylor  <ian@cygnus.com>
4219
4220         Based on patch from H.J. Lu  <hjl@gnu.org>:
4221         * Makefile.am (DISTSTUFF): New variable.
4222         (diststuff): New target.
4223         * Makefile.in: Rebuild.
4224
4225 Tue Mar 24 16:51:29 1998  Nick Clifton  <nickc@cygnus.com>
4226
4227         * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
4228         m32r_elf_section_change_hook.
4229
4230         * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
4231         emit a nop if a section ends with a 16 bit instruction.
4232
4233 Tue Mar 24 19:48:09 1998  Ian Lance Taylor  <ian@cygnus.com>
4234
4235         * config/obj-coff.c (obj_coff_bss): Compile unconditionally.  Call
4236         s_lcomm rather than obj_coff_lcomm.
4237         (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
4238
4239 Tue Mar 24 18:30:58 1998  H.J. Lu  <hjl@gnu.org>
4240
4241         * config/tc-i386.h (LinearAddress): Define.
4242         * config/tc-i386.c (md_assemble): If LinearAddress is set for the
4243         instruction, don't use a default segment.
4244
4245 Mon Mar 23 18:53:40 1998  Joel Sherrill  <joel@OARcorp.com>
4246
4247         * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
4248         * configure: Rebuild.
4249
4250 Fri Mar 20 19:15:44 1998  Ian Lance Taylor  <ian@cygnus.com>
4251
4252         * aclocal.m4, configure: Rebuild with libtool 1.2.
4253
4254 Thu Mar 19 16:03:12 1998  Nick Clifton  <nickc@cygnus.com>
4255
4256         * config/tc-arm.c (md_apply_fix3): fix code to test the range of
4257         PC relative branches.  Patch courtesy of Jonathan Walton. 
4258
4259         
4260 Wed Mar 18 09:29:51 1998  Nick Clifton  <nickc@cygnus.com>
4261
4262         * configure.in (emulations): Add thumb-pe target.
4263
4264         * configure (emulations): Add thumb-pe target.
4265
4266 1998-03-17  Ken Raeburn  <raeburn@cygnus.com>
4267
4268         * itbl-lex.l (yywrap): Don't define if already defined as a
4269         macro.
4270
4271 Fri Mar 13 16:31:38 1998  Tom Tromey  <tromey@cygnus.com>
4272
4273         * depend.c (quote_string_for_make): New function.
4274         (wrap_output): Use it.
4275
4276 Thu Mar 12 18:28:22 1998  Nick Clifton  <nickc@cygnus.com>
4277
4278         * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
4279         structure if type is SHT_NOBITS.  [Bug fix courtesy of rth]
4280
4281 Sat Feb 28 17:28:55 1998  Richard Henderson  <rth@cygnus.com>
4282
4283         * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
4284         Recognize -GN and -relax.
4285         (md_begin): Initialize gp size from -G switch.
4286         (alpha_force_relocation): Always force if -relax.
4287         (alpha_align): Take a new argument that will specify when to 
4288         emit an R_ALPHA_ALIGN relocation (though we don't do that now).
4289         Change all callers.  Emit nop alignment padding as nop+unop pair.
4290
4291 Sat Feb 28 17:06:22 1998  Richard Henderson  <rth@cygnus.com>
4292
4293         * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
4294         * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
4295
4296 Thu Feb 26 15:49:04 1998  Michael Meissner  <meissner@cygnus.com>
4297
4298         * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
4299         require padding to the next long word boundary.
4300
4301 Mon Feb 23 11:29:06 1998  Doug Evans  <devans@seba.cygnus.com>
4302
4303         * cgen.c: #include symcat.h.
4304         * config/tc-m32r.c: Likewise.
4305
4306 Mon Feb 23 10:27:40 1998  Jeffrey A Law  (law@cygnus.com)
4307
4308         * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
4309         absolute expressions instead of '$' prefixed register names.
4310
4311 Sat Feb 21 22:36:52 1998  Richard Henderson  <rth@cygnus.com>
4312
4313         * read.c (s_set): Record file and line info for symbols when -as.
4314         (pseudo_set): Don't overwrite that dummy fragment.
4315
4316 Fri Feb 20 15:03:13 1998  Ian Lance Taylor  <ian@cygnus.com>
4317
4318         * config/tc-ppc.c (md_pseudo_table): Add "section".
4319         (ppc_named_section): New static function.
4320
4321 Thu Feb 19 22:25:42 1998  Richard Henderson  <rth@cygnus.com>
4322
4323         * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
4324         so we don't have to scan the entire list.
4325
4326 Tue Feb 17 17:02:15 1998  Fred Fish  <fnf@cygnus.com>
4327
4328         * config/tc-d30v.c (parallel_ok): For the explicitly parallel
4329         case, allow the parallel instructions to modify the same flag
4330         bits.
4331
4332 Thu Feb 19 16:08:15 1998  Richard Henderson  <rth@cygnus.com>
4333
4334         * listing.c (list_symbol_table): Categorize symbols by
4335         undefined_section rather than sy_frag->line == NULL.
4336
4337 Wed Feb 18 23:39:46 1998  Richard Henderson  <rth@cygnus.com>
4338
4339         * Makefile.am (install-exec-local): Install properly when ln
4340         fails or tooldir == prefix.
4341
4342 Tue Feb 17 18:58:51 1998  Doug Evans  <devans@seba.cygnus.com>
4343
4344         * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
4345         Test result of insert_operand for error.
4346
4347 Fri Feb 13 16:41:42 1998  Ian Lance Taylor  <ian@cygnus.com>
4348
4349         * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
4350         * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
4351         * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
4352         * doc/Makefile.in: Rebuild.
4353
4354 Fri Feb 13 00:47:44 1998  Ian Lance Taylor  <ian@cygnus.com>
4355
4356         * config/tc-mips.c (macro_build): Handle operand type 'C'.
4357         (macro): Fix handling of M_COP[0-3].
4358
4359 Thu Feb 12 14:06:59 1998  Ian Lance Taylor  <ian@cygnus.com>
4360
4361         Based on patches from Ross Harvey <ross@teraflop.com>:
4362         * macro.c (ISSEP): Only treat '<' and '>' as separator characters
4363         if macro_alternate or macro_mri.
4364         (getstring): Remove support for byte constants between < and >.
4365         (get_any_string): '<' only starts a string if macro_alternate or
4366         macro_mri.
4367         (macro_expand_body): Permit keyword parameters following
4368         positional parameters.
4369
4370         NetBSD patches from Gordon W. Ross <gwr@mc.com>:
4371         * configure.in (alpha*-*-netbsd*): New target.
4372         * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
4373         * configure: Rebuild.
4374
4375         * as.h (flag_warn_suppress_instructionswap): Move from here...
4376         * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
4377         here, and make static.
4378
4379         * ehopt.c (eh_frame_code_alignment): Only use seg_info if
4380         BFD_ASSEMBLER or MANY_SEGMENTS.
4381
4382         * as.c (show_usage): Update bug-gnu-utils address.
4383         * gasp.c (show_usage): Likewise.
4384         * doc/as.texinfo (Bug Reporting): Likewise.
4385
4386 Wed Feb 11 23:26:28 1998  Jeffrey A Law  (law@cygnus.com)
4387
4388         * config/tc-mips.c (load_address): Don't use mips III or mips IV
4389         insns regardless of the size of a pointer if we're in mips I or
4390         MIPS II mode.
4391         (macro, macro2, s_cprestore, s_cpadd): Likewise.
4392
4393 Thu Feb 12 03:41:00 1998  J"orn Rennecke  <amylaar@cygnus.co.uk>
4394
4395 Fix rac to accept only a0:
4396         * tc-d10v.c (parallel_ok, find_opcode):
4397         Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
4398         Introduce OPERAND_GPR.
4399
4400 Wed Feb 11 16:28:13 1998  Richard Henderson  <rth@cygnus.com>
4401
4402         * read.c (s_fill): Handle non-constant repeat counts by creating
4403         an rs_space fragment.
4404
4405 Tue Feb 10 18:31:31 1998  Ian Lance Taylor  <ian@cygnus.com>
4406
4407         * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
4408         from as_bad to as_warn.
4409
4410 Tue Feb 10 18:04:00 1998  Jim Lemke  <jlemke@cygnus.com>
4411
4412         * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
4413         * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
4414         * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
4415
4416 Tue Feb 10 17:58:18 1998  Ian Lance Taylor  <ian@cygnus.com>
4417
4418         * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
4419         seg_fix_rotP rather than fix_root from seg_info.
4420
4421 Tue Feb 10 15:32:22 1998  Ian Carmichael  <iancarm@cygnus.com>
4422
4423         * expr.c: Add support for 0x1_2_3_4 bignums.
4424
4425 Tue Feb 10 14:43:40 1998  Ian Lance Taylor  <ian@cygnus.com>
4426
4427         * configure.in: Change -linux* to -linux-gnu*.
4428         * configure: Rebuild.
4429
4430         * app.c (do_scrub_begin): Treat \r as whitespace.
4431
4432 Mon Feb  9 14:16:11 1998  Ian Lance Taylor  <ian@cygnus.com>
4433
4434         * Makefile.am: Update dependencies.
4435         * Makefile.in: Rebuild.
4436
4437 Sat Feb  7 15:33:51 1998  Ian Lance Taylor  <ian@cygnus.com>
4438
4439         * configure, aclocal.m4: Rebuild with new libtool.
4440
4441 Fri Feb  6 16:08:30 1998  Jeffrey A Law  (law@cygnus.com)
4442
4443         * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
4444         the argument to bfd_set_arch_mach.
4445         (load_address): Use bfd_arch_bits_per_address to determine the
4446         bit size of an address instead of looking at the isa level.
4447         (macro, macro2, s_cprestore, s_cpadd): Likewise.
4448
4449 Fri Feb  6 14:44:34 1998  Nick Clifton  <nickc@cygnus.com>
4450
4451         * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
4452
4453 Thu Feb  5 12:39:08 1998  Ian Lance Taylor  <ian@cygnus.com>
4454
4455         * ehopt.c: New file.
4456         * as.h (enum _relax_state): Add rs_cfa.
4457         (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
4458         (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
4459         * read.c (emit_expr): Call check_eh_frame.
4460         * write.c (cvt_frag_to_fill): Handle rs_cfa.
4461         (relax_segment): Likewise.
4462         * Makefile.am: Rebuild dependencies.
4463         (GAS_CFILES): Add ehopt.c.
4464         (GENERIC_OBJS): Add ehopt.o.
4465         * doc/internals.texi (Frags): Document rs_cfa.
4466
4467         * as.c (show_usage): Mention --traditional-format.
4468         (parse_args): Accept --traditional-format.
4469         * as.h (flag_traditional_format): Declare.
4470         * output-file.c (output_file_create): If flag_traditional_format,
4471         set BFD_TRADITIONAL_FORMAT on stdoutput.
4472         * doc/as.texinfo, doc/as.1: Document --traditional-format.
4473
4474         * config/tc-mips.c (append_insn): Make sure that if we have a
4475         fixup for an unmatched %hi reloc, it does not associated with a
4476         variant frag.
4477
4478         * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
4479         * doc/Makefile.in: Likewise.
4480
4481 Wed Feb  4 15:41:54 1998  Nick Clifton  <nickc@cygnus.com>
4482
4483         * config/tc-m32r.c (check_for_side_effects): New function.
4484         (can_make_parallel): Add checks for instruction side effects
4485         clashing with the other instruction.
4486         (assemble_parallel_insn): Improve warning messages.  Return error
4487         message from non-swapped instruction order.
4488
4489 Wed Feb  4 20:00:26 1998  James G. Smith  <jsmith@teknema.demon.co.uk>
4490
4491         * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
4492
4493         * config/tc-arm.h: Replace md_after_pass_hook definition with a
4494         md_cleanup definition.  This moves the forced literal output to
4495         the end of the source pass, and avoids macro's inserting literals
4496         into the code immediately after the macro expansion.
4497
4498 Wed Feb  4 13:17:19 1998  Ian Lance Taylor  <ian@cygnus.com>
4499
4500         * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
4501         a gas internal symbol is adjustable.
4502         * config/tc-ppc.h (tc_fix_adjustable): Likewise.
4503
4504         * as.h: If gcc version greater than 2.6, use `__format__' and
4505         `__printf__' in function attributes, rather than `format' and
4506         `printf'.
4507
4508 Mon Feb  2 18:38:18 1998  Ian Lance Taylor  <ian@cygnus.com>
4509
4510         * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
4511
4512 Mon Feb  2 18:30:34 1998  Steve Haworth  <steve@pm.cse.rmit.EDU.AU>
4513
4514         Add tms320c30 support:
4515         * config/tc-tic30.h: New file.
4516         * config/tc-tic30.c: New file.
4517         * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
4518         TARGET_FORMAT as "coff-tic30".
4519         * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
4520         * Makefile.am: Rebuild dependencies.
4521         (CPU_TYPES): Add tic30.
4522         (CPU_OBJ_VALID): tic30-aout is valid.
4523         (TARGET_CPU_CFILES): Add config/tc-tic30.c.
4524         (TARGET_CPU_HFILES): Add config/tc-tic30.h.
4525         * configure, Makefile.in: Rebuild.
4526
4527 Mon Feb  2 10:20:37 1998  Nick Clifton  <nickc@cygnus.com>
4528
4529         * config/tc-v850.c (md_assemble): Improvements to error messages.
4530
4531 Mon Feb  2 12:39:05 1998  Geoff Keating  <geoffk@ozemail.com.au>
4532
4533         * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
4534         BFD_RELOC_HI16_S to store the high bits of any value.
4535
4536         * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
4537         (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
4538         assembler calculate relocations to any external symbol at all.
4539         * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
4540         involving generation of pc-relative relocs.
4541         (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
4542         has been moved to md_apply_fix3.
4543
4544         * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
4545         (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
4546         which actually means (the address of identifier's GOT entry) +
4547         constant, which is not particularly useful.
4548
4549 Fri Jan 30 11:02:35 1998  Doug Evans  <devans@canuck.cygnus.com>
4550
4551         * read.h (include_dirs): Declare.
4552         (include_dir_count,include_dir_maxlen): Declare.
4553
4554 Fri Jan 30 11:47:02 1998  Ian Lance Taylor  <ian@cygnus.com>
4555
4556         * configure.in: Correct check for shared opcodes library.
4557         * configure: Rebuild.
4558
4559         * listing.c (buffer_line): If we can't open the file, set at_end.
4560         (listing_print): Remove unused local variable fi.
4561
4562         * config/m68k-parse.y (reglistpair): Handle register list in
4563         either order.
4564
4565         * config/vms-conf.h: Don't undef VERSION.
4566
4567 Thu Jan 29 14:42:44 1998  Pat Rankin  <rankin@eql.caltech.edu>
4568
4569         * Makefile.am (CONFIG_OBJS): New variable, containing part of old
4570         OBJS variable.
4571         (GENERIC_OBJS): New variable, with the rest of the old OBJS
4572         variable.
4573         (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
4574         ($(srcdir)/make-gas.com): Rename from make-gas.com.
4575         (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
4576         (EXTRA_DIST): Define.
4577         * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
4578         explicitly rather than via the list of object files.
4579         (gcc-as.opt): New file created when make-gas.com is run.
4580         * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
4581         itbl-cpu.h} to #include appropriate file rather than copying that
4582         file.
4583         * config/vms-conf.h: Synchronize with current config.in.
4584         * Makefile.in: Rebuild.
4585
4586 Thu Jan 29 18:48:19 1998  Bill Moyer  <billm@cygnus.com>
4587
4588         * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
4589         (parallel_ok): Relaxed parallel subinstruction dependency check.
4590
4591 Wed Jan 28 14:35:00 1998  Bill Moyer <billm@cygnus.com>
4592
4593         * as.h (flag_warn_suppress_instructionswap): added new flag.
4594         * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap" 
4595         command line argument.
4596         * tc-d10v.c (write_2_short): emit "Swapping instructions"
4597         warning only if flag_warn_suppress_instructionswap is false.
4598
4599 Wed Jan 28 16:41:19 1998  J.J. van der Heijden  <J.J.vanderHeijden@student.utwente.nl>
4600
4601         * configure.in (i386-*-mingw32*): New target.
4602         * configure: Rebuild.
4603
4604 Wed Jan 28 14:51:18 1998  Ian Lance Taylor  <ian@cygnus.com>
4605
4606         * symbols.c (resolve_symbol_value): Don't set the segment if it
4607         hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
4608
4609         * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
4610         S_GET_SEGMENT.
4611
4612 Wed Jan 28 13:54:50 1998  Pat Rankin  <rankin@eql.caltech.edu>
4613
4614         as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
4615         depends upon HAVE_{UNLINK,REMOVE} values rather than host
4616         compiler.
4617
4618 Wed Jan 28 13:48:08 1998  Ian Lance Taylor  <ian@cygnus.com>
4619
4620         * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
4621
4622 Wed Jan 28 09:52:00 1998  Nick Clifton  <nickc@cygnus.com>
4623
4624         * config/tc-v850.c (v850_insert_operand): Display instruction when
4625         an error is encountered.
4626
4627 Tue Jan 27 13:32:01 1998  Robert Lipe  <robertl@dgii.com>
4628
4629         * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
4630         (i386-*-sco3.2v5*coff): New target.
4631         (i386-*-sco3.2*): New target.
4632         * configure: Rebuild.
4633
4634 Tue Jan 27 11:06:52 1998  Nick Clifton  <nickc@cygnus.com>
4635
4636         * config/tc-v850.c: Tidy error message production.
4637
4638 Tue Jan 27 12:24:32 1998  Ian Lance Taylor  <ian@cygnus.com>
4639
4640         * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
4641         validate_immediate return value in the right type for comparisons
4642         to FAIL.
4643
4644 Tue Jan 27 06:51:59 1998  Richard Henderson  <rth@cygnus.com>
4645
4646         * listing.c (MAX_BYTES): Use listing variables not constants.
4647         (data_buffer): No longer an array, but a pointer.
4648         (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
4649         (listing_listing): Allocate data_buffer.
4650
4651 Tue Jan 27 06:38:35 1998  Richard Henderson  <rth@cygnus.com>
4652
4653         * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
4654         --listing-rhs-width, --listing-cont-lines.
4655         (show_usage): Update.
4656         * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
4657         (listing_lhs_cont_lines, listing_rhs_width): New vars.
4658         (print_lines): Use the variables instead of the constants.
4659         (listing_listing): Likewise.    
4660         * listing.h: Declare the new vars.
4661         
4662 Tue Jan 27 05:32:05 1998  Richard Henderson  <rth@cygnus.com>
4663
4664         * as.c (parse_args): Add --keep-locals alias for -L.
4665         Add --strip-local-absolute.
4666         (show_usage): Update.
4667         * as.h (flag_strip_local_absolute): New flag.
4668         * symbols.c (S_IS_LOCAL): Use it.
4669         * config/obj-aout.h (S_IS_LOCAL): Likewise.
4670         * config/obj-bout.h (S_IS_LOCAL): Likewise.
4671         * config/obj-coff.h (S_IS_LOCAL): Likewise.
4672
4673 Mon Jan 26 13:07:41 1998  Nick Clifton  <nickc@cygnus.com>
4674
4675         * config/tc-m32r.c: Detect if explicitly parallel instructions
4676         might have an io conflict and issue a warning message. 
4677
4678 Thu Jan 22 17:51:44 1998  Nick Clifton  <nickc@cygnus.com>
4679
4680         * cgen.c (cgen_save_fixups, cgen_restore_fixups,
4681         cgen_swap_fixups): Functions to save, restore and swap the fixup
4682         chain with a backup copy.
4683         (cgen_asm_finish_insn): Returns address of constructed insn.
4684
4685 Wed Jan 21 16:49:10 1998  Richard Henderson  <rth@cygnus.com>
4686
4687         * listing.c (file_info_struct): Remove FILE, add POS.
4688         (last_open_file_info, last_open_file): New; a one entry FILE* cache.
4689         (file_info): Don't open the file.
4690         (buffer_line): Check for the file in the last_open cache, updating
4691         as necessary.
4692         (print_source): Don't reference file_info->file.
4693         (listing_listing): Likewise.
4694         (listing_print): Close the file in the cache, if any.
4695
4696 Fri Jan 16 14:51:48 1998  Ian Lance Taylor  <ian@cygnus.com>
4697
4698         * read.c (dwarf_file_string): New file static variable.
4699         (emit_expr): Look for constant sequence that leads up to a file
4700         name in DWARF debugging output.
4701         (stringer): Use dwarf_file_string to decide whether to accept a
4702         string as a file name.
4703
4704 Fri Jan 16 11:30:37 1998  Richard Henderson  <rth@cygnus.com>
4705
4706         * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
4707         (crack_operand): Add reg->reglst MRI hack.
4708         (r_seg): Put reglst symbols in reg_section.
4709         (m68k_frob_symbol): Frob reglst symbols into absolute_section.
4710
4711 Thu Jan 15 14:19:01 1998  Richard Henderson  <rth@cygnus.com>
4712
4713         * tc-sh.c (get_specific): Handle SGR & DBR.
4714
4715 Thu Jan 15 13:46:48 1998  Richard Henderson  <rth@cygnus.com>
4716
4717         * tc-h8300.c (parse_reg): Take the length of the symbol into
4718         account when attempting to match a register name.
4719         * tc-h8500.c (parse_reg): Likewise.
4720
4721 Wed Jan 14 17:52:33 1998  Nick Clifton  <nickc@cygnus.com>
4722
4723         * cgen.c: Formatting changes to improve readability.
4724
4725 Wed Jan 14 15:41:41 1998  Jeffrey A Law  (law@cygnus.com)
4726
4727         * config/tc-mips.c (macro): Rework division code to avoid unfilled
4728         delay slot.
4729
4730 Wed Jan 14 18:04:20 1998  Michael Meissner  <meissner@cygnus.com>
4731
4732         Based on a patch from Jim Wilson
4733         * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
4734         (tc_gen_reloc): Handle cross section PC relative relocs
4735         correctly.
4736
4737 Wed Jan 14 15:02:19 1998  Doug Evans  <devans@seba.cygnus.com>
4738
4739         * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
4740
4741 Mon Jan 12 13:04:57 1998  Doug Evans  <devans@seba.cygnus.com>
4742
4743         * cgen.c: #include setjmp.h.  Clean up pass over `struct foo' usage.
4744         (expr_jmp_buf): New static local.
4745         (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
4746         (cgen_md_operand): New function.
4747         * tc-m32r.c: Clean up pass over `struct foo' usage.
4748         (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
4749
4750 Tue Jan  6 15:36:02 1998  Richard Henderson  <rth@cygnus.com>
4751
4752         * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
4753         (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
4754
4755 Fri Jan  2 16:08:54 1998  Ian Lance Taylor  <ian@cygnus.com>
4756
4757         * config/tc-i386.c (i386_operand): Give an error if there are
4758         unrecognized characters after an expression.
4759
4760 For older changes see ChangeLog-9697