OSDN Git Service

c6b09e7d29b85a2040c4a1708f294539bdd3f7cf
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2003-07-11  Geoffrey Keating  <geoffk@apple.com>
2
3         * c-decl.c (finish_decl): Handle 'used' here...
4         * cgraphunit.c (cgraph_finalize_function): ... and here ...
5         * c-common.c: (handle_used_attribute): ... not here.
6         
7         * configure.in (onstep): Support --enable-intermodule.
8         * Makefile.in (OBJS-common): New.
9         (OBJS-md): New.
10         (OBJS-archive): New.
11         (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
12         (OBJS-onestep): New.
13         (libbackend.a): Support @onestep@.
14         (libbackend.o): New.
15         * configure: Regenerate.
16         
17         * c-common.h (c_reset_state): New prototype.
18         (c_parse_file): New prototype.
19         (finish_file): Move prototype from c-tree.h.
20         * c-decl.c: Include <hashtab.h>.
21         (builtin_decls): New.
22         (current_file_decl): New.
23         (duplicate_decls): Add extra parameter. Change all callers.  Don't
24         output duplicate common symbols.
25         (link_hash_hash): New.
26         (link_hash_eq): New.
27         (poplevel): Handle popping of the top level.
28         (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
29         (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
30         (pushdecl_top_level): Likewise.
31         (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
32         (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
33         (finish_decl): Handle TRANSLATION_UNIT_DECL.
34         (merge_translation_unit_decls): New.
35         (c_write_global_declarations): New.
36         (c_reset_state): New.
37         (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
38         * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
39         * c-objc-common.c (c_cannot_inline_tree_fn): Handle
40         TRANSLATION_UNIT_DECL.
41         (c_objc_common_finish_file): Call merge_translation_unit_decls.
42         * c-opts.c (in_fnames): Rename from in_fname.
43         (c_common_decode_option): Handle multiple input filenames.
44         (c_common_post_options): Likewise.
45         (c_common_parse_file): Likewise; also, call c_parse_file rather than
46         yyparse.
47         * c-parse.in: Move cleanup code to c_parse_file.
48         (free_parser_stacks): Move contents to c_parse_file.
49         (c_parse_file): New.
50         * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
51         for integer types.
52         (C_DECL_FILE_SCOPE): New.
53         (finish_file): Move prototype to c-common.h.
54         (merge_translation_unit_decls): New prototype.
55         (comptypes): Add extra parameter to prototype.
56         (c_write_global_declarations): New prototype.
57         * c-typeck.c (tagged_types_tu_compatible_p): New.
58         (function_types_compatible_p): Add extra parameter, change all callers.
59         (type_lists_compatible_p): Likewise.
60         (comptypes): Likewise.
61         (struct tagged_tu_seen): New.
62         (tagged_tu_seen_base): New.
63         (build_unary_op): Handle TRANSLATION_UNIT_DECL.
64         (c_mark_addressable): Remove #if 0 code.
65         * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
66         comment explaining why it shouldn't have to.
67         * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
68         options.
69         * cppinit.c (cpp_read_next_file): New.
70         (cpp_read_main_file): Use it.
71         * cpplib.c (undefine_macros): New.
72         (cpp_undef_all): New.
73         * cpplib.h (cpp_read_next_file): Prototype.
74         (cpp_undef_all): Prototype.
75         * langhooks-def.h (write_global_declarations): Remove prototype.
76         * toplev.h (write_global_declarations): Add prototype.
77         * tree.c (decl_type_context): Use switch statement, handle
78         TRANSLATION_UNIT_DECL.
79         * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
80         (TRANSLATION_UNIT_DECL): New kind of tree.
81         * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
82         * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
83         * doc/invoke.texi: Make attempt to document new functionality.
84
85         2003-05-19  Per Bothner <bothner@apple.com>
86
87         * gcc.c (combine_inputs): New.
88         (process_command): Set combine_inputs.
89         (do_spec_1): Handle combine_inputs.
90         (main): Likewise.
91
92 2003-07-10  James E Wilson  <wilson@tuliptree.org>
93
94         PR optimization/9745
95         * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
96         loop_insn_emit_before.
97         (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
98         
99 2003-07-10  Zack Weinberg  <zack@codesourcery.com>
100
101         * cppcharset.c: Fix comment.
102         (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
103         (EILSEQ): #define to EINVAL if not already defined.
104         (convert_using_iconv): #if out when !HAVE_ICONV.
105         (init_iconv_desc): Handle !HAVE_ICONV here...
106         (cpp_init_iconv): ...not here.
107
108 2003-07-11  Neil Booth  <neil@daikokuya.co.uk>
109
110         * common.opt: More --help messages.
111         * opts.c (print_help): Use puts().
112         * toplev.c (f_options): Remove help text.
113         (display_help): Don't dump f_options.
114
115 2003-07-11  Nathanael Nerode  <neroden@gcc.gnu.org>
116
117         * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
118         Move i?86-*-interix* to the don't-fix list.
119         * fixinc/fixinc.interix: Delete with extreme prejudice.
120
121 2003-07-10  Dara Hazeghi  <dhazeghi@yahoo.com>
122
123         PR bootstrap/10758
124         * doc/install.texi: Document requirements for ia64-*-hpux* target.
125
126 2003-07-10  Roger Sayle  <roger@eyesopen.com>
127
128         * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
129
130 2003-07-10  Zack Weinberg  <zack@codesourcery.com>
131
132         * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
133         one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
134         one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
135         convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
136         convert_no_conversion, convert_using_iconv): New functions.
137         (APPLY_CONVERSION): New macro.
138         (struct conversion, conversion_tab): New data structure.
139         (init_iconv_desc): Check conversion_tab for a custom conversion
140         primitive before trying to use iconv.
141         (convert_cset): Deleted.
142         (cpp_init_iconv): Use UTF- terminology, not UCS-.
143         (_cpp_destroy_iconv): Update to match.
144         (_cpp_valid_ucn): We don't need iconv to implement UCNs.
145         (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
146         (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
147         (_cpp_interpret_string_notranslate): New function, moved here
148         from cpplib.c.
149
150         * cpphash.h (convert_f, struct cset_converter): New types.
151         (struct cpp_reader): narrow_cset_desc and wide_cset_desc
152         are now struct cset_converter, not bare iconv_t.
153         Update prototypes.
154         * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
155         all callers changed.
156
157 2003-07-10  Kelley Cook  <kelleycook@wideopenwest.com>
158
159         * Makefile.in (options.h): Depend on Makefile.  Add move-if-change
160         to opts.sh command line.
161         * opts.sh: Write to temporary files with a move-if-change at the end.
162
163 2003-06-30  Denis Chertykov  <denisc@overta.ru>
164             Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
165
166         * combine.c (gen_binary): Handle the CLOBBER rtx and
167         don't build a binary operation with it.
168
169 2003-07-10  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
170
171         * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
172         store_killed_after, store_killed_before): Keep track of the correct
173         dependency function to use.
174
175 2003-07-10  Steven Bosscher  <steven@gcc.gnu.org>
176         * toplev.c (do_compile): Don't try to open dump files before
177         lang_dependent_init initializes dump_base_name.
178
179 2003-07-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
180
181         * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
182         Use ARRAY_SIZE.
183         * config/frv/frv.c (frv_expand_builtin): Likewise.
184         * config/sh/sh.c (sh_media_init_builtins): Likewise.
185
186 2003-07-09  Mark Mitchell  <mark@codesourcery.com>
187
188         PR c++/10032
189         * doc/invoke.texi (C++ Dialect Options): Change documentation of
190         -fpermissive.
191
192 2003-07-10  J"orn Rennecke <joern.rennecke@superh.com>
193
194         * tm.texi (RETURN_ADDR_OFFSET): Document.
195
196 2003-07-10  Nathan Sidwell  <nathan@codesourcery.com>
197
198         * gcov-io.h: Update documentation.
199         (GCOV_UNSIGNED2STRING): New.
200         (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
201         GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
202         GCOV_TAG_SUMMARY_LENGTH): Adjust.
203         (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
204         GCOV_TAG_COUNTER_NUM): New.
205         (GCOV_BLOCK_SIZE): Number of words.
206         (gcov_var): Adjust buffer type.
207         * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
208         (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
209         count, not byte count.
210         (gcov_open): Adjust overread init.
211         (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
212         gcov_write_string, gcov_write_tag, gcov_write_length,
213         gcov_write_tag_length): Adjust.
214         (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
215         (gcov_sync, gcov_seek): Adjust.
216         * gcov-dump.c (print_usage): Show gcc version only.
217         (dump_file): Use GCOV_UNSIGNED2STRING.
218         (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
219         * gcov.c (print_version): Show gcc version only.
220         (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
221         GCOV_TAG_*_NUM macros.
222         (read_count_file): Use GCOV_UNSIGNED2STRING. Use
223         GCOV_TAG_COUNTER_LENGTH.
224         * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
225         Use GCOV_TAG_COUNTER_NUM.
226         * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
227         (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
228
229 2003-07-10  Andreas Schwab  <schwab@suse.de>
230
231         * gcov-dump.c (dump_file): Fix missing address operator.
232
233 2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>
234
235         PR c/11449
236         * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
237         of HOST_WIDE_INT.
238         (fold_single_bit_test): If sign_bit_p() fails, assume that the
239         bit being tested is not a sign bit.
240
241 2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>
242
243         * config/h8300/h8300.md (a peephole2): New.
244
245 2003-07-10  Alexandre Oliva  <aoliva@redhat.com>
246
247         2001-12-13  Alexandre Oliva  <aoliva@redhat.com>
248         * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
249         from ld-linux.so.2 to ld.so.1.
250         2001-11-18  Alexandre Oliva  <aoliva@redhat.com>
251         * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
252         * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
253         nor -Wl,-rpath-link.
254         (LIB_SPEC): Add -rpath-link if !static.
255         2001-08-22  Alexandre Oliva  <aoliva@redhat.com>
256         * config/mn10300/mn10300.c (mn10300_protect_label): New
257         variable.
258         * config/mn10300/linux.h (PRINT_OPERAND,
259         PRINT_OPERAND_ADDRESS): Set it during their execution.
260         (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
261         mn10300_protect_label is set.
262         * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
263         -Wl,-rpath-link.
264         (LIB_SPEC, STARTFILE_SPEC): Define.
265         2001-05-11  Alexandre Oliva  <aoliva@redhat.com>
266         * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
267         FLOAT_BIT_ORDER_MISMATCH.
268         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
269         * config.gcc (am33_2.0-*-linux*): Added.
270         * config/mn10300/linux.h: New.
271         * config/mn10300/t-linux: New.
272
273 2003-07-10  Andreas Jaeger  <aj@suse.de>
274
275         * fold-const.c: Properly wrap prototypes.
276
277 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
278
279         2003-06-16  Alexandre Oliva  <aoliva@redhat.com>
280         * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
281         Moved from...
282         * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
283         * config/mn10300/mn10300.h: GTY-declare it.
284         2003-06-11  Alexandre Oliva  <aoliva@redhat.com>
285         * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
286         prototype.  Use incoming RTL argument.
287         2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
288         * config/mn10300/mn10300.md (int_label): Move C statements...
289         (GOTaddr2picreg): ... here.
290         2002-08-15  Alexandre Oliva  <aoliva@redhat.com>
291         * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
292         * config/mn10300/mn10300.c (mn10300_encode_section_info):
293         ... here.  New function.
294         (TARGET_ENCODE_SECTION_INFO): Define to it.
295         2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
296         * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
297         pattern name.
298         (mn10300_loadPC): Define as insn splittable after reload.
299         2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
300         * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
301         be defined in .rodata even in PIC, now that the assembler
302         supports that.
303         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
304         * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
305         symbol take an underscore prefix.
306         2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
307         * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
308         legitimize_pic_address): Declare.
309         * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
310         the PIC register as fixed.
311         (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
312         (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
313         PIC.
314         (LEGITIMATE_PIC_OPERAND_P): Define.
315         (PIC_OFFSET_TABLE_REGNUM): Define.
316         (GOT_SYMBOL_NAME): Define.
317         (SYMBOLIC_CONST_P): Define.
318         (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
319         symbols.
320         (MN10300_GLOBAL_P): Test it.
321         (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
322         (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
323         * config/mn10300/mn10300.c (print_operand): Handle unspec.
324         (expand_prologue): Set PIC register.
325         (call_address_operand): Don't match SYMBOL_REFs in PIC.
326         (legitimize_address): Call legitimize_pic_address.
327         (legitimize_pic_address): New fn.
328         (legitimate_pic_operand_p): New fn.
329         * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
330         (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
331         UNSPEC_PLT): New constants.
332         (pop_pic_reg): New insn.
333         (movsi): Adjust non-PIC addresses.
334         (builtin_setjmp_receiver): Restore the PIC register.
335         (casesi): New insn.
336         (call): Adjust non-PIC addresses.
337         (int_label, GOTaddr2picreg): New expands.
338         (am33_loadPC): New insn.
339         (mn10300_loadPC): New expand.
340         (call_next_insn): New insn.
341         (add_GOT_to_pic_reg): New expand.
342         (symGOT2reg, symGOT2reg_i): New expands.
343         (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
344         (sym2PIC, sym2PLT): New expands.
345
346 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
347
348         * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
349         2001-05-01  Alexandre Oliva  <aoliva@redhat.com>
350         * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
351         to flag_unsafe_math_optimizations.
352         2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
353         * config/mn10300/mn10300.c (expand_prologue): Mark
354         FP-register-saving insns as frame-related.
355         2001-02-13  Alexandre Oliva  <aoliva@redhat.com>
356         * config/mn10300/mn10300.c
357         (mn10300_get_live_callee_saved_regs): Don't search past
358         LAST_EXTENDED_REGNUM.
359         (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
360         * config/mn10300/mn10300.md: Remove excessive line breaks from
361         `@' output patterns that were accounted as additional
362         alternatives.
363         * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
364         Re-introduce changes accidentally removed in Richard Sandiford's
365         2000-12-05's patch.
366         * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
367         Re-instate am33-2 lost in merge from net GCC.
368         2000-08-26  Alexandre Oliva  <aoliva@redhat.com>
369         * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
370         floating-point registers.
371         2000-08-07  Alexandre Oliva  <aoliva@redhat.com>
372         * config/mn10300/mn10300.md (movdf): Revert some am33-specific
373         pessimizations that had gone in on 2000-05-08.
374         2000-06-28  Graham Stott  <grahams@cygnus.co.uk>
375         * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
376         2000-06-22  Graham Stott  <grahams@cygnus.co.uk>
377         * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
378         operand 0.
379         * (movhi): Likewise.
380         * (movsi): Likewise.
381         * (movsf): Likewise.
382         * (movdi): Likewise.
383         * (movdf): Likewise.
384         Wed May 24 13:16:09 2000  Alexandre Oliva  <aoliva@cygnus.com>
385         * config/mn10300/mn10300.c (fp_regs_to_save): New function.
386         (can_use_return_insn, initial_offset): Add fp_regs_to_save.
387         (expand_prologue, expand_epilogue): Save and restore FP regs.
388         2000-05-20  Alexandre Oliva  <aoliva@cygnus.com>
389         * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
390         2000-05-13  Alexandre Oliva  <aoliva@cygnus.com>
391         * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
392         subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
393         Do not clobber cc0.
394         2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
395         * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
396         Discourage the two-argument, longer opcodes.
397         (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
398         ones.
399         * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
400         (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
401         * config/mn10300/mn10300.md (cmpsf): New pattern.
402         (branch): Test mdep.fpCC and output fbCC.
403         * config/mn10300/mn10300.c (print_operand): Output conditions.
404         (notice_cc_update): Recognize fcmp and set mdep.fpCC.
405         2000-05-10  Alexandre Oliva  <aoliva@cygnus.com>
406         * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
407         mulsf3, divsf3): Use the `F' constraint for FP values.
408         * config/mn10300/mn10300.c (const_1f_operand): New function.
409         * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
410         * config/mn10300/mn10300.md (sqrtsf2): New expand.
411         (rsqrtsf2): New insn.
412         2000-05-09  Alexandre Oliva  <aoliva@cygnus.com>
413         * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
414         previous check-in.
415         2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
416         * config/mn10300/mn10300.md (abssf2, negdf2): On
417         TARGET_AM33_2, expand to...
418         (abssf2_am33_2, negdf2_am33_2): New insns.
419         (addsf3, subsf3, mulsf3, divsf3): Likewise.
420         (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
421         * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
422         movdi, movdf): Added FP regs.
423         * invoke.texi (-mam33-2, -mno-am33-2): Document.
424         2000-04-29  Alexandre Oliva  <aoliva@cygnus.com>
425         * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
426         New macros.
427         (REGNO_AM33_2_FP_P): Renamed to...
428         (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
429         (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
430         2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
431         * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
432         regs from GENERAL_REGS.
433         2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
434         * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
435         * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
436         * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
437         2000-04-23  Alexandre Oliva  <aoliva@cygnus.com>
438         * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
439         as FP_REGS.
440         2000-04-21  Alexandre Oliva  <aoliva@cygnus.com>
441         * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
442         (EXTRA_CONSTRAINT): Added OK_FOR_Q.
443         * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
444         * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
445         * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
446         (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
447         AM33/2.0 floating-point registers.
448         (CONDITIONAL_REGISTER_USAGE): Adjust.
449         (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
450         (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
451         (REG_CLASS_FROM_LETTER): Added `f' and `A'.
452         (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
453         * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
454         (MULTILIB_DIRNAMES): Likewise.
455         * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
456         `__AM33_2__' when `-mam33-2' is given.
457         (TARGET_AM33_2): Define.
458         (TARGET_SWITCHES): Adjust.
459         * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
460         when appropriate.
461
462 2003-07-09  Matt Kraai  <kraai@alumni.cmu.edu>
463
464         * doc/install.texi: Add missing @.
465
466 2003-07-09  Bob Wilson  <bob.wilson@acm.org>
467
468         * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
469
470 2003-07-09  Aldy Hernandez  <aldyh@redhat.com>
471
472         PR/11144
473         * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
474
475 2003-07-09  Nathanael Nerode  <neroden@gcc.gnu.org>
476
477         PR bootstrap/11043
478         * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
479         "x-crtfini.o" with "crtinit.o", "crtfini.o".
480
481         * fixinc/inclhack.def (limits_ifndefs): Add select test.
482         * fixinc/fixincl.x: Rebuild.
483
484         * fixinc/inclhack.def (math_exception):  Improve bypass and comment.
485         * fixinc/fixincl.x: Rebuild.
486
487 2003-07-09  Hans-Peter Nilsson  <hp@bitrange.com>
488
489         * doc/install.texi (Configuration): Document the valgrind option
490         to --enable-checking.
491
492 Wed Jul  9 16:16:30 CEST 2003  Jan Hubicka  <jh@suse.cz>
493
494         * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
495
496 2003-07-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
497
498         * c-lex.c (cb_ident): Cast cstr.text to const char *.
499
500 2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>
501
502         * gcov-io.h: Update documentation.
503         (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
504         GCOV_NOTE_MAGIC.
505         (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
506         (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
507         (struct gcov_var): Change buffer's type. Add endian flag.
508         (gcov_open): Remove mode in libgcov.
509         (gcov_magic): Prototype.
510         * gcov-io.c (from_file): New.
511         (gcov_open): Clear endian flag.
512         (gcov_magic): New.
513         (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
514         pointers.
515         (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
516         gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
517         (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
518         * gcov-iov.c (main): Correct cast.
519         * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
520         conversion.
521         (gcov_begin_output): Use GCOV_NOTE_MAGIC.
522         (coverage_init): Use GCOV_NOTE_SUFFIX.
523         * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
524         Rename to gcov_version, and return flag.
525         (gcov_exit): Use gcov_version.
526         (__gcov_init): Use gcov_version.
527         * Makefile.in (coverageexts): Update.
528         * gcov.c (print_version): Remove endianness conversion.
529         (create_file_names): Use GCOV_NOTE_SUFFIX.
530         (read_graph_file): Use gcov_magic.
531         (read_count_file): Likewise.
532         * gcov-dump.c (dump_file): Remove endianness conversion, use
533         gcov_magic.
534
535 2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>
536
537         * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
538         coverage is on.
539         * configure: Regenerated.
540         * Makefile.in (ALL_CFLAGS): Correct its comment.
541
542 2003-07-08  Mark Mitchell  <mark@codesourcery.com>
543
544         * fold-const.c (make_range): Do not access operand 1 for a
545         zero-operand operator.
546
547 2003-07-09  Neil Booth  <neil@daikokuya.co.uk>
548
549         * toplev.c (warn_dummy, W_options): Die.
550         (display_help): Don't print W_options.
551         * common.opt: Add W_options help from toplev.c.
552
553 2003-07-09  Andreas Jaeger  <aj@suse.de>
554
555         * opts.c (wrap_help): Only pass int arguments as arguments to
556         printf's '*' modifier.  Change argument of function.
557
558 2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>
559
560         * doc/invoke.texi: Fix misspelling of "@item".
561
562 2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>
563
564         * config/i386/i386.md: Remove an old comment about
565         NOTICE_UPDATE_CC.
566
567 Wed Jul  9 03:00:10 CEST 2003  Jan Hubicka  <jh@suse.cz>
568
569         * cgraph.c (cgraph_node_name): New function.
570         (dump_cgraph): Use it.
571         * cgraph.h (cgraph_dump_file): Declare.
572         (cgraph_node_name): Declare.
573         * cgraphunit.c: Include timevar.h
574         (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
575         (cgraph_optimize_function): Use TV_INTEGRATION.
576         (cgraph_mark_local_functions): reorganize dumps.
577         (cgraph_mark_functions_to_inline_once): Likewise.
578         (cgraph_optimize): Likewise; use timevar.
579         * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
580         * toplev.c (dump_file_index): Add DFI_cgraph.
581         (dump_file_info): Likewise.
582         (cgraph_dump_file): New global variable.
583         (do_compile): Open and close cgraph dump.
584         * invoke.texi (-d): Document new flag; renumber.
585
586 2003-07-08  Roger Sayle  <roger@eyesopen.com>
587
588         PR c/11370
589         * calls.c (emit_call_1): Don't bother popping the arguments off of
590         the stack after a noreturn function call;  The adjustment is dead.
591         (expand_call): Likewise.
592
593 2003-07-08  Geoffrey Keating  <geoffk@apple.com>
594
595         * expr.c (MOVE_MAX_PIECES): Move from here...
596         * defaults.h (MOVE_MAX_PIECES): ... to here.
597
598 2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>
599
600         * Makefile.in (stage1-start): Handle an empty SUBDIRS.
601
602 2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
603
604         * genattr.c (internal_dfa_insn_code): Don't prototype.
605         * genattrtab.c (attr_desc): Add `static_p' field.
606         (expand_units): Make blockage range and ready cost functions
607         static.
608         (write_attr_get): Don't add extern prototypes in C file.  Mark
609         static functions as appropriate.
610         (find_attr, make_internal_attr): Initialize static_p.
611         * genattrtab.h (ATTR_STATIC): New macro.
612         * genautomata.c (output_internal_reset_func): Mark output function
613         as inline.
614         (make_internal_dfa_insn_code_attr): Mark output function as static.
615
616 2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
617
618         * genattrtab.h: Add new macros for attr `special' flags.
619         * genattrtab.c (attr_desc): Reorder/resize fields better.
620         Use attr `special' macros in all calls to make_internal_attr.
621         * genautomata.c: Likewise.
622
623 Wed Jul  9 02:25:39 CEST 2003  Jan Hubicka  <jh@suse.cz>
624
625         * c-common.c (c_estimate_num_insns_1): New static function.
626         (c_estimate_num_insns): New global function.
627         * c-common.h (DECL_NUM_STMTS): Rename to...
628         (DECL_ESTIMATED_INSNS): ... this.
629         (c_estimate_num_insns): Declare.
630         * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
631         * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
632         * c-semantics.c (add_stmt): Do not account statements.
633         * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
634         New.
635         * langhooks.h (lang_hooks_for_tree_inlining): Add
636         estimate_num_insns
637         * params.def (max-inline-insns-auto, max-inline-insns-auto): set
638         to 100.
639         (max-inline-insns): set to 300.
640         (min-inline-insns): set to 10.
641         * tree-inline.c (struct inline_data): Rename inlined_stmts to
642         inlined-insns.
643         (INSNS_PER_STMT): Kill.
644         (inlinable_function_p): Compute and store body size.
645         (expand_call_inline): Likewise.
646         (optimize_inline_calls): Likewise.
647
648 2003-07-08  James E Wilson  <wilson@tuliptree.org>
649
650         PR target/10021
651         * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
652         loop over new variable t2 instead of t.
653
654 2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>
655
656         PR bootstrap/11455
657         * config/i386/winnt.c: Replace use of error(), warning() with
658         error_with_decl(), warning_with_decl(),  throughout.
659
660 2003-07-08  Neil Booth  <neil@daikokuya.co.uk>
661
662         * opts.c (wrap_help): Use unsigned int, not size_t.
663
664 2003-07-08  Stephane Carrez  <stcarrez@nerim.fr>
665
666         * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
667         as .file/.loc directives are incompatible with linker relaxation.
668
669 2003-07-08  Zack Weinberg  <zack@codesourcery.com>
670
671         * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
672         * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
673         * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
674         * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
675         * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
676         * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
677         Escape { and } characters which are not part of range expressions.
678         * fixinc/fixincl.x: Regenerate.
679         * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
680
681 2003-07-08  Steven Bosscher  <steven@gcc.gnu.org>
682
683         PR c/1687
684         * tree-inline.c (find_alloca_call): Use
685         walk_tree_without_duplicates, instead of walk_tree.
686         (find_builtin_longjmp_call): Likewise.
687         * c-objc-common.c (c_cannot_inline_fn): Likewise.
688         * c-semantics.c (find_reachable_label): Likewise.
689
690 2003-07-08  Jakub Jelinek  <jakub@redhat.com>
691
692         PR c/11420
693         * config/i386/i386.c (ix86_check_movabs): New function.
694         * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
695         * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
696         (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
697
698 2003-07-08  Chris Demetriou  <cgd@broadcom.com>
699
700         * Makefile.in (install-po): Cope with empty CATALOGS.
701
702 2003-07-08  Richard Sandiford  <rsandifo@redhat.com>
703
704         * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
705         (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
706         (SECTION_FUNCTION_TEMPLATE): Delete.
707         * config/mips/elf.h: As for elf64.h.
708         (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
709         * config/mips/linux.h: As for elf.h
710         * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
711         * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
712         (EXTRA_SECTION_FUNCTIONS): Remove sdata_section.  Remove the handling
713         of in_sdata from current_section_name and current_section_flags.
714         * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
715         * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
716         (MASK_GP_OPT, TARGET_GP_OPT): Delete.
717         (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
718         (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
719         (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
720         * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
721         (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
722         (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
723         (override_options): Remove setting of MASK_GPOPT.
724         (mips_output_external): Use mips_in_small_data_p to check whether a
725         symbol needs an .extern directive.  Don't emit such directives for
726         TARGET_EXPLICIT_RELOCS.
727         (mips_declare_object): Update accordingly.
728         (mips_select_rtx_section): Call named_section rather than
729         SMALL_DATA_SECTION.
730         (mips_select_section): Use default_elf_section_section for everything
731         except .text string constants.
732         (mips_in_small_data_p): New function.
733         (mips_encode_section_info): Remove small data handling.
734         (mips_unique_section): Delete.
735         (iris6_section_type_flags): New function.
736         * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
737
738 2003-07-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
739
740         PR Target/11453
741         * pa.md: Disparage all mtsar constraints.
742         (extzv, extv, insv): Don't fail on length of {32|64}.
743
744 2003-07-08  Zack Weinberg  <zack@codesourcery.com>
745
746         * system.h: Poison MAP_CHARACTER.
747         * config/i370/i370-protos.h (mvs_map_char): Delete.
748         * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
749         * config/i370/i370.h (MAP_CHARACTER): Delete definition.
750         (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
751
752 2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>
753
754         * toplev.c (randomize): Correct call to time().
755
756 2003-07-08  Jakub Jelinek  <jakub@redhat.com>
757
758         * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
759         REG_EQUIV notes as well.
760
761 2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>
762
763         * doc/md.texi: Fix the description of addmodecc.
764
765 2003-07-07  Zack Weinberg  <zack@codesourcery.com>
766
767         * Makefile.in (top_builddir): Set to "..", not ".".
768         (INTLLIBS, INTLDEPS): Delete.
769         (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
770         (LIBDEPS): Add $(LIBICONV_DEP).
771         (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
772         (INCLUDES): Replace -I../intl with @INCINTL@.
773         ($(top_builddir)/intl/libintl.a): Delete rule.
774         (stage2-start, stage3-start, stage4-start, stageprofile-start,
775         stagefeedback-start): Use $$ for variable to be evaluated by
776         shell, not make.
777         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
778         HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
779         * aclocal.m4: sinclude ../config/progtest.m4.  Add
780         contents of lcmessage.m4 from gettext distro.
781         * configure.in: Check for wchar.h and setlocale.  Set
782         LIBICONV_DEP to the empty string and substitute it.
783         Call AM_LC_MESSAGES.  Delete AC_ARG_ENABLE for --enable-nls;
784         this is handled elsewhere.  Use ZW_GNU_GETTEXT_SISTER_DIR,
785         not CY_GNU_GETTEXT.  Clear $LIBICONV if its text is included
786         in $LIBINTL, to avoid linking it twice.
787         * configure, config.in: Regenerate.
788
789 2003-07-08  Nathanael Nerode  <neroden@gcc.gnu.org>
790
791         * fixinc/mkfixinc.sh: Remove winnt support.
792         * fixinc/fixinc.winnt: Delete with extreme prejudice.
793
794 2003-07-08  Neil Booth  <neil@daikokuya.co.uk>
795
796         * Makefile.in: Update.
797         * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
798         * c.opt: Update documentation.
799         * common.opt: Add some help text.
800         * opts.c: Include intl.h.
801         (wrap_help, print_help): New.
802         (find_opt, handle_option, common_handle_option): opt_text now
803         contains the '-'.  Use print_help to output help.
804         * opts.h (struct cl_option): New member "help".
805         * opts.sh: Update to handle help text output and to prepend
806         options with '-'.
807         * toplev.c (display_help): Remove some help text.
808
809 2003-07-07  David Edelsohn  <edelsohn@gnu.org>
810             Fariborz Jahanian  <fjahanian@apple.com>
811
812         * configure.in: Test for PowerPC mfcr field support in assembler.
813         * config.in, configure: Regenderated.
814
815         * config/rs6000/power4.md: Add mfcrf reservation.
816         * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
817         * config/rs6000/rs6000.c (mfcr_operation): Define.
818         (print_operand): Add 'Q' case for mfcrf.
819         * config/rs6000/rs6000.h (TARGET_MFCRF): New.
820         * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
821         (movcc_internal1): Emit optional field operand for mfcr and set
822         "type" attribute appropriately.
823         (mfcr SCC): Likewise.
824         (movesi_from_cr_one): New.
825
826 2003-07-07  Roger Sayle  <roger@eyesopen.com>
827
828         * config/i386/i386.md: Correct check-in of incorrect version.
829
830 2003-07-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
831
832         * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
833         adjacent stdio calls.
834         * c-decl.c (c_print_identifier): Likewise.
835         * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
836         * print-rtl.c (print_rtx): Likewise.
837         * print-tree.c (print_node_brief, print_node): Likewise.
838         * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
839
840         * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
841         * config.in, configure: Regenerated.
842
843 2003-07-07  Roger Sayle  <roger@eyesopen.com>
844
845         PR target/10979
846         * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
847         Changed to define_expand patterns that copy operand[1] to prevent
848         it from being clobbered before emitting an atan2?f3_1 insn.
849         (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
850         patterns that actually specify the behaviour of x87's FPATAN.
851
852 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
853
854         * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
855         clearing of SYMBOL_FLAG_LOCAL bit.
856         If vcall_offset fits into signed 16-bit immediate, use
857         one instruction for both addition and load.
858
859 2003-07-07  Neil Booth  <neil@daikokuya.co.uk>
860
861         * opts.c (common_handle_option): Correct handling of the
862         -falign- switches that do and don't take an argument.
863
864 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
865
866         * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
867         today.
868         (pushhi1_h8300hs): Likewise.
869
870 2003-07-07  Andreas Jaeger  <aj@suse.de>
871
872         * genextract.c: Convert remaining prototypes to ISO C90.
873
874         * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
875         * fold-const.c (fold_single_bit_test): Likewise.
876         * diagnostic.c (default_diagnostic_finalizer): Likewise.
877         * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
878
879         * gengtype.c (write_array): Generate ISO C90 prototypes.
880
881         * genflags.c (gen_proto): Generate ISO C90 prototypes.
882
883 2003-07-07  Roger Sayle  <roger@eyesopen.com>
884
885         PR optimization/11059
886         * expr.c (can_store_by_pieces): Return true if length is zero.
887         (store_by_pieces): If length is zero and endp is two, abort,
888         othwerise, if length is zero and endp is not two, return "to".
889         (clear_by_pieces): Do nothing if length is zero.
890         (clear_storage): Do nothing if length is zero.
891         (store_constructor): Simplify code when size is zero, or the
892         target has already been cleared.  This avoids emitting a
893         blockage instruction when initializing empty structures.
894
895 2003-07-07  Andreas Jaeger  <aj@suse.de>
896
897         * mips-tfile.c: Convert prototypes to ISO C90.
898         * mips-tdump.c: Convert prototypes to ISO C90.
899
900 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
901
902         * rtl.h (emit_line_note): Take a location_t.
903         (emit_line_note_force): Remove.
904         (set_file_and_line_for_statement): Take a location_t.
905         * tree.g (emit_line_note): Take a location_t.
906         * emit-rtl.c (emit_line_note): Take a location_t.
907         (emit_line_note_force): Remove.
908         * function.c (init_function_start): Adjust emit_line_note call.
909         (expand_function_end): Use force_next_line_note, not
910         emit_line_note_force.
911         * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
912         * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
913         genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
914         genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
915         genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
916         genrtl_continue_stmt, genrtl_switch_stmt,
917         genrtl_asm_stmt): Likewise.
918         * expr.c (expand_expr): Likewise.
919         * integrate.c (expand_inline_function): Likewise.
920         * stmt.c (set_file_and_line_for_stmt): Take a location_t.
921         (expand_decl_init): Adjust emit_line_note call.
922
923 2003-07-07  Dale Johannesen  <dalej@apple.com>
924
925         * config/rs6000/darwin-tramp.asm:  Fix trampolines.  PR 10900.
926
927 2003-07-07  Andreas Jaeger  <aj@suse.de>
928
929         * config/i386/i386-protos.h: Convert prototypes to ISO C90.
930         * config/i386/i386.c: Likewise.
931
932 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
933
934         * config/h8300/h8300.md: Use gen_int_mode instead of
935         GEN_INT (trunc_int_for_mode (...)).
936
937 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
938
939         * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
940         2 bytes and then subtract 2 from the stack pointer.
941         (pushhi1_h8300hs): Likewise.
942
943 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
944
945         * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
946         -frandom-seed.
947         * configure: Regenerated.
948         * Makefile.in: Remove extraneous comment.
949         * toplev.c (randomize): Protect against potential multiple calls.
950         * doc/invoke.texi (-frandom-seed): Document use for in coverage
951         files.
952
953 2003-07-07  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
954             Eric Botcazou  <ebotcazou@libertysurf.fr>
955
956         PR optimization/11198
957         * alias.c (objects_must_conflict_p): Return 1 if the types have
958         the same alias set, not if the alias sets only conflict.
959
960 2003-07-07  Andrew Pinski  <pinskia@physics.uc.edu>
961
962         * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
963         (convert_cset): Change inbuf to type ICONV_CONST char.
964         * Makefile.in (LIBS): Add LIBICONV.
965
966         * doc/invoke.texi (-falign-functions): Document that
967         when n is zero then a machine-dependent default is used.
968         (-falign-labels): Document that when n is zero then a
969         machine-dependent default is used and that -falign-labels =1
970         is equivalent to -fno-align-labels.
971         (-falign-loops): Likewise.
972         (-falign-jumps): Likewise.
973
974 2003-07-06  Art Haas  <ahaas@airmail.net>
975
976         * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
977         initializer syntax.
978
979 2003-07-06  James E Wilson  <wilson@tuliptree.org>
980
981         PR optimization/9812
982         * rtl.h (mem_for_const_double): Delete prototype.
983         * varasm.c (mem_for_const_double): Delete function.
984         * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
985         config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
986         (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
987         * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
988         (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
989         * config/m68k/m68k.md (movxf): Add reload_in_progress guard.  Add
990         comment about confused support for XFmode constants.
991
992 Mon Jul  7 02:03:56 CEST 2003  Jan Hubicka  <jh@suse.cz>
993
994         * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
995
996 2003-07-06  Kazu Hirata  <kazu@cs.umass.edu>
997
998         * config/h8300/h8300.c: Fix comment typos.
999         * config/h8300/h8300.md: Likewise.
1000         * config/i386/athlon.md: Likewise.
1001         * config/i386/i386.c: Likewise.
1002         * config/i386/pentium.md: Likewise.
1003         * config/ia64/ia64.c: Likewise.
1004         * config/ia64/itanium1.md: Likewise.
1005         * config/ia64/itanium2.md: Likewise.
1006         * config/m32r/m32r.md: Likewise.
1007         * config/m68hc11/m68hc11.c: Likewise.
1008         * config/mcore/mcore.c: Likewise.
1009         * config/mips/sr71k.md: Likewise.
1010         * config/mips/t-iris5-as: Likewise.
1011         * config/mmix/mmix.h: Likewise.
1012         * config/ns32k/ns32k.h: Likewise.
1013         * config/ns32k/NOTES: Fix a typo.
1014
1015 2003-07-06  Andreas Jaeger  <aj@suse.de>
1016
1017         * stmt.c: Convert remaining prototypes to ISO C90.
1018         * cfglayout.c: Likewise.
1019         * dbxout.c: Likewise.
1020         * gcc.c: Likewise.
1021         * genemit.c: Likewise.
1022
1023         * basic-block.h: Convert prototypes to ISO C90.
1024         * c-parse.in: Likewise.
1025         * c-pragma.h: Likewise.
1026         * c-typeck.c: Likewise.
1027         * cfghooks.h: Likewise.
1028         * cfgloopanal.c: Likewise.
1029         * dbxout.h: Likewise.
1030         * debug.h: Likewise.
1031         * dwarf2asm.h: Likewise.
1032         * gcov.c: Likewise.
1033         * gengtype-lex.l: Likewise.
1034         * sched-int.h: Likewise.
1035         * timevar.c: Likewise.
1036
1037 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
1038
1039         * c-common.h (c_comon_handle_filename,
1040         c_common_missing_arguement): New.
1041         * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
1042         LANG_HOOKS_MISSING_ARGUMENT): New.
1043         * c-opts.c (missing_arg): Rename c_common_missing_argument,
1044         update to be an appropriate langhook.
1045         (c_common_handle_option): Don't handle filenames.
1046         (c_common_handle_filename): New.
1047         * hooks.c (hook_void_constcharptr,
1048         hook_bool_constcharptr_size_t_false): New.
1049         * hooks.h (hook_void_constcharptr,
1050         hook_bool_constcharptr_size_t_false): New.
1051         * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
1052         LANG_HOOKS_MISSING_ARGUMENT): New.
1053         (LANG_HOOKS_INITIALIZER): Update.
1054         * langhooks.h (struct lang_hooks): Add handle_filename and
1055         missing_argument.
1056         * opts.c (handle_option): Don't handle filenames here, but ...
1057         (handle_options): ... here.
1058         (common_handle_option): Don't handle missing arguments here.
1059         * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
1060         LANG_HOOKS_MISSING_ARGUMENT): New.
1061
1062 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
1063
1064         * Makfile.in: Remove traces of mbchar.
1065         * c-parse.in (MULTIBYTE_CHARS): Remove.
1066         * config.in (MULTIBYTE_CHARS): Remove.
1067         * configure: Remove --enable-mbchar.
1068         * configure.in: Remove --enable-mbchar.
1069         * mbchar.c, mbchar.h: Remove.
1070         * system.h: Poison MULTIBYTE_CHARS.
1071         * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
1072         * config/linux.h (MULTIBYTE_CHARS): Remove.
1073         * config/svr4.h (MULTIBYTE_CHARS): Remove.
1074         * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
1075
1076 2003-07-06  Andreas Jaeger  <aj@suse.de>
1077
1078         * varray.c (varray_check_failed): Fix typo.
1079
1080         * unroll.c: Convert prototypes to ISO C90.
1081         * varasm.c: Likewise.
1082         * varray.c: Likewise.
1083         * varray.h: Likewise.
1084         * vmsdbgout.c: Likewise.
1085         * xcoffout.c: Likewise.
1086         * xcoffout.h: Likewise.
1087
1088 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
1089
1090         * gcov-io.h: Add a local time stamp.
1091         (struct gcov_info): Add stamp field.
1092         (gcov_truncate): New.
1093         * coverage.c (read_counts_file): Skip the stamp.
1094         (coverage_begin_output): Write the stamp.
1095         (build_gcov_info): Declare and init the stamp.
1096         (coverage_finish): Only unlink data file, if stamp is zero.
1097         * gcov-dump.c (dump_file): Dump the stamp.
1098         * gcov.c (bbg_stamp): New.
1099         (release_structures): Clear bbg_stamp.
1100         (read_graph_file): Read stamp.
1101         (read_count_file): Check stamp.
1102         * libgcov.c (gcov_exit): Check stamp and truncate if needed.
1103
1104 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
1105
1106         * tree.h (default_flag_random_seed): Remove.
1107         * toplev.h (local_tick): Declare.
1108         * tree.c (flag_random_seed, default_flag_random_seed): Move to
1109         toplev.c.
1110         (append_random_chars): Don't call default_flag_random_seed.
1111         * toplev.c (flag_random_seed): Define here. Set local_tick.
1112         (local_tick): Define.
1113         (randomize): New, moved from tree.c.
1114         (print_switch_values): Adjust.
1115         (toplev_main): Call randomize.
1116
1117 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
1118
1119         * tree.h (crc32_string): Declare.
1120         * tree.c (append_random_chars): Remove.
1121         (crc32_string): New.
1122         (get_file_function_name_long): Use crc32_string here.
1123
1124 2003-07-06  Andreas Jaeger  <aj@suse.de>
1125
1126         * gcc.c: Convert prototypes to ISO C90.
1127         * gcc.h: Likewise.
1128         * gcov-dump.c: Likewise.
1129         * gcov-iov.c: Likewise.
1130         * gcse.c: Likewise.
1131         * genattrtab.h: Likewise.
1132         * ggc.h: Likewise.
1133         * global.c: Likewise.
1134         * graph.c: Likewise.
1135         * graph.h: Likewise.
1136         * hosthooks.h: Likewise.
1137         * hooks.h: Likewise.
1138         * hooks.c: Likewise.
1139         * hashtable.h: Likewise.
1140         * hashtable.c: Likewise.
1141         * haifa-sched.c: Likewise.
1142         * integrate.h: Likewise.
1143         * integrate.c: Likewise.
1144         * input.h: Likewise.
1145         * ifcvt.c: Likewise.
1146         * jump.c: Likewise.
1147         * langhooks-def.h: Likewise.  Add extern to prototypes.
1148         * langhooks.c: Likewise.
1149         * langhooks.h: Likewise.
1150         * lcm.c: Likewise.
1151         * local-alloc.c: Likewise.
1152         * loop-init.c: Likewise.
1153         * loop-unroll.c: Likewise.
1154         * loop-unswitch.c: Likewise.
1155         * loop.c: Likewise.
1156         * loop.h: Likewise. Add extern to prototypes.
1157         * machmode.h: Likewise.
1158         * main.c: Likewise.
1159         * mbchar.c: Likewise.
1160         * mbchar.h: Likewise.
1161         * mkdeps.c: Likewise.
1162         * mkdeps.h: Likewise.
1163         * optabs.c: Likewise.
1164         * optabs.h: Likewise.
1165         * output.h: Likewise.
1166         * gccspec.c: Likwise.
1167         * postreload.c: Likewise.
1168         * prefix.c: Likewise.
1169         * prefix.h: Likewise.
1170         * print-rtl.c: Likewise.
1171         * print-tree.c: Likewise.
1172         * profile.c: Likewise.
1173         * read-rtl.c: Likewise.
1174         * real.c: Likewise.
1175         * real.h: Likewise.
1176         * recog.c: Likewise.
1177         * recog.h: Likewise.
1178         * reg-stack.c: Likewise.
1179         * regclass.c: Likewise.
1180         * regmove.c: Likewise.
1181         * regrename.c: Likewise.
1182         * regs.h: Likewise.
1183         * reload.c: Likewise.
1184         * reload.h: Likewise.
1185         * reload1.c: Likewise.
1186         * reorg.c: Likewise.
1187         * resource.c: Likewise.
1188         * resource.h: Likewise.
1189         * rtl-error.c: Likewise.
1190         * rtl.c: Likewise.
1191         * rtl.h: Likewise.
1192         * rtlanal.c: Likewise.
1193         * sbitmap.c: Likewise.
1194         * sbitmap.h: Likewise.
1195         * scan-decls.c: Likewise.
1196         * scan.c: Likewise.
1197         * sched-deps.c: Likewise.
1198         * sched-ebb.c: Likewise.
1199         * sched-int.h: Likewise.
1200         * sched-rgn.c: Likewise.
1201         * sched-vis.c: Likewise.
1202         * sibcall.c: Likewise.
1203         * simplify-rtx.c: Likewise.
1204         * sreal.c: Likewise.
1205         * sreal.h: Likewise.
1206         * ssa-ccp.c: Likewise.
1207         * ssa-dce.c: Likewise.
1208         * ssa.c: Likewise.
1209         * ssa.h: Likewise.
1210         * stack.h: Likewise.
1211         * stmt.c: Likewise.
1212         * stor-layout.c: Likewise.
1213         * stringpool.c: Likewise.
1214         * target.h: Likewise.
1215         * timevar.c: Likewise.
1216         * timevar.h: Likewise.
1217         * tlink.c: Likewise.
1218         * tracer.c: Likewise.
1219         * tree-inline.c: Likewise.
1220         * tree-inline.h: Likewise.
1221         * tree.c: Likewise.
1222         * tree.h: Likewise.
1223
1224 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
1225
1226         * combine.c (nonzero_bits1): Fix a warning.
1227
1228 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
1229
1230         * config/h8300/h8300.c (compute_mov_length): Correct the
1231         length of loading CONST0_RTX (SFmode).
1232
1233 2003-07-05  Nathan Sidwell  <nathan@codesourcery.com>
1234
1235         * toplev.c (output_clean_symbol_name): Remove.
1236         * toplev.h (output_clean_symbol_name): Remove.
1237         * config/alpha/alpha.c (unicosmk_output_module_name): Use
1238         lbasename & clean_symbol_name.
1239
1240 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
1241
1242         * ggc.h: Follow spelling conventions.
1243         * config/i386/i386.c: Likewise.
1244         * config/i386/winnt.c: Likewise.
1245         * config/rs6000/rs6000.c: Likewise.
1246
1247 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
1248
1249         * bt-load.c: Fix comment typos.
1250         * c-incpath.c: Likewise.
1251         * cfg.c: Likewise.
1252         * cfgcleanup.c: Likewise.
1253         * cfgloop.h: Likewise.
1254         * cfgloopmanip.c: Likewise.
1255         * cfgrtl.c: Likewise.
1256         * diagnostic.h: Likewise.
1257         * dwarfout.c: Likewise.
1258         * emit-rtl.c: Likewise.
1259         * et-forest.c: Likewise.
1260         * et-forest.h: Likewise.
1261         * expr.c: Likewise.
1262         * gcse.c: Likewise.
1263         * genattr.c: Likewise.
1264         * jump.c: Likewise.
1265         * langhooks.h: Likewise.
1266         * local-alloc.c: Likewise.
1267         * loop-unroll.c: Likewise.
1268         * loop-unswitch.c: Likewise.
1269         * ra-build.c: Likewise.
1270         * regclass.c: Likewise.
1271         * regmove.c: Likewise.
1272         * rtl.def: Likewise.
1273         * rtlanal.c: Likewise.
1274         * sched-ebb.c: Likewise.
1275         * sched-rgn.c: Likewise.
1276         * simplify-rtx.c: Likewise.
1277         * ssa.c: Likewise.
1278         * tracer.c: Likewise.
1279         * tree.c: Likewise.
1280
1281 2003-07-05  Zack Weinberg  <zack@codesourcery.com>
1282
1283         * cppcharset.c: Use the correct return type for the fallback iconv
1284         macro.
1285
1286 Sat Jul  5 16:18:53 CEST 2003  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1287
1288         Blame to Jan Hubicka  <jh@suse.cz>
1289         * cfglayout.c (record_effective_endpoints): Split insns before
1290         first basic block correctly.
1291
1292 2003-07-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1293
1294         * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
1295         bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
1296         if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
1297
1298 2003-07-05  Andreas Jaeger  <aj@suse.de>
1299
1300         * genattrtab.c (write_attr_get): Revert part of last patch to
1301         always write out a prototype.
1302
1303         * genemit.c (gen_split): Readd lost unused attributes in last
1304         patch.
1305
1306 2003-07-05  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1307
1308         * cfgloopmanip.c (force_single_succ_latches): Force latch to be
1309         different from header.
1310
1311 2003-07-05  Andreas Schwab  <schwab@suse.de>
1312
1313         * config/m68k/m68k.c: Remove code protected by CRDS.
1314         * config/m68k/m68k.md: Likewise.
1315
1316 2003-07-05  Neil Booth  <neil@daikokuya.co.uk>
1317
1318         PR driver/11417
1319         * c-opts.c (permit_fortran_options): New.
1320         (c_common_init_options): Accept fortran front end options if
1321         it looks like we might be preprocessing Fortran.
1322         (c_common_handle_option): Don't reject switch if permit_fotran_options.
1323
1324 2003-07-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1325
1326         * genattr.c (internal_dfa_insn_code): Output prototype.
1327         * genattrtab.c: Don't output unnecessary decls, output in ISO C.
1328         * genautomata.c: Likewise.
1329         * genconditions.c: Likewise.
1330         * genemit.c: Likewise.
1331         * genextract.c: Likewise.
1332         * gengenrtl.c: Likewise.
1333         * gengtype.c: Likewise.
1334         * genopinit.c: Likewise.
1335         * genoutput.c: Likewise.
1336         * genpeep.c: Likewise.
1337         * genrecog.c: Likewise.
1338
1339 2003-07-04  Zack Weinberg  <zack@codesourcery.com>
1340
1341         * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
1342         (struct cpp_options): Add narrow_charset, wide_charset,
1343         bytes_big_endian fields.  Remove EBCDIC field.
1344         (cpp_init_iconv, cpp_interpret_string): New external interfaces.
1345
1346         * cpphash.h: Include <iconv.h> if we have it, otherwise
1347         provide a dummy definition of iconv_t.
1348         (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
1349         (_cpp_valid_ucn): Update prototype.
1350         (_cpp_destroy_iconv): New prototype.
1351
1352         * doc/cpp.texi: Document character set handling.
1353         * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
1354         * doc/extend.texi: Delete entire section on multiline strings.
1355         Rewrite section on __FUNCTION__ etc now that these are
1356         variables in C.
1357
1358         * cppucnid.tab, cppucnid.pl: New files.
1359         * cppucnid.h: New generated file.
1360         * cppcharset.c: Include cppucnid.h.  Lots of commentary added.
1361         (iconv_open, iconv, iconv_close): Provide dummy definitions
1362         if !HAVE_ICONV.
1363         (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
1364         _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
1365         emit_numeric_escape, convert_hex, convert_oct, convert_escape,
1366         cpp_interpret_string, narrow_str_to_charconst,
1367         wide_str_to_charconst): New.
1368         (ucn_valid_in_identifier): Use a binary search through the
1369         ucnranges table defined in cppucnid.h, not a long chain of if
1370         statements.
1371         (_cpp_valid_ucn): Add a limit pointer.  Downgrade "universal
1372         character names are only valid in C++ and C99" to a warning.
1373         Issue the "meaning of \[uU] is different in traditional C"
1374         warning here.  Take care not to let iconv see an invalid UCS
1375         value if we get a malformed UCN.  Issue an error if we don't
1376         have iconv.
1377         (cpp_interpret_charconst): Moved here from cpplex.c.  Use
1378         cpp_interpret_string to do the heavy lifting.
1379
1380         * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
1381         narrow_charset, wide_charset fields of options structure.
1382         (cpp_destroy): Call _cpp_destroy_iconv.
1383         * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
1384         (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
1385         (cpp_interpret_charconst): Moved to cppcharset.c.
1386         * cpplib.c (dequote_string): Delete.
1387         (interpret_string_notranslate): New.
1388         (do_line, do_linemarker): Use interpret_string_notranslate.
1389
1390         * Makefile.in (cppcharset.o): Depend on cppucnid.h.
1391
1392         * c-common.c (fname_string, combine_strings): Delete.
1393         * c-common.h (fname_string, combine_strings): Delete prototypes.
1394         * c-lex.c (ignore_escape_flag): Delete.
1395         (cb_ident): Use cpp_interpret_string, not lex_string.
1396         (get_nonpadding_token): New function.
1397         (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
1398         Adjust calls to lex_string.  Don't write *value twice.
1399         (lex_string): Now handles string constant concatenation.
1400         Most of the work handed off to cpp_interpret_string.
1401         Call fix_string_type here.
1402         * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
1403         FUNC_NAME, throughout.
1404         (OBJC_STRING): New token type.
1405         (primary:STRING): No need to call fix_string_type here.
1406         (primary:objc_string): Make that OBJC_STRING.
1407         (objc_string nonterminal): Delete.
1408         (yylexname): Delete code to handle fake string constants.
1409         (yylexstring): Delete entirely.
1410         (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING.  No need
1411         to handle CPP_ATSIGN.
1412
1413         * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
1414         * c-opts.c (missing_arg, c_common_handle_option): Handle
1415         OPT_fexec_charset_ and OPT_fwide_exec_charset_.
1416         (c_common_init): Set cpp_opts->bytes_big_endian, not
1417         cpp_opts->EBCDIC.  Call cpp_init_iconv.
1418         (print_help): Document -fexec-charset= and -fexec-wide-charset=.
1419         (TARGET_EBCDIC): Delete default definition.
1420
1421         * objc/objc-act.c (build_objc_string_object): No need to
1422         handle string constant concatenation.
1423
1424 2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
1425
1426         * doc/install.texi: Fix typos.
1427         * doc/invoke.texi: Likewise.
1428         * doc/tm.texi: Likewise.
1429
1430 2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
1431
1432         * config/pa/fptr.c: Fix comment typos.
1433         * config/pa/pa-64.h: Likewise.
1434         * config/pa/pa.c: Likewise.
1435         * config/pa/pa.h: Likewise.
1436         * config/rs6000/603.md: Likewise.
1437         * config/rs6000/7xx.md: Likewise.
1438         * config/rs6000/darwin.h: Likewise.
1439         * config/rs6000/freebsd.h: Likewise.
1440         * config/rs6000/rs6000.c: Likewise.
1441         * config/rs6000/rs6000.md: Likewise.
1442         * config/rs6000/spe.h: Likewise.
1443
1444 2003-07-04  Ulrich Weigand  <uweigand@de.ibm.com>
1445
1446         * config/s390/2064.md: Change GNU CC to GCC.
1447         * config/s390/2084.md: Likewise.
1448         * config/s390/fixdfdi.h: Likewise.
1449         * config/s390/linux.h: Likewise.
1450         * config/s390/s390-modes.def: Likewise.
1451         * config/s390/s390-protos.h: Likewise.
1452         * config/s390/s390.c: Likewise.
1453         * config/s390/s390.h: Likewise.
1454         * config/s390/s390.md: Likewise.
1455         * config/s390/s390x.h: Likewise.
1456
1457 2003-07-04  Jeff Law  <law@redhat.com>
1458
1459         PR c/11428
1460         * expr.c (do_store_flag): Pass in the correct result type
1461         when calling fold_single_bit_test.
1462         * fold-const.c (fold_single_bit_test): Use result_type for the
1463         result when folding a sign bit test.
1464
1465 2003-07-04  Neil Booth  <neil@daikokuya.co.uk>
1466
1467         * opts.c (common_handle_options): Negate sense of -falign- switches.
1468
1469 2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
1470
1471         * Makefile.in: Replace PWD with PWD_COMMAND.
1472
1473 2003-07-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1474
1475         * cfgloopanal.c (count_strange_loop_iterations): New static function.
1476         (constant_iterations, count_loop_iterations, simple_loop_exit_p):
1477         Handle strange loops.
1478
1479 2003-07-04  Toon Moene  <toon@moene.indiv.nluug.nl>
1480
1481         * install.texi: Even the g77 manpage is derived from
1482         the full g77 manual.
1483
1484 2003-07-04  Zack Weinberg  <zack@codesourcery.com>
1485
1486         * ABOUT-NLS: Delete.
1487         * intl: Delete entire directory.
1488         * aclocal.m4: Include ../config/gettext.m4.  Delete
1489         AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
1490         AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
1491         * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
1492         Remove intl/Makefile from all_outputs.
1493         * configure, config.in: Regenerate.
1494         * Makefile.in: Expunge all references to intl subdirectory.
1495         Add -I../intl to INCLUDES.
1496         * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
1497
1498 2003-07-04  Roger Sayle  <roger@eyesopen.com>
1499
1500         * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
1501         * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
1502
1503 2003-07-04  Danny Smith  <dannysmith@users.sourceforge.net>
1504
1505         PR c++/5287, PR c++/7910, PR c++/11021
1506         * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
1507         dllimport attribute if function is defined at declaration, but
1508         report error instead. Likewise for dllimport'd variable
1509         definitions.  Set implicit TREE_PUBLIC for dllimport'd variables
1510         declared within functions, Report error if dllimport or dllexport
1511         symbol is not global.
1512         (i386_pe_dllimport_p): Ignore dllimport attribute of functions
1513         if defined after declaration or if inlined. Don't allow definition
1514         of static data members of C++ classes. Don't dllimport virtual
1515         methods.
1516         (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
1517         (i386_pe_mark_dllimport): Remove unnecessary checks.
1518         (i386_pe_encode_section_info): Warn if the dllimport attribute
1519         and symbol prefix have been instantiated and then overridden.
1520
1521         * doc/extend.texi: Document dllimport and dllexport attributes.
1522
1523         * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
1524
1525 2003-07-03 Uwe Stieber <uwe@kaos-group.de>
1526
1527         * config/kaos.h (CPP_PREDEFINES): Delete.
1528         (TARGET_OS_CPP_BUILTINS): New.
1529
1530 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1531
1532         * c-aux-info.c: Include toplev.h after c-tree.h.
1533         * c-common.c: Likewise.
1534         (GCC_DIAG_STYLE): Undef.
1535         * c-semantics.c (GCC_DIAG_STYLE): Define.
1536         * c-tree.h (GCC_DIAG_STYLE): Likewise.
1537         * diagnostic.h (inform): Move prototype to toplev.h.
1538         * jump.c: Include diagnostic.h before toplev.h.
1539         * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
1540         (warning, error, fatal_error, pedwarn, sorry, inform,
1541         error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
1542
1543 2003-07-03  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1544
1545         * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
1546         at all if edge is not specified.
1547         (can_copy_bbs_p, copy_bbs): New.
1548         * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
1549         * cfgloop.c (get_loop_body): Comment more precisely.
1550         * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
1551         (scale_bbs_frequencies): Fix comment typo.
1552         (can_duplicate_loop_p): Use can_copy_bbs_p.
1553         (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
1554
1555 2003-07-03  Devang Patel <dpatel@apple.com>
1556
1557         * c-opts.c (c_common_parse_file): Remove extra
1558         debug_hooks->start_source_file call.
1559
1560 2003-07-03  Roger Sayle  <roger@eyesopen.com>
1561
1562         * real.c (real_trunc, real_floor, real_ceil): New functions
1563         to implement trunc, floor and ceil respectively.
1564         * real.h (real_trunc, real_floor, real_ceil): Prototype here.
1565         * builtins.c (integer_valued_real_p): New function to test if
1566         a floating point expression has an integer valued result.
1567         (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
1568         foo(x) where foo is an integer rounding function.  Similarly,
1569         optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
1570         (double)(int)x when both foo and bar are integer rounding
1571         functions and we don't need to honor errno.
1572         (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
1573         New functions to fold trunc, floor and ceil.
1574         (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
1575         fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
1576         to fold BUILT_IN_CEIL*.
1577         * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
1578         the remaining integer rounding functions.
1579
1580 2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
1581
1582         * config/sparc/sparc.c (function_arg_partial_nregs): Use
1583         SPARC_INT_ARG_MAX to determine where to split unnamed
1584         complex FP arguments.
1585
1586 Thu Jul  3 20:36:47 CEST 2003  Jan Hubicka  <jh@suse.cz>
1587
1588         * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
1589         * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
1590         (merge_blocks_move_predecessor_nojumps,
1591          merge_blocks_move_successor_nojumps): Use merge_blocks.
1592         (try_optimize_cfg): Use merge_blocks_move.
1593         * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
1594         (merge_blocks_nomove): Rename to rtl_merge_blocks.
1595         (cfg_layout_create_basic_block): New.
1596         (rtl_can_merge_blocks): New.
1597         (cfg_layout_split_block): Do not alloc aux by hand.
1598         * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
1599         merge_blocks.
1600         (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
1601         * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
1602         * cfgloopmanip.c (loop_split_edge_with): Likewise.
1603         * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
1604
1605         * basic-block.h (basic_block_def): Add field 'rbi'.
1606         * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
1607         find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
1608         * cfg.c (entry_exit_blocks): Add new field.
1609         * cfglayout.c: Include alloc-pool.h;
1610         (cfg_layout_pool): New.
1611         (record_effective_endpoints, fixup_reorder_chain,
1612         fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
1613         of rbi.
1614         (cfg_layout_initialize_rbi): New function.
1615         (cfg_layout_initialize): Use it.
1616         (cfg_layout_finalize): Clear rbi fields.
1617         * cfglayout.h (RBI): Kill.
1618         (cfg_layout_initialize_rbi): Declare.
1619         * cfgloopmanip.c (copy_bbs): Use rbi.
1620         (record_exit_edges): Likewise.
1621         (duplicate_loop_to_header_edge): Likewise.
1622         * cfgrtl.c (cfg_layout_create_basic_block): Use
1623         cfg_layout_initialize_rbi.
1624         (cfg_layout_split_block): Use rbi.
1625         (cfg_layout_delete_block): Likewise.
1626         * loop-init.c (loop_optimizer_finalize): Likewise.
1627         * loop-unswitch.c (unswitch_loop): Likewise.
1628         * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
1629
1630         * cfgrtl.c: Update comments.
1631         (try_redirect_by_replacing_jump): New argument.
1632         (redirect_branch_edge): Break out from ...
1633         (rtl_redirect_edge_and_branch): ... this one.
1634         (update_cfg_after_block_merging): Break out from ...
1635         (rtl_merge_blocks): ... this one.
1636         (cfg_layout_split_edge): New.
1637         (cfg_layout_merge_blocks): New.
1638         (cfg_layout_can_merge_blocks_p): New.
1639         (cfg_layout_redirect_edge_and_branch): Reorganize.
1640         (cfg_layout_rtl_cfg_hooks): Fill in.
1641         (cfg_layout_delete_block): Kill barriers.
1642         * cfganal.c (can_fallthru): Deal with exit blocks
1643         * cfglayout.c (cfg_layout_function_header): New function
1644         (record_effective_endpoints): Record function header.
1645         (fixup_reorder_chain): Fixup dead jumptables; place header
1646
1647         * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
1648         * bb-reorder.c (cfg_layout_initialize): Update call.
1649         * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
1650         edges in cfglayout mode.
1651         * cfglayout.c (cleanup_unconditional_jumps): Kill.
1652         (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
1653         * cfglayout.h (cfg_layout_initialize): Update prototype.
1654         * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
1655         * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
1656         * flow.c (propagate_block): Do not crash when basic block ends
1657         by first insn in the chain.
1658         * loop-init.c (loop_optimizer_init):  First enter cfglayout mode; later
1659         do loop discovery.
1660         * tracer.c (tracer): Update call of cfg_layout_initialize.
1661
1662 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1663
1664         * Makefile.in: Use dependency variables in lieu of explicit
1665         files throughout.
1666
1667 2003-07-03  Steven Bosscher  <steven@gcc.gnu.org>
1668
1669         * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
1670         * tree.h: ...to here.
1671
1672 2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
1673
1674         * config/s390/2064.md: Fix comment typos.
1675         * config/s390/2084.md: Likewise.
1676         * config/s390/s390.c: Likewise.
1677         * config/s390/s390.md: Likewise.
1678         * config/sh/sh.c: Likewise.
1679         * config/sh/sh.h: Likewise.
1680         * config/sh/sh.md: Likewise.
1681         * config/sparc/sparc.c: Likewise.
1682         * config/sparc/sparc.h: Likewise.
1683         * config/sparc/sparc.md: Likewise.
1684         * config/stormy16/stormy16.c: Likewise.
1685         * config/stormy16/stormy16.h: Likewise.
1686         * config/stormy16/stormy-abi: Fix a typo.
1687
1688 2003-07-03  Kelley Cook  <kelleycook@wideopenwest.org>
1689
1690         * Makefile.in (ifcvt.o): Depend on OPTABS_H.
1691
1692 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1693
1694         * config/mips/mips.h (save_argv): Delete.
1695
1696 2003-07-03  Roger Sayle  <roger@eyesopen.com>
1697
1698         PR target/10700
1699         * fold-const.c (extract_muldiv_1): There's nothing that can be done
1700         if the expression is a SAVE_EXPR.
1701
1702 2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
1703
1704         * config/m32r/m32r.c: Fix comment typos.
1705         * config/m68hc11/m68hc11.c: Likewise.
1706         * config/m68hc11/m68hc11.h: Likewise.
1707         * config/m68k/m68k.c: Likewise.
1708         * config/mcore/mcore.c: Likewise.
1709         * config/mcore/mcore.h: Likewise.
1710         * config/mcore/mcore.md: Likewise.
1711         * config/mips/mips.c: Likewise.
1712         * config/mips/mips.h: Likewise.
1713         * config/mips/mips.md: Likewise.
1714         * config/mips/netbsd.h: Likewise.
1715         * config/mn10300/mn10300.c: Likewise.
1716
1717 2003-07-03  Andreas Schwab  <schwab@suse.de>
1718
1719         * dbxout.c (pending_bincls): Move decl down inside
1720         DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
1721
1722 2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
1723
1724         * rtl.h (NOTE_DATA): Refer to whole union.
1725         * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
1726
1727 2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
1728
1729         PR optimization/11381
1730         * simplify-rtx.c (simplify_relational_operation): Check that
1731         two equal operands have no side-effects before simplifying
1732         the comparison.
1733
1734 2003-07-02  Jeff Law  <law@redhat.com>
1735
1736         * expr.c (do_store_flag): Remove special case folding for
1737         single bit tests.  Instead call back into the commonized folder
1738         routine.
1739         * fold-const.c (fold_single_bit_test): New function, mostly
1740         extracted from do_store_flag, with an additional case extracted
1741         from fold.
1742         (fold): Call fold_single_bit_test appropriately.
1743         * tree.h (fold_single_bit_test): Prototype.
1744
1745 2003-07-02  Zack Weinberg  <zack@codesourcery.com>
1746
1747         * system.h: Include filenames.h.
1748         (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
1749         (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
1750         define based on HAVE_DOS_BASED_FILE_SYSTEM.
1751         * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
1752         * config/i386/xm-mingw32.h: Don't define
1753         HAVE_DOS_BASED_FILE_SYSTEM,
1754         DIR_SEPARATOR, or DIR_SEPARATOR_2.
1755         * doc/hostconfig.texi: Update to match.
1756
1757         * cppfiles.c, gcc.c, gensupport.c, protoize.c,
1758         config/i386/cygwin.h:
1759         Use IS_ABSOLUTE_PATH throughout.
1760         * gcc.c (DIR_UP): Delete, unused.
1761         * protoize.c (IS_SAME_PATH): Define in terms of
1762         FILENAME_CMP.
1763         (is_abspath): Delete.
1764
1765 2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
1766
1767         * config/i386/emmintrin.h: Fix comment typos.
1768         * config/i386/i386.c: Likewise.
1769         * config/i386/i386.h: Likewise.
1770         * config/i386/sco5.h: Likewise.
1771         * config/ia64/ia64.c: Likewise.
1772         * config/ia64/itanium2.md: Likewise.
1773
1774 2003-07-02  H.J. Lu  <hongjiu.lu@intel.com>
1775
1776         * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
1777         DBX_USE_BINCL.
1778         (emit_bincl_stab): Same.
1779         (emit_pending_bincls): Same.
1780
1781 2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
1782
1783         * config/h8300/h8300.c (compute_mov_length): Fix the length of
1784         loading CONST0_RTX (SFmode).
1785         * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
1786         'G' to CONST0_RTX (SFmode).
1787         * config/h8300/h8300.md (movsf_h8300): Change the first
1788         constraint to 'G'.
1789         (movsf_h8300h): Likewise.
1790
1791 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
1792
1793         * c-common.h (c_common_init_options): New prototype.
1794         * c-opts.c (deferred_size): Remove.
1795         (defer_opt): Array is now pre-allocated.
1796         (c_common_init_options): Pre-allocate deferred_opts.  Make
1797         lang_flags unsigned.
1798         (push_command_line_options): Free deferred_opts.
1799         * hooks.c (hook_uint_uint_constcharptrptr_0): New.
1800         * hooks.h (hook_uint_uint_constcharptrptr_0): New.
1801         * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
1802         * langhooks.h (struct lang_hooks): New prototype for init_options.
1803         * main.c (main): Cast argv.
1804         * opts.c (handle_option, handle_options): Update prototypes.
1805         (decode_options): save_argc, save_argv are not global.  Constify.
1806         * opts.h (decode_options): New prototype.
1807         * toplev.c (general_init): New protoype.
1808         (save_argv): Make static.
1809         (save_argc): Remove.
1810         (print_switch_values, general_init): Constify.
1811         (toplev_main): Save argv.
1812         * toplev.h (toplev_main): Update prototype.
1813         (save_argc, save_argv): Remove.
1814
1815 2003-07-02  David Edelsohn  <edelsohn@gnu.org>
1816
1817         * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
1818         (emit_bincl_stab): Same.
1819         (emit_pending_bincls): Same.
1820
1821 2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
1822
1823         PR c++/11072
1824         * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
1825
1826 2003-07-02  Andreas Schwab  <schwab@suse.de>
1827
1828         * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
1829
1830 2003-07-02  Eric Botcazou  <ebotcazou@libertysurf.fr>
1831
1832         PR optimization/11210
1833         * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
1834         about the behaviour with regard to bitfields.
1835         * fold-const (decode_field_reference): Record outermost type in
1836         case the expression is a NOP. Strip all NOPs. Set the signedness
1837         to that of the outermost type (if any) when the bitsize is equal
1838         to the size of the type.
1839
1840 2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
1841
1842         * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
1843         (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
1844         (adddi3_internal_3, addsi3_internal_2): Likewise.
1845
1846 2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
1847
1848         * config/mips/mips.c (machine_function): Add new fields:
1849         ignore_hazard_length_p and all_noreorder_p.
1850         (mips_flag_delayed_branch): New variable.
1851         (override_options): Treat '/' as an operand punctuation character.
1852         Set up mips_flag_delayed_branch.
1853         (print_operand): Handle '/'.
1854         (mips_output_function_prologue): Put the whole function in
1855         .set noreorder and .set nomacro if all_noreorder_p is true.
1856         (mips_output_function_epilogue): End the noreorder/nomacro sequence.
1857         (mips16_optimize_gp): Remove "first insn" parameter.
1858         (mips16_lay_out_constants): New function, split out from mips_reorg.
1859         (mips_avoid_hazard, mips_avoid_hazards): New functions.
1860         (mips_reorg): For mips16 code, call mips16_lay_out_constant
1861         and (optionally) mips16_optimize.  If TARGET_EXPLICIT_RELOCS,
1862         do delayed-branch scheduling followed by hazard detection.
1863         (mips_adjust_insn_length): Only account for hazards if
1864         !ignore_hazard_length_p.
1865         (mips_output_load_label): Add a nop to the o32 sequence if
1866         the target suffers from load delays.
1867         (mips_output_conditional_branch): Add %/ to the end of branches.
1868         (mips_output_division): Fill the branch delay slot with %#.
1869         * config/mips/mips.md: Remove redundant '%*' from mips16 branch
1870         instructions.  End all other %* branches with %/.
1871         (ffssi2, ffsdi2): Fix lengths.
1872         (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
1873         (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
1874         (fix_truncsfsi2_macro): Likewise.
1875         (mov_lwl): Set hazard to "none".
1876         (ashldi3_internal): Fill the branch delay slot with %#.
1877         (ashrdi3_internal, lshrdi3_internal): Likewise.
1878         (exception_receiver): Explicitly set $28.
1879         (hazard_nop): New pattern.
1880
1881 Wed Jul  2 08:12:36 CEST 2003  Jan Hubicka  <jh@suse.cz>
1882
1883         * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
1884         before calling tree_inlinable_function_p.
1885
1886 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1887
1888         * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
1889         <internal/stdio_core.h> too.
1890         (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
1891         <internal/wchar_core.h> too.
1892         Substitute va_list uses in inline definition.
1893         * fixinc/fixincl.x: Regenerate.
1894
1895 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1896
1897         * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
1898         Undef before redefinition.
1899         (LABEL_AFTER_LOC): Likewise.
1900         (DEFAULT_SIGNED_CHAR): Likewise.
1901         (ASM_OUTPUT_ASCII): Moved here from iris4.h.
1902         Fix IRIX spelling.
1903
1904         * config/mips/iris3.h: Remove, unused.
1905         * config/mips/iris4.h: Likewise.
1906
1907         * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
1908
1909         * config/mips/iris5.h (TARGET_DEFAULT): Move ...
1910         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
1911         target_cpu_default.
1912
1913         * config/mips/iris5.h: Move explicit includes ...
1914         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
1915
1916         * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
1917         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
1918         tm_defines.
1919
1920         * config/mips/iris6.h (TARGET_DEFAULT): Move ...
1921         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
1922         target_cpu_default.
1923
1924         * config/mips/iris6.h: Fix IRIX spelling.
1925         (MULTILIB_DEFAULTS): Undef before redefinition.
1926
1927         * config/mips/iris6.h: Move explicit includes ...
1928         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
1929
1930 Wed Jul  2 02:16:48 CEST 2003  Jan Hubicka  <jh@suse.cz>
1931
1932         * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
1933         cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
1934         Use next_needed field instead of aux to maintain the queue.
1935         * cgraph.h (cgraph_node): Add next_needed.
1936         (cgraph_varpool_node): Add next_needed; remove aux.
1937         * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
1938
1939 Wed Jul  2 02:12:51 CEST 2003  Jan Hubicka  <jh@suse.cz>
1940
1941         * cgraphunit.c (cgraph_finalize_function): Set finalized.
1942         (cgraph_finalize_function): Do not examine inlinablility.
1943         (cgraph_finalize_compilation_unit): Do it here.
1944         * cgraph.h (cgraph_local_info): Add finalized field.
1945
1946 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1947
1948         * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
1949         (gt_pch_restore): Likewise.
1950
1951 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
1952
1953         * config/alpha/alpha.c: Fix comment typos.
1954         * config/alpha/elf.h: Likewise.
1955         * config/arm/arm.c: Likewise.
1956         * config/arm/arm.h: Likewise.
1957         * config/arm/arm.md: Likewise.
1958         * config/arm/t-arm-coff: Likewise.
1959         * config/arm/t-strongarm-pe: Likewise.
1960         * config/arm/xscale-elf.h: Likewise.
1961         * config/avr/avr.h: Likewise.
1962
1963 2003-07-01  Jeff Law  <law@redhat.com>
1964
1965         * stmt.c (any_pending_cleanups): Remove another redundant test.
1966
1967 2003-07-01  David Edelsohn  <edelsohn@gnu.org>
1968             J"orn Rennecke <joern.rennecke@superh.com>
1969
1970         * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
1971         for MEM case.
1972
1973 2003-07-01  Devang Patel  <dpatel@apple.com>
1974
1975         * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
1976         (binclstatus): New.
1977         (struct dbx_file): New members - bincl_status, pending_bincl_name and
1978         prev.
1979         (pending_bincls): New.
1980         (dbxout_init): Initialize new dbx_file members.
1981         (dbxout_start_source_file): Same.
1982         (emit_bincl_stab): New function.
1983         (emit_pending_bincls): Same.
1984         (emit_pending_bincls_if_required): Same.
1985         (dbxout_end_source_file): Emit EINCL stab only if BINCL is  already
1986         processed.
1987         (dbxout_begin_block): Emit pending BINCL stabs.
1988         (dbxout_end_block): Same.
1989         (dbxout_function_decl): Same.
1990         (dbxout_continue): Same.
1991         (dbxout_type): Same.
1992         (dbxout_class_name_qualifiers): Same.
1993         (dbxout_symbol): Same.
1994         (dbxout_symbol_location): Same.
1995         (dbxout_parms): Same.
1996
1997 2003-07-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1998
1999         * c-semantics.c (genrtl_case_label): Fix format specifier bug.
2000         * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
2001
2002 2003-07-01  Andreas Jaeger  <aj@suse.de>
2003
2004         * fold-const.c: Convert prototypes to ISO C90.
2005         * function.c: Likewise.
2006         * function.h: Likewise.
2007
2008 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
2009
2010         * doc/contrib.texi: Fix typos.
2011         * doc/invoke.texi: Likewise.
2012         * doc/passes.texi: Likewise.
2013         * doc/sourcebuild.texi: Likewise.
2014         * doc/tm.texi: Likewise.
2015
2016 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
2017
2018         * basic-block.h: Fix comment typos.
2019         * bb-reorder.c: Likewise.
2020         * c-format.c: Likewise.
2021         * cfgcleanup.c: Likewise.
2022         * cfghooks.h: Likewise.
2023         * cfgloop.c: Likewise.
2024         * cfgloopmanip.c: Likewise.
2025         * cfgrtl.c: Likewise.
2026         * cgraph.h: Likewise.
2027         * cgraphunit.c: Likewise.
2028         * combine.c: Likewise.
2029         * convert.c: Likewise.
2030         * dbxout.c: Likewise.
2031         * df.c: Likewise.
2032         * df.h: Likewise.
2033         * diagnostic.c: Likewise.
2034         * dwarf2out.c: Likewise.
2035         * et-forest.h: Likewise.
2036         * flow.c: Likewise.
2037         * fold-const.c: Likewise.
2038         * function.h: Likewise.
2039         * gcov-io.h: Likewise.
2040         * gcov.c: Likewise.
2041         * gcse.c: Likewise.
2042         * genautomata.c: Likewise.
2043         * ggc-common.c: Likewise.
2044         * ggc-page.c: Likewise.
2045         * loop-unroll.c: Likewise.
2046         * loop-unswitch.c: Likewise.
2047         * loop.c: Likewise.
2048         * mips-tfile.c: Likewise.
2049         * optabs.c: Likewise.
2050         * ra-build.c: Likewise.
2051         * ra-colorize.c: Likewise.
2052         * ra-rewrite.c: Likewise.
2053         * ra.h: Likewise.
2054         * regmove.c: Likewise.
2055         * reload.c: Likewise.
2056         * rtlanal.c: Likewise.
2057         * sched-ebb.c: Likewise.
2058         * sched-int.h: Likewise.
2059         * sched-vis.c: Likewise.
2060         * sreal.c: Likewise.
2061         * ssa-ccp.c: Likewise.
2062         * ssa.c: Likewise.
2063         * toplev.c: Likewise.
2064         * tree-inline.c: Likewise.
2065         * value-prof.c: Likewise.
2066         * value-prof.h: Likewise.
2067
2068 2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
2069
2070         * rtl.h (emit_line_note_after): Remove.
2071         (emit_note_copy_after, emit_note_copy): New.
2072         * emit-rtl.c (reorder_insns_with_line_notes): Replace
2073         emit_line_note_after with emit_note_copy_after.
2074         (emit_insn_after_with_line_notes): Likewise.
2075         (emit_line_note_after): Kill.
2076         (emit_note_copy_after): New.
2077         (emit_note_copy): New.
2078         * function.c (emit_return_into_block): Use emit_note_copy_after.
2079         (thread_prologue_and_epilogue_insns): Likewise.
2080         * integrate.c (expand_inline_function): Use emit_note_copy.
2081         (copy_insn_list): Likewise.
2082         * unroll.c (copy_loop_body): Likewise.
2083         * cfglayout.c (duplicate_insn_chain): Likewise.
2084
2085 2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
2086
2087         * c-tree.h (define_label): Replace filename and lineno arguments
2088         with a location_t.
2089         * c-decl.c (poplevel): Adjust define_label call.
2090         (pop_label_level): Likewise.
2091         (define_label): Replace filename and lineno arguments with a
2092         location_t.
2093         (store_parm_decls): Use DECL_SOURCE_LOCATION.
2094         * c-parse.in (label): Adjust define_label call.
2095
2096 2003-07-01  Neil Booth  <neil@daikokuya.co.uk>
2097
2098         * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
2099         config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
2100         config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
2101         config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
2102         config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
2103
2104 2003-07-01  Andreas Jaeger  <aj@suse.de>
2105
2106         * final.c: Convert prototypes to ISO C90.
2107         * flow.c: Likewise.
2108         * flags.h: Likewise.
2109         * gcov-io.c: Likewise.
2110         * gcov-io.h: Likewise.
2111
2112 2003-06-30  Bruno Haible  <bruno@clisp.org>
2113
2114         PR middle-end/6578
2115         * libgcc2.c (__subvsi3): Remove simplification that would not work
2116         when subtracting -0x80000000.
2117         (__subvdi3): Remove simplification that would return a wrong result.
2118         (__mulvsi3): Fix overflow check.
2119         (__absvdi2): Fix simplification that would return a wrong result.
2120         (__mulvdi3): Fix overflow check.
2121
2122 2003-06-30  Jeff Law  <law@redhat.com>
2123
2124         * stmt.c (any_pending_cleanups): Lose argument THIS_CONTOUR, it
2125         was always passed in the value '1'.  Simplify body appropriately.
2126         * tree.h (any_pending_cleanups): Corresponding changes.
2127         * calls.c: (expand_call): Corresponding changes.
2128
2129 2003-06-30  Kazu Hirata  <kazu@cs.umass.edu>
2130
2131         * combine.c (distribute_notes): Don't bother REG_WAS_0.
2132         * cse.c (cse_insn): Likewise.
2133         * final.c (final_scan_insn): Likewise.
2134         * jump.c (duplicate_loop_exit_test): Likewise.
2135         * rtl.c (reg_note_name): Remove REG_WAS_0.
2136         * rtl.h (REG_WAS_0): Remove.
2137         * unroll.c (final_reg_note_copy): Don't bother REG_WAS_0.
2138         * config/avr/avr.c (output_movqi): Don't use reg_was_0.
2139         (output_movhi): Likewise.
2140         (output_movsisf): Likewise.
2141         (reg_was_0): Remove.
2142         * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't use
2143         REG_WAS_0.
2144         (m68hc11_gen_movqi): Likewise.
2145         * config/vax/vax-protos.h: Remove the prototype for
2146         reg_was_0_p.
2147         * config/vax/vax.c (follows_p): Remove.
2148         (reg_was_0_p): Likewise.
2149         * config/vax/vax.md (movsi): Don't use reg_was_0_p.
2150         (movhi): Likewise.
2151         (movqi): Likewise.
2152         * doc/rtl.texi (REG_WAS_0): Remove.
2153
2154 2003-06-30  Mark Mitchell  <mark@codesourcery.com>
2155
2156         * config/rs6000/spe.h (__ev_set_spefscr_frmc): Set the flag.
2157
2158 2003-06-30  Bob Wilson  <bob.wilson@acm.org>
2159
2160         * config/xtensa/lib1funcs.asm: Use "xtensa-config.h" from
2161         top-level include directory.
2162         * config/xtensa/lib2funcs.S: Likewise.
2163         * config/xtensa/xtensa.h: Likewise.
2164         * config/xtensa/xtensa-config.h: Remove.
2165         * doc/install.texi: Update location of "xtensa-config.h" header.
2166
2167 2003-06-30  Ulrich Weigand  <uweigand@de.ibm.com>
2168
2169         * config/s390/s390.c (s390_extra_constraint): New function.
2170         * config/s390/s390-protos.h (s390_extra_constraint): Declare it.
2171         * config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
2172         * config/s390/s390.c (q_constraint): Remove.
2173         * config/s390/s390-protos.h (q_constraint): Likewise.
2174         * config/s390/s390.h (EXTRA_MEMORY_CONSTRAINT): Add 'R', 'S', 'T'.
2175         (EXTRA_ADDRESS_CONSTRAINT): Define.
2176
2177         * config/s390/s390.c (larl_operand): Refuse out-of-range operands.
2178         (DISP_IN_RANGE, s390_short_displacement): New.
2179         (legitimate_reload_operand_p): Support long displacements.
2180         (s390_decompose_address): Likewise.
2181         (legitimize_pic_address): Likewise.
2182         (legitimize_address): Likewise.
2183         (s390_fixup_clobbered_return_reg): Likewise.
2184         (s390_emit_prologue, s390_emit_epilogue): Likewise.
2185         (s390_output_mi_thunk): Likewise.
2186
2187         * config/s390/s390.md (attr "op_type"): Add "RXY", "RSY", "SIY".
2188         (attr "atype", attr "length"): Add defaults for new op_types.
2189         (all insns): Change op_type attribute where appropriate.
2190
2191         ("*movdi_lay", "*movsi_lay", "*extendqidi2", "*extendqisi2"): New insns.
2192         ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", *tmqi_mem",
2193         "*tstsi", "*tstsi_cconly", "*tsthiCCT", "*tsthiCCT_cconly",
2194         "*tsthi", "*tsthi_cconly", "*tstqiCCT", "*tstqiCCT_cconly",
2195         "*tstqi", "*tstqi_cconly", "*cmpsi_ccs_sign", "*cmpsi_ccs",
2196         "*cmpsi_ccu", "*cmphi_ccu", "*cmpqi_ccu", "*cli",
2197         "movti", "*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
2198         "movqi", "*movstrictqi", "*movstricthi", "movstrictsi",
2199         "*movdf_64", "*movdf_31", "*movsf",
2200         "*load_multiple_si", "*store_multiple_di",
2201         "*sethighqisi", "*sethighhisi", "*sethighqidi_31", "*extendhisi2",
2202         "*la_64", "*la_31", "*la_31_and", "force_la_31",
2203         "*addsi3_carry1_cc", *addsi3_carry1_cconly",
2204         "*addsi3_carry2_cc", *addsi3_carry2_cconly",
2205         "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2",
2206         "*addsi3_sign", "*addsi3_sub", "addsi3",
2207         "*subsi3_borrow_cc", "*subsi3_borrow_cconly", "*subsi3_cc",
2208         "*subsi3_cconly", "*subsi3_sign", "*subsi3_sub", "subsi3",
2209         "mulsi3"
2210         "*andsi3_cc", "*andsi3_cconly", "andsi3",
2211         "*andqi3_ss", "*andqi3_ss_inv",
2212         "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
2213         "*iorqi3_ss", "*iorqi3_ss_inv",
2214         "*xorsi3_cc", "*xorsi3_cconly", "xorsi3",
2215         "*xorqi3_ss", "*xorqi3_ss_inv",
2216         "*tls_load_31"): Add alternatives for long-displacement instructions.
2217
2218         ("*cmpdf_ccs", "*cmpdf_ccs_ibm", "*cmpsf_ccs", "*cmpsf_ccs_ibm",
2219         "*load_multiple_di", "*store_multiple_di",
2220         "*sethighqidi_64", "*zero_extendhisi2_31",
2221         "truncdfsf2_ibm", "extendsfdf2_ieee", "extendsfdf2_ibm",
2222         "adddf3", "*adddf3", "*adddf3_ibm",
2223         "addsf3", "*addsf3", "*addsf3_ibm",
2224         "subdf3", "*subdf3", "*subdf3_ibm",
2225         "subsf3", "*subsf3", "*subsf3_ibm",
2226         "mulsi_6432", "divmoddisi3",
2227         "muldf3", "*muldf3", "*muldf3_ibm",
2228         "mulsf3", "*mulsf3", "*mulsf3_ibm",
2229         "divdf3", "*divdf3", "*divdf3_ibm",
2230         "divsf3", "div*sf3", "*divsf3_ibm",
2231         "sqrtdf2", "sqrtsf2",
2232         "*cjump_long", "*icjump_long", "indirect_jump", "casesi_jump",
2233         "*doloop_si_long", "*doloop_di_long", "bas_64", "bas_31",
2234         "bas_r_64", "bas_r_31", "bas_tls_31", "bas_tls_64"): Adapt memory
2235         and address constraints for instructions that do not accept long
2236         displacements.
2237
2238 2003-06-30  Hartmut Penner  <hpenner@de.ibm.com>
2239             Ulrich Weigand  <uweigand@de.ibm.com>
2240
2241         * config/s390/2084.md: New file.
2242         * config/s390/s390.md: Include it.
2243         * config/s390/s390.c (s390_adjust_priority): New function.
2244         (TARGET_SCHED_ADJUST_PRIORITY): Define.
2245         (s390_first_cycle_multipass_dfa_lookahead): New function.
2246         (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
2247         (s390_sched_reorder2): New function.
2248         (TARGET_SCHED_REORDER2): Define.
2249         (s390_adjust_cost): Support PROCESSOR_2084_Z990 cpu type.
2250         (s390_issue_rate): Likewise.
2251
2252 Mon Jun 30 23:47:33 CEST 2003  Jan Hubicka  <jh@suse.cz>
2253
2254         * Makefile.in (GTFILES): Add cgraph.h.
2255         * cgraph.c (known_decls): Remove.
2256         (cgraph_hash, cgraph_nodes, cgraph_nodes_queue,
2257         cgraph_varpool_hash, cgraph_varpool_nodes_queue): GTYize.
2258         (cgraph_node): Do not allocate known_decls; use polutate hashtable.
2259         (cgraph_varpool_node): Likewise; add next pointer.
2260         (cgraph_varpool_nodes): New static variable.
2261         * cgraph.h (cgraph_local_info, cgraph_global_info, cgraph_rtl_info,
2262         cgraph_node, cgraph_edge, cgraph_varpool_node, cgraph_nodes, cgraph_n_nodes,
2263         cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): GTYize.
2264         * gengtype.c (open_base_files): Include cgraph.h
2265
2266 2003-06-30  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
2267
2268         * Changelog: Remove ">>>>>>>" from previous change.
2269
2270 2003-06-30  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
2271
2272         * config/cris/cris.c: Fix spelling for "testcase".
2273         * config/cris/cris.h: Likewise.
2274         * config/cris/cris.md: Likewise.
2275         * config/mmix/crti.asm: Likewise.
2276         * config/mmix/mmix.h: Likewise.
2277         * config/mmix/mmix.md: Likewise.
2278
2279 2003-06-30  Kazu Hirata  <kazu@cs.umass.edu>
2280
2281         * config/h8300/h8300.h (LEGITIMATE_CONSTANT_P): Make it always
2282         1.
2283
2284 2003-06-30  Ulrich Weigand  <uweigand@de.ibm.com>
2285
2286         * config.gcc [s390*-*-*]: Support --with-arch, --with-tune, and
2287         --with-mode configure options.
2288         * config/s390/s390.h (OPTION_DEFAULT_SPECS): Define.
2289         (DRIVER_SELF_SPECS): Define.
2290         * config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu
2291         architecture to assembler.
2292         (LINK_SPEC): Merge 31-bit and 64-bit variants.
2293         (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove.
2294         * config/s390/s390.c (override_options): New default rules for
2295         architecture mode and cpu architecture selection.
2296         * doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document
2297         new default rules.
2298
2299         * config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990.
2300         * config/s390/s390.md (attr "cpu"): Add "z990" processor type.
2301         * config/s390/s390.c (override_options): Add "z990" to
2302         processor_alias_table.
2303         * doc/invoke.texi (-march): Document "z990" processor type.
2304
2305         * config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables.
2306         * config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare.
2307         (enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH,
2308         TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New.
2309         * config/s390/s390.c (override_options): Replace enum pta_flags by
2310         enum processor_flags.  Fill in s390_tune_flags and s390_arch_flags.
2311
2312         * config/s390/s390.c (s390_cpu): Rename to ...
2313         (s390_tune): ... this.
2314         * config/s390/s390.h (s390_cpu, s390_tune): Likewise.
2315         * config/s390/s390.c (s390_issue_rate, override_options): Likewise.
2316         * config/s390/s390.md (attr "cpu"): Likewise.
2317
2318 2003-06-30  Neil Booth  <neil@daikokuya.co.uk>
2319
2320         * c-common.c (enum c_language_kind, flag_objc): Remove.
2321         (fix_string_type, check_case_value, c_common_nodes_and_builtins,
2322         c_add_case_label, finish_label_addr_expr, boolean_increment):
2323         Use c_dialect_ macros.
2324         * c-common.h (enum c_language_kind): Extend.
2325         (c_dialect_cxx, c_dialect_objc): New.
2326         (flag_objc): Remove.
2327         (c_common_init_options): Update prototype.
2328         * c-cppbuiltin.c (define__GNUC__, c_cpp_builtins): Use c_dialect_
2329         macros.
2330         * c-decl.c (finsih_decl, grokfield, finish_struct): Use c_dialect_
2331         macros.
2332         * c-format.c (C_STD_VER, C_STD_NAME): Similarly.
2333         * c-lang.c (c_init_options): Remove.
2334         (c_language): Define.
2335         (LANG_HOOKS_INIT_OPTIONS): Use common hook.
2336         * c-lex.c (lex_charconst): Use c_dialect_ macros.
2337         * c-opts.c (lang_flags): Make function-local.
2338         (c_common_init_options): Use c_dialect_ macros.  Handle
2339         C++ diagnostic requirements.
2340         (c_common_handle_option, c_common_post_options): Use flag_cxx.
2341         * c-parse.in (init_reswords): Use c_dialect_objc ().
2342         * c-pch.c (get_ident): Use c_language.
2343         * c-pretty-print.c (pp_c_bool_literal): Use c_dialect_ macros.
2344         * c-typeck.c (comptypes, build_c_cast): Similarly.
2345         * objc/objc-lang.c (c_language): Define.
2346         (LANG_HOOKS_INIT_OPTIONS): Use common hook.
2347         (objc_init_options): Remove.
2348
2349 2003-06-30  Kazu Hirata  <kazu@cs.umass.edu>
2350
2351         * config/alpha/alpha.h (FUNCTION_ARG_PADDING): Remove.
2352         * config/alpha/unicosmk.h: Don't #undef FUNCTION_ARG_PADDING.
2353
2354 2003-06-30  Wolfgang Bangerth  <bangerth@dealii.org>
2355
2356         * doc/sourcebuild.texi: Don't reference gnats.html any more.
2357
2358 2003-06-30  Kazu Hirata  <kazu@cs.umass.edu>
2359
2360         * config/h8300/h8300.c (compute_mov_length): Fix length of
2361         mov:SF on H8/300.
2362
2363 2003-06-30  Nick Clifton  <nickc@redhat.com>
2364
2365         * config/arm/arm.h (BIGGEST_FIELD_ALIGNMENT): Make defintion
2366         constant.
2367
2368 Mon Jun 30 15:36:29 CEST 2003  Jan Hubicka  <jh@suse.cz>
2369
2370         (fyl2x_sfxf3, fyl2x_dfxf3, fscale_sfxf3, fscale_dfxf3): Fix condition.
2371
2372 2003-06-30 Hartmut Penner  <hpenner@de.ibm.com>
2373
2374         * config/rs6000/rs6000.c (rs6000_split_altivec_in_gprs): New function.
2375         (altivec_in_gprs_p): New function.
2376
2377         * config/rs6000/rs6000-protos (rs6000_split_altivec_in_gprs): New
2378         prototype.
2379         (altivec_in_gprs_p): New prototype.
2380
2381         * config/rs6000/altivec.md (*movv4si_internal): Change
2382         multi-assembler alternative to '#'. Add postreload splitter to
2383         handle this cases.
2384         (*movv4hi_internal): Likewise.
2385         (*movv4qi_internal): Likewise.
2386         (*movv4sf_internal): Likewise.
2387
2388 2003-06-30  Jason Merrill  <jason@redhat.com>
2389
2390         * defaults.h (PUSH_ARGS_REVERSED): Define default here.
2391         * calls.c: Not here.
2392
2393 2003-06-30  Ben Elliston  <bje@wasabisystems.com>
2394
2395         * config/arm/arm.c (arm_rtx_costs): Remove #if 0 block.
2396         (bad_signed_byte_operand): Likewise.
2397         (arm_output_epilogue): Likewise.
2398         (arm_final_prescan_insn): Likewise.
2399
2400 2003-06-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2401
2402         * cfgrtl.c (mark_killed_regs): Cast HARD_REGNO_NREGS to int.
2403
2404 2003-06-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2405
2406         * c-pch.c (c_common_write_pch): Flush asm_out_file to allow for
2407         subsequent writes.
2408
2409 Mon Jun 30 10:03:02 CEST 2003  Jan Hubicka  <jh@suse.cz>
2410
2411         * cfgrtl.c (verify_flow_info): Accept degenerated condjumps
2412         in cfglayout mode.
2413
2414 Mon Jun 30 09:52:39 CEST 2003  Jan Hubicka  <jh@suse.cz>
2415
2416         * i386.c (standard_80387_constant_p): Accept TFmode constants too.
2417         (init_ext_80387_constants): Likewise.
2418         (standard_80387_constant_rtx): Likewise.
2419         * i386.md (atanxf): Disable for TARGET_128BIT_LONG_LONG
2420         (atantf): Disable for !TARGET_128BIT_LONG_LONG
2421         (fyl2x_sfxf3, fyl2x_dfxf3): Accept TFmode operands.
2422         (fyl2x_xfxf3, fyl2x_tfxf3): Enable/disable as needed.
2423         (fscale_sfxf3, fscale_dfxf3): Accept TFmode operands.
2424         (fscale_xfxf3, fscale_tfxf3): Enable/disable as needed.
2425         (frndinttf2): New.
2426         (f2xm1tf2): New.
2427         (exp?f2): Use expsf2_tf when needed.
2428         (exp?f2_tf): New.
2429         (exptf): New.
2430
2431 2003-06-29 Uwe Stieber <uwe@kaos-group.de>
2432
2433         * config.gcc (sh*-*-kaos*): Put tm_file setting in separate case
2434         statement from tmake_file set.
2435
2436 2003-06-29  James E Wilson  <wilson@tuliptree.org>
2437
2438         * reload.c (find_reloads): Change push_reloads to push_reload in
2439         comment.
2440         * reload1.c (eliminate_regs): Likewise.
2441         (dump_needs): Delete prototype for deleted function.
2442
2443 2003-06-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2444
2445         * builtin-attrs.def (gcc_diag, gcc_cdiag, gcc_cxxdiag): New
2446         format attributes.
2447         * c-format.c (enum format_type): Add gcc_diag_format_type,
2448         gcc_cdiag_format_type, and gcc_cxxdiag_format_type.
2449         (gcc_diag_length_specs, gcc_cdiag_length_specs,
2450         gcc_cxxdiag_length_specs, gcc_diag_flag_pairs,
2451         gcc_cdiag_flag_pairs, gcc_cxxdiag_flag_pairs, gcc_diag_flag_specs,
2452         gcc_cdiag_flag_specs, gcc_cxxdiag_flag_specs, gcc_diag_char_table,
2453         gcc_cdiag_char_table, gcc_cxxdiag_char_table): New.
2454         (format_types_orig): Add new data.
2455         (find_char_info_specifier_index, init_dynamic_diag_info): New
2456         functions.
2457         (handle_format_attribute): Update to handle new format attributes.
2458
2459 2003-06-29  Aaron W. LaFramboise  <awlaframboise@aol.com>
2460
2461         * config/i386/gthr-win32.h (__GTHREAD_HIDE_WIN32API): Define to 1.
2462
2463 2003-06-29  Dara Hazeghi  <dhazeghi@yahoo.com>
2464
2465         * doc/install.texi: Remove install documentation for obsoleted targets
2466         i?86-*-sco, i?86-*-sco3.2v4, powerpcle-*-pe, powerpcle-*-winnt,
2467         arm-*-aof.
2468         Update information about IA64 toolchain, AIX make requirements,
2469         and binutils for m68k-*-hpux and *-*-linuxaout targets.
2470
2471 Mon Jun 30 00:50:43 CEST 2003  Jan Hubicka  <jh@suse.cz>
2472
2473         * regmove.c (regmove_optimize): Don't try to make src and dst match
2474         when they are in different modes.
2475
2476 Sun Jun 29 23:06:32 CEST 2003  Jan Hubicka  <jh@suse.cz>
2477
2478         * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2): Avoid
2479         busy work when builtin is not supported by the backend.
2480
2481 2003-06-29  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2482
2483         * loop.c (count_one_set): Fix detection of registers set in more
2484         than one basic block.
2485
2486 2003-06-29  Andreas Jaeger  <aj@suse.de>
2487
2488         * target-def.h: Remove usage of OBJECT_FORMAT_ROSE.
2489         * system.h: Poison OBJ_FORMAT_ROSE.
2490         * doc/tm.texi (Macros for Initialization): Remove documentatin of
2491         OBJECT_FORMAT_ROSE.
2492         * config/rs6000/lynx.h: Remove undef of OBJECT_FORMAT_ROSE.
2493         * collect2.c: Remove usage of OBJECT_FORMAT_ROSE.
2494
2495 2003-06-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2496
2497         * pa.c (update_total_code_bytes): New function.
2498         (last_address): Number of bytes output for a function and its
2499         associated thunks.
2500         (compute_frame_size): Use BITS_PER_UNIT.
2501         (pa_output_function_epilogue): Compute last_address.  Use
2502         update_total_code_bytes.
2503         (output_lbranch): Handle long branch on portable runtime.
2504         (attr_length_millicode_call, attr_length_call,
2505         attr_length_indirect_call): Only use total_code_bytes for calls in
2506         the text section.
2507         (output_call): Only use an indirect call sequence when the target is
2508         not local.
2509         (pa_asm_output_mi_thunk): Handle updating of total_code_bytes.  Improve
2510         test to determine when an IA-relative branch can be used.  Add various
2511         long branch sequences.  Avoid using an indirect branch on all ports
2512         except SOM.
2513
2514 2003-06-29  Ulrich Weigand  <uweigand@de.ibm.com>
2515
2516         * expr.c (clear_by_pieces): Fix prototype.
2517
2518 2003-06-29  Andreas Jaeger  <aj@suse.de>
2519
2520         * cse.c: Convert prototypes to ISO C90.
2521         * cselib.c: Likewise.
2522         * cselib.h: Likewise.
2523         * dbxout.c: Likewise.
2524         * debug.c: Likewise.
2525         * df.c: Likewise.
2526         * df.h: Likewise.
2527         * dojump.c: Likewise.
2528         * doloop.c: Likewise.
2529         * dominance.c: Likewise.
2530         * dwarf2asm.c: Likewise.
2531         * dwarf2out.c: Likewise.
2532         * dwarf2out.h: Likewise.
2533         * dwarfout.c: Likewise.
2534         * except.c: Likewise.
2535         * except.h: Likewise.
2536         * emit-rtl.c: Likewise.
2537         * et-forest.c: Likewise.
2538         * et-forest.h: Likewise.
2539         * except.c: Likewise.
2540         * explow.c: Likewise.
2541         * expmed.c: Likewise.
2542         * expr.c: Likewise.
2543         * expr.h: Likewise.
2544
2545 2003-06-29  Kazu Hirata  <kazu@cs.umass.edu>
2546
2547         * alloc-pool.c: Fix comment formatting.
2548         * bitmap.c: Likewise.
2549         * bitmap.h: Likewise.
2550         * bt-load.c: Likewise.
2551         * builtins.c: Likewise.
2552         * caller-save.c: Likewise.
2553         * cfganal.c: Likewise.
2554         * cfgrtl.c: Likewise.
2555         * collect2.c: Likewise.
2556         * cse.c: Likewise.
2557         * df.c: Likewise.
2558         * diagnostic.c: Likewise.
2559         * dwarf2out.c: Likewise.
2560         * dwarfout.c: Likewise.
2561         * expmed.c: Likewise.
2562         * final.c: Likewise.
2563         * flags.h: Likewise.
2564         * fold-const.c: Likewise.
2565         * gcc.c: Likewise.
2566         * gcov-io.h: Likewise.
2567         * gcov.c: Likewise.
2568         * genattrtab.c: Likewise.
2569         * genautomata.c: Likewise.
2570         * libgcov.c: Likewise.
2571         * mips-tfile.c: Likewise.
2572         * optabs.c: Likewise.
2573         * prefix.c: Likewise.
2574         * rtlanal.c: Likewise.
2575         * stmt.c: Likewise.
2576         * stor-layout.c: Likewise.
2577         * toplev.c: Likewise.
2578         * varasm.c: Likewise.
2579         * vmsdbgout.c: Likewise.
2580
2581 2003-06-29  Kazu Hirata  <kazu@cs.umass.edu>
2582
2583         * expr.c (emit_single_push_insn): If padding is needed
2584         downward, adjust the stack pointer first, and then store the
2585         data into the stack location using an offset.
2586
2587 2003-06-29  Andreas Jaeger  <aj@suse.de>
2588
2589         * collect2.h: Convert prototypes to ISO C90.
2590         * collect2.c: Likewise.
2591         * conflict.c: Likewise.
2592         * coverage.c: Likewise.
2593         * convert.h: Likewise.
2594         * convert.c: Likewise.
2595
2596 2003-06-29  Nathan Sidwell  <nathan@codesourcery.com>
2597
2598         * c-decl.c (c_init_decl_processing): Use a location_t. Set input
2599         filename to <internal>.
2600         * tree.c (make_node): Just copy the current location.
2601
2602 2003-06-29  Eric Botcazou  <ebotcazou@libertysurf.fr>
2603
2604         PR optimization/11210
2605         * fold-const (decode_field_reference): Revert 2003-06-26 patch.
2606
2607 2003-06-29  Neil Booth  <neil@daikokuya.co.uk>
2608
2609         * toplev.c (flag_dummy): Remove.
2610         (f_options): Restore flag pointers.
2611
2612 2003-06-29  David Edelsohn  <edelsohn@gnu.org>
2613
2614         * config/rs6000/rs6000.c (processor_target_table): Add 970.
2615         * config.gcc: Add 970.
2616
2617 2003-06-29  Kazu Hirata  <kazu@cs.umass.edu>
2618
2619         * dwarf2out.c (add_AT_string): Replace ggc_alloc_string (X,
2620         -1) with ggc_strdup.
2621         * stmt.c (expand_asm_operands): Likewise.
2622         * config/rs6000/rs6000.md (builtin_setjmp_receiver): Likewise.
2623
2624 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2625
2626         * config/ip2k/ip2k.c (ip2k_reorg): Use INSN_P instead of its
2627         definition.
2628
2629 2003-06-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2630
2631         * opts.c: Include insn-attr.h.
2632         * Makefile.in (opts.o): Depend on INSN_ATTR_H.
2633
2634 2003-06-27  J"orn Rennecke <joern.rennecke@superh.com>
2635
2636         * flow.c (propagate_one_insn): Use proper test for a register
2637         being part of the return value.
2638
2639 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2640
2641         * config/avr/avr.c: Fix a comment typo.
2642
2643 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2644
2645         * config/avr/avr-protos.h: Replace avr_simplify_comparision_p
2646         with avr_simplify_comparison_p.
2647         * config/avr/avr.c: Likewise.
2648
2649 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2650
2651         * builtins.c: Follow spelling conventions.
2652         * cgraph.c: Likewise.
2653         * cpplex.c: Likewise.
2654         * config/arm/arm.c: Likewise.
2655         * config/arm/iwmmxt.md: Likewise.
2656         * config/c4x/c4x-modes.def: Likewise.
2657         * config/c4x/c4x.c: Likewise.
2658         * config/c4x/c4x.h: Likewise.
2659         * config/c4x/c4x.md: Likewise.
2660         * config/i386/i386-interix.h: Likewise.
2661         * config/mips/mips.h: Likewise.
2662
2663 2003-06-28  Neil Booth  <neil@daikokuya.co.uk>
2664
2665         * config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Predicate
2666         __mc68020__ on TARGET_68020.
2667
2668 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2669
2670         * config/h8300/h8300.c: Fix a comment typo.
2671
2672 2003-06-28  Nathan Sidwell  <nathan@codesourcery.com>
2673
2674         * c-parse.in (yylexstring): Use a location_t.
2675
2676         * diagnostic.h (diagnostic_set_info): Replace file and lineno
2677         parameters with a location_t.
2678         * diagnostic.c (diagnostic_set_info): Replace file and lineno
2679         parameters with a location_t.
2680         (inform, warning, pedwarn, error, sorry, fatal_error,
2681         internal_error, warning_with_decl, pedwarn_with_decl,
2682         error_with_decl): Adjust.
2683         * c-error.c (pedwarn_c99): Adjust.
2684         * c-format.c (status_warning): Adjust.
2685         * rtl-error.c (file_and_line_for_asm): Rename to ...
2686         (location_for_asm): Return a location_t.
2687         (diagnostic_for_asm): Adjust.
2688
2689 2003-06-28  Neil Booth  <neil@daikokuya.co.uk>
2690
2691         * cpptrad.c (skip_macro_block_comment): New.
2692         (copy_comment): Use it if appropriate.
2693
2694 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2695
2696         * gcse.c (compute_ld_motion_mems): Use INSN_P instead of its
2697         definition.
2698         (store_killed_in_insn): Likewise.
2699         * print-rtl.c (print_rtx): Likewise.
2700         * config/frv/frv.c (frv_final_prescan_insn): Likewise.
2701         * config/m68hc11/m68hc11.c (dead_register_here): Likewise.
2702         (m68hc11_reassign_regs): Likewise.
2703         (m68hc11_reorg): Likewise.
2704
2705 2003-06-28  Gabriel Dos Reis <gdr@integrable-solutions.net>
2706
2707         * diagnostic.c (output_integer_with_precision): New macro.
2708         (output_format): Use it.  Handle more format specifiers.
2709         (output_long_decimal): Remove.
2710         (output_unsigned_decimal): Likewise.
2711         (output_long_unsigned_decimal): Likewise.
2712         (output_octal): Likewise.
2713         (output_long_octal): Likewise.
2714         (output_hexadecimal): Likewise.
2715         (output_long_hexadecimal): Likewise.
2716         (output_long_long_decimal): Likewise.
2717
2718 2003-06-28  Andreas Schwab  <schwab@suse.de>
2719
2720         * config/ia64/ia64.md: Follow recent emit_note API change.
2721
2722 2003-06-28  Nathan Sidwell  <nathan@codesourcery.com>
2723
2724         * c-parse.in (%union): Replace filename & lineno with location.
2725         (save_filename, save_lineno): Remove.
2726         (save_location): New.
2727         (fndef, old_style_parm_decls_1, lineno_datadecl, lineno_decl,
2728         nested_function, notype_nested_function, if_prefix, lineno_stmt,
2729         lineno_label, label): Adjust.
2730
2731 2003-06-28  Jakub Jelinek  <jakub@redhat.com>
2732
2733         * builtins.c (c_strlen): Add only_value argument.
2734         Handle COND_EXPR and COMPOUND_EXPR.
2735         (expand_builtin_strlen): Optimize also strlen (i++ ? "foo" : "bar").
2736         Adjust c_strlen callers.
2737         (expand_builtin_strcpy, expand_builtin_strncpy,
2738         expand_builtin_strcmp, expand_builtin_strncmp,
2739         expand_builtin_fputs, expand_builtin_sprintf,
2740         fold_builtin): Adjust c_strlen callers.
2741
2742 2003-06-28  Josef Zlomek  <zlomekj@suse.cz>
2743
2744         * bb-reorder.c (find_traces_1_round): Do not send basic block
2745         to next round when we are in the last round.
2746
2747 2003-06-28  Neil Booth  <neil@daikokuya.co.uk>
2748
2749         * Makefile.in: Update.
2750         * opts.c: Include tm_p.h.
2751         (handle_options): Make static.
2752         (decode_options): Copied from toplev.c.
2753         * opts.h (decode_options): New.
2754         * toplev.c (parse_options_and_default_flags): Move most to opts.c,
2755         some to...
2756         (general_init): ...here.
2757         (toplev_main): Use decode_options instead.
2758         * toplev.h (save_argc, save_argv): New.
2759
2760 2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>
2761
2762         * explow.c (find_next_ref): Remove.
2763         * rtl.h: Remove the prototype for find_next_ref.
2764
2765 2003-06-27  Roger Sayle  <roger@eyesopen.com>
2766
2767         * config/alpha/alpha.md (anonymous define_split): Adjust emit_note
2768         call to match recent API change.
2769
2770 2003-06-27  Zack Weinberg  <zack@codesourcery.com>
2771
2772         * dbxout.c (flag_debug_only_used_symbols): Delete redundant
2773         declaration.
2774
2775         * c-format.c (check_format_string, get_constant)
2776         * cfgrtl.c (rtl_split_edge):
2777         Mark the definition static, matching the forward declaration.
2778
2779 2003-06-27  Gunther Nikl <gni@gecko.de>
2780
2781         * unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define.
2782
2783         PR target/11014
2784         * config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly
2785         syntax for MIT / MOTOROLA.
2786
2787         PR other/10240
2788         * configure.in: Removed $(XCFLAGS) from BUILD_CFLAGS for build != host.
2789         * configure: Rebuilt.
2790
2791 2003-06-27  Chris Demetriou  <cgd@broadcom.com>
2792
2793         * config/mips/mips.c (mips_build_va_list): Make padding in
2794         va_list structure explicit to avoid -Wpadded warnings.
2795
2796 2003-06-27  Ulrich Weigand  <uweigand@de.ibm.com>
2797
2798         * config/s390/s390.h (SECONDARY_OUTPUT_RELOAD_CLASS): Define.
2799         * config/s390/s390.c (s390_secondary_output_reload_class): New function.
2800         * config/s390/s390-protos.h (s390_secondary_output_reload_class):
2801         Declare it.
2802         * config/s390/s390.md ("reload_outti", "reload_outdi",
2803         "reload_outdf"): New expanders.
2804
2805         * config/s390/s390.md ("movti" + splitters): Handle non-offsettable
2806         memory operands as source.
2807         ("movdi" + splitters): Likewise.
2808         ("movdf" + splitters): Likewise.
2809         * config/s390/s390.c (s390_split_ok_p): New function.
2810         * config/s390/s390-protos.h (s390_split_ok_p): Declare it.
2811
2812 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2813
2814         * combine.c (force_to_mode): Replace the equality comparison
2815         of INTVALs with a pointer equality comparison.
2816         (simplify_comparison): Likewise.
2817
2818 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2819
2820         * jump.c (rtx_renumbered_equal_p): Replace an expression that
2821         is known to be 0 with 0.
2822
2823 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2824
2825         * gcse.c (expr_equiv_p): Replace expressions that are known to
2826         be 0 with 0.
2827
2828 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2829
2830         * cse.c (fold_rtx): Replace the equality comparison of INTVALs
2831         with a pointer equality comparison.
2832
2833 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2834
2835         * rtlanal.c (reg_mentioned_p): Return 0 earlier if REG and IN
2836         are known to be not equivalent.
2837
2838 2003-06-27  Richard Henderson  <rth@redhat.com>
2839
2840         * config/alpha/alpha.c (function_arg): Don't pass small aggregates
2841         in floating point registers.  Validate that we don't receive complex
2842         values here.  Use #elif.
2843         (return_in_memory, function_value): New.
2844         (alpha_va_arg): Handle complex values as two arguments.
2845         * config/alpha/alpha.h (RETURN_IN_MEMORY): Use return_in_memory.
2846         (FUNCTION_VALUE, LIBCALL_VALUE): Use function_value.
2847         (SPLIT_COMPLEX_ARGS): New.
2848         * config/alpha/alpha-protos.h: Update.
2849
2850 2003-06-27  Ulrich Weigand  <uweigand@de.ibm.com>
2851
2852         * ggc-page.c (inverse_table): Change type of mult to size_t.
2853         (compute_inverse): Compute inverse using size_t, not unsigned int.
2854         Compute inverse also for sizes larger than half a machine page.
2855
2856 Fri Jun 27 18:36:12 CEST 2003  Jan Hubicka  <jh@suse.cz>
2857
2858         * toplev.c (rest_of_decl_compilation):  Only varpoolize argument
2859         when called before cgraph_optimize.
2860
2861 2003-06-27  Zack Weinberg  <zack@codesourcery.com>
2862
2863         * config/darwin.h, config/elfos.h, config/i960/i960-coff.h
2864         * config/m68k/coff.h: ASM_FILE_START_FILE_DIRECTIVE should
2865         be TARGET_ASM_FILE_START_FILE_DIRECTIVE.
2866
2867 Fri Jun 27 17:41:16 CEST 2003  Jan Hubicka  <jh@suse.cz>
2868
2869         * cgraph.c (cgraph_node, cgraph_varpool_node): Avoid re-initializing
2870         of known_decls.
2871
2872 2003-06-27  Hans-Peter Nilsson  <hp@axis.com>
2873
2874         * defaults.h (REGISTER_MOVE_COST): Define default here.
2875         * regclass.c: Don't define default REGISTER_MOVE_COST here.
2876         * reload.c, reload1.c: Ditto.
2877
2878 2003-06-27  Richard Earnshaw <rearnsha@arm.com>
2879
2880         * flags.h: Really install previous change.
2881
2882 2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
2883
2884         * rtl.h (emit_note): Remove FILE parameter.
2885         * emit-rtl.c (emit_line_note): Adjust emit_note call.
2886         (emit_note): Remove FILE parameter. Adjust.
2887         * builtins.c (expand_builtin_expect): Adjust emit_note call.
2888         * c-semantics.c (genrtl_scope_stmt): Likewise.
2889         (expand_stmt): Likewise.
2890         * cfglayout.c (reemit_insn_block_notes): Likewise.
2891         (duplicate_insn_chain): Likewise.
2892         * except.c (expand_eh_region_start, expand_eh_region_end,
2893         sjlj_emit_function_enter): Likewise.
2894         * explow.c (probe_stack_range): Likewise.
2895         * expr.c (emit_block_move_via_loop): Likewise.
2896         * function.c (init_function_start, expand_function_start,
2897         expand_function_end, thread_prologue_and_epilogue_insns): Likewise.
2898         * integrate.c (expand_inline_function, copy_insn_list): Likewise.
2899         * reg-stack.c (compensate_edge): Likewise.
2900         * reload1.c (reload): Likewise.
2901         * rtlanal.c (hoist_insn_to_edge): Likewise.
2902         * stmt.c (expand_fixup, expand_start_loop, expand_start_null_loop,
2903         expand_loop_continue_here, expand_end_loop, expand_continue_loop,
2904         expand_exit_loop_top_cond, expand_value_return,
2905         expand_start_bindings_and_block, expand_end_bindings,
2906         expand_decl_cleanup, expand_start_case): Likewise.
2907         * unroll.c (copy_loop_body
2908         * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Likewise.
2909         * config/ia64/ia64.c (ia64_output_mi_thunk): Likewise.
2910         * config/rs6000/rs6000.c (rs6000_emit_eh_toc_restore,
2911         rs6000_emit_allocate_stack, rs6000_output_function_prologue,
2912         rs6000_output_function_epilogue, rs6000_output_mi_thunk): Likewise.
2913         * config/sh/sh.c (sh_output_mi_thunk): Likewise.
2914         * config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
2915
2916 2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
2917
2918         * c-tree.h (grokfield): Remove unused filename and line parameters.
2919         * c-decl.c (grokfield): Remove unused filename and line parameters.
2920         * c-parse.in (component_decl): Adjust field grokking rules, adjust
2921         grokfield calls.
2922         (component_declarator): Likewise.
2923         (component_notype_declarator): Likewise.
2924         * objc/objc-act.c (build_module_descriptor): Adjust grokfield
2925         calls.
2926         (build_protocol_template, build_method_prototype_list_template,
2927         build_method_prototype_template, build_category_template,
2928         build_selector_template, build_class_template,
2929         build_super_template, build_ivar_template,
2930         build_ivar_list_template, build_method_list_template,
2931         build_method_template, add_instance_variable): Likewise.
2932
2933 2003-06-27  Kazu Hirata  <kazu@cs.umass.edu>
2934
2935         * stmt.c (do_jump_if_equal): Return 0 earlier if OP1 and
2936         OP2 are known to be not equivalent.
2937
2938 2003-06-26  Devang Patel <dpatel@apple.com>
2939
2940         * final.c (debug_flush_symbol_queue): New function.
2941         (debug_queue_symbol): New function.
2942         (debug_free_queue): New function.
2943         (debug_nesting): New variable.
2944         (symbol_queue): New variable.
2945         (symbol_queue_index): Same.
2946         (symbol_queue_size): Same.
2947         * debug.h (debug_flush_symbol_queue): New.
2948         (debug_queue_symbol): New.
2949         (debug_free_queue): New.
2950         (debug_nesting): New.
2951         (symbol_queue_index): New.
2952         * dbxout.c (DBXOUT_DECR_NESTING): New macro.
2953         (DBXOUT_DECR_NESTING_AND_RETURN): New macro.
2954         (dbxout_init): Delay symbol output.
2955         (dbxout_global_decl): Save, set and reset TREE_USED bit around
2956         dbxout_symbol() call.
2957         (dbxout_begin_function): Same.
2958         (dbxout_finish): Free symbol queue.
2959         (dbxout_type): Put appropriate symbols in queue.
2960         (dbxout_symbol): Put info for symbol's type in queue.
2961         Decrement/Increment nesting counts flush symbol queue appropriately.
2962         (dbxout_parms): Increment dbxout nesting.
2963         (dbxout_reg_parms): Same.
2964         * flags.h (flag_debug_only_used_symbols): New.
2965         * toplev.c (flag_debug_only_used_symbols): New variable.
2966         (lang_independent_options): Add entries for new option
2967         -feliminate-unused-debug-symbols.
2968         * common.opt: Add entry for -feliminate-unused-debug-symbols.
2969         * opts.c (common_handle_options): Same.
2970         * config/rs6000/darwin.h (CC1_SPEC): Interpret -gused as
2971         -feliminate-unused-debug-symbols.
2972         * doc/invoke.texi (Debugging Options): Document
2973         -feliminate-unused-debug-symbols.
2974
2975 2003-06-26  Roger Sayle  <roger@eyesopen.com>
2976             Jakub Jelinek  <jakub@redhat.com>
2977
2978         * builtins.c (expand_builtin_sprintf): Use c_getstr and strlen to
2979         obtain the format string instead of using TREE_STRING_POINTER and
2980         TREE_STRING_LENGTH.  Only optimize sprintf(dst,"%s",src) when the
2981         return value is unused or the length of src is a known constant.
2982
2983 2003-06-26  Richard Henderson  <rth@redhat.com>
2984
2985         * config/ia64/ia64.h (REGISTER_NAMES): R0 is really AP.
2986
2987 2003-06-26  Richard Henderson  <rth@redhat.com>
2988
2989         * config/ia64/ia64.c (ia64_expand_call): Don't add ar.pfs for sibcalls.
2990         (ia64_split_call): Only load descriptor for GP register inputs.
2991         (ia64_expand_epilogue): Check current_frame_info.mask not
2992         current_function_is_leaf to restore ar.pfs.
2993
2994 2003-06-26  Richard Henderson  <rth@redhat.com>
2995
2996         * emit-rtl.c (try_split): Append to new CALL_INSN_FUNCTION_USAGE
2997         instead of replacing it.
2998
2999 2003-06-26  Richard Henderson  <rth@redhat.com>
3000
3001         * flow.c (propagate_one_insn): Kill function return value
3002         registers across tail calls.
3003
3004         * flow.c (propagate_one_insn): Preserve live-at-end registers
3005         across tail calls.
3006
3007 2003-06-26  J"orn Rennecke <joern.rennecke@superh.com>
3008
3009         * reload.c (can_reload_into): New function.
3010         (push_reload): Use it.
3011
3012 2003-06-26  Kazu Hirata  <kazu@cs.umass.edu>
3013
3014         * config/h8300/h8300.c (compute_a_rotate_length): Fix the
3015         references to the amount of a rotation.
3016
3017 2003-06-26  Nathanael Nerode  <neroden@gcc.gnu.org>
3018
3019         * config/sh/coff.h: Don't include dbxcoff.h.
3020         * config.gcc: List it here.
3021
3022 2003-06-26  Kazu Hirata  <kazu@cs.umass.edu>
3023
3024         * postreload.c (reload_cse_simplify_set): Call cselib_lookup
3025         earlier.  Don't check if SRC is a constant.
3026
3027 2003-06-26  Kazu Hirata  <kazu@cs.umass.edu>
3028
3029         * Makefile.in (OBJS): Add postreload.o.
3030         Remove cselib.h from the dependency list for reload1.o.
3031         Add a dependency list for postreload.o.
3032         * reload.h: Change the comment for the prototype of
3033         reload_cse_regs.
3034         * reload1.c: Don't include cselib.h.
3035         (reload_cse_regs): Move to postreload.c
3036         (reload_cse_regs_1): Likewise.
3037         (reload_cse_noop_set_p): Likewise.
3038         (reload_cse_simplify_set): Likewise.
3039         (reload_cse_simplify_operands): Likewise.
3040         (RELOAD_COMBINE_MAX_USES): Likewise.
3041         (reload_combine_ruid): Likewise.
3042         (LABEL_LIVE): Likewise.
3043         (reload_combine): Likewise.
3044         (reload_combine_note_use): Likewise.
3045         (reload_combine_note_store): Likewise.
3046         (reg_set_luid): Likewise.
3047         (reg_offset): Likewise.
3048         (reg_base_reg): Likewise.
3049         (reg_mode): Likewise.
3050         (move2add_luid): Likewise.
3051         (move2add_last_label_luid): Likewise.
3052         (MODES_OK_FOR_MOVE2ADD): Likewise.
3053         (reload_cse_move2add): Likewise.
3054         (move2add_note_store): Likewise.
3055         (reload_cse_simplify): Likewise.
3056         * postreload.c: New.
3057
3058 2003-06-26  Kazu Hirata  <kazu@cs.umass.edu>
3059
3060         * config/avr/avr.c (final_prescan_insn): Remove support for
3061         -mrtl.
3062         * config/avr/avr.h (MASK_RTL_DUMP): Remove.
3063         (TARGET_RTL_DUMP): Likewise.
3064         (TARGET_SWITCHES): Remove -mrtl.
3065
3066 2003-06-26  Kazu Hirata  <kazu@cs.umass.edu>
3067
3068         * config/h8300/h8300-protos.h: Change emit_a_rotate to
3069         output_a_rotate.  Add a prototype for compute_a_rotate_length.
3070         * config/h8300/h8300.c (emit_a_rotate): Change to
3071         output_a_rotate.
3072         (compute_a_rotate_length): New.
3073         (h8300_adjust_insn_length): Remove.
3074         * config/h8300/h8300.h (ADJUST_INSN_LENGTH): Remove.
3075         * config/h8300/h8300.md (adjust_length): Remove.
3076         (*rotlqi3_1): Use output_a_rotate and compute_a_rotate_length.
3077         (*rotlhi3_1): Likewise.
3078         (*rotlsi3_1): Likewise.
3079
3080 2003-06-26  Roger Sayle  <roger@eyesopen.com>
3081             Richard Henderson  <rth@redhat.com>
3082
3083         * builtins.c (expand_builtin_mathfn): Always stabilize the argument
3084         list against re-evaluation.  If expand_unop fails, call expand_call
3085         with the stabilized argument list rather than return NULL_RTX.
3086         (expand_builtin_mathfn2): Likewise, always stabilize the argument
3087         list, and call expand_call ourselves if expand_binop fails.
3088
3089 2003-06-26  Eric Botcazou  <ebotcazou@libertysurf.fr>
3090
3091         PR optimization/11210
3092         * fold-const (decode_field_reference): Strip only NOPs that
3093         don't affect the sign.
3094
3095 2003-06-26  Dhananjay Deshpande  <dhananjayd@kpitcummins.com>
3096
3097         * gcc/config/sh/sh.md (push_fpscr): Enable for TARGET_SH2E.
3098         (pop_fpscr, fpu_switch): Likewise.
3099
3100 2003-06-26  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
3101
3102         * value-prof.c: New.
3103         * value-prof.h: New.
3104         * Makefile.in (value-prof.o): New.
3105         (LIBGCOV): Add _gcov_merge_single and _gcov_merge_delta
3106         (profile.o): Add value-prof.h and tree.h dependency.
3107         * flags.h (flag_profile_values): Declare.
3108         * gcov-io.h (GCOV_COUNTERS, GCOV_COUNTER_NAMES, GCOV_MERGE_FUNCTIONS):
3109         Add new counters.
3110         (GCOV_COUNTER_V_INTERVAL, GCOV_COUNTER_V_POW2, GCOV_COUNTER_V_SINGLE,
3111         GCOV_COUNTER_V_DELTA): New counter sections.
3112         (__gcov_merge_single, __gcov_merge_delta): Declare.
3113         * flow.c (mark_used_regs): Set subregs_of_mode only when the
3114         structure is initialized.
3115         * libgcov.c (__gcov_merge_single, __gcov_merge_delta): New functions.
3116         * profile.c: Include value-prof.h and tree.h.
3117         (gen_interval_profiler, gen_pow2_profiler, gen_one_value_profiler,
3118         gen_const_delta_profiler, instrument_values): New static functions.
3119         (get_exec_counts): Fix comment.
3120         (branch_prob): Invoke instrument_values.
3121         * toplev.c (flag_profile_values): New flag.
3122         * doc/invoke.texi (-fprofile-values): Document.
3123
3124 2003-06-26  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
3125
3126         * Makefile.in (cfgrtl.o): Add expr.h dependency.
3127         * cfgrtl.c: Include expr.h.
3128         (mark_killed_regs, safe_insert_insn_on_edge): New
3129         functions.
3130         * config/i386/i386.h (AVOID_CCMODE_COPIES): Define.
3131         * basic-block.h (safe_insert_insn_on_edge): Declare.
3132
3133 2003-06-26  Neil Booth  <neil@daikokuya.co.uk>
3134
3135         * c-opts.c (missing_arg): Make non-static.
3136         (c_common_handle_option): Don't check for missing arguments.
3137         * opts.c (handle_option): Check for missing arguments.
3138
3139 2003-06-26  David Edelsohn  <edelsohn@gnu.org>
3140
3141         * config/rs6000/power4.md (power4-veccomplex): Correct latency.
3142
3143 2003-06-25  Loren James Rittle  <ljrittle@acm.org>
3144
3145         * configure.in (ld_vers): Portability [sed].
3146         * configure: Regenerate with autoconf213.
3147
3148 2003-06-25  H.J. Lu <hongjiu.lu@intel.com>
3149
3150         * doc/extend.texi: Document new builtin functions for Intel
3151         Prescott New Intrunctions.
3152
3153         * doc/invoke.texi: Document new command-line options, -mpni and
3154         -mno-pni, for Intel Prescott New Intrunctions.
3155
3156         * config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*.
3157
3158         * config/i386/i386.c (override_options): Turn on MASK_SSE2
3159         for -mpni. Turn on MASK_SSE for -msse2.
3160         (bdesc_2arg): Add PNI builtins with 2 args.
3161         (bdesc_1arg): Add PNI builtins with 1 arg.
3162         (ix86_init_mmx_sse_builtins): Handle PNI builtins.
3163         (ix86_expand_builtin): Likewise.
3164
3165         * config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A,
3166         MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT,
3167         MASK_TLS_DIRECT_SEG_REFS): Renumbered.
3168         (TARGET_PNI): New.
3169         (TARGET_SWITCHES): Don't enable MASK_SSE for -msse2 here. Add
3170         -mpni and -mno-pni.
3171         (TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI.
3172         (ix86_builtins): Add PNI builtins.
3173         (config/i386/i386.md): Add PNI patterns.
3174
3175         * config/i386/pmmintrin.h: New file.
3176
3177 2003-06-25  Kazu Hirata  <kazu@cs.umass.edu>
3178
3179         * config/h8300/h8300.md (call): Fix the insn lengths.
3180         (call_value): Likewise.
3181
3182 Thu Jun 26 00:13:35 CEST 2003  Jan Hubicka  <jh@suse.cz>
3183
3184         * c-common.c (handle_used_attribute): Use mark_referenced.
3185         * varasm.c (mark_referenced): Break out from ...
3186         (assemble_name): ... here.
3187         * tree.h (mark_referenced): Declare.
3188
3189 2003-06-25  Wolfgang Bangerth  <bangerth@dealii.org>
3190
3191         * gccbug.in: Add PCH to list of categories.
3192
3193 2003-06-25 Martin Schaffner <schaffner@gmx.li>
3194
3195         * cppfiles.c: Clarify comments.
3196         * cpphash.h: Likewise.
3197         * cpplib.h: Likewise.
3198         * cppmacro.c: Likewise.
3199         * mkdeps.h: Likewise.
3200
3201 2003-06-25  Neil Booth  <neil@daikokuya.co.uk>
3202
3203         * c-opts.c (complain_wrong_lang, write_langs): Remove.
3204         (c_common_handle_option): Complaints about wrong language are
3205         handled in opts.c now.
3206         * opts.c (complain_wrong_lang, write_langs, handle_options): New.
3207         (find_opt): Fix thinko.
3208         (handle_option): Update prototype.  Complain about switches for
3209         a different front end.
3210         * opts.h (lang_names, handle_options): New.
3211         (handle_option): Remove.
3212         * opts.sh: Write out language names array.
3213         * toplev.c (parse_options_and_default_flags): Use handle_options.
3214
3215 2003-06-25  H.J. Lu <hongjiu.lu@intel.com>
3216
3217         * config/i386/i386.c (MASK_SSE1): Removed.
3218         (MASK_SSE164): Removed.
3219         (MASK_SSE264): Removed.
3220         (bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace
3221         MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264
3222         with MASK_SSE2 | MASK_64BIT.
3223         (bdesc_1arg): Likewise.
3224         (ix86_init_mmx_sse_builtins): Likewise.
3225
3226         * config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2.
3227         (TARGET_SWITCHES): Enable both MASK_SSE and MASK_SSE2 for
3228         -msse2.
3229
3230 2003-06-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3231
3232         * hwint.h (HOST_WIDE_INT_PRINT, HOST_WIDE_INT_PRINT_C): New macros.
3233         (HOST_WIDE_INT_PRINT_DEC_SPACE,
3234         HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
3235         HOST_WIDEST_INT_PRINT_DEC_SPACE,
3236         HOST_WIDEST_INT_PRINT_UNSIGNED_SPACE): Delete.
3237         (HOST_WIDE_INT_PRINT_DEC, HOST_WIDE_INT_PRINT_DEC_C,
3238         HOST_WIDE_INT_PRINT_UNSIGNED, HOST_WIDE_INT_PRINT_HEX): Define in
3239         terms of HOST_WIDE_INT_PRINT and possibly HOST_WIDE_INT_PRINT_C.
3240
3241         * final.c (asm_fprintf): Use HOST_WIDE_INT_PRINT.
3242         * ra-debug.c (dump_static_insn_cost): Likewise.
3243
3244 2003-06-26  Nick Clifton  <nickc@redhat.com>
3245
3246         * config/arm/arm.h (BIGGEST_FIELD_ALIGNMENT): Define instead
3247         of ADJUST_FIELD_ALIGN if IN_TARGET_LIBS.
3248         Replace occurances of '???' with 'XXX' incase they are
3249         mistaken for trigraphs.
3250         (THUMB_PRINT_OPERAND_ADDRESS): abort if a compound address
3251         does not have a register for the first operand.
3252
3253 2003-06-25      Dhananjay Deshpande <dhananjayd@kpitcummins.com>
3254
3255         * config/sh/sh.c (sh_register_move_cost):
3256         Add case for moving between MAC_REGS.
3257
3258 2003-06-25  Zack Weinberg  <zack@codesourcery.com>
3259
3260         PR 10178
3261         * langhooks.h (struct lang_hooks): Add no_body_blocks bool.
3262         * langhooks-def.h (LANG_HOOKS_NO_BODY_BLOCKS): New; default false.
3263         * c-lang.c, objc/objc-lang.c: Override LANG_HOOKS_NO_BODY_BLOCKS
3264         to true.
3265         * stmt.c (is_body_block): If lang_hooks.no_body_blocks, always
3266         return 0.
3267
3268 2003-06-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3269
3270         * Makefile.in (bt-load.o): Depend on $(TM_P_H).
3271         * bt-load.c: Include "tm_p.h".
3272
3273 2003-06-25  Kazu Hirata  <kazu@cs.umass.edu>
3274
3275         * config/h8300/h8300.c (compute_mov_length): Adjust for the
3276         new optimization.
3277         * config/h8300/h8300.md (*movsi_h8300): Optimize the load of
3278         an SImode constant whose upper and lower are the same.
3279
3280 Wed Jun 25 11:31:59 CEST 2003  Jan Hubicka  <jh@suse.cz>
3281
3282         * varasm.c (assemble_name): Mark needed variables even when
3283         global info is ready.
3284
3285 2003-06-24  Jerry Quinn  <jlquinn@optonline.net>
3286
3287         PR other/11280
3288         * gcc/doc/invoke.texi (Optimization Options): Remove -Os from
3289         -freorder-functions description.
3290
3291 2003-06-25  Josef Zlomek  <zlomekj@suse.cz>
3292
3293         * dwarf2out.c (gen_field_die): Return if type of decl is error mark.
3294
3295 2003-06-25  Neil Booth  <neil@daikokuya.co.uk>
3296
3297         * opts.c (common_handle_option): Add missing break;s.
3298
3299 2003-06-24  Kazu Hirata  <kazu@cs.umass.edu>
3300
3301         * config/h8300/h8300-protos.h: Add a prototype for
3302         compute_mov_length.
3303         * config/h8300/h8300.c (compute_mov_length): New.
3304         * config/h8300/h8300.md (*movqi_h8300): Use it.
3305         (*movqi_h8300hs): Likewise.
3306         (movstrictqi): Likewise.
3307         (*movhi_h8300): Likewise.
3308         (*movhi_h8300hs): Likewise.
3309         (movstricthi): Likewise.
3310         (*movsi_h8300): Likewise.
3311         (*movsf_h8300): Likewise.
3312         (*movsi_h8300hs): Likewise.
3313         (*movsf_h8300hs): Likewise.
3314
3315 2003-06-24  Kazu Hirata  <kazu@cs.umass.edu>
3316
3317         * jump.c (next_nondeleted_insn): Remove.
3318         * rtl.h: Remove the prototype for next_nondeleted_insn.
3319
3320 2003-06-24  Roger Sayle  <roger@eyesopen.com>
3321
3322         PR optimization/11311
3323         * builtins.c (powi_cost): Fix typo.  The number of multiplications
3324         required is the number to reduce the argument, result, plus the
3325         cost of calculating the residual, val [not n, the original value].
3326
3327 2003-06-24  Roger Sayle  <roger@eyesopen.com>
3328
3329         * config/alpha/osf5.h (TARGET_C99_FUNCTIONS): Define.
3330
3331 2003-06-24  Richard Henderson  <rth@redhat.com>
3332             (blame to: Loren James Rittle  <ljrittle@acm.org>)
3333
3334         * real.h (ieee_extended_intel_96_round_53_format): New.
3335         * real.c (ieee_extended_intel_96_round_53_format): New.
3336         * config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Use it
3337         for XFmode and TFmode.
3338
3339 2003-06-24  Kazu Hirata  <kazu@cs.umass.edu>
3340
3341         * config/h8300/h8300.md (4 anonymous patterns): Give internal
3342         names.
3343         (movsi_h8300): Change the name to *movsi_h8300.
3344         (movsi_h8300hs): Change the name to *movsi_h8300hs.
3345         (movsf_h8300): Change the name to *movsf_h8300.
3346         (movsf_h8300hs): Change the name to *movsf_h8300hs.
3347
3348 2003-06-24  Jakub Jelinek  <jakub@redhat.com>
3349
3350         * builtins.c (expand_builtin_strcpy): Don't evaluate side-effects in
3351         src twice.
3352
3353 2003-06-24  J"orn Rennecke <joern.rennecke@superh.com>
3354
3355         Back out these patches:
3356          2003-06-02  J"orn Rennecke <joern.rennecke@superh.com>
3357           * sh.h (OLD_ARG_MODE): New macro.
3358           (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
3359           (FUNCTION_ARG_1): Break out of:
3360           (FUNCTION_ARG).  Use OLD_ARG_MODE.
3361          2003-06-06  J"orn Rennecke <joern.rennecke@superh.com>
3362           * sh.h (FUNCTION_ARG_1): Consistently use NEW_MODE for the mode
3363           of the generated register.
3364
3365         * sh.h (FUNCTION_ARG_SCmode_WART): Define.
3366         (FUNCTION_ARG): Unless FUNCTION_ARG_SCmode_WART is defined and
3367         an even number of floating point regs are in use, use the same
3368         sequence of argument passing registers for SCmode as would be
3369         used for two SFmode values.
3370         * sh.c (sh_va_arg): If FUNCTION_ARG_SCmode_WART is defined,
3371         swap real / imaginary parts in incoming SCmode values passed
3372         in registers.
3373
3374 2003-06-24  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
3375
3376         PR target/11260
3377         * config/alpha/alpha.md (sqrtdf2): Fix operand substitution.
3378
3379 Tue Jun 24 18:49:33 CEST 2003  Jan Hubicka  <jh@suse.cz>
3380
3381         * Makefile.in (cgraph.o): Depend on output.h, not depend on
3382         tree-inline.h
3383         * cgraph.c: Do not include tree-inline.h; include output.h
3384         (known_fns): Rename to ...
3385         (known_decls): ... this one; update all uses.
3386         (cgraph_varpool_hash): New static variable.
3387         (cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): New global
3388         variables.
3389         (cgraph_varpool_hash_node, eq_cgraph_varpool_node, cgraph_varpool_node,
3390         cgraph_varpool_node_for_identifier, cgraph_varpool_mark_needed_node,
3391         cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
3392         New functions.
3393         * cgraph.h (cgraph_varpool_node): New structure.
3394         (cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): Declare.
3395         (cgraph_varpool_node, cgraph_varpool_node_for_identifier,
3396         cgraph_varpool_finalize_decl, cgraph_varpool_mark_needed_node,
3397         cgraph_varpool_asemble_pending_decls): Declare.
3398         * cgraphunit.c (record_call_1): Notice variable references.
3399         (cgraph_finalize_compilation_unit): Assemble pending variables.
3400         * toplev.c (wrapup_global_declarations): Use varpool.
3401         (compile_file): Assemble pending declarations.
3402         (rest_of_decl_compilation): Use varpool in unit-at-a-time mode.
3403         * varasm.c (assemble_name): Notice varpool references.
3404
3405 Tue Jun 24 13:52:11 CEST 2003  Jan Hubicka  <jh@suse.cz>
3406
3407         * langhooks-def.h (LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE): New macro.
3408         * langhooks.h (lang_hooks_for_decls): Add prepare_assemble_variable.
3409         * varasm.c (assemble_variable): Call prepare_assemble_variable.
3410
3411 2003-06-23  Roger Sayle  <roger@eyesopen.com>
3412
3413         * builtins.c (expand_builtin): Use expand_builtin_pow to expand
3414         calls for pow, powf, powl and their __builtin_ variants.
3415         (expand_builtin_pow): If the second argument is a constant
3416         integer and compiling with -ffast-math, use expand_powi to
3417         generate RTL if powi_cost is less than POWI_MAX_MULTS.
3418         (powi_cost): New function to return the number of multiplications
3419         necessary to evaluate an Nth power, for integer constant N.
3420         (expand_powi): New function to expand the RTL for evaluating
3421         the Nth power of a floating point value, for integer constant N.
3422
3423         * doc/tm.texi (POWI_MAX_MULTS): Document new target macro.
3424
3425 Mon Jun 23 23:07:35 CEST 2003  Jan Hubicka  <jh@suse.cz>
3426
3427         * cgraph.c (cgraph_nodes_queue): Declare.
3428         (eq_node): Take identifier as p2.
3429         (cgraph_node): Update htab_find_slot_with_hash call.
3430         (cgraph_node_for_identifier): New.
3431         (cgraph_mark_needed_node): Move here from cgraphunit.c.
3432         * cgraph.h (cgraph_nodes_queue): Declare.
3433         (cgraph_node_for_identifier): Declare.
3434         * cgraphunit.c (cgraph_finalize_function): Collect entry points here
3435         instead of in cgraph_finalize_compilation_unit; constructors and
3436         destructors are entry points.
3437         (cgraph_finalize_compilation_unit): Reorganize debug outout;
3438         examine nested functions after lowerng; call collect_functions hook.
3439         (cgraph_mark_local_functions): DECL_COMDAT functions are not local.
3440         (cgraph_finalize_compilation_unit): Do not collect entry points.
3441         * varasm.c: Include cgraph.h
3442         (assemble_name): Mark referenced identifier as needed.
3443
3444         * cgraphunit.c (record_call_1): Use get_callee_fndecl.
3445
3446 2003-06-23  Jakub Jelinek  <jakub@redhat.com>
3447
3448         * config/i386/i386.c (x86_output_mi_thunk): Don't pass MEM to %P0,
3449         just SYMBOL_REF.
3450         * config/s390/s390.c (s390_output_mi_thunk): Avoid .plt in -m31
3451         mode, as it requires pic register loaded.
3452
3453         * varasm.c (resolve_unique_section): Remove prototype.  No longer
3454         static.
3455         * tree.h (resolve_unique_section): New prototype.
3456
3457 2003-06-23  Andreas Schwab  <schwab@suse.de>
3458
3459         PR debug/9905
3460         * dwarf2out.c (loc_descriptor_from_tree): Handle MODIFY_EXPR by
3461         recursing through first argument.
3462
3463 2003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3464
3465         * ChangeLog.1: Fix a typo.
3466         * cfgrtl.c: Fix comment typos.
3467         * dwarf2out.c: Likewise.
3468         * expmed.c: Likewise.
3469         * genrecog.c: Likewise.
3470         * jump.c: Likewise.
3471         * rtlanal.c: Likewise.
3472         * ssa-dce.c: Likewise.
3473         * toplev.c: Likewise.
3474
3475 2003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3476
3477         * doc/extend.texi: Fix typos.
3478         * doc/md.texi: Likewise.
3479         * doc/tm.texi: Likewise.
3480
3481 2003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3482
3483         * basic-block.h: Fix comment formatting.
3484         * bt-load.c: Likewise.
3485         * builtins.c: Likewise.
3486         * c-common.c: Likewise.
3487         * c-common.h: Likewise.
3488         * c-format.c: Likewise.
3489         * coverage.c: Likewise.
3490         * cpplib.h: Likewise.
3491         * cpppch.c: Likewise.
3492         * dbxout.c: Likewise.
3493         * diagnostic.c: Likewise.
3494         * dwarf2out.c: Likewise.
3495         * expr.c: Likewise.
3496         * fold-const.c: Likewise.
3497         * function.c: Likewise.
3498         * gcc.c: Likewise.
3499         * gcov-io.c: Likewise.
3500         * gcov-io.h: Likewise.
3501         * gcov.c: Likewise.
3502         * profile.c: Likewise.
3503         * real.h: Likewise.
3504         * sched-deps.c: Likewise.
3505
3506 2003-06-23  Roger Sayle  <roger@eyesopen.com>
3507             Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3508
3509         * doc/contrib.texi (Contributors): Add a note on testing and
3510         remove duplicates from testers list.
3511
3512 2003-06-23  Nick Clifton  <nickc@redhat.com>
3513
3514         * read-rtl.c (read_braced_string): Check for EOF.  If
3515         encountered issue an error message.
3516
3517 2003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3518
3519         * doc/invoke.texi: Document dump options, dT and dW.
3520
3521 2003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3522
3523         * genrecog.c (pred_table): Remove the entry for
3524         mode_independent_operand.
3525         * recog.c (next_insns_test_no_inequality): Remove.
3526         (mode_independent_operand): Likewise.
3527         * recog.h: Remove the prototype for mode_independent_operand.
3528
3529 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3530
3531         * config/h8300/h8300.c (output_simode_bld): Use rotxl.l to
3532         store into bit 0.
3533         * config/h8300/h8300.md (*extzv_1_r_h8300hs): Change cc of the
3534         second alternative to set_znv.
3535         (*extzv_1_r_inv_h8300hs): Likewise.
3536
3537 2003-06-23  Hans-Peter Nilsson  <hp@bitrange.com>
3538
3539         * configure.in (in_tree_gas): Find out here whether GAS is ELF,
3540         set in_tree_gas_is_elf accordingly.
3541         (in_tree_ld): Find out whether LD emulation is ELF, set
3542         in_tree_ld_is_elf accordingly.
3543         (gcc_cv_as_subsections, gcc_cv_as_hidden, gcc_cv_as_leb128)
3544         (gcc_cv_as_eh_frame, gcc_cv_as_shf_merge)
3545         (gcc_cv_as_dwarf2_debug_line, gcc_cv_as_gdwarf2_flag)
3546         (gcc_cv_as_gstabs_flag): Use $in_tree_gas_is_elf instead of
3547         grepping gas/Makefile.
3548         (gcc_cv_ld_ro_rw_mix, gcc_cv_ld_eh_frame_hdr, gcc_cv_ld_pie): Use
3549         $in_tree_ld_is_elf instead of grepping ld/Makefile.
3550         * configure: Regenerate.
3551
3552 2003-06-22  Roger Sayle  <roger@eyesopen.com>
3553
3554         * builtins.c (expand_builtin_mathfn_2): Use tree_cons to build
3555         up the stabilized argument list, not build_tree_list.
3556         (expand_builtin_strcpy): Construct new argument list manually
3557         instead of using chainon to modify the original argument list.
3558         (expand_builtin_stpcpy): Construct new argument list manually
3559         instead of using copy_list and chainon.
3560         (expand_builtin_sprintf): New function.  Optimize calls to
3561         sprintf when the format is "%s" or doesn't contain a '%'.
3562         (expand_builtin): Expand BUILT_IN_SPRINTF using the new function
3563         expand_builtin_sprintf.
3564
3565 2003-06-22  Andreas Schwab  <schwab@suse.de>
3566
3567         * function.c (set_insn_locators): Mark as unused.
3568
3569 2003-06-22  Neil Booth  <neil@daikokuya.co.uk>
3570
3571         * common.opt: Add -finline-limit.
3572         * opts.c (common_handle_options): Handle it.
3573         * opts.sh: Temporary kludge for -finline-limit.
3574         * toplev.c (decode_f_option, independent_decode_option): Die.
3575         (parse_options_and_default_flags): No independent_decode_option.
3576
3577 2003-06-22  Andreas Jaeger  <aj@suse.de>
3578
3579         * calls.c (emit_call_1): Readd lost ATTRIBUTE_UNUSED.
3580
3581 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3582
3583         * doc/invoke.texi: Document dumps, .btl, .cfg, and .bypass.
3584
3585 2003-06-22  Andreas Schwab  <schwab@suse.de>
3586
3587         * doc/invoke.texi: Remove leading `-' from options in index.
3588
3589 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3590
3591         * bt-load.c: Follow spelling conventions.
3592
3593 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3594
3595         * expr.c (emit_move_insn_1): Fix a comment typo.
3596
3597 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3598
3599         * doc/invoke.texi: Alphabetize dump options.
3600
3601 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3602
3603         * doc/invoke.texi: Remove a duplicate -dk.
3604
3605 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3606
3607         * doc/invoke.texi: Update dump file names.
3608
3609 2003-06-22  Zack Weinberg  <zack@codesourcery.com>
3610
3611         * config/i370/i370.c, config/i370/i370.h: Use HOST_CHARSET_ASCII
3612         and HOST_CHARSET_EBCDIC, not HC_ASCII and HC_EBCDIC.
3613
3614 2003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3615
3616         * doc/rtl.texi: Fix the @findex for pre_modify.
3617
3618 2003-06-22  Andreas Jaeger  <aj@suse.de>
3619
3620         * caller-save.c: Convert to ISO C90.
3621         * calls.c: Likewise.
3622         * cfg.c: Likewise.
3623         * cfganal.c: Likewise.
3624         * cfgbuild.c: Likewise.
3625         * cfgcleanup.c: Likewise.
3626         * cfghooks.c: Likewise.
3627         * cfglayout.c: Likewise.
3628         * cfglayout.h: Likewise.
3629         * cfgloop.c: Likewise.
3630         * cfgloop.h: Likewise.
3631         * cfgloopanal.c: Likewise.
3632         * cfgloopmainip.c: Likewise.
3633         * cfgrtl.c: Likewise.
3634
3635 2003-06-22  Richard Earnshaw  <rearnsha@arm.com>
3636
3637         * arm.h (BIGGEST_ALIGNMENT): Use TARGET_REALLY_IWMMXT for selecting
3638         64-bit alignment.
3639
3640 2003-06-22  Richard Earnshaw  <rearnsha@arm.com>
3641
3642         * arm.md (all call_value patterns): Remove register constraints on
3643         value operand.
3644
3645 2003-06-22  Neil Booth  <neil@daikokuya.co.uk>
3646
3647         * common.opt: More -f switches.
3648         * opts.c (common_handle_options): Handle them.
3649         * toplev.c (time_report): Make extern.
3650         (f_options): USe flag_dummy.
3651         (decode_f_option): No need to use f_options now.
3652         * toplev.h (flag_cprop_registers, flag_ssa, flag_ssa_ccp,
3653         flag_ssa_dce, time_report, flag_new_regalloc): Make extern.
3654
3655 2003-06-22  Andreas Jaeger  <aj@suse.de>
3656
3657         * c-lex.c: Convert to ISO C90.
3658         * c-objc-common.c: Likewise.
3659         * c-opts.c: Likewise.
3660         * c-pch.c: Likewise.
3661         * c-ppoutput.c: Likewise.
3662         * c-pragma.h: Likewise.
3663         * c-pretty-print.c: Likewise.
3664         * c-pretty-print.h: Likewise.
3665         * c-semantics.c: Likewise.
3666         * c-tree.h: Likewise.
3667         * c-typeck.c: Likewise.
3668
3669         * c-lang.c: Convert to ISO C90.
3670
3671 2003-06-22  Neil Booth  <neil@daikokuya.co.uk>
3672
3673         * opts.c (find_opt): Fix to always guarantee a find of a
3674         switch with joined parameter.
3675         * opts.h (struct cl_option): New member back_chain.
3676         * opts.sh: Update to calculate and add back_chain member.
3677
3678 2003-06-22  Gabriel Dos Reis <gdr@integrable-solutions.net>
3679
3680         * diagnostic.h (output_host_wide_integer): Declare.
3681         * diagnostic.c (output_long_long_decicaml): New function.
3682         (output_host_wide_integer): Likewise.
3683         (output_format): Use them.  Handle "%ll" and "%w".
3684
3685 2003-06-21  Jason Thorpe  <thorpej@wasabisystems.com>
3686
3687         * config.gcc (*-*-netbsd*): Add t-libgcc-pic to tmake_file.
3688
3689 2003-06-21  Zack Weinberg  <zack@codesourcery.com>
3690
3691         * aclocal.m4 (gcc_AC_C_CHARSET): Delete.
3692         * configure.in: Don't use gcc_AC_C_CHARSET.
3693         * configure, config.in: Regenerate.
3694         * config/i370/i370.c, config/i370/i370.h: Use
3695         (HOST_CHARSET == HC_EBCDIC) or (HOST_CHARSET == HC_ASCII)
3696         instead of HOST_EBCDIC or !HOST_EBCDIC.  Clarify comments a tad.
3697
3698 2003-06-21  Neil Booth  <neil@daikokuya.co.uk>
3699
3700         * Makefile.in: Update.
3701         * common.opt: New switches.
3702         * opts.c: Include diagnostic.h.
3703         (common_handle_option): Handle new switches.
3704         * toplev.c (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
3705         flag_if_conversion2, flag_delete_null_pointer_checks,
3706         flag_rerun_cse_after_loop): Make extern.
3707         (flag_dummy): New.
3708         (f_options): Update to use flag_dummy for moved options.
3709         (decode_f_option): Some switches moved to opts.c.
3710         * toplev.h (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
3711         flag_if_conversion2, flag_delete_null_pointer_checks,
3712         flag_rerun_cse_after_loop, flag_keep_static_consts, flag_peel_loops,
3713         flag_tracer, flag_thread_jumps, flag_unroll_loops,
3714         flag_unroll_all_loops, flag_unswitch_loops): New.
3715
3716 Sat Jun 21 13:41:00 CEST 2003  Jan Hubicka  <jh@suse.cz>
3717
3718         * i386.c (ix86_va_arg): Fix allocation of temporary slot.
3719
3720 2003-06-20  Kazu Hirata  <kazu@cs.umass.edu>
3721
3722         * config/h8300/h8300-protos.h: Add a prototype for
3723         same_cmp_preceding_p.
3724         * config/h8300/h8300.c (same_cmp_preceding): New.
3725         * config/h8300/h8300.md: Extend peephole2's that transform
3726         compare:SI into shorter sequences so that they can deal with
3727         signed comparisons.
3728
3729 2003-06-21  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3730
3731         * doc/contrib.texi (Contributors): Use Windows instead of Win32.
3732
3733         Update Andreas Jaeger's entry.
3734
3735         Merge the two entries of Kaveh Ghazi, David Edelsohn, and
3736         Loren J. Rittle.
3737
3738 2003-06-21  Nathanael Nerode  <neroden@gcc.gnu.org>
3739
3740         * mkconfig.sh: Add multiple inclusion guards to generated headers.
3741
3742 2003-06-20  Neil Booth  <neil@daikokuya.co.uk>
3743
3744         * c-decl.c (store_parm_decls): Make saved_warn_shadow boolean.
3745         * common.opt: Add remaining -W options and -g.
3746         * diagnostic.c (warnings_are_errors): Remove.
3747         * flags.h: Make most warning flags boolean.
3748         * opts.c (common_handle_option): Handle remaining -W options, and -g.
3749         Move many warning flags from toplev.c, making them boolean.
3750         * toplev.c: Remove many warning flags.
3751         (decode_W_option): Remove.
3752         (decode_g_option): Make extern.  Error on unknown switch.
3753         (lang_independent_W_options): Use warn_dummy.
3754         (independent_decode_option): Just handle -f switches now.
3755         * toplev.h (decode_g_option): New.
3756
3757 2003-06-20  Aldy Hernandez  <aldyh@redhat.com>
3758
3759         PR/11092
3760         * config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Adjust for
3761         vectors.
3762
3763 2003-06-20  Kelley Cook  <kelleycook@wideopenwest.com>
3764
3765         * opts.sh: Tweak awk script for portability.
3766
3767 2003-06-20  Mark Mitchell  <mark@codesourcery.com>
3768
3769         PR c++/10888
3770         * tree-inline.c (expand_call_inline): Do not warn about failing to
3771         inline functions declared in system headers.
3772         * doc/invoke.texi (-Winline): Expand on documentation.
3773
3774 2003-06-20  Richard Henderson  <rth@redhat.com>
3775
3776         * config/alpha/alpha.c (alpha_file_start): Disable
3777         file_start_file_directive for ELF and not MDEBUG.
3778
3779 2003-06-20  J"orn Rennecke <joern.rennecke@superh.com>
3780
3781         * sh.h (ROUND_TYPE_ALIGN): Remove.
3782
3783 2003-06-20  Richard Henderson  <rth@redhat.com>
3784
3785         * hooks.c (hook_int_void_no_regs): Rename from
3786         hook_reg_class_void_no_regs; change return type.
3787         * hooks.h: Update.
3788         * target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Update.
3789         * target.h (branch_target_register_class): Change return type to int.
3790         Add documentation.
3791         * config/sh/sh.c (sh_target_reg_class): Change return type.
3792         * doc/tm.texi (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
3793
3794 2003-06-20  Andreas Tobler <toa@pop.agri.ch>
3795
3796         * c-format.c: Change _Bool to bool reverting part of the last
3797         patch.
3798
3799 2003-06-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3800
3801         * som.h (ASM_OUTPUT_SOURCE_LINE): Use targetm.strip_name_encoding to
3802         strip name encoding.
3803
3804 2003-06-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3805
3806         * configure.in (gcc_cv_as_gstabs_flag): Disable if assembler warns.
3807         * configure: Regenerate.
3808         Fixes PR driver/9362.
3809
3810 2003-06-20  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3811
3812         * config/alpha/alpha.c (alpha_file_start): Fix typo.
3813
3814 2003-06-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3815
3816         * config/mips/mips.h (PUT_SDB_FUNCTION_END): Pass 0 as third arg
3817         to ASM_OUTPUT_SOURCE_LINE.
3818
3819 2003-06-20  Daniel Egger  <degger@fhm.edu>
3820             Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3821
3822         * doc/install.texi (Building): Correct and improve statement
3823         about parallel builds.
3824
3825 2003-06-20  Andreas Jaeger  <aj@suse.de>
3826
3827         * c-common.c: Change _Bool to bool reverting part of the last
3828         patch.
3829
3830 2003-06-20  Nathan Sidwell  <nathan@codesourcery.com>
3831
3832         * tree.h (expand_function_end): Remove all parameters.
3833         * function.c (expand_function_end): Remove all parameters.
3834         Use input_location. Never expand_end_bindings.
3835         * c-decl.c (c_expand_body_1): Adjust expand_function_end call.
3836         * coverage.c (create_coverage): Likewise.
3837
3838 2003-06-20  Nick Clifton  <nickc@redhat.com>
3839
3840         * doc/extend.texi (ARM Built-in Functions): New node.  Document
3841         ARM builtin functions for iWMMXt support.
3842
3843 2003-06-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
3844
3845         * doc/install.texi (--with-gnu-as): Mention SPARC/Solaris and
3846         SPARC64/Solaris as platforms where --with-gnu-as makes a difference.
3847         (--with-as): Add @anchor.
3848         (--with-gnu-ld): Fix typo.
3849         (--with-ld): Add @uref to --with-as.
3850
3851 2003-06-19  Zack Weinberg  <zack@codesourcery.com>
3852
3853         * doc/tm.texi: Uniformly use @defmac for macros, rather than
3854         @table items.  Minor formatting and editorial corrections.
3855
3856 2003-06-20  Neil Booth  <neil@daikokuya.co.uk>
3857
3858         * line-map.c, line-map.h: Convert to ISO prototypes.
3859
3860 2003-06-20  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
3861
3862         * gcse.c (store_killed_in_insn): Fix.
3863
3864 2003-06-19  Zack Weinberg  <zack@codesourcery.com>
3865
3866         * target.h (asm_out.file_start, file_start_app_off,
3867         file_start_file_directive): New hooks.
3868         * target-def.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE,
3869         TARGET_ASM_FILE_START_APP_OFF, TARGET_ASM_FILE_START):
3870         New hook-definition macros.
3871         * doc/tm.texi: Document new hooks; remove docs of ASM_FILE_START.
3872         * varasm.c (default_file_start): New.
3873         * output.h: Prototype it.
3874         * toplev.c (init_asm_output): Use targetm.asm_out.file_start.
3875         * system.h: Poison ASM_FILE_START.
3876
3877         * config/alpha/alpha.c (alpha_write_verstamp): Delete.
3878         (alpha_file_start): New, define if !TARGET_ABI_UNICOSMK.
3879         (unicosmk_asm_file_start): Rename unicosmk_file_start,
3880         make static, take no arguments.
3881         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END,
3882         TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set as appropriate.
3883         * config/alpha/unicosmk.h: Don't define ASM_FILE_START nor
3884         TARGET_ASM_FILE_END.  Remove reference to ASM_FILE_START in
3885         comment.
3886         * config/arc/arc.c (arc_asm_file_start): Rename
3887         arc_file_start, take no arguments, make static.
3888         (TARGET_ASM_FILE_START): Set it.
3889         * config/arm/arm.c (aof_file_start): New static function.
3890         (TARGET_ASM_FILE_START): Set it, when appropriate.
3891         * config/arm/coff.h, config/arm/elf.h:
3892         Set TARGET_ASM_FILE_START_APP_OFF to true.
3893         * config/avr/avr.c (asm_file_start): Rename avr_file_start,
3894         take no arguments, make static.
3895         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
3896         Set them.
3897         * config/c4x/c4x.c (c4x_file_start): New static function.
3898         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
3899         Set them.
3900         * config/cris/cris.c (cris_file_start): New static function.
3901         (TARGET_ASM_FILE_START): Set it.
3902         * config/dsp16xx/dsp16xx.c (coff_dsp16xx_file_start): Rename
3903         dsp16xx_file_start, make static.
3904         (luxworks_dsp16xx_file_start): Delete.
3905         (TARGET_ASM_FILE_START): Set it.
3906         * config/h8300/h8300.c (asm_file_start): Rename
3907         h8300_file_start, make static, take no arguments.
3908         (TARGET_ASM_FILE_START): Set it.
3909         * config/i370/i370.c (i370_file_start): New static function.
3910         (TARGET_ASM_FILE_START): Set it.
3911         * config/i386/i386.c (x86_file_start): New static function.
3912         (TARGET_ASM_FILE_START): Set it.
3913         * config/i386/i386.h (X86_FILE_START_VERSION_DIRECTIVE,
3914         X86_FILE_START_FLTUSED): New macros, default to false.
3915         * config/i386/i386-interix.h: Override X86_FILE_START_FLTUSED to 1.
3916         * config/i386/sysv4.h, config/i386/sco5.h: Override
3917         X86_FILE_START_VERSION_DIRECTIVE to true.
3918         * config/ia64/ia64.c (ia64_file_start): New static function.
3919         (TARGET_ASM_FILE_START): Set it.
3920         (emit_safe_across_calls): Take no arguments.
3921         * config/ia64/ia64.md: Update to match.
3922         * config/m32r/m32r.c (m32r_asm_file_start): Rename
3923         m32r_file_start, make static, take no arguments.
3924         (TARGET_ASM_FILE_START): Set it.
3925         * config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Rename
3926         m68hc11_file_start, make static, take no arguments.
3927         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3928         (print_options): Delete.
3929         * config/m68k/m68k.c (m68k_hp320_file_start): New static function.
3930         (TARGET_ASM_FILE_START_APP_OFF): Set.
3931         * config/m68k/hp320.h: Set TARGET_ASM_FILE_START to
3932         m68k_hp320_file_start.
3933         * config/mips/mips.c (iris6_asm_file_start, mips_asm_file_start):
3934         Make static, take no arguments.
3935         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3936         * config/mmix/mmix.c (mmix_asm_file_start): Rename
3937         mmix_file_start, make static, take no arguments.
3938         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3939         * config/mn10300/mn10300.c (asm_file_start): Rename
3940         mn10300_file_start, make static, take no arguments.
3941         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3942         * config/ns32k/ns32k.c (TARGET_ASM_FILE_START_APP_OFF): Set.
3943         * config/pa/pa.c (pa_file_start_level, pa_file_start_space,
3944         pa_file_start_file, pa_file_start_mcount, pa_elf_file_start,
3945         pa_som_file_start, pa_linux_file_start, pa_hpux64_gas_file_start,
3946         pa_hpux64_hpas_file_start): New static functions.
3947         * config/pa/elf.h: Set TARGET_ASM_FILE_START to pa_elf_file_start.
3948         * config/pa/pa-linux.h: Set TARGET_ASM_FILE_START to
3949         pa_linux_file_start.
3950         * config/pa/pa64-hpux.h: Set TARGET_ASM_FILE_START to
3951         pa_hpux64_gas_file_start or pa_hpux64_hpas_file_start, as
3952         appropriate.
3953         * config/pa/som.h: Set TARGET_ASM_FILE_START to pa_som_file_start.
3954         * config/rs6000/rs6000.c: Include xcoffout.h when TARGET_XCOFF.
3955         (rs6000_file_start): Make static, take no arguments.  Reset
3956         default_cpu under certain conditions.
3957         (rs6000_xcoff_file_start): New function.
3958         * config/rs6000/rs6000.h (TARGET_ASM_FILE_START): Set.
3959         * config/rs6000/xcoff.h (TARGET_ASM_FILE_START,
3960         TARGET_ASM_FILE_START_FILE_DIRECTIVE): Override.
3961         * config/sh/sh.c (output_file_start): Rename
3962         sh_file_start, make static, take no arguments.  Merge in old
3963         code from sh/elf.h's ASM_FILE_START, conditioned on TARGET_ELF.
3964         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3965         * config/sh/sh.c (TARGET_ELF): Define to 0.
3966         * config/sh/elf.h (TARGET_ELF): Redefine to 1.
3967         * config/v850/v850.c (asm_file_start): Delete.
3968         (TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3969         * config/vax/vax.c (vax_file_start): New static function.
3970         (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_APP_OFF): Set.
3971
3972         * config/darwin.h: Override ASM_FILE_START_FILE_DIRECTIVE to false.
3973         * config/elfos.h, config/svr3.h, config/arm/elf.h, config/arm/pe.h
3974         * config/i386/att.h, config/i386/gas.h, config/i386/linux.h
3975         * config/i386/sysv4.h, config/i386/sco5.h, config/i960/i960-coff.h
3976         * config/m68k/coff.h, config/m68k/hp320.h, config/mcore/mcore-pe.h
3977         * config/vax/vaxv.h: Set ASM_FILE_START_FILE_DIRECTIVE to true.
3978
3979         * config/darwin.h, config/elfos.h, config/alpha/elf.h
3980         * config/alpha/openbsd.h, config/alpha/osf.h, config/alpha/vms.h
3981         * config/arc/arc.h, config/arm/aof.h, config/arm/aout.h
3982         * config/arm/coff.h, config/arm/elf.h, config/arm/pe.h
3983         * config/avr/avr.h, config/c4x/c4x.h, config/cris/cris.h
3984         * config/dsp16xx/dsp16xx.h, config/h8300/elf.h, config/h8300/h8300.h
3985         * config/i370/i370.h, config/i386/att.h, config/i386/gas.h
3986         * config/i386/i386-interix.h, config/i386/linux.h, config/i386/sysv4.h
3987         * config/i386/sco5.h, config/i960/i960-coff.h, config/i960/i960.h
3988         * config/ia64/ia64.h, config/ia64/sysv4.h, config/m32r/m32r.h
3989         * config/m68hc11/m68hc11.h, config/m68k/coff.h, config/m68k/m68k.h
3990         * config/mcore/mcore-pe.h, config/mips/iris6.h, config/mips/mips.h
3991         * config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h
3992         * config/pa/elf.h, config/pa/pa-linux.h, config/pa/pa64-hpux.h
3993         * config/pa/som.h, config/pdp11/pdp11.h, config/rs6000/linux64.h
3994         * config/rs6000/lynx.h, config/rs6000/xcoff.h, config/sh/elf.h
3995         * config/sh/sh.h, config/sparc/sparc.h, config/v850/v850.h
3996         * config/vax/vax.h, config/vax/vaxv.h: Don't (re)define ASM_FILE_START.
3997
3998         * config/alpha/alpha-protos.h, config/arc/arc-protos.h
3999         * config/avr/avr-protos.h, config/dsp16xx/dsp16xx-protos.h
4000         * config/h8300/h8300-protos.h, config/ia64/ia64-protos.h
4001         * config/m32r/m32r-protos.h, config/m68hc11/m68hc11-protos.h
4002         * config/mips/mips-protos.h, config/mmix/mmix-protos.h
4003         * config/mn10300/mn10300-protos.h, config/rs6000/rs6000-protos.h
4004         * config/sh/sh-protos.h, config/v850/v850-protos.h: Update.
4005
4006         * xcoffout.h, config/rs6000/aix.h, config/rs6000/xcoff.h:
4007         Remove reference to ASM_FILE_START in comment.
4008         * config/arm/aof.h, config/arm/aout.h, config/arm/freebsd.h
4009         * config/arm/linux-gas.h, config/arm/netbsd-elf.h
4010         * config/arm/netbsd.h: Delete definition of ARM_OS_NAME.
4011
4012 2003-06-19  Graeme Peterson <gp@qnx.com>
4013
4014         * gcc.c (target_sysroot_suffix, target_sysroot_hdrs_suffix,
4015         SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC, sysroot_suffix_spec,
4016         sysroot_hdrs_suffix_spec): New.
4017         (static_specs): Initialize new variables.
4018         (add_sysroot_suffix_prefix, do_spec_1, main): Use new variables.
4019         * doc/tm.texi (SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC):
4020         New macros.
4021
4022 2003-06-19  Andreas Jaeger  <aj@suse.de>
4023
4024         * c-aux-info.c: Convert to ISO C90.
4025         * c-pragma.c: Likewise.
4026         * c-common.c: Likewise.
4027         * c-common.h: Likewise.
4028         * c-convert.c: Likewise.
4029         * c-cppbuiltin.c: Likewise.
4030