OSDN Git Service

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