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