OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.18.50/] [gas/] [ChangeLog-2004] - Blame information for rev 221

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
2004-12-29  Alan Modra  
2
 
3
        PR gas/619
4
        * read.c (s_comm_internal): Don't zero end of name until size
5
        expression has been parsed.
6
 
7
2004-12-25  Marek Michalkiewicz  
8
 
9
        * config/tc-avr.c (mcu_types): Move attiny{13,2313} from avr4 to avr2.
10
 
11
2004-12-23  Tomer Levi  
12
 
13
        * config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch'
14
        case).
15
 
16
2004-12-22  Ian Lance Taylor  
17
 
18
        * configure.tgt: New.
19
        * configure.in: Move setting of cpu_type, fmt, etc., to
20
        configure.tgt.
21
        * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
22
        $(srcdir)/configure.tgt.
23
        * configure, Makefile.in: Rebuild.
24
 
25
2004-12-22  Klaus Rudolph  
26
 
27
        * config/tc-avr.c: Add support for the new R_AVR_LDI, R_AVR_6 and
28
        R_AVR_6_ADIW relocs for the LDI, ADIW/SBIW and LDD/STD
29
        instructions.
30
        (avr_offset_expression): New function to parse offsets for LDI
31
        instructions.
32
        (avr_operand): Use it.
33
        (md_apply_fix3): Generate the relocs.
34
 
35
2004-12-16  Andrew Stubbs  
36
 
37
        * config/tc-sh64.c (shmedia_md_apply_fix3): Add missing
38
        BFD_RELOC_SH_IMMS10BY8 relocation.
39
 
40
        * config/tc-sh64.c (shmedia_build_Mytes): Emit an error message rather
41
        than just ignoring bad code.
42
 
43
2004-12-16  Richard Sandiford  
44
 
45
        * config/tc-v850.c (handle_lo16): New function.
46
        (v850_reloc_prefix): Use it to check lo().
47
        (md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET.
48
 
49
2004-12-14  P.J. Darcy  
50
 
51
        * configure.in: Add s390x-ibm-tpf support.
52
        * configure: Regenerate.
53
 
54
2004-12-15 Jan Beulich  
55
 
56
        * config/obj-elf.c (obj_elf_change_section): Only set type and
57
        attributes on new sections. Emit warning when type of re-declared
58
        section doesn't match.
59
 
60
2004-12-15 Jan Beulich  
61
 
62
        * dw2gencfi.c (dot.cfi.startproc): Clear cur_cfa_offset so
63
        '.cfi_startproc simple' doesn't inherit the old value.
64
 
65
2004-12-15  Jan Beulich  
66
 
67
        * dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf generation
68
        to emit a signed and factored offset. Adjust DW_CFA_def_cfa_offset_sf
69
        generation to emit a factored offset.
70
 
71
2004-12-10  Ian Lance Taylor  
72
 
73
        * config/tc-mips.c (macro) [M_LA_AB]: Give an error for a offset
74
        which is too large in the case of NO_PIC without 64-bit
75
        addresses.
76
 
77
        * config/tc-mips.c (mips_in_shared): New static variable.
78
        (macro_build_lui): Permit "_gp" if !mips_in_shared.
79
        (md_longopts): Add -mshared and -mno-shared.
80
        (md_parse_option): Handle OPTION_MSHARED and OPTION_MNO_SHARED.
81
        (s_cpload): Implement !mips_in_shared case.
82
        (s_cpsetup): Likewise.
83
        * doc/c-mips.texi (MIPS Opts): Document -mno-shared.
84
        * NEWS: Mention -mno-shared.
85
 
86
2004-12-09  Paul Brook  
87
 
88
        * config/tc-arm.c (s_arm_unwind_fnend): Use R_ARM_PREL31 relocation
89
        for function start.
90
 
91
2004-12-09  Ian Lance Taylor  
92
 
93
        * config/tc-mips.c (append_insn): If we emit a nop during a relax
94
        sequence, increase the size of the sequence.
95
 
96
        * config/tc-mips.c (mips_cpu_info_table): Change "9000" entry to
97
        use CPU_RM9000.
98
 
99
2004-12-07  Ben Elliston  
100
 
101
        * read.c (s_align): Use an align_limit temporary to allay a GCC
102
        signed/unsigned comparison warning.
103
 
104
2004-12-01  Mark Mitchell  
105
 
106
        * Makefile.am (TARG_ENV_HFILES): Add te-armlinuxeabi.h.
107
        * configure.in: Use it for arm*-*-linux-gnueabi*.
108
        * config/tc-arm.c: Allow emulation file to set FPU_DEFAULT.
109
        * config/te-armlinuxeabi.h: New file.
110
        * Makefile.in: Regenerated.
111
        * aclocal.m4: Likewise.
112
        * configure: Likewise.
113
        * doc/Makefile.in: Regenerated.
114
 
115
2004-12-02  Bob Wilson  
116
 
117
        * config/tc-xtensa.c (xtensa_switch_section_emit_state): Use subseg_set.
118
        (xtensa_restore_emit_state): Likewise.
119
 
120
2004-12-02  Alan Modra  
121
 
122
        * read.c (ALIGN_LIMIT): Define, increasing limit for BFD_ASSEMBLER.
123
        (s_align): Use it.
124
 
125
2004-11-30  Tero Niemela  
126
 
127
        * Makefile.am: Change LOCALEDIR to $(datadir)/share.
128
        * Makefile.in: Regenerate.
129
 
130
2004-11-29  Tomer Levi  
131
 
132
        * config/tc-crx.c: Major code cleanup. Remove unused variables and
133
        functions, give functions a meaningful name, add comments.
134
        (check_range): New function - Replace operand size calculation
135
        with range checking.
136
        (assemble_insn): Update Algorithm, improve error issuing.
137
        (enum op_err): New.
138
        (process_label_constant): Bug fix regarding COP_BRANCH_INS relocation
139
        handling.
140
 
141
2004-11-29  Kazuhiro Inaoka 
142
 
143
        * config/tc-m32r.c (md_pcrel_from_section): Fixed a pcrel relocte
144
        miss between different section in the same module.
145
        (tc_gen_reloc): Likewise.
146
 
147
2004-11-25  Theodore A. Roth  
148
 
149
        * gas/config/tc-avr.c (mcu_types): Add support for atmega165,
150
        atmega325, atmega3250, atmega645 and atmega6450.
151
 
152
2004-11-25 Jan Beulich  
153
 
154
        * config/tc-i386.c (optimize_imm): Adjust immediates to only those
155
        permissible for the selected instruction suffix.
156
        (process_suffix): For DefaultSize instructions, suppressing the
157
        guessing of a 'q' suffix if the instruction doesn't support it is
158
        pointless, because only an 'l' suffix can be guessed in this place.
159
 
160
2004-11-24  Nick Clifton  
161
 
162
        * config/tc-iq2000.c: Remove support for IQ10 processor.
163
        Convert to ISO C90 formatting.
164
        * config/tc-iq2000.h: Likewise.
165
 
166
2004-11-23  Nick Clifton  
167
 
168
        * config/tc-mn10300.c (md_relax_table): More fixes to the offsets
169
        in this table.  They should be correct now.
170
 
171
2004-11-23 Jan Beulich 
172
 
173
        * config/tc-i386.h (CpuMMX2): Declare. Artificial classifier to
174
        indicate the MMX extensions added by both SSE and 3DNow!A.
175
        (Cpu3dnowA): Declare.
176
        (CpuUnknownFlags): Update.
177
        * config/tc-i386.c (cpu_sub_arch_name): Declare.
178
        (cpu_arch): i586 and pentium do not imply MMX. i686 and pentiumpro do
179
        neither imply SSE nor MMX. k6 implies MMX. k6_2 additionally implies
180
        3DNow!. Athlon additionally implies 3DNow!A. Several new
181
        entries (those starting with a dot are for sub-arch specification).
182
        (set_cpu_arch): Handle sub-arch specifications.
183
        (parse_insn): Distinguish between instructions not supported because
184
        of insufficient CPU features and because of 64-bit mode.
185
        * doc/c-i386.texi: Describe enhanced .arch directive.
186
 
187
2004-11-22  Bob Wilson  
188
 
189
        * config/tc-xtensa.c (xg_add_opcode_fix): Set fx_no_overflow.
190
 
191
2004-11-22  Bob Wilson  
192
 
193
        * dwarf2dbg.c (dwarf2_finish): Don't write a .debug_line section
194
        without a corresponding .debug_info section.
195
 
196
2004-11-22  Hans-Peter Nilsson  
197
 
198
        * read.c (potable): Add "error" and "warning".
199
        (s_errwarn): New function.
200
        * read.h (s_errwarn): Declare.
201
        * doc/as.texinfo (Error, Warning): Document .error and .warning.
202
 
203
2004-11-22  Nick Clifton  
204
 
205
        * config/tc-tic54x.c (tic54x_adjust_symtab): Adjust call to
206
        c_dot_file_symbol.
207
 
208
2004-11-19  Alan Modra  
209
 
210
        * config/tc-msp430.c (struct rcodes_s, MSP430_RLC, msp430_rcodes,
211
        struct hcodes_s, msp430_hcodes): From include/opcode/msp430.h.
212
 
213
2004-11-19  Alan Modra  
214
 
215
        * config/obj-coff.c (c_dot_file_symbol): Add "app" param.
216
        (coff_adjust_symtab): Adjust call.
217
        (crawl_symbols): Likewise.
218
        * config/obj-coff.h (c_dot_file_symbol): Add "app" param.
219
        (obj_app_file): Adjust.
220
 
221
2004-11-18  Inderpreet Singh   
222
 
223
        * configure.in: Enable bfd_assember for the MAXQ port.
224
        * configure: Regenerate.
225
 
226
2004-11-12  Bob Wilson  
227
            Sterling Augustine  
228
 
229
        * config/tc-xtensa.c (finish_vinsn): Clear pending instruction if
230
        there is a conflict.
231
        (check_t1_t2_reads_and_writes): Check for both reads and writes to
232
        interfaces that are related as determined by xtensa_interface_class_id.
233
 
234
2004-11-12  Nick Clifton  
235
 
236
        * config/tc-mn10300.c (md_relax_table): Fix off by one negative
237
        offsets for conditional branches.
238
 
239
2004-11-11  Bob Wilson  
240
 
241
        * config/tc-xtensa.c (MAX_IMMED6): Change value to 65.
242
 
243
2004-11-10  Bob Wilson  
244
 
245
        * config/tc-xtensa.c (update_next_frag_state): Always add a NOP if
246
        relaxing at the end of a loop.  Don't mark frags as UNREACHABLE or
247
        MAYBE_UNREACHABLE.
248
        (relax_frag_immed): Update call to update_next_frag_state.
249
 
250
2004-11-10  Alan Modra  
251
 
252
        * obj.h (struct format_ops ): Add int param.
253
        * read.h (s_app_file_string): Likewise.
254
        * read.c (s_app_file_string): Likewise.
255
        (s_app_file): Adjust s_app_file_string call.
256
        * config/tc-mips.c (s_mips_file): Likewise.
257
        * config/obj-coff.h (obj_app_file): Add app param.
258
        * config/obj-ecoff.h (obj_app_file): Likewise.
259
        * config/obj-multi.h (obj_app_file): Likewise.
260
        * config/obj-elf.h (elf_file_symbol): Likewise.
261
        * config/obj-elf.c (elf_file_symbol): Only emit one file symbol
262
        if called for # preprocessor lines.
263
 
264
2004-11-08  H.J. Lu  
265
 
266
        PR 528
267
        * symbols.c (resolve_symbol_value): Convert weak symbols only
268
        for Windows PECOFF.
269
        (symbol_equated_reloc_p): Don't equate weaks when relocating
270
        only for Windows PECOFF.
271
 
272
2004-11-08  Tomer Levi  
273
 
274
        * config/tc-crx.c (print_insn): Check and set insn_addr.
275
        * config/tc-crx.h (md_frag_check): Define.
276
 
277
2004-11-08  Inderpreet Singh   
278
            Vineet Sharma      
279
 
280
        * configure.in: Add support for new target maxq-coff.
281
        * configure: Regenerate.
282
        * NEWS: Mention new support.
283
        * config/tc-maxq.c: New file.
284
        * config/tc-maxq.h: New file.
285
        * config/obj-coff.h: Add support for maxq-coff.
286
 
287
2004-11-08  Aaron W. LaFramboise 
288
 
289
        * symbols.c (any_external_name): Define.
290
        (resolve_symbol_value): Convert weak symbols.
291
        (S_SET_EXTERNAL): Support any_external_name.
292
        (S_SET_NAME): Qualify parameter const.
293
        (symbol_equated_reloc_p): Equate to weaks when relocating.
294
        * symbols.h (S_SET_NAME): Qualfiy parameter const.
295
        * tc.h (any_external_name): Declare.
296
        * config/obj-coff.c ("coff/pe.h"): Include for BFD
297
        assemblers also.
298
        (weak_is_altname): Declare and define.
299
        (weak_name2altname): Same.
300
        (weak_altname2name): Same.
301
        (weak_uniquify): Same.
302
        (weak_altprefix): Define.
303
        (obj_coff_weak): Change .weak syntax and handling.
304
        (coff_frob_symbol): Fix PE weak symbol alternates.
305
        * config/obj-coff.h (USE_UNIQUE): Define.
306
        * config/tc-i386.c (md_apply_fix3): Assume weak symbols
307
        are in another segment.
308
        (tc_gen_reloc): Remove broken addend hack.
309
        doc/as.texinfo: Update.
310
 
311
2004-11-05  Sterling Augustine  
312
 
313
        * config/tc-xtensa.c (total_frag_text_expansion): New.
314
        (md_estimate_size_before_relax): Use it.
315
        (find_address_of_next_align_frag): Likewise.
316
 
317
2004-11-05  Tomer Levi  
318
 
319
        * config/tc-crx.c: Rename argument types.
320
        (processing_arg_number): Rename to 'cur_arg_num'.
321
        (get_number_of_bits): Rename to 'set_operand_size'.
322
        (get_operandtype): Rename to 'parse_operand', totally rewrite.
323
        (set_cons_rparams): Rename to 'set_operand', totally rewrite.
324
        (set_indexmode_parameters): Remove function, integrate its code into
325
        'set_operand'.
326
        (set_operand_size): Get rid of 'Operand Number' function parameter -
327
        use global variable 'cur_arg_num' instead.
328
        Use a local 'argument' pointer to reference the current argument.
329
        (parse_operand): Likewise.
330
        (set_operand): Likewise.
331
        (process_label_constant): Likewise.
332
 
333
2004-11-04  Bob Wilson  
334
 
335
        * config/tc-xtensa.c: Remove XTENSA_SECTION_RENAME ifdefs.
336
        (add_section_rename): Delete.  Inlined into...
337
        (build_section_rename): ...here.  Use xstrdup instead of strdup.
338
        (xtensa_section_rename): Drop "const" from argument and return types.
339
        (md_show_usage): Indent to match show_usage().
340
        * config/tc-xtensa.h: Remove XTENSA_SECTION_RENAME ifdefs.
341
        (tc_canonicalize_section_name): Define.
342
        (md_elf_section_rename): Remove unused macro.
343
        * doc/as.texinfo (Overview): Document Xtensa --rename-section option.
344
        * doc/c-xtensa.texi (Xtensa Options): Likewise.
345
        (Frame Directive): Delete.
346
 
347
2004-11-04  Daniel Jacobowitz  
348
 
349
        * configure.in: Remove arm-*-oabi and thumb-*-oabi.
350
        * config/tc-arm.c (target_oabi): Delete.
351
        (md_apply_fix3, elf32_arm_target_format): Remove target_oabi checks.
352
        (arm_opts): Remove moabi.
353
        * doc/as.texinfo (Overview): Remove documentation of -moabi.
354
        * doc/c-arm.texi (ARM Options): Likewise.
355
        * configure: Regenerated.
356
 
357
2004-11-04  Hans-Peter Nilsson  
358
 
359
        * configure.in (crisv32): Recognize.  AC_DEFINE_UNQUOTED
360
        DEFAULT_CRIS_ARCH.  Handle crisv32-*-linux-gnu* like
361
        cris-*-linux-gnu* and crisv32-*-* like cris-*-*.
362
        * configure: Regenerate.
363
        * config/tc-cris.c (enum cris_archs): New.
364
        (cris_mach, cris_arch_from_string, s_cris_arch, get_sup_reg)
365
        (cris_insn_ver_valid_for_arch): New functions.
366
        (DEFAULT_CRIS_ARCH): New macro, default to cris_any_v0_v10.
367
        (cris_arch): New variable.
368
        (md_pseudo_table): New pseudo .arch.
369
        (err_for_dangerous_mul_placement): Initialize according to
370
        DEFAULT_CRIS_ARCH.
371
        (STATE_COND_BRANCH): Renamed from STATE_CONDITIONAL_BRANCH.
372
        All users changed.
373
        (STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON)
374
        (STATE_ABS_BRANCH_V32, STATE_LAPC, BRANCH_BF_V32, BRANCH_BB_V32)
375
        (BRANCH_WF_V32, BRANCH_WB_V32): New.
376
        (BRANCH_BF, BRANCH_BB, BRANCH_WF, BRANCH_WB): Don't undef after
377
        use in md_cris_relax_table.
378
        (md_cris_relax_table): Add entries for STATE_COND_BRANCH_V32,
379
        STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC.
380
        Update and improve head comment.
381
        (OPTION_PIC): Define in terms of previous option, OPTION_US.
382
        (OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): Similar.
383
        (OPTION_ARCH): New.
384
        (md_longopts): New option --march=...
385
        (cris_any_v0_v10_long_jump_size, crisv32_long_jump_size): New
386
        macros.
387
        (md_long_jump_size): Initialize in terms of DEFAULT_CRIS_ARCH.
388
        (HANDLE_RELAXABLE): New macro.
389
        (md_estimate_size_before_relax): Use HANDLE_RELAXABLE for common
390
        cases.  Check for weak symbols and assume not relaxable.  Handle
391
        STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON,
392
        STATE_ABS_BRANCH_V32, STATE_LAPC.  Use new variable symbolP, not
393
        fragP->fr_symbol.
394
        (md_convert_frag): Handle STATE_COND_BRANCH_V32,
395
        STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC.
396
        (cris_create_short_jump): Adjust for CRISv32.
397
        (cris_relax_frag): Handle new states.
398
        (md_create_long_jump): Ditto.  Emit error for common_v10_v32.
399
        (md_begin): Define symbols "..asm.arch.cris.v32",
400
        "..asm.arch.cris.v10", "..asm.arch.cris.common_v10_v32" and
401
        "..asm.arch.cris.any_v0_v10".  Use cris_insn_ver_valid_for_arch
402
        when entering opcode table entry points.
403
        (md_assemble): Adjust branch handling for CRISv32.  Handle LAPC
404
        relaxation.  In fix_new_exp call for main insn, pass 1 for pcrel
405
        parameter for 8, 16 and 32-bit pc-relative insns and LAPC.
406
        (cris_process_instruction): Initialize out_insnp->insn_type to
407
        CRIS_INSN_NONE, not CRIS_INSN_NORMAL.
408
        : New
409
        cases.
410
        : Check that modified_char == '.'.
411
        : Consume the rest of the line.
412
        When operands don't match, skip over subsequent insns with
413
        non-matching version specifier but same mnemonic.
414
        : Immediate operands for
415
        special registers in CRISv32 are always 32 bit long.
416
        :
417
        New cases.
418
        (get_gen_reg): Only recognize "PC" when followed by "+]" for v32
419
        and compatible.  Recognize "ACR" for v32, unless followed by "+".
420
        (get_spec_reg): Consider cris_arch when looking up register.
421
        (get_autoinc_prefix_or_indir_op): Don't recognize assignment for
422
        v32 or compatible.
423
        (get_3op_or_dip_prefix_op): Check for ']' after seeing '[rN+'.
424
        (cris_get_expression): Restore input_line_pointer if failing "early".
425
        (get_flags): Consider cris_arch and recognize flags accordingly.
426
        (branch_disp): Adjust for CRISv32.
427
        (gen_cond_branch_32): Similar.  Emit error for common_v10_v32.
428
        (cris_number_to_imm): Use as_bad_where, not as_bad.  Remove
429
        related FIXME.  Don't insist on BFD_RELOC_32_PCREL fixup to be
430
        resolved.  Don't enter zeros in object file for
431
        BFD_RELOC_32_PCREL.
432
        
433
        : New case.
434
        (md_parse_option): Break out "return 1".
435
         New case.
436
        (tc_gen_reloc): 
437
        
438
        
439
        : New cases.
440
        Addends for non-zero fx_pcrel are too in fx_offset.
441
        (md_show_usage): Show --march=.
442
        (md_apply_fix3): Adjust val for BFD_RELOC_CRIS_LAPCQ_OFFSET.
443
        (md_pcrel_from): BFD_RELOC_CRIS_LAPCQ_OFFSET is PC-relative too.
444
        (s_syntax) : Properly constify member operand.
445
        * config/tc-cris.h (TARGET_MACH): Define.
446
        (cris_mach): Declare.
447
        * doc/as.texinfo (Overview) : Add --march=...
448
        * doc/c-cris.texi (CRIS-Symbols): New node for built-in symbols.
449
        (CRIS-Opts): Document --march=...
450
        (CRIS-Pseudos): Document .arch.
451
 
452
2004-11-04 Jan Beulich 
453
 
454
        * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when
455
        intel syntax and no register prefix, allow $ in symbol names when
456
        intel syntax.
457
        (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX.
458
        (intel_float_operand): Add fourth return value indicating math control
459
        operations. Make classification more precise.
460
        (md_assemble): Complain if memory operand of mov[sz]x has no size
461
        specified.
462
        (parse_insn): Translate word operands to floating point instructions
463
        operating on integers as well as control instructions to short ones
464
        as expected by AT&T syntax. Translate 'd' suffix to short one only for
465
        floating point instructions operating on non-integer operands.
466
        (match_template): Remove fldcw special case. Adjust q-suffix handling
467
        to permit it on fild/fistp/fisttp in AT&T mode.
468
        (process_suffix): Don't guess DefaultSize insns' suffix from
469
        stackop_size for certain floating point control instructions. Guess
470
        suffix for branch and [ls][gi]dt based on flag_code. Split error
471
        messages for Intel and AT&T syntax, and make the condition more strict
472
        for the former. Adjust suppressing of generation of operand size
473
        overrides.
474
        (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE,
475
        OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add
476
        more error checking.
477
        * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR
478
        SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines.
479
 
480
2004-11-03  Hans-Peter Nilsson  
481
 
482
        * symbols.c (colon) [!WORKING_DOT_WORD]: Don't declare
483
        md_short_jump_size, md_long_jump_size.
484
        * write.c [!WORKING_DOT_WORD]: Ditto.
485
        * tc.h [!WORKING_DOT_WORD]: Declare them here.  Drop const
486
        qualifier.
487
        * config/tc-cris.h (md_short_jump_size, md_long_jump_size): Don't
488
        declare.
489
        * config/tc-cris.c (md_short_jump_size, md_long_jump_size): Drop
490
        const qualifier in these definitions.
491
        * config/tc-i370.c, config/tc-m68k.c, config/tc-pdp11.c,
492
        config/tc-s390.c, config/tc-tahoe.c, config/tc-vax.c: Ditto.
493
 
494
2004-11-02  Nick Clifton  
495
 
496
        * dwarf2dbg.c (dwarf2_finish): Check for the existence of a file
497
        table before deciding to produce a .debug_line section to match up
498
        with a user provided .debug_info section.
499
 
500
2004-10-28  Tomer Levi  
501
 
502
        * config/tc-crx.c (getreg_image): Bug fix, a return value was
503
        mistakenly omitted from CRX_C_REGTYPE and CRX_CS_REGTYPE cases.
504
 
505
2004-10-27  Tomer Levi  
506
 
507
        * config/tc-crx.c: Remove global variable 'post_inc_mode'.
508
        (get_flags): New function.
509
        (get_number_of_bits): Edit comments, update numeric values to
510
        supported sizes.
511
        (process_label_constant): Don't support the colon
512
        format (SYMBOL:[s|m|l]).
513
        (set_cons_rparams): Support argument type 'arg_rbase'.
514
        (get_operandtype): Bug fix in 'rbase' operand type parsing.
515
        (handle_LoadStor): Bug fix, first handle post-increment mode.
516
        (getreg_image): Remove redundant code, update according to latest
517
        CRX spec.
518
        (print_constant): Bug fix relate to 3-word instructions.
519
        (assemble_insn): Bug fix, when matching instructions, verify also
520
        instruction type (not only mnemonic).
521
        Add various error checking.
522
        (preprocess_reglist): Support HI/LO and user registers.
523
 
524
2004-10-25  David Mosberger-Tang  
525
 
526
        * config/tc-ia64.c (fixup_unw_records): Don't let the "t" value
527
        in an epilogue directive go negative.
528
 
529
2004-10-25  H.J. Lu  
530
 
531
        PR 474
532
        * config/tc-ia64.c (emit_one_bundle): Decrement md.num_slots_in_use
533
        after reporting template error during manual bundling. Reported
534
        by Michael Dupont, michaelx.dupont@intel.com.
535
 
536
2004-10-25  Daniel Jacobowitz  
537
 
538
        * Makefile.am: Run dep-am.
539
        * aclocal.m4: Regenerate with automake 1.9.2.
540
        * Makefile.in: Regenerate with automake 1.9.2.
541
        * doc/Makefile.in: Likewise.
542
 
543
        * config/tc-arm.c: Include "dw2gencfi.h".
544
        (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions):
545
        New functions.
546
        * config/tc-arm.h (TARGET_USE_CFIPOP, DWARF2_DEFAULT_RETURN_COLUMN)
547
        (DWARF2_CIE_DATA_ALIGNMENT, tc_regname_to_dw2regnum)
548
        (tc_cfi_frame_initial_instructions): Define.
549
        (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions):
550
        Add prototypes.
551
 
552
2004-10-21  Tomer Levi  
553
 
554
        * config/tc-crx.c (assemble_insn): Check unsigned immediate
555
        operands validity.
556
        Update coprocessor id to be unsigned immediate.
557
 
558
2004-10-18  Aaron W. LaFramboise 
559
 
560
        * config/tc-i386.c (O_secrel): Delete.
561
        (tc_pe_dwarf2_emit_offset): New function.
562
        * config/tc-i386.h (O_secrel): Define as O_md1.
563
        (TC_DWARF2_EMIT_OFFSET): Define.
564
 
565
2004-10-18  Nick Clifton  
566
 
567
        * config/tc-xstormy16.c (xstormy16_cons_fix_new): Accept and
568
        ignore @fptr() directives for 4-byte fixups.
569
 
570
2004-10-15  Alan Modra  
571
 
572
        * Makefile.am: Run "make dep-am"
573
        * Makefile.in: Regenerate.
574
 
575
2004-10-14  Bob Wilson  
576
 
577
        * doc/c-xtensa.texi (Xtensa Options, Absolute Literals Directive):
578
        Remove comments about placement of literal pools.
579
        (Literal Directive): Update description of literal placement.
580
        (Literal Prefix Directive): Remove statement that this does not apply
581
        to absolute-mode literals.  Describe new section naming scheme.
582
 
583
2004-10-12  Bob Wilson  
584
 
585
        * config/tc-xtensa.c (xtensa_frequency_pseudo): Use set_subseg_freq.
586
        (is_entry_opcode, is_movi_opcode, is_the_loop_opcode, is_jx_opcode,
587
        is_windowed_return_opcode): Delete.
588
        (xtensa_frob_label): Use get_subseg_target_freq.
589
        (md_assemble): Inline call to is_entry_opcode.
590
        (xtensa_handle_align): Inline call to get_frag_is_literal.
591
        (relaxation_requirements): Inline call to is_jx_opcode.
592
        (emit_single_op): Inline call to is_movi_opcode.
593
        (xg_assemble_vliw_tokens): Inline calls to get_frag_is_insn,
594
        get_frag_is_no_transform, is_entry_opcode, and
595
        set_frag_is_specific_opcode.  Use get_subseg_total_freq.
596
        (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags,
597
        xtensa_fix_close_loop_end_frags, relax_frag_immed, convert_frag_immed):
598
        Inline calls to get_frag_is_no_transform.
599
        (next_instrs_are_b_retw): Inline call to is_windowed_return_opcode.
600
        (xtensa_fix_short_loop_frags): Inline calls to is_the_loop_opcode and
601
        get_frag_is_no_transform.
602
        (convert_frag_immed_finish_loop): Inline calls to get_expression_value
603
        and set_frag_is_no_transform.
604
        (get_expression_value): Delete.
605
        (subseg_map struct): Rename cur_total_freq to total_freq.  Rename
606
        cur_target_freq to target_freq.
607
        (get_subseg_info): Split out code to create a new map entry into ...
608
        (add_subseg_info): ... this new function.
609
        (get_last_insn_flags): Check if get_subseg_info succeeded.
610
        (set_last_insn_flags): Call add_subseg_info if needed.
611
        (get_subseg_total_freq, get_subseg_target_freq, set_subseg_freq): New.
612
        (xtensa_reorder_segments): Compute last_sec while counting sections.
613
        Remove call to get_last_sec.
614
        (get_last_sec): Delete.
615
        (cache_literal_section): Inline call to retrieve_literal_seg and its
616
        callees, seg_present and add_seg_list.
617
        (retrieve_literal_seg, seg_present, add_seg_list): Delete.
618
        (get_frag_is_insn, get_frag_is_no_transform,
619
        set_frag_is_specific_opcode, set_frag_is_no_transform): Delete.
620
        * config/tc-xtensa.h (MAX_SLOTS): Reduce from 31 to 15.
621
 
622
2004-10-12  Bob Wilson  
623
 
624
        * config/tc-xtensa.c: Use ISO C90 formatting.
625
        * config/tc-xtensa.h: Likewise.
626
        * config/xtensa-istack.h: Likewise.
627
        * config/xtensa-relax.c: Likewise.
628
        * config/xtensa-relax.h: Likewise.
629
 
630
2004-10-12  Paul Brook  
631
 
632
        * config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to
633
        EF_ARM_EABI_VER4.
634
        (arm_eabis): Ditto.
635
        * doc/c-arm.texi: Document that we actually support -meabi=4, not
636
        -meabi=3.
637
 
638
2004-10-08  Bob Wilson  
639
 
640
        * doc/as.texinfo (VTableEntry, VTableInherit): Add "directive" to index
641
        entries.
642
        (Acknowledgements): Use "GAS" instead of AS variable.
643
 
644
2004-10-08  Daniel Jacobowitz  
645
 
646
        * config/tc-i386.c: Include "elf/x86-64.h".
647
        (i386_elf_section_type): New function.
648
        * config/tc-i386.h (md_elf_section_type): Define.
649
        (i386_elf_section_type): New prototype.
650
 
651
2004-10-08  Linus Nielsen Feltzing  
652
 
653
        * config/m68k-parse.h (enum m68k_register): New control register,
654
        MBAR2 (for MCF5249)
655
        * config/tc-m68k.c: Correct control register set for MCF5249.
656
 
657
2004-10-07  Bob Wilson  
658
            Sterling Augustine  
659
 
660
        * config/tc-xtensa.c (absolute_literals_supported): New global flag.
661
        (UNREACHABLE_MAX_WIDTH): Define.
662
        (XTENSA_FETCH_WIDTH): Delete.
663
        (cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end,
664
        prefer_const16, prefer_l32r): New global variables.
665
        (LIT4_SECTION_NAME): Define.
666
        (lit4_state struct): Add lit4_seg_name and lit4_seg fields.
667
        (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define.
668
        (frag_flags struct): New.
669
        (xtensa_block_info struct): Move from tc-xtensa.h.  Add flags field.
670
        (subseg_map struct): Add cur_total_freq and cur_target_freq fields.
671
        (bitfield, bit_is_set, set_bit, clear_bit): Define.
672
        (MAX_FORMATS): Define.
673
        (op_placement_info struct, op_placement_table): New.
674
        (O_pltrel, O_hi16, O_lo16): Define.
675
        (directiveE enum): Rename directive_generics to directive_transform.
676
        Delete directive_relax.  Add directive_schedule,
677
        directive_absolute_literals, and directive_last_directive.
678
        (directive_info): Rename "generics" to "transform".  Delete "relax".
679
        Add "schedule" and "absolute-literals".
680
        (directive_state): Adjust entries to match changes in directive_info.
681
        (xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h.
682
        (xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode,
683
        xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New.
684
        (xtensa_j_opcode, xtensa_rsr_opcode): Delete.
685
        (align_only_targets, software_a0_b_retw_interlock,
686
        software_avoid_b_j_loop_end, maybe_has_b_j_loop_end,
687
        software_avoid_short_loop, software_avoid_close_loop_end,
688
        software_avoid_all_short_loops, specific_opcode): Delete.
689
        (warn_unaligned_branch_targets): New.
690
        (workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop,
691
        workaround_close_loop_end, workaround_all_short_loops): Default FALSE.
692
        (option_[no_]link_relax, option_[no_]transform,
693
        option_[no_]absolute_literals, option_warn_unaligned_targets,
694
        option_prefer_l32r, option_prefer_const16, option_target_hardware):
695
        New enum values.
696
        (option_[no_]align_only_targets, option_literal_section_name,
697
        option_text_section_name, option_data_section_name,
698
        option_bss_section_name, option_eb, option_el): Delete.
699
        (md_longopts): Add entries for: [no-]transform, [no-]absolute-literals,
700
        warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax,
701
        and target-hardware.  Delete entries for [no-]target-align-only,
702
        literal-section-name, text-section-name, data-section-name, and
703
        bss-section-name.
704
        (md_parse_option): Handle new options and remove old ones.  Accept but
705
        ignore [no-]density options.  Warn for [no-]generics and [no-]relax
706
        and treat them as [no-]transform.
707
        (md_show_usage): Add new options and remove old ones.
708
        (xtensa_setup_hw_workarounds): New.
709
        (md_pseudo_table): Change "word" entry to use xtensa_elf_cons.  Add
710
        "long", "short", "loc" and "frequency" entries.
711
        (use_generics): Rename to ...
712
        (use_transform): ... this function.  Add past_xtensa_end check.
713
        (use_longcalls): Add past_xtensa_end check.
714
        (code_density_available, can_relax): Delete.
715
        (do_align_targets): New.
716
        (get_directive): Accept dashes in directive names.  Warn about
717
        [no-]generics and [no-]relax directives and treat them as
718
        [no-]transform.
719
        (xtensa_begin_directive): Call md_flush_pending_output only for some
720
        directives.  Check for directives inside instruction bundles.  Warn
721
        about deprecated ".begin literal" usage.  Warn and ignore [no-]density
722
        directives.  Handle new directives.  Check generating_literals flag
723
        for literal_prefix.
724
        (xtensa_end_directive): Check for directives inside instruction
725
        bundles.  Warn and ignore [no-]density directives.  Handle new
726
        directives.  Call xtensa_set_frag_assembly_state.
727
        (xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc,
728
        xtensa_dwarf2_emit_insn): New.
729
        (xtensa_literal_position): Call md_flush_pending_output.  Do not check
730
        use_literal_section flag.
731
        (xtensa_literal_pseudo): Call md_flush_pending_output.  Handle absolute
732
        literals.  Use xtensa_elf_cons to parse the expression.
733
        (xtensa_literal_prefix): Do not check use_literal_section.  Support
734
        ".lit4" sections for absolute literals.  Change prefix convention to
735
        replace ".text" (or ".t" in a linkonce section).  No need to call
736
        subseg_set.
737
        (xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New.
738
        (expression_end): Handle closing braces and colons.
739
        (PLT_SUFFIX, plt_suffix): Delete.
740
        (expression_maybe_register): Use new xtensa-isa.h functions.  Use
741
        xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16
742
        and O_hi16 expressions as well.
743
        (tokenize_arguments): Handle closing braces and colons.
744
        (parse_arguments): Use new xtensa-isa.h functions.  Handle "invisible"
745
        operands and paired register syntax.
746
        (get_invisible_operands): New.
747
        (xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax.  Use
748
        new xtensa-isa.h functions.
749
        (xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New.
750
        (xg_translate_idioms): Check if inside bundle.  Use use_transform.
751
        Handle new Xtensa LX RSR/WSR/XSR syntax.  Remove code to widen density
752
        instructions.  Use xtensa_translate_zero_immed.
753
        (operand_is_immed, operand_is_pcrel_label): Delete.
754
        (get_relaxable_immed): Use new xtensa-isa.h functions.
755
        (get_opcode_from_buf): Add slot parameter.  Use new xtensa-isa.h
756
        functions.
757
        (xtensa_print_insn_table, print_vliw_insn): New.
758
        (is_direct_call_opcode): Use new xtensa-isa.h functions.
759
        (is_call_opcode, is_loop_opcode, is_conditional_branch_opcode,
760
        is_branch_or_jump_opcode): Delete.
761
        (is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New.
762
        (opnum_to_reloc, reloc_to_opnum): Delete.
763
        (xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new
764
        xtensa-isa.h functions.  Operate on one slot of an instruction.
765
        (xtensa_insnbuf_set_immediate_field, is_negatable_branch,
766
        xg_get_insn_size): Delete.
767
        (xg_get_build_instr_size): Use xg_get_single_size.
768
        (xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to
769
        xg_build_widen_table.  Use xg_get_single_size.
770
        (xg_get_max_narrow_insn_size): Delete.
771
        (xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size,
772
        xg_is_relaxable_insn): Update calls to xg_build_widen_table.  Use
773
        xg_get_single_size.
774
        (xg_build_to_insn): Record the loc field.  Handle OP_OPERAND_HI16U and
775
        OP_OPERAND_LOW16U.  Check xg_valid_literal_expression.
776
        (xg_expand_to_stack, xg_expand_narrow): Update calls to
777
        xg_build_widen_table.  Use xg_get_single_size.
778
        (xg_immeds_fit): Use new xtensa-isa.h functions.  Update call to
779
        xg_check_operand.
780
        (xg_symbolic_immeds_fit): Likewise.  Also handle O_lo16 and O_hi16, and
781
        treat weak symbols conservatively.
782
        (xg_check_operand): Use new xtensa-isa.h functions.
783
        (is_dnrange): Delete.
784
        (xg_assembly_relax): Inline previous calls to tinsn_copy.
785
        (xg_finish_frag): Specify separate relax states for the frag and slot0.
786
        (is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new
787
        xtensa-isa.h functions.
788
        (xg_instruction_matches_option_term, xg_instruction_matches_or_options,
789
        xg_instruction_matches_options): New.
790
        (xg_instruction_matches_rule): Handle O_register expressions.  Call
791
        xg_instruction_matches_options.
792
        (transition_rule_cmp): New.
793
        (xg_instruction_match): Update call to xg_build_simplify_table.
794
        (xg_build_token_insn): Record loc fields.
795
        (xg_simplify_insn): Check is_specific_opcode field and
796
        density_supported flag.
797
        (xg_expand_assembly_insn): Skip checking code_density_available.  Use
798
        new xtensa-isa.h functions.  Call use_transform instead of can_relax.
799
        (xg_assemble_literal): Add error handling for O_big.  Call
800
        record_alignment.  Handle O_pltrel.
801
        (xg_valid_literal_expression): New.
802
        (xg_assemble_literal_space): Add slot parameter.  Remove call to
803
        set_expr_symbol_offset.  Add call to record_alignment.  Update call to
804
        xg_finish_frag.
805
        (xg_emit_insn): Delete.
806
        (xg_emit_insn_to_buf): Add format parameter.  Update calls to
807
        xg_add_opcode_fix and xtensa_insnbuf_to_chars.
808
        (xg_add_opcode_fix): Change opcode parameter to tinsn and add format
809
        and slot parameters.  Handle new "alternate" relocations for absolute
810
        literals and CONST16 instructions.  Check for bad uses of O_lo16 and
811
        O_hi16.  Use new xtensa-isa.h functions.
812
        (xg_assemble_tokens): Delete.
813
        (is_register_writer): Use new xtensa-isa.h functions.
814
        (is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of
815
        old-style RSR from LCOUNT.
816
        (next_frag_opcode): Delete.
817
        (next_frag_opcode_is_loop, next_frag_format_size, frag_format_size,
818
        update_next_frag_state): New.
819
        (update_next_frag_nop_state): Delete.
820
        (next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop.
821
        (xtensa_mark_literal_pool_location): Check use_literal_section flag and
822
        the state of the absolute-literals directive.  Add calls to
823
        record_alignment and xtensa_set_frag_assembly_state.  Call
824
        xtensa_switch_to_non_abs_literal_fragment instead of
825
        xtensa_switch_to_literal_fragment.
826
        (build_nop): New.
827
        (assemble_nop): Use build_nop.  Update call to xtensa_insnbuf_to_chars.
828
        (get_expanded_loop_offset): Change check for undefined opcode to an
829
        assertion.
830
        (xtensa_set_frag_assembly_state, relaxable_section,
831
        xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets,
832
        xtensa_find_unaligned_loops, xg_apply_tentative_value): New.
833
        (md_begin): Update call to xtensa_isa_init.  Initialize linkrelax to 1.
834
        Set lit4_seg_name.  Call xg_init_vinsn.  Initialize new global opcodes.
835
        Call init_op_placement_info_table and xtensa_set_frag_assembly_state.
836
        (xtensa_init_fix_data): New.
837
        (xtensa_frob_label): Reset label symbol to the current frag.  Check
838
        do_align_targets and generating_literals flag.  Propagate frequency
839
        info to new alignment frag.  Call xtensa_set_frag_assembly_state.
840
        (xtensa_unrecognized_line): New.
841
        (xtensa_flush_pending_output): Check if inside a bundle.  Add a call
842
        to xtensa_set_frag_assembly_state.
843
        (error_reset_cur_vinsn): New.
844
        (md_assemble): Remove check for literal frag.  Remove call to
845
        istack_init.  Call use_transform instead of use_generics.  Parse
846
        explicit instruction format specifiers.  Move code for
847
        a0_b_retw_interlock workaround to xg_assemble_vliw_tokens.  Call
848
        error_reset_cur_vinsn on errors.  Add call to get_invisible_operands.
849
        Add dwarf2_where call.  Remote automatic alignment for ENTRY
850
        instructions.  Move call to xtensa_clear_insn_labels to the end.
851
        Rearrange to handle bundles.
852
        (xtensa_cons_fix_new): Delete.
853
        (xtensa_handle_align): New.
854
        (xtensa_frag_init): Call xtensa_set_frag_assembly_state.  Remove
855
        assignment to is_no_density field.
856
        (md_pcrel_from): Use new xtensa-isa.h functions.  Use decode_reloc
857
        instead of reloc_to_opnum.  Handle "alternate" relocations.
858
        (xtensa_force_relocation, xtensa_check_inside_bundle,
859
        xtensa_elf_section_change_hook): New.
860
        (xtensa_symbol_new_hook): Delete.
861
        (xtensa_fix_adjustable): Check for difference of symbols with an
862
        offset.  Check for external and weak symbols.
863
        (md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs.
864
        (md_estimate_size_before_relax): Return expansion for the first slot.
865
        (tc_gen_reloc): Handle difference of symbols by producing
866
        XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference
867
        into the output.  Handle new XTENSA_SLOT*_OP relocs by storing the
868
        tentative values into the output when linkrelax is set.
869
        (XTENSA_PROP_SEC_NAME): Define.
870
        (xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags.
871
        Create literal tables only if using literal sections.  Create new
872
        property tables instead of old instruction tables.  Check for unaligned
873
        branch targets and loops.
874
        (finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes,
875
        new_resource_table, clear_resource_table, resize_resource_table,
876
        resources_available, reserve_resources, release_resources,
877
        opcode_funcUnit_use_unit, opcode_funcUnit_use_stage,
878
        resources_conflict, xg_find_narrowest_format, relaxation_requirements,
879
        bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New.
880
        (xtensa_end): Call xtensa_flush_pending_output.  Set past_xtensa_end
881
        flag.  Update checks for workaround options.  Call
882
        xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns.
883
        (xtensa_cleanup_align_frags): Add special case for branch targets.
884
        Check for and mark unreachable frags.
885
        (xtensa_fix_target_frags): Remove use of align_only_targets flag.
886
        Use RELAX_LOOP_END_BYTES in special case for negatable branch at the
887
        end of a zero-overhead loop body.
888
        (frag_can_negate_branch): Handle instructions with multiple slots.
889
        Use new xtensa-isa.h functions
890
        (xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range,
891
        xtensa_mark_zcl_first_insns): New.
892
        (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if
893
        transformations are disabled.
894
        (next_instrs_are_b_retw): Use new xtensa-isa.h functions.  Handle
895
        multislot instructions.
896
        (xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags):
897
        Likewise.  Also error if transformations are disabled.
898
        (unrelaxed_frag_max_size): New.
899
        (unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new
900
        xtensa-isa.h functions.
901
        (xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use
902
        xtensa_opcode_is_loop instead of is_loop_opcode.
903
        (get_text_align_power): Replace as_fatal with assertion.
904
        (get_text_align_fill_size): Iterate instead of using modulus when
905
        use_nops is false.
906
        (get_noop_aligned_address): Assert that this is for a machine-dependent
907
        RELAX_ALIGN_NEXT_OPCODE frag.  Use next_frag_opcode_is_loop,
908
        xg_get_single_size, and frag_format_size.
909
        (get_widen_aligned_address): Rename to ...
910
        (get_aligned_diff): ... this function.  Add max_diff parameter.
911
        Remove handling of rs_align/rs_align_code frags.  Use
912
        next_frag_format_size, get_text_align_power, get_text_align_fill_size,
913
        next_frag_opcode_is_loop, and xg_get_single_size.  Compute max_diff
914
        and pass it back to caller.
915
        (xtensa_relax_frag): Use relax_frag_loop_align.  Add code for new
916
        RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN,
917
        RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types.  Check relax_seen.
918
        (relax_frag_text_align): Rename to ...
919
        (relax_frag_loop_align): ... this function.  Assume loops can only be
920
        in the first slot of an instruction.
921
        (relax_frag_add_nop): Use assemble_nop instead of constructing an OR
922
        instruction.  Remove call to frag_wane.
923
        (relax_frag_narrow): Rename to ...
924
        (relax_frag_for_align): ... this function.  Extend to handle
925
        RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with
926
        RELAX_NARROW for the first slot.
927
        (find_address_of_next_align_frag, bytes_to_stretch): New.
928
        (future_alignment_required): Use find_address_of_next_align_frag and
929
        bytes_to_stretch.  Look ahead to subsequent frags to make smarter
930
        alignment decisions.
931
        (relax_frag_immed): Add format, slot, and estimate_only parameters.
932
        Check if transformations are enabled for b_j_loop_end workaround.
933
        Use new xtensa-isa.h functions and handle multislot instructions.
934
        Update call to xg_assembly_relax.
935
        (md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE,
936
        RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP
937
        frag types.
938
        (convert_frag_narrow): Add segP, format and slot parameters.  Call
939
        convert_frag_immed for branch instructions.  Adjust calls to
940
        tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf.  Use
941
        xg_get_single_size and xg_get_single_format.
942
        (convert_frag_fill_nop): New.
943
        (convert_frag_immed): Add format and slot parameters.  Handle multislot
944
        instructions and use new xtensa-isa.h functions.  Update calls to
945
        tinsn_immed_from_frag and xg_assembly_relax.  Check if transformations
946
        enabled for b_j_loop_end workaround.  Use build_nop instead of
947
        assemble_nop.  Check is_specific_opcode flag.  Check for unreachable
948
        frags.  Use xg_get_single_size.  Handle O_pltrel.
949
        (fix_new_exp_in_seg): Remove check for old plt flag.
950
        (convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and
951
        xtensa_insnbuf_to_chars.  Call tinsn_immed_from_frag.  Change check
952
        for loop opcode to an assertion.  Mark all frags up to the end of the
953
        loop as not transformable.
954
        (get_last_insn_flags, set_last_insn_flags): Use get_subseg_info.
955
        (get_subseg_info): New.
956
        (xtensa_move_literals): Call xtensa_set_frag_assembly_state.  Add null
957
        check for dest_seg.
958
        (xtensa_switch_to_literal_fragment): Rewrite to handle absolute
959
        literals and use xtensa_switch_to_non_abs_literal_fragment otherwise.
960
        (xtensa_switch_to_non_abs_literal_fragment): New.
961
        (cache_literal_section): Add is_code parameter and pass it through to
962
        retrieve_literal_seg.
963
        (retrieve_literal_seg): Add is_code parameter and use it to set the
964
        flags on the literal section.  Handle case where head parameter is 0.
965
        (get_frag_is_no_transform, set_frag_is_specific_opcode,
966
        set_frag_is_no_transform): New.
967
        (xtensa_create_property_segments): Add end_property_function parameter
968
        and pass it through to add_xt_block_frags.  Call bfd_get_section_flags
969
        and skip SEC_DEBUGGING and !SEC_ALLOC sections.
970
        (xtensa_create_xproperty_segments, section_has_xproperty): New.
971
        (add_xt_block_frags): Add end_property_function parameter and call it
972
        if it is non-zero.  Call xtensa_frag_flags_init.
973
        (xtensa_frag_flags_is_empty, xtensa_frag_flags_init,
974
        get_frag_property_flags, frag_flags_to_number,
975
        xtensa_frag_flags_combinable, xt_block_aligned_size,
976
        xtensa_xt_block_combine, add_xt_prop_frags,
977
        init_op_placement_info_table, opcode_fits_format_slot,
978
        xg_get_single_size, xg_get_single_format): New.
979
        (istack_push): Inline call to tinsn_copy.
980
        (tinsn_copy): Delete.
981
        (tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and
982
        CONST16 opcodes.  Handle O_big, O_illegal, and O_absent.
983
        (tinsn_has_complex_operands): Handle O_hi16 and O_lo16.
984
        (tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h
985
        functions.  Handle invisible operands.
986
        (tinsn_to_slotbuf): New.
987
        (tinsn_check_arguments): Use new xtensa-isa.h functions.
988
        (tinsn_from_chars): Add slot parameter.  Rewrite using xg_init_vinsn,
989
        vinsn_from_chars, and xg_free_vinsn.
990
        (tinsn_from_insnbuf): New.
991
        (tinsn_immed_from_frag): Add slot parameter and handle multislot
992
        instructions.  Handle symbol differences.
993
        (get_num_stack_text_bytes): Use xg_get_single_size.
994
        (xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes,
995
        xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register,
996
        get_expr_register, set_expr_symbol_offset_diff): New.
997
        * config/tc-xtensa.h (MAX_SLOTS): Define.
998
        (xtensa_relax_statesE): Move from tc-xtensa.c. Add
999
        RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS,
1000
        RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and
1001
        RELAX_NONE types.
1002
        (RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c.
1003
        (xtensa_frag_type struct): Add is_assembly_state_set,
1004
        use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode,
1005
        is_align, is_text_align, alignment, and is_first_loop_insn fields.
1006
        Replace is_generics and is_relax fields by is_no_transform field.
1007
        Delete is_text and is_longcalls fields.  Change text_expansion and
1008
        literal_expansion to arrays of MAX_SLOTS entries.  Add arrays of
1009
        per-slot information: literal_frags, slot_subtypes, slot_symbols,
1010
        slot_sub_symbols, and slot_offsets.  Add fr_prev field.
1011
        (xtensa_fix_data struct): New.
1012
        (xtensa_symfield_type struct): Delete plt field.
1013
        (xtensa_block_info struct): Move definition to tc-xtensa.h.  Add
1014
        forward declaration here.
1015
        (xt_section_type enum): Delete xt_insn_sec.  Add xt_prop_sec.
1016
        (XTENSA_SECTION_RENAME): Undefine.
1017
        (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT,
1018
        tc_unrecognized_line, md_do_align, md_elf_section_change_hook,
1019
        HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define.
1020
        (TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete.
1021
        (unit_num_copies_func, opcode_num_units_func,
1022
        opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New.
1023
        (resource_table struct): New.
1024
        * config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10.
1025
        (TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype,
1026
        literal_space, symbol, sub_symbol, offset, and literal_frag fields.
1027
        (tinsn_copy): Delete prototype.
1028
        (vliw_insn struct): New.
1029
        * config/xtensa-relax.c (insn_pattern_struct): Add options field.
1030
        (widen_spec_list): Add option conditions for density and boolean
1031
        instructions.  Add expansions using CONST16 and conditions for using
1032
        CONST16 vs. L32R.  Use new Xtensa LX RSR/WSR syntax.  Add entries for
1033
        predicted branches.
1034
        (simplify_spec_list): Add option conditions for density instructions.
1035
        Add entry for NOP instruction.
1036
        (append_transition): Add cmp function pointer parameter and use it to
1037
        insert the new entry in order.
1038
        (operand_function_LOW16U, operand_function_HI16U): New.
1039
        (xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle
1040
        OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
1041
        (enter_opname, split_string): Use xstrdup instead of strdup.
1042
        (init_insn_pattern): Initialize new options field.
1043
        (clear_req_or_option_list, clear_req_option_list,
1044
        clone_req_or_option_list, clone_req_option_list, parse_option_cond):
1045
        New.
1046
        (parse_insn_pattern): Parse option conditions.
1047
        (transition_applies): New.
1048
        (build_transition): Use new xtensa-isa.h functions.  Fix incorrectly
1049
        swapped last arguments in calls to append_constant_value_condition.
1050
        Call clone_req_option_list.  Add warning about invalid opcode.
1051
        Handle LOW16U and HI16U function names.
1052
        (build_transition_table): Add cmp parameter and use it in calls to
1053
        append_transition.  Use new xtensa-isa.h functions.  Check
1054
        transition_applies before adding entries.
1055
        (xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and
1056
        pass it through to build_transition_table.
1057
        * config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList,
1058
        ReqOption, transition_cmp_fn): New types.
1059
        (OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
1060
        (transition_rule struct): Add options field.
1061
        * doc/as.texinfo (Overview): Update Xtensa options.
1062
        * doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density,
1063
        --[no-]relax, and --[no-]generics options.  Update descriptions of
1064
        --text-section-literals and --[no-]longcalls.  Add
1065
        --[no-]absolute-literals and --[no-]transform.
1066
        (Xtensa Syntax): Add description of syntax for FLIX instructions.
1067
        Remove use of "generic" and "specific" terminology for opcodes.
1068
        (Xtensa Registers): Generalize the syntax description to include
1069
        user-defined register files.
1070
        (Xtensa Automatic Alignment): Update.
1071
        (Xtensa Branch Relaxation): Mention limitation of unconditional jumps.
1072
        (Xtensa Call Relaxation): Linker can now remove most of the overhead.
1073
        (Xtensa Directives): Remove confusing rules about precedence.
1074
        (Density Directive, Relax Directive): Delete.
1075
        (Schedule Directive): New.
1076
        (Generics Directive): Rename to ...
1077
        (Transform Directive): ... this node.
1078
        (Literal Directive): Update for absolute literals.  Missing
1079
        literal_position directive is now an error.
1080
        (Literal Position Directive): Update for absolute literals.
1081
        (Freeregs Directive): Delete.
1082
        (Absolute Literals Directive): New.
1083
        (Frame Directive): Minor editing.
1084
        * Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf):
1085
        Update dependencies.
1086
        * Makefile.in: Regenerate.
1087
 
1088
2004-10-07  Richard Sandiford  
1089
 
1090
        * config/tc-mips.c (append_insn): Use fix_new rather than fix_new_exp
1091
        to build the second and third fixups for a composite relocation.
1092
        (macro_read_relocs): New function.
1093
        (macro_build): Use it.
1094
        (s_cpsetup): Pass all three composite relocation codes to macro_build.
1095
        Simplify fragging code accordingly.
1096
        (s_gpdword): Use fix_new rather than fix_new_exp for the second part
1097
        of the composite relocation.  Set fx_tcbit in both fixups.
1098
 
1099
2004-10-07  Richard Sandiford  
1100
 
1101
        * config/tc-mips.c (append_insn): Set fx_tcbit for composite relocs.
1102
        (md_apply_fix3): Don't treat composite relocs as done.
1103
 
1104
2004-10-07  Jan Beulich 
1105
 
1106
        * macro.c (macro_expand_body): When ELF, use .LL rather than LL as
1107
        prefix for symbol names generated from the LOCAL macro directive.
1108
 
1109
        * dw2gencfi.c (select_cie_for_fde): When separating CIE out from
1110
        FDE, treat a DW_CFA_remember_state as we do a DW_CFA_advance_loc.
1111
 
1112
2004-10-07  Tomer Levi  
1113
 
1114
        * config/tc-crx.c (preprocess_reglist): Handle Co-processor
1115
        Special registers.
1116
        (md_assemble): Add error checking for Co-Processor instructions.
1117
        (get_cinv_parameters): Add 'b' option to invalidate the
1118
        branch-target cache.
1119
 
1120
2004-10-05  Paul Brook  
1121
 
1122
        * config/tc-arm.c (unwind): New variable.
1123
        (vfp_sp_encode_reg): New function.
1124
        (vfp_sp_reg_required_here): Use it.
1125
        (vfp_sp_reg_list, vfp_dp_reg_list): Remove.
1126
        (vfp_parse_reg_list): New function.
1127
        (s_arm_unwind_fnstart, s_arm_unwind_fnend, s_arm_unwind_cantunwind,
1128
        s_arm_unwind_personality, s_arm_unwind_personalityindex,
1129
        s_arm_unwind_handlerdata, s_arm_unwind_save, s_arm_unwind_movsp,
1130
        s_arm_unwind_pad, s_arm_unwind_setfp, s_arm_unwind_raw): New
1131
        functions.
1132
        (md_pseudo_table): Add them.
1133
        (do_vfp_reg2_from_sp2): Use vfp_parse_reg_list and vfp_sp_encode_reg.
1134
        (do_vfp_sp2_from_reg2, vfp_sp_ldstm, vfp_dp_ldstm): Ditto.
1135
        (set_section, add_unwind_adjustsp, flush_pending_unwind,
1136
        finish_unwind_opcodes, start_unwind_section, create_unwind_entry,
1137
        require_hashconst, add_unwind_opcode): New functions.
1138
        * doc/c-arm.texi: Document unwinding opcodes.
1139
        * NEWS: Mention the new feature.
1140
 
1141
2004-10-04  Eric Christopher  
1142
 
1143
        * config/tc-mips.c (md_apply_fix3): Remove erroneous assert.
1144
 
1145
2004-10-01  H.J. Lu  
1146
 
1147
        * config/tc-ppc.c (md_apply_fix3): Call S_SET_THREAD_LOCAL for
1148
        TLS relocations.
1149
        * config/tc-s390.c (md_apply_fix3): Likewise.
1150
        * config/tc-sparc.c (md_apply_fix3): Likewise.
1151
 
1152
2004-10-01  Paul Brook  
1153
 
1154
        * config/tc-arm.c (arm_elf_section_type): New function.
1155
        (arm_elf_change_section): Set section link for exidx sections.
1156
        * config/tc-arm.h (arm_elf_section_type): Add prototype.
1157
        (md_elf_section_type): Define.
1158
 
1159
2004-10-01  Bill Farmer  
1160
 
1161
        * config/tc-pdp11.c (md_apply_fix3): Change to sign of the SOB
1162
        instruction's offset.
1163
 
1164
2004-10-01  Adam Nemet  
1165
 
1166
        * (TARGET_FORMAT): Remove LynxOS COFF definition.
1167
 
1168
2004-10-01  Ravi Ramaseshan  
1169
 
1170
        * config/tc-arc.c (tc_gen_reloc): Don't assume fixP->fx_addsy is an
1171
        asymbol *, instead use symbol_get_bfdsym.
1172
 
1173
2004-09-30  Linus Nielsen Feltzing  
1174
 
1175
        * config/tc-m68k.c (select_control_regs): Add mcf5249.
1176
 
1177
2004-09-30  Paul Brook  
1178
 
1179
        * config/tc-arm.c (do_smi, do_nop): New functions.
1180
        (insns): Add ARMv6ZK instructions.
1181
        (md_apply_fix3): Handle BFD_RELOC_ARM_SMI.
1182
        (tc_gen_reloc): Ditto.
1183
        (arm_cpus): Add mpcore and arm1176.
1184
        (arm_archs): Add armv6{k,z,zk}.
1185
        * doc/c-arm.texi: Document new cores and architectures.
1186
 
1187
2004-09-30  Nick Clifton  
1188
 
1189
        * config/tc-arm.c: Use ISO C90 formatting.
1190
 
1191
2004-09-30  Vladimir Ivanov  
1192
 
1193
        * config/tc-arm.c (mav_reg_required_here): Allow REG_TYPE_CN
1194
        as alternative when REG_TYPE_MVF, REG_TYPE_MVD, REG_TYPE_MVFX or
1195
        REG_TYPE_MVDX is expected.
1196
 
1197
2004-09-29  Marc Bevand  
1198
 
1199
        * doc/c-i386.texi (i386-Mnemonics): Fix typo.
1200
 
1201
2004-09-21  James E Wilson  
1202
 
1203
        * config/tc-ia64.c (ENCODED_PSP_OFFSET): New.
1204
        (output_rp_psprel, output_pfs_psprel, output_preds_psprel,
1205
        output_spill_base, output_unat_psprel, output_lc_psprel,
1206
        output_fpsr_psprel, output_priunat_psprel, output_bsp_psprel,
1207
        output_bsprestore_psprel, output_rnat_psprel, output_spill_psprel,
1208
        output_spill_psprel_p): Use it.
1209
 
1210
2004-09-20  Tomer Levi  
1211
 
1212
        * config/tc-crx.c (handle_LoadStor): New function.
1213
        Handle load/stor unique instructions before parsing.
1214
 
1215
2004-09-17  Paul Brook  
1216
 
1217
        * config/tc-arm.c (s_arm_rel31): New funciton.
1218
        (md_pseudo_table): Add .rel31.
1219
        (md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2,
1220
        BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31.
1221
        (tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2.
1222
        (arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2.
1223
        (arm_parse_reloc): Add (target2).
1224
 
1225
2004-09-17  Alan Modra  
1226
 
1227
        * Makefile.am: Run "make dep-am".
1228
        * Makefile.in: Regenerate.
1229
        * aclocal.m4: Regenerate.
1230
        * configure: Regenerate.
1231
        * doc/Makefile.in: Regenerate.
1232
        * po/POTFILES.in: Regenerate.
1233
        * po/gas.pot: Regenerate.
1234
 
1235
2004-09-14  Hideki IWAMOTO  
1236
 
1237
        * config/tc-mmix.c [!LLONG_MIN]: Correct #elsif to #elif.
1238
        [!LLONG_MAX]: Ditto.
1239
 
1240
2004-09-13  Paul Brook  
1241
 
1242
        * config/tc-arm.c: Rename RELABS to TARGET1.
1243
 
1244
2004-09-13  Alan Modra  
1245
 
1246
        * messages.c (as_internal_value_out_of_range): Cast values passed
1247
        to as_bad_where or as_warn_where to proper type.
1248
 
1249
2004-09-11  Theodore A. Roth  
1250
 
1251
        * config/tc-avr.c: Add support for
1252
        atmega48, atmega88, atmega168, attiny13, attiny2313, at90can128.
1253
 
1254
2004-09-09  Alan Modra  
1255
 
1256
        * dw2gencfi.c (select_cie_for_fde): When separating CIE out
1257
        from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc.
1258
 
1259
2004-09-08  Paul Brook  
1260
 
1261
        * config/obj-elf.c (obj_elf_section_type): Handle init_array,
1262
        fini_array and preinit_array section types.
1263
        * config/tc-ia64.c (ia64_elf_section_type): Remove init_array
1264
        and fini_array.
1265
        * doc/as.texinfo: Document extra section types.
1266
 
1267
2004-09-02  Mark Mitchell  
1268
 
1269
        * Makefile.am (TARG_ENV_HFILES): Add te-symbian.h.
1270
        * Makefile.in: Regenerated.
1271
        * configure.in: Set em for arm*-*-symbianelf*.
1272
        * configure: Regenerated.
1273
        * config/tc-arm.c (elf32_arm_target_format): Use Symbian target
1274
        vectors when appropriate.
1275
        * config/te-symbian.h: New file.
1276
 
1277
2004-09-03  Tomer Levi  
1278
 
1279
        * config/tc-crx.c (gettrap): Exception vector can be case
1280
        insensitive.
1281
        (process_label_constant): Fix a 32-bit displacement bug in branch
1282
        instructions.
1283
        (get_operandtype) : Bug fix, wrong operand was used.
1284
        (process_label_constant): Initialize relocation type to
1285
        BFD_RELOC_NONE
1286
 
1287
2004-09-01  Richard Earnshaw < reanrsha@arm.com>
1288
 
1289
        * tc-arm.c (arm_cpus, arm_fpus): Allow -s as well as s
1290
        for synthesizable cores.
1291
 
1292
        * doc/c-arm.texi (ARM Options): Document canonical names of CPUs.
1293
 
1294
2004-08-25  Dmitry Diky  
1295
 
1296
        * config/tc-msp430.c:   Clean-up the code.
1297
        (md_relax_table): New relax table.
1298
        (mcu_types): Sort MCU types.
1299
        (md_pseudo_table): Add .profiler pseudo handler.
1300
        (pow2value): New function.
1301
        (msp430_profiler): New function.
1302
        (msp430_operands): Add new insns handlers.
1303
        (msp430_srcoperand): Add register operand handler, allow complex
1304
        expressions.
1305
        (md_estimate_size_before_relax): Rewritten.
1306
        (md_convert_frag): Rewritten.
1307
        (msp430_relax_frag): New function.
1308
        * config/tc-msp430.h (md_relax_frag): define macro
1309
        * doc/c-msp430.texi: Update information.
1310
 
1311
2004-08-24  Nick Clifton  
1312
 
1313
        * as.c (std_shortopts): Allow -g to take an optional argument.
1314
        (parse_args): Pass any switch starting with -g on to the backend
1315
        for parsing.
1316
 
1317
2004-08-18  Mark Mitchell  
1318
 
1319
        * configure.in (arm*-*-symbianelf*): New target.
1320
        (arm*-*-eabi*): Likewise.
1321
        * configure: Regenerated.
1322
 
1323
2004-08-18  Thiemo Seufer  
1324
        * config/tc-mips.c (append_insn): Handle delay slots in branch likely
1325
        correctly.
1326
 
1327
2004-08-18  Jakub Jelinek  
1328
 
1329
        * config/tc-ia64.c (start_unwind_section): Add linkonce_empty
1330
        argument, don't do anything if current section is not
1331
        .gnu.linkonce.t.* and linkonce_empty is set.
1332
        (generate_unwind_image, dot_endp): Adjust callers, call
1333
        start_unwind_section (*, 1) if nothing will be put into the
1334
        section.
1335
 
1336
2004-08-17  Nick Clifton  
1337
 
1338
        * as.c (MD_DEBUG_FORMAT_SELECTOR): Provide default definition.
1339
        (show_usage): Add -g.
1340
        (std_longopts): Add --gen-debug.  Alpha sort the table.
1341
        (parse_args): Print an error message if a switch is not handled.
1342
        Handle the -g switch, calling md_debug_format_selector() if
1343
        necessary.
1344
        * NEWS: Mention new feature.
1345
        * doc/as.texinfo: Document new switch.
1346
        * doc/internals.texi: Document behaviour of md_parse_option.
1347
 
1348
        * config/tc-arm.c (md_parse_option): Do not issue an error message
1349
        if the switch is not recognised.
1350
        * config/tc-m68k.c (md_parse_option): Likewise.
1351
        * config/tc-pdp11.c (md_parse_option): Likewise.
1352
        * config/tc-v850.c (md_parse_option): Likewise.
1353
 
1354
        * as.h: Fix up formatting.
1355
        * tc.h: Likewise.
1356
 
1357
2004-08-16  Nick Clifton  
1358
 
1359
        * macro.c (macro_set_alternate): Use ISO C90 formatting.
1360
 
1361
        * configure.in: Sort architecture based tables alphabetically.
1362
        * configure: Regenerate.
1363
 
1364
2004-08-16  Alan Modra  
1365
 
1366
        * config/tc-ppc.c (tc_ppc_regname_to_dw2regnum ): Replace
1367
        { "cc", 68 }, with { "cr", 70 }.
1368
 
1369
2004-08-13 Jan Beulich 
1370
           Nick Clifton 
1371
 
1372
        * as.c: Add and handle new --alternate command line option.
1373
        * macro.c (macro_set_alternate): New.
1374
        * macro.h (macro_set_alternate): Declare.
1375
        * read.c: Add and handle new .altmacro and .noaltmacro directives.
1376
        * doc/as.texinfo: Document new command line option and pseudo-ops
1377
        as well as insert documentation originating from gasp about
1378
        alternate macro syntax.
1379
        * NEWS: Mention new command line option and pseudo-ops.
1380
 
1381
2004-08-10  Mark Mitchell  
1382
 
1383
        * expr.c (operand): Handle the "~", "-", and "!" operators applied
1384
        to bignums.
1385
 
1386
2004-08-06  Paul Brook  
1387
 
1388
        * config/tc-arm.c (md_apply_fix3, tc_gen_reloc, arm_parse_reloc):
1389
        Handle new relocations.
1390
        * include/elf/arm.h (elf_arm_reloc_type): Add new EABI relocations.
1391
 
1392
2004-08-05  Bob Wilson  
1393
 
1394
        * write.c (relax_segment): Use was_address instead of address when
1395
        setting fr_fix field for align frag due to backwards .org.
1396
 
1397
2004-07-29  Alexandre Oliva  
1398
 
1399
        Introduce SH2a support.
1400
        2004-02-24  Corinna Vinschen  
1401
        * config/tc-sh.c (get_specific): Change arch_sh2a_up to
1402
        arch_sh2a_nofpu_up.
1403
        2004-02-24  Corinna Vinschen  
1404
        * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling.
1405
        2004-02-20  Corinna Vinschen  
1406
        * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition
1407
        to end of conditional expression.
1408
        2004-02-20  Corinna Vinschen  
1409
        * config/tc-sh.c: Add sh2a-nofpu support.
1410
        2003-12-29  DJ Delorie  
1411
        * tc-sh.c: Add sh2a support.
1412
        (parse_reg): Add tbr.
1413
        (parse_at): Support @@(disp,tbr).
1414
        (get_specific): Support sh2a opcodes.
1415
        (insert4): New, for 4 byte relocs.
1416
        (build_Mytes): Support sh2a opcodes.
1417
        (md_apply_fix3_Mytes): Support sh2a opcodes.
1418
        2003-12-02  Michael Snyder  
1419
        * config/tc-sh.c (md_parse_option): Handle sh2a.
1420
        (sh_elf_final_processing): Ditto.
1421
 
1422
2004-07-27  Jason Thorpe  
1423
 
1424
        * config/tc-hppa.h (TARGET_FORMAT): Set to "elf32-hppa-netbsd"
1425
        for TE_NetBSD.
1426
 
1427
2004-07-27  Alan Modra  
1428
 
1429
        * config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big.
1430
        (ppc_arch): Expand comment.
1431
 
1432
2004-07-27  Tomer Levi  
1433
 
1434
        * config/tc-crx.c: Support evaluating the difference between two
1435
        symbols.
1436
        * config/tc-crx.h: Likewise.
1437
 
1438
2004-07-26  H.J. Lu  
1439
 
1440
        * config/tc-ia64.c (start_unwind_section): Set the linked-to
1441
        section.
1442
        (ia64_elf_section_change_hook): Set the linked-to section for
1443
        SHT_IA_64_UNWIND.
1444
 
1445
2004-07-26  Dmitry Diky  
1446
 
1447
        * config/tc-msp430.c: Add new subtargets: msp430x1610,
1448
        msp430x1611, msp430x1612, msp430x415, msp430x417, msp430xG437,
1449
        msp430xG438, msp430xG439.
1450
 
1451
2004-07-25  Daniel Jacobowitz  
1452
 
1453
        * doc/as.texinfo (Section, PushSection): Correct documentation
1454
        for ELF.
1455
 
1456
2004-07-21  Jan Beulich  
1457
 
1458
        * config/tc-i386.c (optimize_imm): Adjust immediates to only those
1459
        permissible for the selected instruction suffix.
1460
        (match_template): Don't permit 64-bit general purpose operands in
1461
        32-bit mode.
1462
        (finalize_imm): Permit 64-bit immediates.
1463
        (build_modrm_byte): Don't treat 32-bit addressing in 64-bit mode
1464
        specially except for the width of the used base and/or index
1465
        registers.  For 32-bit displacements, use sign-extended
1466
        relocations only when using 64-bit addressing.
1467
        Force zero displacement on rip-relative addressing when there is
1468
        no other displacement.
1469
        (i386_index_check): Don't treat 32-bit addressing in 64-bit mode
1470
        specially except for the width of the used base and/or index
1471
        registers.
1472
        (parse_register): Disallow Reg64 registers in 32-bit mode.
1473
 
1474
        * config/tc-i386.c: For DefaultSize instructions, don't guess a 'q'
1475
        suffix if the instruction doesn't support it.
1476
 
1477
2004-07-20  Maciej W. Rozycki  
1478
 
1479
        * config/tc-mips.c (append_insn): Handle constant expressions with
1480
        no associated relocation.
1481
        (mips_ip): Cancel the expression after use for the Q format
1482
        specifier.
1483
        (parse_relocation): Return no relocation for unsupported
1484
        operators.
1485
        (my_getSmallExpression): Return no relocation if no relocation
1486
        operators are used.
1487
 
1488
2004-07-19  John David Anglin  
1489
 
1490
        * config/obj-som.c (adjust_stab_sections): Add prototype.
1491
        (obj_som_compiler, obj_som_version, obj_som_copyright,
1492
        adjust_stab_sections): Add ATTRIBUTE_UNUSED to unused arguments.
1493
        * config/tc-hppa.c (update_subspace):  Likewise.
1494
        (is_defined_subspace): Amplify comment.
1495
        * config/obj-som.h (som_frob_file): Add prototype.
1496
 
1497
2004-07-19  Christopher Faylor  
1498
            H.J. Lu  
1499
 
1500
        * subsegs.c (section_symbol): Don't create a new segment when
1501
        existing segment is undefined.
1502
 
1503
2004-07-16  Richard Earnshaw  
1504
 
1505
        * config/tc-arm.c: Include include/opcode/arm.h.
1506
        (ARM_EXT_*, ARM_ARCH_*, ARM_ANY, ARM_ALL, COPROC_ANY): Delete.
1507
        (FPU_FPA_EXT_* FPU_VFP_EXT_*, FPU_ANY, FPU_NONE, FPU_MAVERICK): Delete.
1508
        (FPU_ARCH_*): Delete.
1509
        * Makefile.am: Update dependencies.
1510
        * Makefile.in: Regenerate.
1511
 
1512
2004-07-15  Nick Clifton  
1513
 
1514
        * configure.in: Accept armbe as a big-endian arm configuration.
1515
        * configure: Regenerate.
1516
 
1517
2004-07-13  Thomas Nystrom  
1518
 
1519
        * config/tc-i386.c (T_SHIFTOP): New constant.
1520
        (intel_e05_1): Handle '&', '|' and T_SHIFTOP.
1521
        (intel_el1): Handle '~'.
1522
        (intel_get_token): Handle '<>', '&', '|' and '~'.
1523
 
1524
2004-07-13  Nick Clifton 
1525
 
1526
        (md_assemble): Remove spurious newline from end of as_bad error
1527
        message.
1528
        (intel_e05_1): Likewise.
1529
        (intel_e11): Likewise.
1530
        (intel_match_token): Likewise.
1531
 
1532
2004-07-11  Andreas Schwab  
1533
 
1534
        * config/tc-m68k.c: Convert to C90.  Remove redundant
1535
        declarations.  Indentation fixup.
1536
        [M68KCOFF]: Include "obj-coff.h" instead of declaring
1537
        obj_coff_section ourselves.
1538
 
1539
2004-07-09  James E Wilson  
1540
 
1541
        * config/tc-ia64.c (default_big_endian): New.
1542
        (dot_byteorder, md_begin): Use it.
1543
        (md_parse_option): Set it.
1544
 
1545
2004-07-09  Nick Clifton  
1546
 
1547
        * configure.in: Change sh-sybmian-elf to sh-*-symbianelf.
1548
        * configure: Regenerate.
1549
        * NEWS: Change sh-sybmian-elf to sh-*-symbianelf.
1550
        * config/tc-sh.c (sh_elf_final_processing): Use renamed version of
1551
        sh_find_elf_flags if necessary.
1552
 
1553
2004-07-08  Richard Sandiford  
1554
 
1555
        * config/tc-mips.c (mips_fix_adjustable): If the full addend is
1556
        going to be split into more than one in-place addend, return 0
1557
        for relocations against mergeable sections.  Associate comments
1558
        with code.
1559
 
1560
2004-07-07  Tomer Levi  
1561
 
1562
        * Makefile.am (CPU_TYPES): Add crx.
1563
        (TARGET_CPU_CFILES): Add config/tc-crx.c.
1564
        (TARGET_CPU_HFILES): Add config/tc-crx.h.
1565
        (DEPTC_crx_elf): New target.
1566
        (DEPOBJ_crx_elf): Likewise.
1567
        (DEP_crx_elf): Likewise.
1568
        * Makefile.in: Regenerate.
1569
        * configure.in: Add crx* target.
1570
        * configure: Regenerate.
1571
        * config/tc-crx.c: New file.
1572
        * config/tc-crx.h: New file.
1573
        * NEWS: Mention new target.
1574
 
1575
2004-07-06  Nick Clifton  
1576
 
1577
        * config.in: Undefine TARGET_SYMBIAN by default.
1578
        * configure.in:
1579
        * configure: Regenerate. Add sh-symbian-elf target.  If
1580
        selected define TARGET_SYMBIAN.
1581
        * config/tc-sh.h (TARGET_FORMAT): Select a Symbian target
1582
        format if TARGET_SYMBIAN has been defined.
1583
 
1584
        * output-file.c (output_file_create): Report the target format
1585
        chosen when bfd_openw reports that it is invalid.
1586
 
1587
        * config/obj-coff.c (coff_pseudo_table): Only define the weak
1588
        pseudo for BFD based assemblers.
1589
 
1590
2004-07-05  Andrew Stubbs 
1591
 
1592
        gas:
1593
        * config/tc-sh.c (md_assemble): Change isspace to ISSPACE.
1594
        (md_parse_option): Remove redundant -isa testing.
1595
        Make bfd_arch variable const.
1596
        (md_show_usage): Make bfd_arch variable const.
1597
 
1598
2004-07-03  James E Wilson  
1599
 
1600
        * config/tc-ia64.c (emit_one_bundle): Check and set insn_addr.
1601
        * config/tc-ia64.h (md_frag_check): Define.
1602
 
1603
2004-07-03  Aaron W. LaFramboise  
1604
 
1605
        * config/obj-coff.c (obj_coff_weak): New .weak syntax for PE weak
1606
        externals.
1607
        * doc/as.texinfo (Weak): Document PE weak symbols.
1608
 
1609
2004-07-03  Richard Sandiford  
1610
 
1611
        * config/tc-mips.c (HAVE_IN_PLACE_ADDENDS): New macro.
1612
        (reloc_needs_lo_p): Only return true if HAVE_IN_PLACE_ADDENDS.
1613
        (mips_frob_file): Rework so that only a single pass through the
1614
        relocs is needed.  Allow %lo()s to have higher offsets than their
1615
        corresponding %hi()s or %got()s.
1616
 
1617
2004-07-02  Nick Clifton  
1618
 
1619
        * config/tc-arm.c (md_apply_fix3:BFD_RELOC_ARM_IMMEDIATE): Do not
1620
        allow values which have come from undefined symbols.
1621
        Always consider this fixup to have been processed as a reloc
1622
        cannot be generated for it.
1623
 
1624
2004-07-02  Alan Modra  
1625
 
1626
        * frags.h (struct frag): Add has_code and insn_addr fields.
1627
        * write.c (cvt_frag_to_fill): Invoke md_frag_check.
1628
        * config/tc-ppc.c (md_assemble): Check and set insn_addr.
1629
        * config/tc-ppc.h (md_frag_check): Define.
1630
 
1631
2004-06-28  Maciej W. Rozycki  
1632
 
1633
        * doc/Makefile.am (info): Rename goal to...
1634
        (info-local): ... this, to preserve implicit dependencies.
1635
        * doc/Makefile.in: Regenerate with automake 1.8.5.
1636
 
1637
2004-06-25  Kazuhiro Inaoka  
1638
 
1639
        * config/tc-m32r.c (md_convert_frag): Changed for @PLT.
1640
        (m32r_cgen_record_fixup_exp): Changed for  @GOTOFF, @GOT.
1641
        (m32r_fix_adjustable): Changed for  @GOTOFF, @GOT, @PLT.
1642
        (tc_gen_reloc): Likewise.
1643
        (m32r_end_of_match): Add for @GOTOFF, @GOT, @PLT.
1644
        (m32r_parse_name): Likewise.
1645
        (m32r_cgen_parse_fix_exp): Likewise.
1646
        * config/tc-m32r.h (md_parse_name): Define for @GOTOFF, @GOT, @PLT.
1647
        (O_PIC_reloc): Likewise.
1648
        (TC_CGEN_PARSE_FIX_EXP): Likewise..
1649
        * cgen.c (gas_cgen_parse_operand): Add TC_CGEN_PARSE_FIX_EXP
1650
        for @GOTOFF, @GOT, @PLT.
1651
 
1652
2004-06-21 Jan Beulich  
1653
 
1654
        * gas/symbols.c: While discarding ordinary local absolute symbols
1655
        when --strip-local-absolute is in effect, retain file symbols.
1656
 
1657
2004-06-20  Andreas Schwab  
1658
 
1659
        * config/tc-m68k.c (mri_chip): Replace current_chip, not augment.
1660
        (md_parse_option): Likewise.
1661
 
1662
2004-06-17  Jan Beulich 
1663
 
1664
        * config/tc-i386.c: Deal with LEX_QM the same way as with LEX_AT.
1665
        * config/te-netware.h: New file.
1666
        * config/te-ppcnw.h: Delete: Obsolete.
1667
        * configure.in: Eliminate ill NetWare targets. Make generic
1668
        NetWare target use proper emulation.
1669
        * Makefile.am: Eliminate reference to obsolete te-ppcnw.h, add
1670
        reference to new te-netware.h.
1671
        * configure: Regenerate.
1672
        * Makefile.in: Regenerate.
1673
 
1674
2004-06-15  Martin Schwidefsky  
1675
 
1676
        * config/tc-s390.c (s390_insn): Avoid incorrect signed/unsigned
1677
        comparison in .insn pseudo operation.
1678
 
1679
2004-06-15  Alan Modra  
1680
 
1681
        * config/obj-coff.c (coff_adjust_section_syms): Use
1682
        bfd_get_section_size instead of bfd_get_section_size_before_reloc.
1683
        (coff_frob_section): Likewise.
1684
        * config/tc-mips.c (md_apply_fix3): Likewise.
1685
        * config/obj-elf.c (elf_frob_file): Use bfd_set_section_size.
1686
        (elf_frob_file_after_relocs): Likewise.
1687
 
1688
2004-06-10  John David Anglin  
1689
 
1690
        * config/tc-hppa.c (log2): Rename to exact_log2.
1691
        (pa_next_subseg): Delete unused function.
1692
        (create_new_space): Mark unused arguments with ATTRIBUTE_UNUSED.
1693
        (create_new_subspace): Likewise.
1694
 
1695
        Bug gas/213
1696
        * config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake
1697
        labels.  Fix warning.
1698
 
1699
2004-05-28  DJ Delorie  
1700
 
1701
        * config/tc-mn10300.h (tc_fix_adjustable): Define.
1702
        * config/tc-mn10300.c (mn10300_fix_adjustable): Don't adjust debug
1703
        or non-merged symbols.
1704
 
1705
2004-05-28  H.J. Lu  
1706
 
1707
        * config/tc-ia64.c (remove_marked_resource): Save, clear and
1708
        restore the old slot when inserting srlz.i/srlz.d.
1709
 
1710
2004-05-28  Andrew Stubbs 
1711
 
1712
        * Makefile.am: Regenerate dependecies.
1713
        * Makefile.in: Regenerate.
1714
        * config/tc-sh.c (valid_arch): Make unsigned.
1715
        (preset_target_arch): Likewise.
1716
        (md_begin): Use new architecture flags system.
1717
        (get_specific): Likewise.
1718
        (assemble_ppi): Likewise.
1719
        (md_assemble): Likewise. Also fix error check for bad opcodes.
1720
        (md_parse_option): Likewise. Also generate -isa values according
1721
        to the table in bfd/cpu-sh.c instead of just constants. Also
1722
        allow -up ISA variants.
1723
        (sh_elf_final_processing): Replace if-else chain with a call to
1724
        sh_find_elf_flags().
1725
 
1726
2004-05-28  Peter Barada 
1727
 
1728
        * config/gc-m68k.c(m68k_ip): Convert mode 5 addressing
1729
        with zero offset into mode 2 addressing to save a word.
1730
 
1731
2004-05-27  H.J. Lu  
1732
 
1733
        * config/tc-ia64.c (ar_is_in_integer_unit): Removed.
1734
        (ar_is_only_in_integer_unit): New.
1735
        (ar_is_only_in_memory_unit): New.
1736
        (generate_unwind_image): Silence gcc on 32bit host.
1737
        (md_assemble): Use ar_is_only_in_integer_unit instead of
1738
        ar_is_in_integer_unit. Check AR access.
1739
 
1740
2004-05-27  Peter Barada  
1741
 
1742
        * config/tc-m68k.c (md_begin): Sort the opcode table into
1743
        alphabetical order.
1744
        (m68k_compare_opcode): New function to do the sorting.
1745
 
1746
2004-05-24  Peter Barada  
1747
 
1748
        * config/m68k-parse.y(operand): Allow for MAC/EMAC mask
1749
        addressing on MIT style operands.
1750
        * config/m68k-parse.y(yylex): Allow '-&' for predecrement
1751
        w/mask addressing.
1752
        * config/tc-m68k.c(install_operand): Comment 'G' and 'H' type
1753
        operands.
1754
 
1755
2004-05-23  Alan Modra  
1756
 
1757
        * expr.c (operand, operator): Don't reject '++' and '--'.
1758
 
1759
2004-05-20  Richard Sandiford  
1760
 
1761
        * config/tc-mips.c (append_insn): Use ISA-encoded addresses in MIPS16
1762
        dwarf tables.
1763
 
1764
2004-05-17  Adam Nemet  
1765
 
1766
        * configure.in: Add ppc-*-lynxos*.  Update i386-*-lynxos* to ELF.
1767
        * configure: Regenerate.
1768
 
1769
2004-05-13  Paul Brook  
1770
 
1771
        * dw2gencfi.c (output_cie):  Handle dwarf3 format CIE entries.
1772
 
1773
2004-05-13  Joel Sherrill 
1774
 
1775
        * configure.in (or32-*-rtems*): Switch to elf.
1776
        * configure: Regenerate.
1777
 
1778
2004-05-13  Nick Clifton  
1779
 
1780
        * po/fr.po: Updated French translation.
1781
 
1782
2004-05-11  Nick Clifton  
1783
 
1784
        * doc/as.texinfo (Section): Document G and T flags to .section
1785
        directive.  Document the extra arguments that the G flag
1786
        requires.  Document the #tls flag.
1787
 
1788
2004-05-11  H.J. Lu  
1789
 
1790
        * subsegs.c (section_symbol): Create a new section symbol if
1791
        the existing one doesn't match.
1792
        * symbols.c (symbol_set_bfdsym): Don't reset BFD section symbol.
1793
 
1794
2004-05-07  Richard Sandiford  
1795
 
1796
        * config/tc-mips.c (append_insn, mips_emit_delays): Extend -mfix-vr4120
1797
        to cope with VR4181A errata MD(1) and MD(4).
1798
 
1799
2004-05-07  Brian Ford  
1800
 
1801
        * NEWS: Mention .secrel32 for pe[i]-i386.
1802
 
1803
2004-05-07  Alexandre Oliva  
1804
 
1805
        * config/tc-frv.h (MAX_MEM_FOR_RS_ALIGN_CODE): New.
1806
        (HANDLE_ALIGN): New.
1807
 
1808
2004-05-06  Daniel Jacobowitz  
1809
 
1810
        * Makefile.am (DIST_SUBDIRS): Define.
1811
        * aclocal.m4: Regenerate with automake 1.8.4.
1812
        * Makefile.in: Likewise.
1813
        * doc/Makefile.in: Likewise.
1814
 
1815
2004-05-06  David Mosberger-Tang  
1816
 
1817
        * config/tc-ia64.c (dot_serialize): Declare.
1818
        (dot_serialize): New function.
1819
        (md_pseudo_table): Add ".serialize.data" and
1820
        ".serialize.instruction" directives.
1821
 
1822
2004-05-06  Nick Clifton  
1823
 
1824
        * messages (as_internal_value_out_of_range): Print a message about
1825
        a value being out of range.  Be consistent about whether the
1826
        values are printed in decimal or hexadecimal.
1827
        (as_warn_value_out_of_range): Generate a warning message about an
1828
        out of range value.
1829
        (as_bad_value_out_of_range): Generate an error message about an
1830
        out of range value.
1831
        * as.h: Prototype the new functions.
1832
        * config/tc-alpha.c (insert_operand): Use new function.
1833
        * config/tc-arc.c (arc_insert_operand): Likewise.
1834
        * config/tc-mn10200.c (mn10200_insert_operand): Likewise.
1835
        * config/tc-mn10300.c (mn10300_insert_operand): Likewise.
1836
        * config/tc-ppc.c (ppc_insert_operand): Likewise.
1837
        * config/tc-s390.c (s390_insert_operand): Likewise.
1838
        * config/tc-v850.c (v850_insert_operand): Likewise.
1839
 
1840
2004-05-05  Alexandre Oliva  
1841
 
1842
        * configure.in: Set em=linux for frv-*-*linux*.
1843
        * configure: Rebuilt.
1844
        * config/tc-frv.h (TARGET_FORMAT): Use elf32-frvfdpic if...
1845
        (frv_md_fdpic_enabled): New.
1846
        * config/tc-frv.c (frv_md_fdpic_enabled): New.
1847
        (DEFAULT_FDPIC): New.
1848
        (frv_flags): Use DEFAULT_FDPIC.
1849
        (frv_pic_flag): Likewise.
1850
        (OPTION_NOPIC): New.
1851
        (md_longopts): Add -mnopic.
1852
        (md_parse_option): Handle it.
1853
        (md_show_usage): Add -mfdpic and -mnopic.
1854
 
1855
2004-05-05  Peter Barada  
1856
 
1857
        * config/tc-m68k.c: Add find_cf_chip to print list of valid
1858
        chips for invalid coldfire instructions, rename selectors
1859
        for ColdFire sub-variants, add 521x,5249,547x,548x and aliases,
1860
        add current_chip to track which chip is referred to(including save/restore),
1861
        use current_chip to select control registers, not current_arch.
1862
        (md_show_usage): Add new chips.
1863
        * doc/c-m68k.texi: Document new command line switches.
1864
 
1865
2004-05-05  Jakub Jelinek  
1866
 
1867
        * tc-s390.h (md_do_align, HANDLE_ALIGN): Remove.
1868
        (NOP_OPCODE): Define.
1869
        (s390_align_code): Remove prototype.
1870
        * tc-s390.c (s390_align_code): Remove.
1871
 
1872
2004-05-04  H.J. Lu  
1873
 
1874
        * config/tc-ia64.c (make_unw_section_name): Removed.
1875
        (start_unwind_section): New function.
1876
        (generate_unwind_image): Take const segT instead of const
1877
        char *.
1878
        (dot_handlerdata): Adjusted.
1879
        (dot_endp): Likewise.
1880
 
1881
2004-05-02  H.J. Lu  
1882
 
1883
        * config/obj-elf.c (obj_elf_change_section): Allow the
1884
        ".note.GNU-stack" section has SHF_EXECINSTR.
1885
 
1886
2004-05-02  H.J. Lu  
1887
 
1888
        * config/obj-elf.c (get_section): Return bfd_boolean.
1889
        (obj_elf_change_section): Call bfd_get_section_by_name_if
1890
        instead of bfd_map_over_sections.
1891
 
1892
2004-04-30  H.J. Lu  
1893
 
1894
        * config/obj-elf.c (get_section): New function.
1895
        (obj_elf_change_section): Support multiple sections with same
1896
        name.
1897
 
1898
2004-04-30  Nick Clifton  
1899
 
1900
        * config/tc-arm.c (create_register_alias): Fix typo checking for
1901
        case sensitive register aliases.
1902
        (co_proc_number): Use error message string in all_reg_maps[]
1903
        array.
1904
        (cp_reg_required_here): Likewise.
1905
        (fp_reg_required_here): Likewise.
1906
 
1907
2004-04-29  Brian Ford  
1908
 
1909
        * dwarf2dbg.c (dwarf2_finish): Add SEC_DEBUGGING to section flags.
1910
 
1911
2004-04-28  Chris Demetriou  
1912
 
1913
        * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build)
1914
        (load_address, macro, mips_ip, md_parse_option)
1915
        (mips_force_relocation, mips_validate_fix, md_apply_fix3)
1916
        (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all
1917
        embedded-PIC handling, and update comments.
1918
        (SWITCH_TABLE): Remove.
1919
        * config/tc-mips.h (DIFF_EXPR_OK): Delete.
1920
        (enum mips_pic_level): Remove EMBEDDED_PIC.
1921
        (EXTERN_FORCE_RELOC): Remove embedded-PIC handling.
1922
        (TC_FORCE_RELOCATION): Update comment.
1923
        * ecoff.c (ecoff_build_lineno): Add comment about some code that
1924
        might be safe to remove now that MIPS embedded-PIC is gone.
1925
 
1926
2004-04-28  John David Anglin  
1927
 
1928
        * config/obj-som.c (obj_som_init_stab_section): Add new arguments in
1929
        call to obj_set_subsection_attributes.
1930
        (obj_som_init_stab_section): Likewise.
1931
        * config/tc-hppa.c (default_subspace_dict): Add comdat field.
1932
        (pa_def_subspaces): Provide comdat default.
1933
        (pa_subspace): Handle new "comdat" parameter.  Set SEC_LINK_ONCE and
1934
        not SEC_IS_COMMON if section is comdat, common or dup_common.  Update
1935
        calls to create_new_subspace and update_subspace to pass comdat flag.
1936
        (create_new_subspace, update_subspace): Add new comdat argument.  Use
1937
        it in calls to obj_set_subsection_attributes.
1938
        * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter
1939
        and use of comdat, common and dup_comm parameters.
1940
 
1941
2004-04-26  H.J. Lu  
1942
 
1943
        * config/obj-elf.c (obj_elf_change_section): Check if the old
1944
        group name is NULL before comparison.
1945
 
1946
2004-04-23  Chris Demetriou  
1947
 
1948
        * config/tc-mips.h (mips_dwarf2_addr_size): Prototype.
1949
 
1950
2004-04-23  Thiemo Seufer  
1951
 
1952
        * config/tc-mips.c (s_mipsset): Set default CPU type for .set mipsN.
1953
 
1954
2004-04-23  Chris Demetriou  
1955
 
1956
        * config/tc-mips.c (md_longopts): Remove -membedded-pic option.
1957
        (OPTION_MEMBEDDED_PIC): Remove.
1958
        (OPTION_TRAP, OPTION_BREAK, OPTION_EB, OPTION_EL)
1959
        (OPTION_FP32, OPTION_GP32, OPTION_CONSTRUCT_FLOATS)
1960
        (OPTION_NO_CONSTRUCT_FLOATS, OPTIONS_FP64, OPTION_GP64)
1961
        (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH)
1962
        (OPTION_ELF_BASE): Renumber.
1963
        (md_parse_option): Remove OPTION_MEMBEDDED_PIC handling.
1964
        (md_show_usage): Remove mention of -membedded-pic.
1965
        * doc/as.texinfo: Remove mention of -membedded-pic.
1966
 
1967
2004-04-23  Thiemo Seufer  
1968
 
1969
        * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove.
1970
        * config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove
1971
        a.out support.
1972
        (md_begin, mips_ip, md_parse_option, s_change_sec, s_option,
1973
        s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of
1974
        USE_GLOBAL_POINTER_OPT.
1975
 
1976
2004-04-22  Thiemo Seufer  
1977
 
1978
        * config/tc-mips.c (macro): One more use of load_delay_nop.
1979
 
1980
2004-04-22  Atsushi Nemoto  
1981
 
1982
        * config/tc-mips.c (load_delay_nop): New function.
1983
        (load_address, macro): Use load_delay_nop() to build a nop
1984
        which can be omitted with gpr_interlocks.
1985
 
1986
2004-04-22  Thiemo Seufer  
1987
 
1988
        * config/tc-mips.c (hilo_interlocks, gpr_interlocks,
1989
        cop_interlocks): Remove superfluous CPU entries.
1990
 
1991
2004-04-22  Paul Brook  
1992
 
1993
        * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4.
1994
 
1995
2004-04-22  Peter Barada 
1996
 
1997
        * NEWS: Added support for EMAC instructions and MAC/EMAC
1998
        Motorola syntax.
1999
        * config/m68k-parse.h: Add ACC[123], ACCEXT{01,23}, MAC/EMAC
2000
        scale factor tokens, trailing_ampersand to mark mask addressing
2001
        for MAC/EMAC instructions.
2002
        * config/m68k-parse.y: Add options_ampersand clause, '<<',
2003
        '>>'.
2004
        (yylex): Handle '>', '<', and '&' following '+'.
2005
        * config/tc-m68k.c: Set mcfmac/mcfemac on appropriate ColdFire
2006
        architectures in archs[].
2007
        (m68k-ip): Add '4', 'e', 'g', 'i', cases to handle mask addressing
2008
        for MAC/EMAC instructions, ACC[0123], ACCEXT{01,23}, and '<<'/'>>'
2009
        respectively.
2010
        (m68k_ip): Handle trailing '&' on MAC/EMAC insns.
2011
        (install_operand): Fix 'n' case, Add 'F', 'f', 'G', 'H', 'I', ']'
2012
        cases.
2013
        Add EMAC operands to init_table[].
2014
 
2015
2004-04-22  Bruno De Bus 
2016
 
2017
        * config/tc-arm.h (enum mstate): Move here, add MAP_UNDEFINED
2018
        state.
2019
        (TC_SEGMENT_INFO_TYPE): Define to enum mstate.
2020
        * config/tc-arm.c (enum mstate): Delete from here.
2021
        (mapping_state): Remove the static mapstate variable and instead
2022
        store the state in the segment.  This allows a per-section mapping
2023
        state.  Handle and ignore MAP_UNDEFINED states.
2024
        (arm_elf_change_section): Get the current mapping state from the
2025
        new section.
2026
        (s_ltorg): Set the mapping state to MAP_DATA.
2027
        (arm_cleanup): Use arm_elf_change_section to get the mapping state
2028
        for each pool as it is emitted.
2029
 
2030
2004-04-22  Nick Clifton  
2031
 
2032
        * config/tc-arm.h: Formatting tidy ups.
2033
 
2034
2004-04-20  Chris Demetriou  
2035
 
2036
        * NEWS: Note that MIPS -membedded-pic option is deprecated.
2037
 
2038
2004-04-20  DJ Delorie  
2039
 
2040
        * config/tc-i386.h [TE_PE] (TC_CONS_FIX_NEW): Define.
2041
        * config/tc-i386.c (md_pseudo_table) [TE_PE]: Add "secrel32".
2042
        [TE_PE] (O_secrel): Define.
2043
        [TE_PE] (x86_pe_cons_fix_new): New.
2044
        [TE_PE] (pe_directive_secrel): Likewise.
2045
        (tc_gen_reloc) [TE_PE]: Support BFD_RELOC_32_SECREL.
2046
 
2047
2004-04-19  Eric Christopher  
2048
 
2049
        * config/tc-mips.c (mips_dwarf2_addr_size): Revert part
2050
        of previous patch for fix in gcc.
2051
 
2052
2004-04-19  Jakub Jelinek  
2053
 
2054
        * config/tc-xtensa.c (xg_assembler_literal): Fix a typo.
2055
 
2056
2004-04-19  Nathan Sidwell  
2057
 
2058
        * read.c (do_align): Call md_flush_pending_output, if defined.
2059
 
2060
2004-04-16  Alan Modra  
2061
 
2062
        * expr.c (operand): Correct checks for ++ and --.
2063
 
2064
2004-04-14  H.J. Lu  
2065
 
2066
        * config/tc-generic.c: Add some comments.
2067
 
2068
2004-04-14  Richard Sandiford  
2069
 
2070
        * doc/c-mips.texi (-m{no-,}fix-vr4120): Renamed from
2071
        -{no-}mfix-vr4122-bugs.
2072
        * config/tc-mips.c (mips_fix_vr4120): Renamed from mips_fix_4122_bugs.
2073
        (append_insn, mips_emit_delays): Update accordingly.
2074
        (OPTION_FIX_VR4120, OPTION_NO_FIX_VR4120): Renamed from *VR4122.
2075
        (md_longopts): Change -{no-,}mfix-vr4122-bugs to -m{no-,}fix-vr4120.
2076
        (md_parse_option): Update after above changes.
2077
        (md_show_usage): Add -mfix-vr4120.
2078
 
2079
2004-04-13  Bob Wilson  
2080
 
2081
        * doc/as.texinfo (Sub-Sections): Conditionalize COFF-specific use
2082
        of .section directive; add a reference to the ELF .subsection
2083
        directive.
2084
 
2085
2004-04-13  Kazuhiro Inaoka  
2086
 
2087
        * config/tc-m32r.c (md_assemble): Fixed infinite loop bug
2088
        in parallel.
2089
 
2090
2004-04-11  Thiemo Seufer  
2091
 
2092
        * Makefile.am: Remove mips from aout targets.
2093
        * Makefile.in: Regenerate.
2094
        * configure.in: Remove mips-dec-bsd* target.
2095
        * configure: Regenerate.
2096
 
2097
2004-04-07  Alan Modra  
2098
 
2099
        PR 96
2100
        * config/tc-ppc.c (ppc_elf_suffix): Add valid32 and valid64 fields
2101
        to struct map_bfd.  Adjust MAP macro, and define MAP32, MAP64.
2102
        Update "mapping".  Restrict some @ modifiers to 32 bit.
2103
 
2104
2004-04-01  Asgari Jinia  
2105
            Dhananjay Deshpande 
2106
 
2107
        * config/tc-sh.c (dont_adjust_reloc_32): New variable.
2108
        (sh_fix_adjustable): Avoid adjusting BFD_RELOC_32 when
2109
        dont_adjust_reloc_32 is set.
2110
        (md_longopts): Add option -renesas.
2111
        (md_parse_option, md_show_usage): Likewise.
2112
        * doc/c-sh.texi: Likewise.
2113
 
2114
2004-04-01  Dave Korn  
2115
 
2116
        * config/tc-dlx.c (md_assemble): set fx_no_overflow flag for
2117
        hi16 and lo16 fixS structs.
2118
        (md_assemble): generate bit_fixS for RELOC_DLX_LO16 in
2119
        exactly the same way as for RELOC_DLX_REL16.
2120
        (machine_ip): properly respect LO flag in the_insn and
2121
        output RELOC_DLX_LO16 rather than RELOC_DLX_16.
2122
        (md_apply_fix3): apply RELOC_DLX_LO16.
2123
 
2124
2004-03-30  Stan Shebs  
2125
 
2126
        Remove long-obsolete MPW support.
2127
        * mpw-config.in, mpw-make.sed, mac-as.r: Remove files.
2128
        * configure.in: Remove mention of ppc-*-mpw* config.
2129
        * configure.in: Likewise.
2130
 
2131
2004-03-30  Nick Clifton  
2132
 
2133
        * config/tc-arm.c (meabi_flags): Make its use conditional upon
2134
        OBJ_ELF being defined.
2135
 
2136
2004-03-27  Alan Modra  
2137
 
2138
        * config/obj-aout.c (obj_aout_type): Remove #ifdef BFD_ASSEMBLER code.
2139
 
2140
2004-03-23  Paul Brook  
2141
 
2142
        * config/tc-arm.c (meabi_flags): New variable.
2143
        (arm_parse_eabi): New function.
2144
        (md_begin): Set flags for EABI v3.
2145
        (arm_eabis): Add.
2146
        (arm_long_opts): Add meabi.
2147
        * doc/as.texinfo : Document -meabi.
2148
        * doc/c-arm.texi: Ditto.
2149
 
2150
2004-03-22  Bob Wilson  
2151
 
2152
        * config/tc-xtensa.c (xtensa_post_relax_hook): Create literal
2153
        tables even when use_literal_section flag is not set.
2154
 
2155
2004-03-22  Alan Modra  
2156
 
2157
        * config/tc-sh.c: Remove trailing whitespace.
2158
 
2159
2004-03-22  Hans-Peter Nilsson  
2160
 
2161
        * doc/c-cris.texi (CRIS-Opts): Document --no-mul-bug-abort,
2162
        --mul-bug-abort and the default behavior.
2163
        * config/tc-cris.c (cris_insn_kind): New member CRIS_INSN_MUL.
2164
        (err_for_dangerous_mul_placement): New variable.
2165
        (STATE_MUL, OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): New
2166
        macros.
2167
        (md_cris_relax_table): Have placeholder for STATE_MUL.
2168
        (md_longopts): New options --mul-bug-abort and --no-mul-bug-abort.
2169
        (cris_relax_frag) : New
2170
        case doing nothing.
2171
        (md_estimate_size_before_relax) 
2172
        STATE_BYTE)>: Ditto.
2173
        (md_convert_frag) : Check
2174
        alignment and position of this frag, emit error message if
2175
        suspicious.
2176
        (md_assemble): For a multiply insn and when checking it,
2177
        transform the current frag into a special frag for that purpose.
2178
        (md_parse_option) 
2179
        OPTION_MULBUG_ABORT_ON>: Handle new options.
2180
 
2181
2004-03-19  Bob Wilson  
2182
 
2183
        * config/tc-xtensa.c (mark_literal_frags): New function.
2184
        (xtensa_move_literals): Call mark_literal_frags for all literal
2185
        segments, including init and fini literal segments.
2186
        (xtensa_post_relax_hook): Swap use of xt_insn_sec and xt_literal_sec.
2187
 
2188
2004-03-19  John David Anglin  
2189
 
2190
        * tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type.
2191
        (pa_comm): Set BSF_OBJECT in symbol flags.
2192
 
2193
2004-03-19  Alan Modra  
2194
 
2195
        * Makefile.am: Run "make dep-am".
2196
        * Makefile.in: Regenerate.
2197
        * doc/Makefile.in: Regenerate.
2198
        * config.in: Regenerate.
2199
        * po/gas.pot: Regenerate.
2200
 
2201
2004-03-18  Nathan Sidwell  
2202
 
2203
        * read.c (read_a_source_file): Use demand_empty_rest_of_line.
2204
        (demand_empty_rest_of_line): Issue an error here.
2205
        (ignore_rest_of_line): Silently skip to end.
2206
        (demand_copy_string): Issue an error, not warning.
2207
        (equals): Likewise.
2208
        * config/obj-elf.c (obj_elf_section_name): Likewise.
2209
        (obj_elf_section): Likewise.
2210
        * config/tc-arc.c (arc_extoper): Remove bogus NULL checks.
2211
        (arc_extinst): Likewise.
2212
        * config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line.
2213
        (dot_spill): Likewise.
2214
        (dot_unwabi): Likewise.
2215
        (dot_prologue): Likewise.
2216
 
2217
        * expr.c (operand): Reject ++ and --.
2218
        (operator): Likewise.
2219
 
2220
2004-03-17  Kaz Kojima  
2221
 
2222
        * config/tc-sh.c: Include dw2gencfi.h.
2223
        (sh_cfi_frame_initial_instructions): New function.
2224
        (sh_regname_to_dw2regnum): Likewise.
2225
        * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of
2226
        file.
2227
        (TARGET_USE_CFIPOP): Define.
2228
        (tc_cfi_frame_initial_instructions): Likewise.
2229
        (tc_regname_to_dw2regnum): Likewise.
2230
        (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise.
2231
        * Makefile.am: Update dependencies.
2232
        * Makefile.in: Regenerate.
2233
 
2234
2004-03-17  Ralf Corsepius 
2235
 
2236
        * configure.in: Switch sh-*-rtems* to ELF.  Add sh-*-rtemscoff*.
2237
        * configure: Regenerate.
2238
 
2239
2004-03-12  Bob Wilson  
2240
 
2241
        * read.c (s_leb128): Call md_flush_pending_output.
2242
 
2243
2004-03-12  Michal Ludvig  
2244
 
2245
        * config/tc-i386.c (output_insn): Handle PadLock instructions.
2246
        * config/tc-i386.h (CpuPadLock): New define.
2247
        (CpuUnknownFlags): Added CpuPadLock.
2248
 
2249
2004-03-07  Andreas Schwab  
2250
 
2251
        * doc/c-hppa.texi (HPPA Directives): Fix typo.
2252
 
2253
2004-03-07  Richard Henderson  
2254
 
2255
        * dw2gencfi.c (output_cie): Align length to 4 byte boundary.
2256
        (cfi_finish): Likewise for fde.
2257
 
2258
2004-03-05  H.J. Lu  
2259
 
2260
        * config/tc-ia64.c (md_assemble): Properly handle NULL
2261
        align_frag.
2262
        (ia64_handle_align): Don't abort if failed to add a stop bit.
2263
 
2264
2004-03-04  H.J. Lu  
2265
 
2266
        * Makefile.in: Regenerated.
2267
        * aclocal.m4: Likewise.
2268
        * configure: Likewise.
2269
        * doc/Makefile.in: Likewise.
2270
 
2271
2004-03-03  H.J. Lu  
2272
 
2273
        * config/tc-ia64.c (dot_align): New.
2274
        (ia64_do_align): Make it static.
2275
        (md_pseudo_table): Use "dot_align" for "align".
2276
        (ia64_md_do_align): Don't set align_frag here.
2277
        (ia64_handle_align): Add a stop bit to the previous bundle if
2278
        needed.
2279
 
2280
        * config/tc-ia64.h (ia64_do_align): Removed.
2281
 
2282
2003-03-03  Andrew Stubbs  
2283
 
2284
        * config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and
2285
        -isa=sh4-nommu-nofpu options. Adjust help messages accordingly.
2286
        (sh_elf_final_processing): Output BFD type sh4_nofpu if that is
2287
        the most general type or the user specifically requested it.
2288
        (md_assemble): Add a new error message for when an instruction
2289
        is understood, but is not allowed due to an -isa option.
2290
 
2291
2004-03-02  H.J. Lu  
2292
 
2293
        * config/tc-ia64.c (align_frag): New.
2294
        (md_assemble): Set the tc_frag_data field in align_frag for
2295
        IA64_OPCODE_FIRST instructions.
2296
        (ia64_md_do_align): Set align_frag.
2297
        (ia64_handle_align): Add a stop bit if needed.
2298
 
2299
        * config/tc-ia64.h (TC_FRAG_TYPE): New.
2300
        (TC_FRAG_INIT): New.
2301
 
2302
2004-03-01  Richard Sandiford  
2303
 
2304
        * config/tc-frv.c (fr400_audio): New variable.
2305
        (md_parse_option, md_show_usage): Add -mcpu=fr405 and -mcpu=fr450.
2306
        (md_parse_option): Set fr400_audio for -mcpu=fr400 and -mcpu=fr405.
2307
        (target_implements_insn_p): New function.
2308
        (md_assemble): Report an error if the processor doesn't implement
2309
        the instruction.
2310
 
2311
2004-02-27  Kazuhiro Inaoka  
2312
 
2313
        * config/tc-m32r.c (md_longopts): Added -no-bitinst option.
2314
        (md_parse_option): Ditto.
2315
        (OPTION_NO_SPECIAL_M32R): Added.
2316
        (md_show_usage): Document it.
2317
        (enable_speial_m32r): Changed a default value from 0 to 1.
2318
        * doc/c-m32r.texi: Document the -no-bitinst option.
2319
 
2320
2004-02-27  Nick Clifton  
2321
 
2322
        * config/tc-sh.c (get_operand): Revert previous delta.
2323
        (tc_gen_reloc): Check for an unknown reloc type before processing
2324
        the addend.
2325
 
2326
2004-02-27  Hannes Reinecke  
2327
 
2328
        * config/tc-s390.c (s390_insn): Correct range check for opcode in
2329
        .insn pseudo operation.
2330
 
2331
2004-02-27  Anil Paranjpe  
2332
 
2333
        * config/tc-sh.c (get_operand):  In case of #Imm, check has been
2334
        added for wrong syntax.
2335
 
2336
2004-02-26  Eric Christopher  
2337
 
2338
        * config/tc-mips.c (mips_dwarf2_addr_size): New.
2339
        * config/tc-mips.h (DWARF2_ADDR_SIZE): Use.
2340
 
2341
2004-02-26  Andrew Stubbs 
2342
 
2343
        * config/tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01
2344
        nibble types to assembler.
2345
 
2346
2004-02-25  Fred Fish  
2347
 
2348
        * config/tc-iq2000.c: Add missing \n\ in multiline string literal.
2349
 
2350
2004-02-20  James E Wilson  
2351
 
2352
        * config/tc-ia64.c (slot_index): New arg before_relax.  Use instead of
2353
        finalize_syms.
2354
        (fixup_unw_records): New arg before_relax.  Pass to slot_index.
2355
        (ia64_estimate_size_before_relax): New.
2356
        (ia64_convert_frag): Pass 0 to fixup_unw_records.  Add comment.
2357
        (generate_unwind_image): Pass 1 to fixup_unw_records.
2358
        * config/tc-ia64.h (ia64_estimate_size_before_relax): Declare.
2359
        (md_estimate_size_before_relax): Call ia64_estimate_size_before_relax.
2360
 
2361
2004-02-19  Jakub Jelinek  
2362
 
2363
        * stabs.c (generate_asm_file): Avoid warning about use of
2364
        uninitialized variable.
2365
 
2366
2004-02-18  David Mosberger  
2367
 
2368
        * config/tc-ia64.c (ia64_flush_insns): In addition to prologue,
2369
        body, and endp, allow unwind records which do not have a "t"
2370
        (time/instruction) field.
2371
 
2372
2004-02-17  Petko Manolov  
2373
 
2374
        * config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn.
2375
        (do_mav_dspsc_2): Likewise.
2376
        Fix accumulator registers move opcodes.
2377
 
2378
2004-02-13  Hannes Reinecke  
2379
            Jakub Jelinek  
2380
 
2381
        * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory.
2382
 
2383
2004-02-10  Steve Ellcey  
2384
 
2385
        * config/tc-ia64.h (ia64_frob_symbol): New declaration.
2386
        (tc_frob_symbol): New macro definition.
2387
        * config/tc-ia64.c (ia64_frob_symbol): New routine.
2388
 
2389
2004-02-09  Daniel Jacobowitz  
2390
 
2391
        * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as
2392
        read-only.
2393
 
2394
2004-02-09  Nathan Sidwell  
2395
 
2396
        * read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ...
2397
        (TC_CASE_SENSITIVE): ... this.
2398
        * read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE.
2399
        * doc/internals.texi (TC_CASE_SENSITIVE): Document.
2400
 
2401
2004-02-06  James E Wilson  
2402
 
2403
        * config/tc-ia64.c (dot_endp): Delete call to output_endp.
2404
        (generate_unwind_image): Re-add it here.
2405
 
2406
2004-02-06  Nathan Sidwell  
2407
 
2408
        * dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';'
2409
        * read.h (SKIP_WHITESPACE): Turn into an expression.
2410
        * read.c (read_a_source_file): A pseudo is removed by having a
2411
        NULL handler.
2412
 
2413
2004-02-05  James E Wilson  
2414
 
2415
        * config/tc-ia64.c (output_endp): New.
2416
        (count_bits): Delete.
2417
        (ia64_flush_insns, process_one_record, optimize_unw_records): Handle
2418
        endp unwind records.
2419
        (fixup_unw_records): Handle endp unwind records.  Delete code for
2420
        shortening prologue regions not followed by a body record.
2421
        (dot_endp): Call add_unwind_entry to emit endp unwind record.
2422
        * config/tc-ia64.h (unw_record_type): Add endp.
2423
 
2424
2004-02-03  James E Wilson  
2425
 
2426
        * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to
2427
        fill padding bytes with zeroes.
2428
        (emit_one_bundle): New locals last_ptr, end_ptr.  Rewrite code that
2429
        sets unwind_record slot_number and slot_frag fields.
2430
 
2431
2004-02-02  Maciej W. Rozycki  
2432
 
2433
        * config/tc-mips.c (add_got_offset_hilo): New function.
2434
        (macro): Use load_register() and add_got_offset_hilo() to load
2435
        constants instead of hardcoding code sequences throughout.
2436
 
2437
2004-01-28  H.J. Lu  
2438
 
2439
        * config/tc-ia64.c (emit_one_bundle): Add proper indentation.
2440
 
2441
2004-01-26  Bernardo Innocenti  
2442
 
2443
        * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially,
2444
        like m68k-elf.
2445
        * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead
2446
        of hard-coded test for TARGET_OS=elf.
2447
 
2448
2004-01-24  Chris Demetriou  
2449
 
2450
        * config/tc-mips.c (hilo_interlocks): Change definition
2451
        so that MIPS32, MIPS64 and later ISAs are included, along with
2452
        the already-included machines.  Update comments.
2453
 
2454
2004-01-23  Daniel Jacobowitz  
2455
 
2456
        * config/tc-arm.c (tc_gen_reloc): Improve error message for
2457
        undefined local labels.
2458
 
2459
2004-01-23  Richard Sandiford  
2460
 
2461
        * config/tc-mips.c (load_address, macro): Update comments about
2462
        NewABI GP relaxation.
2463
 
2464
2004-01-23  Richard Sandiford  
2465
 
2466
        * config/tc-mips.c (macro_build): Remove place and counter arguments.
2467
        (mips_build_lui, macro_build_ldst_constoffset): Likewise.
2468
        (mips16_macro_build, macro_build_jalr): Remove counter argument.
2469
        (set_at, load_register, load_address, move_register): Likewise.
2470
        (load_got_offset, add_got_offset): Likewise.
2471
        Update all calls and tidy accordingly.
2472
 
2473
2004-01-23  Richard Sandiford  
2474
 
2475
        * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
2476
        (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
2477
        (RELAX_USE_SECOND): Bump to 0x10000.
2478
        (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
2479
        (mips_macro_warning): New variable.
2480
        (md_assemble): Wrap macro expansion in macro_start() and macro_end().
2481
        (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
2482
        (relax_close_frag): Set mips_macro_warning.first_frag.  Adjust use
2483
        of RELAX_ENCODE.
2484
        (append_insn): Update mips_macro_warning.sizes.
2485
        (macro_start, macro_warning, macro_end): New functions.
2486
        (macro_build): Don't emit warnings here.
2487
        (macro_build_lui, md_estimate_size_before_relax): ...or here.
2488
        (md_convert_frag): Check for cases where one macro alternative
2489
        needs a warning and the other doesn't.  Emit a warning if the
2490
        longer sequence was chosen.
2491
 
2492
2004-01-23  Richard Sandiford  
2493
 
2494
        * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove.
2495
        * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of
2496
        the first sequence, the size of the second sequence, and a flag
2497
        that says whether we should warn.
2498
        (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete.
2499
        (RELAX_FIRST, RELAX_SECOND): New.
2500
        (mips_relax): New variable.
2501
        (relax_close_frag, relax_start, relax_switch, relax_end): New fns.
2502
        (append_insn): Remove "place" argument.  Use mips_relax.sequence
2503
        rather than "place" to check whether we're expanding the second
2504
        alternative of a relaxable macro.  Remove redundant check for
2505
        branch relaxation.  If generating a normal insn, and there
2506
        is not enough room in the current frag, call relax_close_frag()
2507
        to close it.  Update mips_relax.sizes[].  Emit fixups for the
2508
        second version of a relaxable macro.  Record the first relaxable
2509
        fixup in mips_relax.  Remove tc_gen_reloc workaround.
2510
        (macro_build): Remove all uses of "place".  Use mips_relax.sequence
2511
        in the same way as in append_insn.
2512
        (mips16_macro_build): Remove "place" argument.
2513
        (macro_build_lui): As for macro_build.  Don't drop the add_symbol
2514
        when generating the second version of a relaxable macro.
2515
        (load_got_offset, add_got_offset): New functions.
2516
        (load_address, macro): Use new relaxation machinery.  Remove
2517
        tc_gen_reloc workarounds.
2518
        (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second
2519
        version of a relaxable macro is needed.  Return -RELAX_SECOND if the
2520
        first version is needed.
2521
        (tc_gen_reloc): Remove relaxation handling.
2522
        (md_convert_frag): Go through the fixups for a relaxable macro and
2523
        mark those that belong to the unneeded alternative as done.  If the
2524
        second alternative is needed, adjust the fixup addresses to account
2525
        for the deleted first alternative.
2526
 
2527
2004-01-23  Richard Sandiford  
2528
 
2529
        * frags.h (frag_room): Declare.
2530
        * frags.c (frag_room): New function.
2531
        * doc/internals.texi: Document it.
2532
 
2533
2004-01-22  Thiemo Seufer 
2534
 
2535
        * config/tc-mips.c (append_insn): Don't do r3900 interlock
2536
        optimization for -mtune=r3900, as this will break on other CPUs.
2537
 
2538
2004-01-11  Tom Rix   
2539
 
2540
        * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot
2541
        be relaxed, use fixup.
2542
        (md_apply_fix3): Use 5 bit reloc from movb and movw fixup.
2543
 
2544
2004-01-19  Jakub Jelinek  
2545
 
2546
        * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single
2547
        precision operands.
2548
 
2549
2004-01-14  Maciej W. Rozycki  
2550
 
2551
        * config/tc-mips.c (append_insn): Properly detect variant frags
2552
        that preclude swapping of relaxed branches.  Correctly swap
2553
        instructions between frags when dealing with relaxed branches.
2554
 
2555
2004-01-14  Maciej W. Rozycki  
2556
 
2557
        * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
2558
        throughout.
2559
        * aclocal.m4: Regenerate.
2560
        * configure: Regenerate.
2561
 
2562
2004-01-12  Anil Paranjpe  
2563
 
2564
        * config/tc-h8300.c (build_bytes): Apply relaxation to bit
2565
        manipulation insns.
2566
 
2567
2004-01-12  Richard Sandiford  
2568
 
2569
        * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR
2570
        reloc, reserve space for the delay slot as well as the jalr itself.
2571
 
2572
2004-01-09  Paul Brook  
2573
 
2574
        * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2.
2575
        (do_vfp_sp2_from_reg2): New function.
2576
        (insns): Use them.
2577
        (do_vfp_dp_from_reg2): Check return values properly.
2578
 
2579
2004-01-08  Ian Lance Taylor  
2580
 
2581
        * config/tc-mips.c (warn_nops): Remove static variable.
2582
        (macro): Remove test of warn_nops.
2583
        (md_shortops): Remove 'n'.
2584
        (md_parse_option): Remove 'n' case.
2585
        (md_show_usage): Remove -n.
2586
        * doc/as.texinfo (Overview): Remove MIPS -n option.
2587
        * doc/c-mips.texi (MIPS Opts): Remove mention -n.
2588
        * NEWS: Mention removal of MIPS -n option.
2589
 
2590
        * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove.
2591
        (cop_interlocks): Check ISA level.
2592
        (cop_mem_interlocks): Define.
2593
        (reg_needs_delay): Check cop_interlocks rather than
2594
        ISA_HAS_COPROC_DELAYS.
2595
        (append_insn): Likewise.  Use cop_mem_interlocks rather than
2596
        directly checking mips_opts.isa.
2597
        (mips_emit_delays): Likewise.
2598
 
2599
2004-01-07  H.J. Lu  
2600
 
2601
        * config/tc-ia64.c (unwind): Move next_slot_number and
2602
        next_slot_frag to ...
2603
        (unw_rec_list): Here.
2604
        (free_list_records): Removed.
2605
        (output_unw_records): Likewise.
2606
        (generate_unwind_image): Make it void.
2607
        (alloc_record): Initialize next_slot_number and next_slot_frag.
2608
        (slot_index): Take .org, .space and .align into account.
2609
        (fixup_unw_records): Don't set slot_number to 0. Use
2610
        list->next_slot_number and list->next_slot_frag instead of
2611
        unwind.next_slot_number and unwind.next_slot_frag.
2612
        (ia64_convert_frag): New.
2613
        (generate_unwind_image): Generate a rs_machine_dependent frag
2614
        for unwind record.
2615
        (emit_one_bundle): Use list->next_slot_number and
2616
        list->next_slot_frag instead of unwind.next_slot_number and
2617
        unwind.next_slot_frag.
2618
 
2619
        * config/tc-ia64.h (md_convert_frag): Defined as
2620
        ia64_convert_frag.
2621
        (md_estimate_size_before_relax): Defined as (f)->fr_var.
2622
 
2623
2004-01-06  Alexandre Oliva  
2624
 
2625
        2003-12-19  Alexandre Oliva  
2626
        * config/tc-frv.h (md_apply_fix3): Don't define.
2627
        * config/tc-frv.c (md_apply_fix3): New.  Shift/truncate %hi/%lo
2628
        operands.
2629
        * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
2630
        2003-10-07  Alexandre Oliva  
2631
        * config/tc-frv.c (line_separator_chars): Add `!'.
2632
        2003-09-19  Alexandre Oliva  
2633
        * config/tc-frv.c (md_assemble): Clear insn upfront.
2634
        2003-09-18  Alexandre Oliva  
2635
        * config/tc-frv.c (OPTION_FDPIC): New macro.
2636
        (md_longopts): Add mfdpic.
2637
        (md_parse_option): Handle it.
2638
        2003-08-04  Alexandre Oliva  
2639
        * config/tc-frv.c (md_cgen_lookup_reloc) 
2640
        FRV_OPERAND_S12>: Use reloc type encoded in fix-up.
2641
        (frv_pic_ptr): Parse funcdesc.
2642
 
2643
2004-01-05  Maciej W. Rozycki  
2644
 
2645
        * doc/as.texinfo: Let texi2pod parse asconfig.texi and
2646
        gasver.texi.  Remove duplicate symbol definitions for texi2pod.
2647
 
2648
2004-01-05  Maciej W. Rozycki  
2649
 
2650
        * Makefile.am (Makefile): Move the dependency on
2651
        $(BFDDIR)/configure.in to...
2652
        (CONFIG_STATUS_DEPENDENCIES): ... here.
2653
        (AUTOMAKE_OPTIONS): Require automake 1.8.
2654
        * Makefile.in: Regenerate.
2655
        * doc/Makefile.am (BASEDIR, BFDDIR): Define.
2656
        (CONFIG_STATUS_DEPENDENCIES): Add a dependency on
2657
        $(BFDDIR)/configure.in here as well.
2658
        * doc/Makefile.in: Regenerate.
2659
 
2660
2004-01-05  Maciej W. Rozycki  
2661
 
2662
        * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove.
2663
        * Makefile.in: Regenerate.
2664
        * aclocal.m4: Regenerate.
2665
        * doc/Makefile.am (install, install-info): Remove.
2666
        (install-data-local): A new hook for install-info.
2667
        (AUTOMAKE_OPTIONS): Require automake 1.8.
2668
        * doc/Makefile.in: Regenerate.
2669
 
2670
2004-01-02  Nutan Singh 
2671
 
2672
        * doc/c-sh.texi: Update description about floating point behavior
2673
        of SH family.
2674
 
2675
2004-01-02  Bernardo Innocenti  
2676
 
2677
        * configure.in: Add m68k-uClinux target.
2678
        * configure: Regenerate.
2679
 
2680
For older changes see ChangeLog-0203
2681
 
2682
Local Variables:
2683
mode: change-log
2684
left-margin: 8
2685
fill-column: 74
2686
version-control: never
2687
End:

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.