OSDN Git Service

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