Fix region length calculations when regions end with .align padding.
[external/binutils.git] / gas / ChangeLog
1 2004-02-05  James E Wilson  <wilson@specifixinc.com>
2
3         * config/tc-ia64.c (output_endp): New.
4         (count_bits): Delete.
5         (ia64_flush_insns, process_one_record, optimize_unw_records): Handle
6         endp unwind records.
7         (fixup_unw_records): Handle endp unwind records.  Delete code for
8         shortening prologue regions not followed by a body record.
9         (dot_endp): Call add_unwind_entry to emit endp unwind record.
10         * config/tc-ia64.h (unw_record_type): Add endp.
11
12 2004-02-03  James E Wilson  <wilson@specifixinc.com>
13
14         * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to
15         fill padding bytes with zeroes.
16         (emit_one_bundle): New locals last_ptr, end_ptr.  Rewrite code that
17         sets unwind_record slot_number and slot_frag fields.
18
19 2004-02-02  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
20
21         * config/tc-mips.c (add_got_offset_hilo): New function.
22         (macro): Use load_register() and add_got_offset_hilo() to load
23         constants instead of hardcoding code sequences throughout.
24
25 2004-01-28  H.J. Lu  <hongjiu.lu@intel.com>
26
27         * config/tc-ia64.c (emit_one_bundle): Add proper indentation.
28
29 2004-01-26  Bernardo Innocenti  <bernie@develer.com>
30
31         * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially,
32         like m68k-elf.
33         * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead
34         of hard-coded test for TARGET_OS=elf.
35
36 2004-01-24  Chris Demetriou  <cgd@broadcom.com>
37
38         * config/tc-mips.c (hilo_interlocks): Change definition
39         so that MIPS32, MIPS64 and later ISAs are included, along with
40         the already-included machines.  Update comments.
41
42 2004-01-23  Daniel Jacobowitz  <drow@mvista.com>
43
44         * config/tc-arm.c (tc_gen_reloc): Improve error message for
45         undefined local labels.
46
47 2004-01-23  Richard Sandiford  <rsandifo@redhat.com>
48
49         * config/tc-mips.c (load_address, macro): Update comments about
50         NewABI GP relaxation.
51
52 2004-01-23  Richard Sandiford  <rsandifo@redhat.com>
53
54         * config/tc-mips.c (macro_build): Remove place and counter arguments.
55         (mips_build_lui, macro_build_ldst_constoffset): Likewise.
56         (mips16_macro_build, macro_build_jalr): Remove counter argument.
57         (set_at, load_register, load_address, move_register): Likewise.
58         (load_got_offset, add_got_offset): Likewise.
59         Update all calls and tidy accordingly.
60
61 2004-01-23  Richard Sandiford  <rsandifo@redhat.com>
62
63         * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
64         (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
65         (RELAX_USE_SECOND): Bump to 0x10000.
66         (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
67         (mips_macro_warning): New variable.
68         (md_assemble): Wrap macro expansion in macro_start() and macro_end().
69         (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
70         (relax_close_frag): Set mips_macro_warning.first_frag.  Adjust use
71         of RELAX_ENCODE.
72         (append_insn): Update mips_macro_warning.sizes.
73         (macro_start, macro_warning, macro_end): New functions.
74         (macro_build): Don't emit warnings here.
75         (macro_build_lui, md_estimate_size_before_relax): ...or here.
76         (md_convert_frag): Check for cases where one macro alternative
77         needs a warning and the other doesn't.  Emit a warning if the
78         longer sequence was chosen.
79
80 2004-01-23  Richard Sandiford  <rsandifo@redhat.com>
81
82         * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove.
83         * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of
84         the first sequence, the size of the second sequence, and a flag
85         that says whether we should warn.
86         (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete.
87         (RELAX_FIRST, RELAX_SECOND): New.
88         (mips_relax): New variable.
89         (relax_close_frag, relax_start, relax_switch, relax_end): New fns.
90         (append_insn): Remove "place" argument.  Use mips_relax.sequence
91         rather than "place" to check whether we're expanding the second
92         alternative of a relaxable macro.  Remove redundant check for
93         branch relaxation.  If generating a normal insn, and there
94         is not enough room in the current frag, call relax_close_frag()
95         to close it.  Update mips_relax.sizes[].  Emit fixups for the
96         second version of a relaxable macro.  Record the first relaxable
97         fixup in mips_relax.  Remove tc_gen_reloc workaround.
98         (macro_build): Remove all uses of "place".  Use mips_relax.sequence
99         in the same way as in append_insn.
100         (mips16_macro_build): Remove "place" argument.
101         (macro_build_lui): As for macro_build.  Don't drop the add_symbol
102         when generating the second version of a relaxable macro.
103         (load_got_offset, add_got_offset): New functions.
104         (load_address, macro): Use new relaxation machinery.  Remove
105         tc_gen_reloc workarounds.
106         (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second
107         version of a relaxable macro is needed.  Return -RELAX_SECOND if the
108         first version is needed.
109         (tc_gen_reloc): Remove relaxation handling.
110         (md_convert_frag): Go through the fixups for a relaxable macro and
111         mark those that belong to the unneeded alternative as done.  If the
112         second alternative is needed, adjust the fixup addresses to account
113         for the deleted first alternative.
114
115 2004-01-23  Richard Sandiford  <rsandifo@redhat.com>
116
117         * frags.h (frag_room): Declare.
118         * frags.c (frag_room): New function.
119         * doc/internals.texi: Document it.
120
121 2004-01-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
122
123         * config/tc-mips.c (append_insn): Don't do r3900 interlock
124         optimization for -mtune=r3900, as this will break on other CPUs.
125
126 2004-01-11  Tom Rix   <tcrix@worldnet.att.net>
127
128         * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot
129         be relaxed, use fixup. 
130         (md_apply_fix3): Use 5 bit reloc from movb and movw fixup.
131
132 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
133
134         * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single
135         precision operands.
136
137 2004-01-14  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
138
139         * config/tc-mips.c (append_insn): Properly detect variant frags
140         that preclude swapping of relaxed branches.  Correctly swap
141         instructions between frags when dealing with relaxed branches.
142
143 2004-01-14  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
144
145         * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
146         throughout.
147         * aclocal.m4: Regenerate.
148         * configure: Regenerate.
149
150 2004-01-12  Anil Paranjpe  <anilp1@KPITCummins.com>
151         
152         * config/tc-h8300.c (build_bytes): Apply relaxation to bit
153         manipulation insns.
154
155 2004-01-12  Richard Sandiford  <rsandifo@redhat.com>
156
157         * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR
158         reloc, reserve space for the delay slot as well as the jalr itself.
159
160 2004-01-09  Paul Brook  <paul@codesourcery.com>
161
162         * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2.
163         (do_vfp_sp2_from_reg2): New function.
164         (insns): Use them.
165         (do_vfp_dp_from_reg2): Check return values properly.
166
167 2004-01-08  Ian Lance Taylor  <ian@wasabisystems.com>
168
169         * config/tc-mips.c (warn_nops): Remove static variable.
170         (macro): Remove test of warn_nops.
171         (md_shortops): Remove 'n'.
172         (md_parse_option): Remove 'n' case.
173         (md_show_usage): Remove -n.
174         * doc/as.texinfo (Overview): Remove MIPS -n option.
175         * doc/c-mips.texi (MIPS Opts): Remove mention -n.
176         * NEWS: Mention removal of MIPS -n option.
177
178         * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove.
179         (cop_interlocks): Check ISA level.
180         (cop_mem_interlocks): Define.
181         (reg_needs_delay): Check cop_interlocks rather than
182         ISA_HAS_COPROC_DELAYS.
183         (append_insn): Likewise.  Use cop_mem_interlocks rather than
184         directly checking mips_opts.isa.
185         (mips_emit_delays): Likewise.
186
187 2004-01-07  H.J. Lu  <hongjiu.lu@intel.com>
188
189         * config/tc-ia64.c (unwind): Move next_slot_number and
190         next_slot_frag to ...
191         (unw_rec_list): Here.
192         (free_list_records): Removed.
193         (output_unw_records): Likewise.
194         (generate_unwind_image): Make it void.
195         (alloc_record): Initialize next_slot_number and next_slot_frag.
196         (slot_index): Take .org, .space and .align into account.
197         (fixup_unw_records): Don't set slot_number to 0. Use
198         list->next_slot_number and list->next_slot_frag instead of
199         unwind.next_slot_number and unwind.next_slot_frag.
200         (ia64_convert_frag): New.
201         (generate_unwind_image): Generate a rs_machine_dependent frag
202         for unwind record.
203         (emit_one_bundle): Use list->next_slot_number and
204         list->next_slot_frag instead of unwind.next_slot_number and
205         unwind.next_slot_frag.
206
207         * config/tc-ia64.h (md_convert_frag): Defined as
208         ia64_convert_frag.
209         (md_estimate_size_before_relax): Defined as (f)->fr_var.
210
211 2004-01-06  Alexandre Oliva  <aoliva@redhat.com>
212
213         2003-12-19  Alexandre Oliva  <aoliva@redhat.com>
214         * config/tc-frv.h (md_apply_fix3): Don't define.
215         * config/tc-frv.c (md_apply_fix3): New.  Shift/truncate %hi/%lo
216         operands.
217         * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
218         2003-10-07  Alexandre Oliva  <aoliva@redhat.com>
219         * config/tc-frv.c (line_separator_chars): Add `!'.
220         2003-09-19  Alexandre Oliva  <aoliva@redhat.com>
221         * config/tc-frv.c (md_assemble): Clear insn upfront.
222         2003-09-18  Alexandre Oliva  <aoliva@redhat.com>
223         * config/tc-frv.c (OPTION_FDPIC): New macro.
224         (md_longopts): Add mfdpic.
225         (md_parse_option): Handle it.
226         2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
227         * config/tc-frv.c (md_cgen_lookup_reloc) <FRV_OPERAND_D12,
228         FRV_OPERAND_S12>: Use reloc type encoded in fix-up.
229         (frv_pic_ptr): Parse funcdesc.
230
231 2004-01-05  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
232
233         * doc/as.texinfo: Let texi2pod parse asconfig.texi and
234         gasver.texi.  Remove duplicate symbol definitions for texi2pod.
235
236 2004-01-05  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
237
238         * Makefile.am (Makefile): Move the dependency on
239         $(BFDDIR)/configure.in to...
240         (CONFIG_STATUS_DEPENDENCIES): ... here.
241         (AUTOMAKE_OPTIONS): Require automake 1.8.
242         * Makefile.in: Regenerate.
243         * doc/Makefile.am (BASEDIR, BFDDIR): Define.
244         (CONFIG_STATUS_DEPENDENCIES): Add a dependency on
245         $(BFDDIR)/configure.in here as well.
246         * doc/Makefile.in: Regenerate.
247
248 2004-01-05  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
249
250         * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove.
251         * Makefile.in: Regenerate.
252         * aclocal.m4: Regenerate.
253         * doc/Makefile.am (install, install-info): Remove.
254         (install-data-local): A new hook for install-info.
255         (AUTOMAKE_OPTIONS): Require automake 1.8.
256         * doc/Makefile.in: Regenerate.
257
258 2004-01-02  Nutan Singh <nutan@kpitcummins.com>
259
260         * doc/c-sh.texi: Update description about floating point behavior
261         of SH family.
262
263 2004-01-02  Bernardo Innocenti  <bernie@develer.com>
264
265         * configure.in: Add m68k-uClinux target.
266         * configure: Regenerate.
267
268 For older changes see ChangeLog-0203
269 \f
270 Local Variables:
271 mode: change-log
272 left-margin: 8
273 fill-column: 74
274 version-control: never
275 End: