OSDN Git Service

* config/xtensa/crti.asm (_init, _fini): Add alternate code for new
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2003-08-18  Bob Wilson  <bob.wilson@acm.org>
2
3         * config/xtensa/crti.asm (_init, _fini): Add alternate code for new
4         call0 ABI.
5         * config/xtensa/crtn.asm (_init, _fini): Likewise.
6         * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
7         __umodsi3, __modsi3): Likewise.
8         * config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
9         $(INCLUDES).
10
11 2003-08-18  Aldy Hernandez  <aldyh@redhat.com>
12
13         * config/rs6000/spe.md ("*nabssf2_gpr"): New.
14
15 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
16
17         * config/mips/mips.md: Quote C code in braces.  Remove use of
18         fake const0_rtx operands.  Remove double backslashes.  Use \;.
19         Remove workarounds for bogus warnings.
20
21 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
22
23         * config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
24         (muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
25         rather than TARGET_MIPS4300.
26         (mulsf3_internal, mulsf3_r4300): Likewise.
27
28 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
29
30         * config/mips/mips.md: Renumber unspecs.  Clean up comments.
31
32 2003-08-17  Roger Sayle  <roger@eyesopen.com>
33
34         * simplify-rtx.c (associative_constant_p): New function to test
35         whether an RTX expression is an immediate constant.
36         (simplify_associative_operation): New function to perform some
37         reassociation optimizations of associative binary expressions.
38         (simplify_binary_operation): Use simplify_associative_operation
39         to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
40         Floating point expressions are only reassociated when unsafe
41         math optimizations are permitted.
42
43 2003-08-17  Andreas Jaeger  <aj@suse.de>
44
45         * config/alpha/alpha.md: Remove usage of PARAMS.
46
47         * config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
48         * config/i386/i386-interix.h: Likewise.
49         * config/i386/winnt.c: Likewise.
50         * config/i386/cygming.h: Likewise.
51         * config/i386/cygwin2.c: Likewise.
52         * config/darwin.c: Likewise.
53         * config/darwin-c.c: Likewise.
54         * config/darwin-protos.h: Likewise.
55         * config/darwin.h: Likewise.
56         * config/s390/s390-protos.h: Likewise.
57         * config/s390/s390.c: Likewise.
58         * config/ia64/ia64.c: Likewse
59         * config/ia64/ia64-protos.h: Likewise.
60         * config/ia64/ia64-c.c: Likewise.
61
62 2003-08-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
63
64         * config/sparc/sparc.c: Convert to ISO C.
65
66         * config/sparc/sparc-protos.h: Don't use the PARAMS macro.
67         * config/sparc/sparc.c: Likewise.
68
69 2003-08-16  Nathan Sidwell  <nathan@codesourcery.com>
70
71         PR c++/11512
72         * stmt.c (expand_expr_stmt_value): Don't warn about any void
73         typed expression.
74
75 2003-08-16  Jan Hubicka  <jh@suse.cz>
76
77         * i386.c (ix86_fntype_regparm): Rename from ...
78         (ix86_function_regparm): ... this one; add fastcall and local
79         functions.
80         (ix86_function_ok_for_sibcall): Update.
81         (ix86_return_pops_args): Likewise.
82         (init_cumulative_args): Likewise.
83         (x86_can_output_mi_thunk): Likewise.
84         (function_arg): Fix formating.
85         (x86_this_parameter): Fix fastcall.
86         (x86_output_mi_thunk): Likewise.
87
88         * cgraph.c (cgraph_mark_needed_node): Do not mark functions without
89         body as reachable; mark nested functions as needed too.
90         (dump_cgraph): Do not output global.calls.
91         * cgraph.h (cgraph_global_info): Kill.
92         * cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
93         (record_call_1): Speedup.
94         (cgraph_analyze_function): Break out from ...; compute inlining
95         parameters.
96         (cgraph_finalize_compilation_unit): ... here.
97         (cgraph_mark_inline): Kill computation of calls.
98         (cgraph_decide_inlining): Do not compute most of initial values.
99
100 2003-08-14  Roger Sayle  <roger@eyesopen.com>
101
102         * fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
103         to negate if either operand is easy to negate, if we don't care
104         about sign-dependent rounding.
105         (negate_expr): Make the logic to negate a REAL_CST explicit.
106         Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
107         that's easy to negate, if we don't honor sign-dependent rounding.
108         (fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
109         negate, and the symmetric A * -B as -A * B if A is easy to negate.
110         (fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
111         -C/D if B and C are cheap to negate.  Add an explicit rule to
112         optimize X/-1.0 as -X when we don't care about signaling NaNs.
113
114 2003-08-14  Zack Weinberg  <zack@codesourcery.com>
115
116         * Makefile.in (tm_file): Rename tm_include_list.
117         (tm_p_file): Rename tm_p_include_list.
118         (build_xm_file): Rename build_xm_include_list.
119         (host_xm_file): Rename host_xm_include_list.
120         (xm_file): Rename xm_include_list.
121         (xm_file_list): Add to be substituted.
122         (cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
123         Update to match.
124         (bt-load.o): Add missing dependency on $(TM_H).
125         * configure.in: Prefix value of EXTRA_MODES_FILE with config/.
126         For each of tm_file, tm_p_file, xm_file, host_xm_file, and
127         build_xm_file, generate both *_file_list and *_include_list
128         values from it.  (xm_file_list was formerly not being generated.)
129         In *_include_list, prefix the names of all headers found in
130         $(srcdir)/config with config/.  In each loop, consider only
131         the special case files that can actually appear in that list.
132         AC_SUBST all *_file_list and all *_include_list variables; do
133         not AC_SUBST the plain *_file variables.
134         * configure: Regenerate.
135
136 2003-08-14  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
137
138         * cfg.c (dump_edge_info): Add name of loop_exit edge flag.
139
140 2003-08-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
141
142         * pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
143         direct calls.
144         (attr_length_call): Include it here.  Improve length estimate for
145         local calls.
146         (output_call): Use targetm.binds_local_p.
147
148 2003-08-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
149
150         * builtins.c (CASE_MATHFN): New helper macro.
151         (mathfn_built_in): Simplify and sort.
152
153         * protoize.c (substr): Delete, callers changed to `strstr'.
154
155 2003-08-13  Zack Weinberg  <zack@codesourcery.com>
156
157         * config.gcc (iq2000*-*-elf*): Don't set xm_file.
158         * config/iq2000/xm-iq2000.h: Delete file.
159
160 2003-08-13  Geoffrey Keating  <geoffk@apple.com>
161
162         * gengtype.c (walk_type): Process a subobject before processing
163         the pointer that points to the subobject.
164
165 2003-08-13  Per Bothner  <pbothner@apple.com>
166
167         * regclass.c (init_reg_modes):  Make non-static.
168         Rename to init_reg_modes_once per new naming convention.
169         (init_regs):  Don't call init_reg_modes here.
170         * emit-rtl.c (init_emit_once):  Call init_reg_modes_once here instead.
171         * rtl.h (init_reg_modes_once):  New declaration.
172         * toplev.c (backend_init):  Call init_regs after init_emit_once.
173
174 2003-08-13  Kaz Kojima  <kkojima@gcc.gnu.org>
175
176         * config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
177         special index for MD_FALLBACK_FRAME_STATE_FOR to itself.
178
179 2003-08-13  J"orn Rennecke <joern.rennecke@superh.com>
180
181         * sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
182         * sh.md (load_ra): Change insn predicate to TARGET_SH1.
183
184 2003-08-13  Dale Johannesen  <dalej@apple.com>
185
186         * config/rs6000/rs6000.md (ctrsi, ctrdi):  Reenable
187         handling of decrement-and-branch farther than 32 bits.
188
189 2003-08-12  Kelley Cook  <kelleycook@wideopenwest.com>
190
191         * configure.in (make_compare_target): Move test to ...
192         * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
193         * configure: Regenerate.
194
195 2003-08-12  Richard Sandiford  <rsandifo@redhat.com>
196
197         * config/mips/iris6.h: Convert to C90 prototypes.
198         * config/mips/irix6-libc-compat.c: Likewise.
199         * config/mips/mips-protos.h: Likewise.
200         * config/mips/mips.c: Likewise.
201
202 2003-08-12  Nathanael Nerode  <neroden@gcc.gnu.org>
203
204         fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel.  Enable
205         for selected machines.  Comment heavily.
206         fixinc/fixincl.x: Rebuild.
207         fixinc/tests/base/fs/rfs/rf_cache.h: New file.
208
209 2003-08-12  Richard Sandiford  <rsandifo@redhat.com>
210
211         * config/mips/mips.h: Tweak various comments.
212         * config/mips/mips.c: Likewise.
213
214 2003-08-11  James E Wilson  <wilson@tuliptree.org>
215
216         PR optimization/11319
217         PR target/10021
218         * alias.c (find_base_value, case REG): Return 0 not src if no base
219         found.
220
221 2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
222
223         * gcse.c (gmalloc): Fix last change.
224
225 2003-08-11  Roger Sayle  <roger@eyesopen.com>
226
227         * simplify-rtx.c (simplify_binary_operation): Replace calls to
228         gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
229         and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
230         gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.
231
232 2003-08-11  Roger Sayle  <roger@eyesopen.com>
233
234         * expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
235         * c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
236         typecode for an ABS_EXPR.
237
238         * doc/c-tree.texi: Document ABS_EXPR.
239
240 2003-08-11  Roger Sayle  <roger@eyesopen.com>
241
242         * fold-const.c (fold): Optimize any associative floating point
243         operator with -funsafe-math-optimizations, not just MULT_EXPR.
244
245 2003-08-11  Kaz Kojima  <kkojima@gcc.gnu.org>
246
247         * config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
248         information in SHmedia case too.
249         (__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
250         Likewise.
251         (__set_fpscr): Use an access via GOT for PIC case.
252
253 2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>
254
255         * configure.in (intermodule): Make switch test more portable.
256         * configure: Regenerate.
257
258 2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>
259
260         * Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
261         (restrap): Likewise.
262
263 2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
264
265         * gcse.c (gmalloc): Argument is a size_t.  Add ATTRIBUTE_MALLOC.
266         (grealloc): Size argument is a size_t.
267         (gcalloc): New function.  Use throughout in lieu of
268         gmalloc/memset.
269
270         * config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
271         xmalloc/memset.
272         * config/ia64/ia64.c (ia64_reorg): Likewise.
273         * conflict.c (conflict_graph_new): Likewise.
274         * fixinc/fixincl.c (run_compiles): Likewise.
275         * genattrtab.c (optimize_attrs): Likewise.
276         * genrecog.c (new_decision): Likewise.
277         * haifa-sched.c (schedule_block): Likewise.
278         * hashtable.c (ht_create): Likewise.
279
280 2003-08-11  Bob Wilson  <bob.wilson@acm.org>
281
282         * config/xtensa/lib2funcs.S: Fix whitespace.
283         * config/xtensa/xtensa.md (all insns and expanders): Use brace block
284         syntax where appropriate.  Remove unnecessary backslash escapes.
285         Reformat comments and fix some code formatting.
286         (extendqisi2): Rearrange conditional.
287         (*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
288         *maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
289         of fatal_insn.
290
291 2003-08-11  Richard Sandiford  <rsandifo@redhat.com>
292
293         * config/mips/mips.c: Various formatting fixes.
294         (override_options): Resync -mtune handling with gas.
295         (mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
296         * config/mips/mips.h: More formatting fixes.
297         (mips_abi): Move declaration.
298         * config/mips/mips.md (exception_receiver): Add mode to
299         unspec_volatile.
300
301 2003-08-11  Aldy Hernandez  <aldyh@redhat.com>
302
303         * config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
304         evsplatfi here.
305         (bdesc_1arg): Remove evsplati and evsplatfi.
306
307 2003-08-11  J"orn Rennecke <joern.rennecke@superh.com>
308
309         * dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
310         into account.
311
312 2003-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
313
314         * builtins.c (expand_builtin_strcat): Optimize constant strings.
315
316 2003-08-10  Gabriel Dos Reis  <gdr@integrable-solutions.net>
317
318         * pretty-print.c (pp_base_indent): Rename from pp_indent.
319         * c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
320         (struct c_pretty_print_info): Add more fields.
321         (pp_c_left_paren): Move to c-pretty-print.c.
322         (pp_c_right_paren): Likewise.
323         (pp_c_left_brace): Likewise.
324         (pp_c_right_brace): Likewise.
325         (pp_c_left_bracket): Likewise.
326         (pp_c_right_bracket): Likewise.
327         (pp_c_declarator): Declare.
328         (pp_c_direct_declarator): Likewise.
329         (pp_c_specifier_qualifier_list): Likewise.
330         (pp_c_type_id): Likewise.
331         * c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
332         (pp_c_type_qualifier_list): New.
333         (pp_c_pointer): Likewise.
334         (pp_c_parameter_type_list): Likewise.
335         (pp_c_function_definition): Likewise.
336         (pp_c_id_expression): Likewise.
337         (pp_c_simple_type_specifier): Tidy.
338         (pp_c_unary_expression): Likewise.
339         (pp_c_expression): Likewise.
340         (pp_c_pretty_printer_init): Likewise.
341         (pp_c_specifier_qualifier_list): Rework..
342         (pp_c_abstract_declarator): Likewise.
343         (pp_c_postfix_expression): Likewise.
344         (pp_c_primary_expression): Likewise.
345         (pp_c_cast_expression): Likewise.
346         (pp_c_direct_abstract_declarator): Likewise.
347         (pp_c_storage_class_specifier): Likewise.
348         (pp_c_function_specifier): Likewise.
349         (pp_c_declaration_specifiers): Likewise.
350         (pp_c_direct_declarator): Likewise.
351         (pp_c_declarator): Likewise.
352         (pp_c_declaration): Likewise.
353         (pp_c_statement): Likewise.
354         (pp_c_integer_constant): Rename from pp_c_integer_literal.
355         (pp_c_character_constant): Rename from pp_c_character_literal.
356         (pp_c_bool_constant): Rename from pp_c_bool_literal.
357         (pp_c_enumeration_constant): Rename from pp_c_enumerator.
358         (pp_c_floating_constant): Rename from pp_c_real_literal.
359         (pp_c_constant): Rename from pp_c_literal.
360         * c-lang.c: Include diagnostic.h and c-pretty-print.h
361         (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
362         (c_initialize_diagnostics): New.
363         * Makefile.in (c-lang.o): Update dependency.
364
365 2003-08-10  Nathan Sidwell  <nathan@codesourcery.com>
366
367         * c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.
368
369 2003-08-10  Richard Sandiford  <rsandifo@redhat.com>
370
371         * config/mips/mips.c (mips_no_mips16_string): Remove.
372         (override_options): Don't handle -mips16 as part of -mipsN.
373         * config/mips/mips.h (mips_no_mips16_string): Remove declaration.
374         (TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
375         (TARGET_OPTIONS): Remove -mno-mips16.
376
377 2003-08-10  Richard Sandiford  <rsandifo@redhat.com>
378
379         * config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
380         (coprocessor2_operand): Likewise.
381         * config/mips/mips.c (STAB_CODE_TYPE): Remove.
382         (lookup_name): Remove declaration.
383         (abort_with_insn): Remove.  Replace all uses with fatal_insn.
384         (mips16, mips_abicalls): Remove.
385         (mips_char_to_class): Remove initialiser: all entries are NO_REGS.
386         (arith32_operand, large_int, true_reg_or_0_operand): Remove.
387         (coprocessor_operand, coprocessor2_operand): Remove.
388         (override_options): Don't set mips16 or mips_abicalls.
389         (print_operand): Don't expect SIGN_EXTEND operands.
390         (mips_secondary_reload_class): Likewise.
391         (mips_output_conditional_branch): Remove disabled long-branch code.
392         * config/mips/mips.h (call_used_regs): Remove declaration.
393         (may_call_alloca): Likewise.
394         (mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
395         (mips_abicalls, mips16): Remove declarations.
396         (ASM_FINAL_SPEC, LIB_SPEC): Remove.
397         (CC1_SPEC): Remove outdated comment.
398         (MIPS_VERSION, MACHINE_TYPE): Remove.
399         (TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
400         (PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
401         (STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
402         (PUSH_ROUNDING): Likewise.
403         (ASSEMBLER_SCRATCH_REGNUM): Remove.
404         * config/mips/mips.md: Replace mips_cpu_attr with mips_tune
405         and mips16 with TARGET_MIPS16.
406
407 2003-08-09  Per Bothner  <pbothner@apple.com>
408
409         * cppinit.c (cpp_read_main_file):  Split out source-independent
410         initialization to separate function ...
411         (cpp_post_options):  New function.
412         * cppfiles.c (cpp_stack_file):  Rename public name to ...
413         (_cpp_stack_file):  New internal function name.
414         * cpplib.h:  Update accordingly.
415         * cppinit.c:  (cpp_create_reader):  Initialize cpp_readers line here.
416         (cpp_read_main_file):  Don't initialize line here.
417         * c-opts.c (c_common_post_options):  Call cpp_post_options.
418         (c_common_parse_file):  Call cpp_read_main_file, not cpp_stack_file.
419         * fix-header.c (read_scan_file):  Call cpp_post_options.
420
421 2003-08-09  Per Bothner  <per@bothner.com>
422
423         * c-decl.c (SCOPE_LIST_APPEND):  Remove bogus line continuation.
424
425 2003-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
426
427         * pa.c (pa_asm_output_mi_thunk): Fix typo.
428
429 2003-08-09  Neil Booth  <neil@daikokuya.co.uk>
430
431         PR preprocessor/11839
432         * cppfiles.c (open_file): Handle ENOTDIR.
433
434 2003-08-09  Richard Sandiford  <rsandifo@redhat.com>
435
436         PR target/11699
437         * config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.
438
439 2003-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
440
441         * pa.md (extzv, extv, insv): Fix operand limit checks.  Fail if
442         source/destination is not a register operand.
443
444 2003-08-08  Richard Henderson  <rth@redhat.com>
445
446         PR target/11535
447         * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
448         RETURN_ADDRESS_POINTER_REGNUM.
449         (ia64_expand_prologue): Don't frob it.
450         (ia64_output_function_epilogue): Likewise.
451         (ia64_return_addr_rtx): New.
452         (ia64_split_return_addr_rtx): New.
453         * config/ia64/ia64-protos.h: Update.
454         * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
455         (RETURN_ADDRESS_POINTER_REGNUM): Remove.
456         (GENERAL_REGNO_P): Don't check it.
457         (AR_*_REGNUM): Renumber.
458         (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
459         (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
460         (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
461         (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
462         (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
463         * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
464         (movdi_ret_addr): New.
465
466 2003-08-08  Geoffrey Keating  <geoffk@apple.com>
467
468         * config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.
469
470 2003-08-08  Roger Sayle  <roger@eyesopen.com>
471
472         * tree.h (get_identifier) Define a macro form of get_identifier
473         that calls get_identifier_with_length when the string is constant.
474         (get_identifier_with_length): Change type of second argument to
475         size_t in prototype.
476         * stringpool.c (get_identifier): Undefine the macro before giving
477         the function definition.
478         (get_identifier_with_length): Change  type of second argument to
479         size_t in function definition.
480         * hashtable.c (calc_hash): Change type of second argument to size_t.
481         (ht_lookup): Change type of third argument to size_t.  Reorganize
482         to speed-up the cases where the hash table slot is empty, or the
483         first probe matches (i.e. there isn't a collision).
484         * hashtable.h (ht_lookup): Adjust function prototype.
485
486 2003-08-08  Bernardo Innocenti  <bernie@develer.com>
487
488         PR target/9697
489         PR target/11777
490         * longlong.h (count_leading_zeros): Exclude on __mcpu32__.
491
492 2003-08-08  Neil Booth  <neil@daikokuya.co.uk>
493
494         * common.opt: Add debug switches.
495         * flags.h (use_gnu_debug_info_extensions): Boolify.
496         * opts.c (write_symbols, debug_info_level,
497         use_gnu_debug_info_extensions): Move from toplev.c.
498         (set_debug_level): New.
499         (common_handle_options): Handle debug switches.
500         (print_help): Display target options directly.
501         * toplev.c (debug_hooks): Don't initialize.
502         (write_symbols, debug_info_level,
503         use_gnu_debug_info_extensions): Move to opts.c.
504         (debug_args, display_help, decode_g_option): Remove.
505         (process_options): Set no debug if level zero here,
506         and no-debug-hooks.  Error here if impossible debug format selected.
507         * toplev.h (display_help, decode_g_option): Remove.
508
509 2003-08-08  Richard Sandiford  <rsandifo@redhat.com>
510
511         * tree.c (get_file_function_name_long): Fix size of alloca() area.
512
513 2003-08-08  Kelley Cook  <kelleycook@wideopenwest.com>
514
515         * configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
516         and gcc_cv_prog_cmp_skip.
517         * configure: Regenerate.
518
519 2003-08-08  Stan Cox  <scox@redhat.com>
520
521         * config/iq2000: New port.
522         * config.gcc (iq2000-*-elf): Added.
523         * doc/install.texi (Specific):  Add iq2000 description.
524
525 2003-08-08  Andreas Schwab  <schwab@suse.de>
526
527         * configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
528         and insert missing empty argument.
529         * configure: Regenerate.
530
531 2003-08-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
532
533         * pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
534         (attr_length_millicode_call): Likewise.
535         (attr_length_call): Likewise.  Revise some maximum insn lengths.
536         (attr_length_indirect_call): Likewise.
537         (output_call): Fix thinko that added extra nop.
538         * pa.h (IN_NAMED_SECTION_P): Define.
539
540         PR c++/11712
541         * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
542         __STDC_EXT__ when using C++ dialect.
543
544 2003-08-07  J"orn Rennecke <joern.rennecke@superh.com>
545
546         * sh.c (calc_live_regs): If the return address pointer is live,
547         force pr live.
548         (sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
549         for saves / restores.
550         (sh_expand_epilogue): If sh_media_register_for_return returns a
551         register number, flag the instructions that restores PR_MEDIA_REG
552         as possibly dead.
553         Remove dead update of offset.
554         (sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
555         we can use the result of get_hard_reg_initial_val.
556         * sh.md (UNSPEC_RA): New constant.
557         (movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
558         (load_ra).  Handle UNSPEC_RA.
559         (sibcall_media): Use PR_MEDIA_REG.
560
561         * sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
562         * sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
563         needs saving on SHmedia.
564
565 2003-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
566
567         * config/s390/s390.md: Replace all occurrences of \\t with \t.
568
569 2003-08-07  Richard Sandiford  <rsandifo@redhat.com>
570
571         * local-alloc.c (combine_regs): Fix comment typo.
572
573 2003-08-06  Zack Weinberg  <zack@codesourcery.com>
574
575         * c-decl.c (builtin_decls): Replace with first_builtin_decl
576         and last_builtin_decl.
577         (c_init_decl_processing): Initialize both.
578         (c_reset_state): Iterate from first_builtin_decl to
579         last_builtin_decl inclusive to reintroduce builtins.
580
581 2003-08-06  David Mosberger  <davidm@hpl.hp.com>
582
583         * doc/extend.texi (Function Attributes): Document the IA-64 version
584         of the "model" attribute.
585
586         * config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
587         (SYMBOL_REF_SMALL_ADDR_P): Ditto.
588         (PREDICATE_CODES): Mention "small_addr_symbolic_operand".
589
590         * config/ia64/ia64.c (ia64_handle_model_attribute): New function.
591         (ia64_encode_section_info): Likewise.
592         (ia64_attribute_table): Add "model" attribute.
593         (TARGET_ENCODE_SECTION_INFO): Define.
594         (small_addr_symbolic_operand): New function.
595         (got_symbolic_operand): Return 0 for a symbolref to an object
596         in the small address area.
597         (enum ia64_addr_area): New type.
598         (small_ident1): New variable.
599         (small_ident2): Likewise.
600         (init_idents): New function.
601         (ia64_get_addr_area): Likewise.
602         (ia64_encode_addr_area): Likewise.
603         (ia64_encode_section_info): Likewise.
604         (ia64_expand_load_address): For symbolic references to objects in
605         the small-address-area, load the address via gen_rtx_SET() (which,
606         eventually, will expand into "addl").
607
608 2003-08-06  Per Bothner  <pbothner@apple.com>
609
610         * line-map.h (fileline):  New typedef.
611         (struct line_map, linemap_add, linemap_lookup):  Use it.
612         * input.h (struct location_s):  Comment notes that long-term we want
613         to replace it by fileline.
614
615 2003-08-06  J"orn Rennecke <joern.rennecke@superh.com>
616
617         Fix SHcompact exception handling:
618         * sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
619         by the prologue, return a MEM with return_address_pointer_rtx
620         as address.
621         * sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
622         (RETURN_ADDR_OFFSET): Don't define.
623         (SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
624         registers that are visible in compact mode.  Show that SHmedia
625         registers still exist in compact mode, even if there are not
626         readily accessible.
627         (ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
628         if GLOBAL.  Use DW_EH_PE_textrel (nominally) for CODE,
629         and DW_EH_PE_pcrel for pic data.
630         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
631         set SYMBOL_FLAG_FUNCTION in symbol, and actually use
632         DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
633         (ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
634         * sh.md (movsi_media-1): New splitter.
635
636 2003-08-06  Graeme Peterson <gp@qnx.com>
637
638         * config/i386/nto.h: New.
639         * config/i386/t-nto: New.
640         * config.gcc (i[34567]86-*-nto-qnx*): New.
641
642 2003-08-06  Phil Edwards  <pme@gcc.gnu.org>
643
644         * doc/install.texi (*-*-solaris2*):  Refine configure instructions.
645
646 2003-08-06  Alan Modra  <amodra@bigpond.net.au>
647
648         * calls.c (load_register_parameters): Arrange for call_fusage to
649         report the whole register as used when shifting to the msb.
650
651 2003-08-05  Roger Sayle  <roger@eyesopen.com>
652
653         * builtins.c (expand_builtin): When not optimizing, call the library
654         function for all builtins that have library functions (except alloca).
655
656 2003-08-05  Alexandre Oliva  <aoliva@redhat.com>
657
658         * c.opt: Introduce -fworking-directory.
659         * doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
660         * c-common.h (flag_working_directory): Declare.
661         * c-common.c (flag_working_directory): Define.
662         * c-opts.c (c_common_handle_options): Set it.
663         (sanitize_cpp_opts): Set...
664         * cpplib.h (struct cpp_options): ... working_directory option.
665         (struct cpp_callbacks): Add dir_change.
666         * cppinit.c (read_original_filename): Call...
667         (read_original_directory): New.  Look for # 1 "directory//"
668         and process it.
669         (cpp_read_main_file): Call dir_change callback if working_directory
670         option is set.
671         * gcc.c (cpp_unique_options): Pass -g*.
672         * c-lex.c (cb_dir_change): New.
673         (init_c_lex): Set dir_change callback.
674         * toplev.c (src_pwd): New static variable.
675         (set_src_pwd, get_src_pwd): New functions.
676         * toplev.h (get_src_pwd, set_src_pwd): Declare.
677         * dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
678         * dwarf2out.c (gen_compile_unit_die): Likewise.
679         * dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.
680
681 2003-08-05  Gabriel Dos Reis  <gdr@integrable-solutions.net>
682
683         * pretty-print.h (pp_set_line_maximum_length): Make macro.
684         (pp_set_prefix): Likewise.
685         (pp_destroy_prefix): Likewise.
686         (pp_remaining_character_count_for_line): Likewise.
687         (pp_clear_output_area): Likewise.
688         (pp_formatted_text): Likewise.
689         (pp_last_position_in_text): Likewise.
690         (pp_emit_prefix): Likewise.
691         (pp_append_text): Likewise.
692         (pp_flush): Likewise.
693         (pp_format_text): Likewise.
694         (pp_format_verbatim): Likewise.
695         (pp_tree_identifier): Tidy.
696         * pretty-print.c (pp_base_format_text): Rename from pp_format_text.
697         (pp_base_format_verbatim): Rename from pp_format_verbatim.
698         (pp_base_flush): Rename from pp_flush.
699         (pp_base_set_line_maximum_length): Rename from
700         pp_set_line_maximum_length.
701         (pp_base_clear_output_area): Rename from pp_clear_output_area.
702         (pp_base_set_prefix): Rename from pp_set_prefix.
703         (pp_base_destroy_prefix): Rename from pp_destroy_prefix.
704         (pp_base_emit_prefix): Rename from pp_emit_prefix.
705         (pp_base_append_text): Rename from pp_append_text.
706         (pp_base_formatted_text): Rename from pp_formatted_text.
707         (pp_base_last_position_in_text): Rename from pp_last_position_in_text.
708         (pp_base_remaining_character_count_for_line): Rename from
709         pp_remaining_character_count_for_line.
710         * diagnostic.h (diagnostic_format_decoder): Tidy.
711         (diagnostic_flush_buffer): Likewise.
712         * c-pretty-print.h: (pp_c_string_literal): Declare.
713         (pp_c_real_literal): Likewise.
714         (pp_c_integer_literal): Likewise.
715         * c-pretty-print.c (pp_c_char): Use pp_string in lieu of
716         pp_identifier.
717         (pp_c_character_literal): Tidy.
718         (pp_c_string_literal): Make public.
719         (pp_c_bool_literal): Likewise.
720         (pp_c_integer_literal): Likewise.
721         (pp_c_real_literal): Likewise.
722
723         * Makefile.in (C_PRETTY_PRINT_H): New variable.
724         (c-pretty-print.o): Update dependence.
725
726 2003-08-05  Chris Demetriou  <cgd@broadcom.com>
727
728         * config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
729         ".set nomacro" state.
730         (fix_truncsfsi2_macro): Likewise.
731
732 2003-08-05  Steven Bosscher  <steven@gcc.gnu.org>
733
734         * tree.h (DID_INLINE_FUNC): Remove macro.
735         (DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
736         add tree check for FUNCTION_DECL.
737         (DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
738         (struct tree_decl): Rename inlined_function_flag to
739         declared_inline_flag.
740         * c-common.h (c_lang_decl): Remove.
741         (DECL_ESTIMATED_INSNS): Remove.
742         * c-tree.h (struct lang_decl): Don't include c_lang_decl.
743         (DECL_DECLARED_INLINE_P): Remove.
744         * c-decl.c (grokdeclarator): Update comment.  With -finline-functions,
745         do not reset DECL_DECLARED_INLINE_P.  Don't use DID_INLINE_FUNC.
746         (finish_function): Make uninlinable a bool.  Fixup call to
747         tree_inlinable_function_p() and fix some code style issues.
748         * cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
749         * cgraph.c (dump_cgraph): Likewise.
750         * cgraphunit.c (cgraph_decide_inlining): Likewise
751         (cgraph_finalize_compilation_unit): Likewise.
752         Also update call to tree_inlinable_function_p().
753         (cgraph_default_inline_p): Don't use DID_INLINE_FUNC.  Instead
754         look at DECL_DECLARED_INLINE and reverse logic.
755         * print-tree.c (print_node): Likewise.
756         * toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
757         * tree-inline.h (tree_inlinable_function_p): Make a bool.  Update
758         prototype.
759         * tree-inline.c (inlinable_function_p): Split up in this function to
760         check for basic inlining inhibiting conditions, and new
761         limits_allow_inlining() function.  Warn if inlining is impossible
762         because the inline candidate calls alloca or uses sjlj exceptions.
763         (limits_allow_inlining): this new function to check if the inlining
764         limits are satisfied.  Throttle from currfn_max_inline_insns, not from
765         MAX_INLINE_INSNS_SINGLE.  The latter only makes sense if
766         MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
767         Update prototypes.
768         (tree_inlinable_function_p): Make a bool.  Update call to
769         inlinable_function_p
770         (expand_call_inline): Use limits_allow_inlining() when not in
771         unit-at-a-time mode to decide on inlining.  Don't use DID_INLINE_FUNC,
772         instead see if the function was declared `inline'.
773
774 2003-08-05  Josef Zlomek  <zlomekj@suse.cz>
775
776         * gcse.c (try_replace_reg): Fix updating of note.
777
778 2003-08-04  Roger Sayle  <roger@eyesopen.com>
779
780         PR middle-end/11771
781         * fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
782         logic in negate_expr, i.e. we don't invert (A-B) for floating
783         point types unless flag_unsafe_math_optimizations.
784
785 2003-08-04  Roger Sayle  <roger@eyesopen.com>
786
787         * fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
788         Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
789         for floating point expressions with -ffast-math.
790         (fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
791         * expmed.c (expand_mult): Wrap long line.  Expand x*2.0 as x+x.
792
793 2003-08-04  Roger Sayle  <roger@eyesopen.com>
794
795         * c-common.c (flag_noniso_default_format_attributes): Delete.
796         (built_in_attribute): Don't define/undefine DEF_FN_ATTR.
797         (c_attrs_initialized): Delete.
798         (c_common_nodes_and_builtins): Don't test c_attrs_initialized,
799         always call c_init_attributes.
800         (c_init_attributes): Don't define/undefine DEF_FN_ATTR.  Don't
801         set c_attrs_initialized when done.
802         (c_common_insert_default_attributes): Delete.
803         * c-common.h (flag_noniso_default_format_attributes): Delete.
804         (c_coomon_insert_default_attributes): Delete prototype.
805         * c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
806         flag_noniso_default_format_attributes.
807
808         * c-decl.c (c_insert_default_attributes): Delete.
809         * c-tree.h (c_insert_default_attributes): Delete prototype.
810
811         * attribs.c (decl_attributes): Don't call insert_default_attributes
812         langhook.  Update function description comment.
813         * langhooks.h (lang_hooks): Remove insert_default_attributes field.
814         * langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
815         * c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
816         * system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.
817
818         * objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
819         define.
820
821 2003-08-04  Richard Sandiford  <rsandif@redhat.com>
822
823         * config/mips/mips.c (override_options): Disable -G on targets that
824         have no .section support.
825         (mips_select_section): Use default_select_section for such targets.
826
827 2003-08-04  Nathanael Nerode  <neroden@gcc.gnu.org>
828
829         * fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
830         * fixinc/inclhack.def (static_getrnge): Remove disabled hack.
831         * fixinc/fixincl.x: Rebuild.
832         * fixinc/tests/base/regexp.h: New test.
833
834 2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
835
836         * c-ppoutput.c (cb_line_change): Don't skip line changing while
837         parsing macro arguments in the top-level context.
838
839 2003-08-04  Neil Booth  <neil@daikokuya.co.uk>
840
841         * config.in: Remove HAVE_LSTAT.
842         * configure, configure.in: Don't test for lstat.
843
844 2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>
845
846         * opts.c (decode_options): Do language-specific initialization for
847         the global diagnostic context.
848         * langhooks-def.h (lhd_initialize_diagnostics): Declare.
849         (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
850         (LANG_HOOKS_INITIALIZER): Adjust.
851         * langhooks.h (struct lang_hooks): Add new field
852         initialize_diagnostics.
853         * langhooks.c (lhd_initialize_diagnostics): Define.
854
855 2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>
856
857         * pretty-print.h:   Adjust macro definitions.
858         * pretty-print.c (pp_newline): Rename to pp_base_newline.
859         (pp_character): Rename to pp_base_character.
860         (pp_string): Rename to pp_base_string.
861         * c-pretty-print.c (pp_buffer): Move to pretty-print.h
862         (pp_newline):  Likewise.  Adjust.
863         (pp_c_char): Adjust.
864
865 2003-08-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
866
867         * builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
868         BUILT_IN_LLABS): Move to miscellaneous section.
869
870 2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
871
872         PR preprocessor/11534
873         * cppexp.c (parse_defined): Warn only if -pedantic.
874
875 2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
876
877         * cppfiles.c (stack_file): Use file path.
878
879 2003-08-02  Roger Sayle  <roger@eyesopen.com>
880
881         * builtin-types.def (BT_SSIZE): New primitive type.
882         (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
883         BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
884         BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
885         BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
886         * builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
887         BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
888         BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
889         * builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
890         few functions that define default attributes using it.
891         * c-common.c (c_common_insert_default_attributes): Do nothing.
892
893         * doc/extend.texi: Document these "new" builtins.
894
895 2003-08-02  Kaz Kojima  <kkojima@gcc.gnu.org>
896
897         * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
898         (LIB_SPEC): Set -lpthread always when -pthread set.  Set -lieee
899         when -mieee-fp set and -shared not set.
900         (SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.
901
902 2003-08-02  Neil Booth  <neil@daikokuya.co.uk>
903
904         * cppfiles.c (struct _cpp_file): Rename once_only_next to
905         next_file.  Remove import and pragma_once, add once_only.
906         (find_file): Add new file structures to the all_files list.
907         (should_stack_file): Mark #import-ed files once-only, and
908         don't stack them if the file has already been stacked.
909         (_cp_mark_file_once_only): Simplify.
910         * cpphash.h (struct cpp_reader): Rename once_only_files
911         to all_files.  Rename saw_pragma_once to seen_once_only.
912         (_cpp_mark_file_once_only): Update prototype.
913         * cpplib.c (do_pragma_once): Update.
914
915 2003-08-02  Neil Booth  <neil@daikokuya.co.uk>
916
917         * cppfiles.c (ENOTDIR): Remove.
918         (open_file_in_dir): Rename find_file_in_dir.  Handle errors
919         other than ENOENT here.
920         (once_only_file_p): Rename should_stack_file.
921         (find_file, open_file_failed, read_file_guts): Report errors
922         with full path name.
923         (read_file): Move pch handling to should_stack_file.
924         (should_stack_file): Handle PCH and once-only issues, and
925         reading the file.
926         (stack_file): Don't do file reads.
927
928 2003-08-02  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
929
930         * libgcov.c (gcov_exit): Cleanup and fix.
931         * profile.c (compute_value_histograms): Don't try to read profiles
932         that are not present.
933
934 2003-08-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
935
936         * builtins.def: Categorize.
937
938         * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
939         Mind fp rounding.
940         (BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.
941
942 2003-08-02  Andreas Tobler  <a.tobler@schweiz.ch>
943
944         * config.gcc: Enable posix threads by default on darwin.
945
946 2003-08-01  Jakub Jelinek  <jakub@redhat.com>
947
948         * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
949         even if nehedges1 is 0.
950
951 2003-08-01  Nathanael Nerode  <neroden@gcc.gnu.org>
952
953         * fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
954         fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
955         fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
956         and defintions.
957
958         * fixinc/inclhack.def (broken_cabs): Make matching more generous.
959         * fixinc/fixincl.x: Regenerate.
960         * fixinc/tests/base/math.h: Regenerate to match test_text change.
961
962 2003-08-01  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
963
964         * ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.
965
966 2003-08-01  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
967
968         * except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
969         for accesses to exc_ptr.
970
971 2003-08-01  Geoffrey Keating  <geoffk@apple.com>
972
973         * doc/sourcebuild.texi (Front End Directory): Don't make references
974         to libsubdir, it's not part of the interface to frontends.
975         * doc/install.texi (Configuration): Help users read faster by saying
976         that GCC's configure options are the standard autoconf ones.
977         Mention --libdir.  Update the default rules for finding the
978         assembler.  Don't use libsubdir since we haven't said what it means.
979         (Specific): In the Solaris 7 notes, update the place to put the
980         assembler.
981         * doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
982         * doc/cpp.texi (Search Path): Actually, the search path
983         depends on libdir, which can relocate with cpp.
984         * doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
985         now a private interface between the Makefile and the driver.
986
987 2003-08-01  Richard Henderson  <rth@redhat.com>
988
989         * system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
990
991         * varasm.c (lookup_constant_def): New function.
992         * rtl.h (lookup_constant_def): Declare it.
993         * dwarf2out.c (loc_descriptor_from_tree): Use it.
994         Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.
995
996 2003-08-01  Zack Weinberg  <zack@codesourcery.com>
997
998         * c-decl.c (gettags, pushdecl_function_level): Delete.
999         (last_function_parm_vars): Rename last_function_parm_others.
1000         (current_function_parm_vars): Rename current_function_parm_others.
1001         (struct c_scope): Rewrite comment explaining this data structure.
1002         Add names_last, blocks_last, parms_last fields.  Rename
1003         incomplete_list to incomplete.
1004         (SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
1005         (poplevel): Ignore second argument.  No need to nreverse
1006         anything.  Restructure such that each list is processed
1007         exactly once.  Use 'const location_t *locus' syntactic sugar
1008         variable where useful.  Issue unused variable warnings
1009         ourselves, do not rely on function.c.
1010         (insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
1011         (pushdecl_top_level): Likewise.  Don't call duplicate_decls.
1012         (implicitly_declare): decl cannot be error_mark_node.
1013         (undeclared_variable): Manipulate scope structure directly.
1014         (c_make_fname_decl): Likewise.
1015         (getdecls, c_init_decl_processing): Fix comment.
1016         (mark_forward_parm_decls): Use SCOPE_LIST_CONCAT.  No need
1017         for 'last' variable.
1018         (grokparms): No need to nreverse parms list.
1019         (store_parm_decls_newstyle): Set up the parms_last and
1020         names_last fields of the new scope too.
1021         (store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
1022         on parms to begin with; check this under ENABLE_CHECKING.  Set
1023         up parms_last.
1024         (check_for_loop_decls): Refer directly to current_scope->tags.
1025         Use consistent quote style in diagnostics.
1026         (c_write_global_declarations): The names list is not backward.
1027
1028         * c-common.h: Don't prototype gettags.
1029         * c-parse.in: Call poplevel with second argument 0 always.
1030
1031 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1032
1033         * builtins.def: Resort builtins.
1034
1035 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1036
1037         * builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
1038         DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
1039         Prepend "__builtin_" onto NAME with string concatenation.  Remove
1040         explicit "__builtin_" from each macro call.
1041
1042         Reformat entire file.
1043
1044 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1045
1046         * builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
1047         ATTR_MATHFN_FPROUNDING_ERRNO): New macros.  Use throughout.
1048
1049 2003-08-01  Andreas Krebbel  <krebbel1@de.ibm.com>
1050
1051         * config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
1052         CCL1, or CCL2 modes with floating point operations.
1053
1054         * config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
1055         "*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
1056         "*subdf3_cconly"): New insns.
1057         ("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.
1058
1059 2003-08-01  Neil Booth  <neil@daikokuya.co.uk>
1060
1061         * Makefile.in: Refine dependencies.
1062         * c-opts.c (c_common_handle_option): Do nothing for -Wimport.
1063         * c.opt: Update help for -Wimport.
1064         * cppfiles.c: Include hashtab.h.  Update comments.
1065         (stack_file): Read the file before updating dependencies.
1066         (once_only_file_p): Be smarter about marking once-only files.
1067         (_cpp_mark_file_once_only): Correct the check for existence on
1068         the list.
1069         (open_file_failed): Use name not path, which is NULL.
1070         * cpphash.h: Don't include hashtab.h.
1071         (struct _cpp_file): Remove.
1072         (struct cpp_reader): Update.
1073         * cppinit.c (cpp_create_reader): Don't initialize warn_import.
1074         * cpplib.h (struct cpp_options): Remove warn_import.
1075         (cpp_simplify_path): Remove.
1076
1077 2003-08-01  Nathan Sidwell  <nathan@codesourcery.com>
1078
1079         PR c++/11295
1080         * doc/extend.texi (Statement Expressions): Document C++ semantics.
1081
1082 2003-07-31  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
1083
1084         * config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.
1085
1086 2003-07-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1087
1088         * builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
1089         throughout.
1090         * builtins.def: Likewise.
1091
1092 2003-07-31  Jason Merrill  <jason@redhat.com>
1093
1094         * Makefile.in (bubblestrap): Don't require a previous full
1095         bootstrap.
1096
1097         * expr.c (mostly_zeros_p): No longer static.
1098         * tree.h: Declare it.
1099         * stmt.c (resolve_asm_operand_names): Don't copy the pattern
1100         unless we need to do substitutions.
1101
1102 2003-07-31  Roger Sayle  <roger@eyesopen.com>
1103
1104         * fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
1105         pow(x,c)*x as pow(x,c+1) for constant values c.  Optimize x*x
1106         as pow(x,2.0) when the latter will be expanded back into x*x.
1107         (fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
1108         * builtins.c (expand_builtin_pow): Ignore flag_errno_math as
1109         pow can never set errno when used with an integer exponent.
1110         Always use expand_powi when exponent is -1, 0, 1 or 2.
1111         (fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
1112         as 1.0/(x*x).  This avoids unbounded recursion as we now prefer
1113         the pow forms of these expressions.
1114
1115 2003-07-31  Geoffrey Keating  <geoffk@apple.com>
1116
1117         * Makefile.in (libexecdir): New.
1118         (libsubdir): Use gcc instead of gcc-lib.
1119         (libexecsubdir): New.
1120         (ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
1121         (DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
1122         gcc-lib.
1123         (installdirs): Make libexecsubdir.
1124         (install-common): Put executables in libexecsubdir.
1125         (itoolsdir): Use libexecsubdir.
1126         (itoolsdatadir): New.
1127         (install-mkheaders): Separate data files and executables.
1128         (install-collect2): Put executables in libexecsubdir.
1129         (uninstall): Remove libexecsubdir.
1130         * mkheaders.in: Update for new arrangement of files.
1131         (libexecdir): New.
1132         (libexecsubdir): New.
1133         (itoolsdir): Use libexecsubdir.
1134         (itoolsdatadir): New.
1135         * gcc.c (gcc_libexec_prefix): New.
1136         (STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
1137         (standard_exec_prefix_1): Use libexec.
1138         (standard_exec_prefix_2): New.
1139         (standard_libexec_prefix): New.
1140         (process_command): Update for new arrangement of files.  Compute
1141         gcc_libexec_prefix.  Update for change from gcc-lib to gcc.
1142
1143 2003-07-31  Nathanael Nerode  <neroden@gcc.gnu.org>
1144
1145         * inclhack.def (stdio_va_list): Avoid bogus replacement which
1146         triggers on Interix.
1147         * fixincl.x: Regenerate.
1148
1149 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
1150
1151         * config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
1152         SYMBOL_REFs not inside UNSPEC even in PLUS rtx.
1153
1154 2003-07-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1155
1156         * dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.
1157
1158 2003-07-31  Per Bothner  <pbothner@apple.com>
1159
1160         * opts.c (in_fnames, num_in_fnames):  Moved here from c-opts.
1161         (add_input_filename):  New function.
1162         (handle_options):  Call add_input_filename directly instead of
1163         with a lang hook.
1164         * opts.h (in_fnames, num_in_fnames):  Moved here.
1165         (add_input_filename):  Declare.
1166         * c-decl.c:  Need to #include opts.h.
1167         * Makefile.in (c-decl.o):  Also depends on opts.h.
1168         * c-opts.c (in_fnames, num_in_fnames):  Moved to opts.c.
1169         (c_common_handle_filename):  Replaced by add_input_filename.
1170         * c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
1171         Remove.
1172         * langhooks.h (struct lang_hooks):  Remove handle_filename hook.
1173         * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.
1174         (LANG_HOOKS_INITIALIZER):  Remove use of LANG_HOOKS_HANDLE_FILENAME.
1175         * c-lang.c (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.
1176
1177 2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1178
1179         * combine.c (try_combine): Set JUMP_LABEL for newly created
1180         unconditional jump.
1181
1182 2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1183
1184         * fold-const.c (fold): Fold some comparisons of bit operations.
1185
1186 Thu Jul 31 19:49:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
1187
1188         * cgraph.c (create_edge): Fix typo.
1189         * i386.c (pic_symbolic_operand): Reorder tests.
1190
1191 2003-07-31  Nathan Sidwell  <nathan@codesourcery.com>
1192
1193         * doc/gcov.texi (Invoking Gcov): Describe output name mangling
1194         more fully.
1195         (Gcov Data Files): Update.
1196
1197 2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1198
1199         * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
1200         default.
1201
1202         * gthr-posix.c: New file.
1203         * gthr-posix.h: Define _REENTRANT if missing.
1204         Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
1205
1206         * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
1207         by gthr-posix.o.
1208         * config/alpha/t-osf-pthread: New file.
1209
1210         * fixinc/inclhack.def (alpha_pthread): New fix.
1211         * fixinc/fixincl.x: Regenerate.
1212         * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
1213
1214         * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
1215         warning.
1216         Fixes PR bootstrap/9330.
1217
1218 2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1219
1220         * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
1221         without GNU ld.
1222         Update comment.
1223         * configure: Regenerate.
1224
1225 2003-07-31  Vladimir Makarov  <vmakarov@redhat.com>
1226
1227         * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
1228         setter.
1229
1230 2003-07-30  Roger Sayle  <roger@eyesopen.com>
1231
1232         * builtins.def: Alphabetize.
1233
1234 2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>
1235
1236         * doc/c-tree.texi: Normalize spellings of "lowercase" and
1237         "uppercase".
1238         * doc/cpp.texi: Likewise.
1239         * doc/md.texi: Likewise.
1240         * doc/rtl.texi: Likewise.
1241         * doc/tm.texi: Likewise.
1242
1243 2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>
1244
1245         * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
1246         (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
1247         of cc1obj.
1248
1249 2003-07-30  Chris Demetriou  <cgd@broadcom.com>
1250
1251         * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
1252         macros before defining them.
1253
1254 2003-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1255
1256         * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
1257         UNSPECV_BLOCKAGE): New constants.
1258         ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
1259         "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
1260         splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
1261         "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
1262
1263         (all insns and expanders): Write output control string as brace block
1264         where appropriate.  Remove \-escapes for doublequote characters.
1265
1266 Thu Jul 31 01:04:19 CEST 2003  Jan Hubicka  <jh@suse.cz>
1267
1268         * gcse.c (insert_store): Fix typo in previous patch.
1269
1270 2003-07-30  Neil Booth  <neil@daikokuya.co.uk>
1271
1272         * cppfiles.c (stack_file, open_file_failed): Use path for deps.
1273
1274 2003-07-30  Andi Kleen  <ak@muc.de>
1275
1276         * loop.c (check_dbra_loop): Allow LTU in the loop condition.
1277
1278 2003-07-30  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1279
1280         * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
1281         * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
1282         GCOV_N_VALUE_COUNTERS): New.
1283         * profile.c (compute_value_histograms): New static function.
1284         (branch_prob): Read back the value histograms.
1285         * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
1286         * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
1287         * value-prof.c: Add comment on reading the profile.
1288         * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
1289         * doc/invoke.texi (-fprofile-values): Document behavior with
1290         -fbranch-probabilities.
1291
1292 2003-07-30  David Edelsohn  <edelsohn@gnu.org>
1293
1294         * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
1295
1296 2003-07-30  Ulrich Weigand  <uweigand@de.ibm.com>
1297
1298         * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
1299         symbolically.
1300
1301 Wed Jul 30 19:12:10 CEST 2003  Jan Hubicka  <jh@suse.cz>
1302
1303         * gcse.c (insert_store): Ignore fake edges.
1304
1305         * c-common.c (flag_vtable_gc): Kill.
1306         * c-common.g (flag_vtable_gc): Kill.
1307         * c-opts (c_common_handle_option): Kill.
1308         * c.opt (fvtable-gc): Kill.
1309         * final.c (final_scan_insn): Do not call assemble_vtable_entry.
1310         * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
1311         * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
1312
1313         * invoke.texi (-ftable-gc): Kill documentation.
1314
1315         * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
1316         just because function body is missing.
1317
1318         * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
1319
1320 2003-07-30  Ranjit Mathew  <rmathew@hotmail.com>
1321
1322         * unwind-sjlj.c: Fix typo in file description.
1323
1324 2003-07-30  Alan Modra  <amodra@bigpond.net.au>
1325
1326         * calls.c (load_register_parameters): When shifting reg sized values
1327         to the msb, move the value to a reg first.
1328
1329 2003-07-29  Geoffrey Keating  <geoffk@apple.com>
1330
1331         * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
1332         * line-map.h (linemap_add): Update comments.
1333         * line-map.c (linemap_add): Update comments, interpret zero-length
1334         filename as "<stdin>".
1335
1336 2003-07-29  Nathanael Nerode  <neroden@gcc.gnu.org>
1337
1338         * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
1339
1340 2003-07-29  Zack Weinberg  <zack@codesourcery.com>
1341
1342         * c-decl.c (last_function_parm_vars, current_function_parm_vars):
1343         New static variables.
1344         (struct c_scope): Add parms and warned_forward_parm_decls
1345         fields; remove parm_order.
1346         (storedecls, storetags): Delete.
1347         (poplevel): Also clear bindings on the parms chain.
1348         (pushdecl): Handle forward declarations of parameters, and
1349         chain PARM_DECLs on the parms list, not the names list.
1350         (lookup_name_current_level): Check for PARM_DECLs on the parms
1351         list too.
1352         (push_parm_decl): Don't update parm_order.
1353         (clear_parm_order): Rename mark_forward_parm_decls.  Issue the
1354         warning, only once per parameter list, and set TREE_ASM_WRITTEN
1355         on the decls here.  Then move the forward decls to the names list.
1356         (grokparms): Set last_function_parm_vars.
1357         (get_parm_info): Don't use gettags or getdecls.  No need to
1358         extract non-parms from the parms list, or reorganize the parms
1359         list.  Feed nonparms back in the TREE_TYPE of the list node
1360         returned.  Issue only one error per parameter list for "void"
1361         appearing more than once in said parameter list.  Collapse
1362         parmlist_tags_warning into this function to avoid double scan
1363         of tags list.
1364         (start_function): Set current_function_parm_vars.
1365         (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
1366         directly.  Get non-parms from current_function_parm_vars; no
1367         need to extract them from the parms chain.  Properly bind tags
1368         in the new scope.
1369         (store_parm_decls_oldstyle): No need to extract non-parameters
1370         from the parms chain, nor to store them back afterward.  Move
1371         declaration to top of function, restructure code reordering
1372         DECL_ARGUMENTS.
1373         (store_parm_decls): No need to save and restore warn_shadow.
1374         * c-parse.in: Don't call parmlist_tags_warning nor
1375         clear_parm_order.  Call mark_forward_parm_decls when forward
1376         parm decls are encountered.
1377         * c-tree.h: Prototype mark_forward_parm_decls; not
1378         clear_parm_order or parmlist_tags_warning.
1379
1380 2003-07-29  Geoffrey Keating  <geoffk@apple.com>
1381
1382         * c-common.c (allow_pch): Remove.
1383         * c-common.h (allow_pch): Remove.
1384         (c_common_no_more_pch): Declare.
1385         * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
1386         * c-pch.c: Include hosthooks.h.
1387         (c_common_valid_pch): Don't check allow_pch.
1388         (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
1389         (c_common_no_more_pch): New.
1390         * ggc-common.c: Include hosthooks.h.
1391         (gt_pch_save): Call gt_pch_get_address.
1392         (gt_pch_restore): Call gt_pch_use_address.
1393         * hooks.c (hook_voidp_size_t_null): New.
1394         (hook_bool_voidp_size_t_false): New.
1395         * hooks.h (hook_voidp_size_t_null): New.
1396         (hook_bool_voidp_size_t_false): New.
1397         * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
1398         (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
1399         (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
1400         HOST_HOOKS_GT_PCH_USE_ADDRESS.
1401         * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
1402         gt_pch_use_address.
1403         * doc/hostconfig.texi (Host Common): Document
1404         HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
1405         * Makefile.in (c-pch.o): Depend on hosthooks.h.
1406         (ggc-common.o): Likewise.
1407
1408         * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
1409         (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
1410         (pch_address_space): New.
1411         (darwin_rs6000_gt_pch_get_address): New.
1412         (darwin_rs6000_gt_pch_use_address): New.
1413
1414 2003-07-29  Neil Booth  <neil@daikokuya.co.uk>
1415
1416         PR preprocessor/11569
1417         PR preprocessor/11649
1418         * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
1419         * cppfiles.c: Completely rewritten.
1420         * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
1421         struct cpp_path is now struct cpp_dir.
1422         (remove_duplicates): Don't simplify path names.
1423         * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
1424         cpp_stack_file.
1425         * cpphash.h: Include hashtab.h.
1426         (_cpp_file): Declare.
1427         (struct cpp_buffer): struct include_file is now struct _cpp_file,
1428         and struct cpp_path is now struct cpp_dir.  Rename members.
1429         (struct cpp_reader): Similarly.  New members once_only_files,
1430         file_hash, file_hash_entries, quote_ignores_source_dir,
1431         no_search_path, saw_pragma_once.  Remove all_include_files and
1432         max_include_len.  Make some members bool.
1433         (_cpp_mark_only_only): Renamed from _cpp_never_reread.
1434         (_cpp_stack_file): Renamed from _cpp_read_file.
1435         (_cpp_stack_include): Renamed from _cpp_execute_include.
1436         (_cpp_init_files): Renamed from _cpp_init_includes.
1437         (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
1438         * cppinit.c (cpp_create_reader): Initialize no_search_path.  Update.
1439         (cpp_read_next_file): Rename and move to cppfiles.c.
1440         (cpp_read_main_file): Update.
1441         * cpplib.c (run_directive): Update for renamed members.
1442         (do_include_common, _cpp_pop_buffer): Update.
1443         (do_import): Undeprecate #import.
1444         (do_pragma_once): Undeprecate.  Use _cpp_mark_file_once_only.
1445         * cpplib.h: Remove file_name_map_list.
1446         (cpp_options): Remove map_list.
1447         (cpp_dir): Rename from cpp_path.  New datatype for name_map.
1448         (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
1449
1450 2003-07-29  Phil Edwards  <pme@gcc.gnu.org>
1451
1452         * Makefile.in:  Make stamp-objdir safe for parallel builds.
1453
1454 2003-07-29  Phil Edwards  <pme@gcc.gnu.org>
1455
1456         * Makefile.in (stmp-docobjdir):  New target; ensure $docobjdir exists.
1457         (info):  Depend on stmp-docobjdir.
1458
1459 2003-07-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1460
1461         * configure: Regenerate.
1462
1463 Tue Jul 29 19:24:49 CEST 2003  Jan Hubicka  <jh@suse.cz>
1464
1465         PR C++/11131
1466         * tree-inline.c (expand_call_inline): Always call inlinable_function_p
1467         in !unit-at-a-time mode.
1468
1469 2003-07-28  Geoffrey Keating  <geoffk@apple.com>
1470
1471         * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
1472         main function.
1473
1474 2003-07-28  Mark Mitchell  <mark@codesourcery.com>
1475
1476         PR c++/11667
1477         * c-common.c (shorten_compare): Take into account differences
1478         between C and C++ representation for enumeration types.
1479         * tree.h (set_min_and_max_values_for_integral_type): Declare.
1480         * stor-layout.c (set_min_and_max_values_for_integral_type): New
1481         function, broken out from ...
1482         (fixup_signed_type): ... here and ...
1483         (fixup_unsigned_type): ... here.
1484
1485 2003-07-28  Zack Weinberg  <zack@codesourcery.com>
1486
1487         * c-decl.c: Update commentary, adjust blank lines throughout.
1488         (struct c_scope): Fix indentation.  Reorder members so
1489         outer-context pointers come first, booleans last.
1490         (duplicate_decls, define_label): Use a 'locus' variable for
1491         diagnostic locations in a few more places.
1492         (warn_if_shadowing): Un-split a conditional that fits on one line.
1493         (c_init_decl_processing): No need to clear current_scope and
1494         current_function_scope.
1495         (start_decl): Merge if/else if statements with same action.
1496         (push_parm_decl): Rename old_immediate_size_expand to use
1497         save_foo convention; save/restore around entire function.
1498         (grokdeclarator): Remove unnecessary braces.
1499
1500 2003-07-28  Hans-Peter Nilsson  <hp@bitrange.com>
1501             Michael Culbertson  <Michael.J.Culbertson@wheaton.edu>
1502
1503         * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
1504         when warn_declaration_after_statement.  Call pedwarn_c90, not
1505         pedwarn.  Correct message: it's "ISO C90", not "ISO C89".
1506         * c-common.c (warn_declaration_after_statement): Define.
1507         * c-common.h (warn_declaration_after_statement): Declare.
1508         * c.opt (Wdeclaration-after-statement): New.
1509         * c-errors.c (pedwarn_c90): New function.
1510         * c-opts.c (c_common_handle_option) <case
1511         OPT_Wdeclaration_after_statement>: New.
1512         * c-tree.h (pedwarn_c90): Declare.
1513         * doc/invoke.texi (Option Summary): Document
1514         -Wdeclaration-after-statement.
1515         (Warning Options): Ditto.
1516
1517 Mon Jul 28 20:13:06 CEST 2003  Jan Hubicka  <jh@suse.cz>
1518
1519         * i386.md (memory attribute) Avoid accessing uninitialized memory
1520         for ishift1 type instructions.
1521
1522 2003-07-28  Jakub Jelinek  <jakub@redhat.com>
1523
1524         * configure.in (--enable-checking): Add fold category.
1525         (ENABLE_FOLD_CHECKING): Define if requested.
1526         * configure: Rebuilt.
1527         * config.in: Rebuilt.
1528         * doc/install.texi: Document it.
1529         * fold-const.c: Include md5.h.
1530         [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
1531         [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
1532         print_fold_checksum): New functions.
1533
1534         * fold-const.c (fold): Never modify argument passed to fold, instead
1535         change a copy and return it.
1536         * convert.c (convert_to_integer): Likewise.
1537
1538 2003-07-27  Nathanael Nerode  <neroden@gcc.gnu.org>
1539
1540         * fixinc/fixinc.svr4: Remove dead code.  Remove now-unnecessary
1541         cleanup of junk after #else and #endif directives.  Collapse repeated
1542         clauses into for statment.
1543
1544         * fixinc/fixincl.sh: GNU C -> GCC.  Add usage comment.
1545
1546 2003-07-27  Zack Weinberg  <zack@codesourcery.com>
1547
1548         * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
1549         (keep_next_if_subblocks): Rename next_is_function_body.
1550         (pushlevel): Adjust commentary.  Always set ->keep on the
1551         outermost level of a function.  Don't set ->keep_if_subblocks.
1552         (poplevel): Adjust commentary.  Don't look at ->keep_if_subblocks.
1553         (store_parm_decls): Adjust to match.
1554         (finish_function): Adjust to match.
1555         Call poplevel with all three arguments zero.
1556
1557         * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
1558         New functions split out of store_parm_decls.
1559         Avoid unnecessary work. Use local variables consistently.
1560         (store_parm_decls): Likewise.
1561
1562         (finish_function): No need to set functionbody flag on call to
1563         poplevel.
1564         (struct language_function): Remove scope field.
1565         (c_push_function_context, c_pop_function_context): No need to
1566         save and restore current_scope.
1567
1568 2003-07-27  Nathan Sidwell  <nathan@codesourcery.com>
1569
1570         * doc/extend.texi (Deprecated Features): Implicit typename is
1571         gone. Default args on types is going.
1572
1573 2003-07-26  J"orn Rennecke <joern.rennecke@superh.com>
1574
1575         * Makefile.in (ifcvt.o): Depend on target.h
1576         * ifcvt.c (target.h): Include.
1577         (if_convert): Don't call mark_loop_exit_edges if we can't
1578         modify jumps.
1579
1580 2003-07-26  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1581
1582         * doc/install.texi (Testing): Adjust required versions of DejaGnu.
1583
1584 2003-07-26  Richard Henderson  <rth@redhat.com>
1585
1586         PR inline-asm/11676
1587         * cse.c (count_reg_usage): Handle asm_operands properly.
1588
1589 2003-07-26  Roger Sayle  <roger@eyesopen.com>
1590
1591         * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
1592         (DEF_EXT_FALLBACK_BUILTIN): Delete.
1593         (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
1594         the regular DEF_EXT_LIB_BUILTIN macro.
1595         (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
1596         the regular DEF_LIB_BUILTIN macro.
1597         (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
1598         BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
1599         BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
1600         DEF_EXT_LIB_BUILTIN macro.
1601
1602         * c-decl.c (duplicate_decls): Remove code to handle builtin
1603         functions prototyped without an argument list.
1604
1605 2003-07-26  Danny Smith  <dannysmith@users.sourceforge.net>
1606
1607         * config/i386/winnt.c: Revert 2003-07-08 change.
1608         (i386_pe_section_type_flags): Remove error_with_decl here too.
1609
1610 2003-07-26  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1611
1612         * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
1613         * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
1614         * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
1615         (v850_handle_data_area_attribute): Likewise.
1616
1617 2003-07-26  Geoffrey Keating  <geoffk@apple.com>
1618
1619         * varasm.c (output_constant_def_contents): Use
1620         ASM_DECLARE_CONSTANT_NAME if defined.
1621         * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
1622         * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
1623         objects get at least one byte to prevent assembler problems.
1624         (ASM_DECLARE_CONSTANT_NAME): New.
1625
1626         * Makefile.in (libbackend.o): Remove options_.h.
1627         (mostlyclean): Likewise.
1628
1629         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
1630         insert a label at the end of an function under Mach-O.
1631
1632         * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
1633
1634 2003-07-25  Aldy Hernandez  <aldyh@redhat.com>
1635
1636         * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
1637         equality.
1638         (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
1639
1640         * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
1641
1642 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1643
1644         * doc/passes.texi (Passes): Mention pretty-printing and
1645         diagnostic files.
1646
1647 2003-07-25  Nathan Sidwell  <nathan@codesourcery.com>
1648
1649         * doc/extend.texi (Function Attributes): GNU C++ does now allow
1650         unused parameter decls.
1651         (Attribute Syntax): GNU C++ does not allow label attributes to be
1652         after the ':'.
1653
1654 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1655
1656         * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
1657         (objc_declare_class): Likewise.
1658         (error_with_ivar): Likewise.
1659         (start_class): Likewise.
1660         (warn_with_method): Likewise.
1661
1662 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1663
1664         Remove pedwarn_with_decl, warning_with_decl and error_with_decl
1665         from GCC.
1666         * calls.c (try_to_integrate): Don't use xxx_with_decl.
1667         (expand_call): Likewise.
1668         * dwarfout.c (output_reg_number): Likewise.
1669         * expr.c (expand_expr): Likewise.
1670         * function.c (assign_temp): Likewise.
1671         (uninitialized_vars_warning): Likewise.
1672         (setjmp_args_warning): Likewise.
1673         (expand_function_end): Likewise.
1674         * stmt.c (fixup_gotos): Likewise.
1675         (warn_about_unused_variables): Likewise.
1676         (expand_end_bindings): Likewise.
1677         * stor-layout.c (layout_decl): Likewise.
1678         (place_field): Likewise.
1679         * toplev.c (check_global_declarations): Likewise.
1680         (rest_of_handle_inlining): Likewise.
1681         (default_tree_printer): New function.
1682         (general_init): Initialize diagnostic machinery before routing
1683         signals to the ICE machinery.  Set default tree printer.
1684         * toplev.h (pedwarn_with_decl): Remove declaration.
1685         (warning_with_decl): Likewise.
1686         (error_with_decl): Likewise.
1687         (pedwarn): Remove attribute for the time being.
1688         * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
1689         * varasm.c (named_section): Likewise.
1690         (make_decl_rtl): Likewise.
1691         (assemble_variable): Likewise.
1692         (merge_weak): Likewise.
1693         (declare_weak): Likewise.
1694
1695         * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
1696         * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
1697         (format_with_decl): Remove.
1698         (diagnostic_for_decl): Likewise.
1699         (pedwarn_with_decl): Likewise.
1700         (warning_with_decl): Likewise.
1701         (error_with_decl): Likewise.
1702         (diagnostic_initialize): Adjust.
1703         (diagnostic_count_diagnostic): Likewise.
1704         (announce_function): Likewise.
1705         (lhd_print_error_function): Likewise.
1706         (diagnostic_report_current_module): Likewise.
1707         (default_diagnostic_starter): Likewise.
1708         (diagnostic_report_diagnostic): Likewise.
1709         (default_diagnostic_finalizer): Likewise.
1710         (verbatim): Likewise.
1711         (error): Likewise.
1712         (warning): Likewise.
1713         * opts.c (common_handle_option): Likewise.
1714         * pretty-print.c: New file.
1715         * c-pretty-print.h (pp_base): Override.
1716         * c-pretty-print.c: Adjust use of macros throughout.
1717         (pp_buffer): New macro.
1718         (pp_newline): Likewise.
1719         * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
1720         * Makefile.in (DIAGNOSTIC_H): New variable.
1721         (c-errors.o): Use it.
1722         (c-objc-common.o): Likewise.
1723         (c-common.o): Likewise.
1724         (c-opts.o): Likewise.
1725         (c-format.o): Likewise.
1726         (diagnostic.o): Likewise.
1727         (opts.o): Likewise.
1728         (toplev.o): Likewise.
1729         (rtl-error.o): Likewise.
1730         (dwarf2out.o): Likewise.
1731         (jump.o): Likewise.
1732         (pretty-print.o): New rule.
1733
1734 2003-07-24  Roger Sayle  <roger@eyesopen.com>
1735
1736         * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
1737         front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
1738         (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
1739         from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
1740         (DEF_FRONT_END_LIB_BUILTIN): Delete.
1741         (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
1742         (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
1743
1744         * builtins.c (build_string_literal): New function to construct
1745         a char* pointer to a string literal.
1746         (expand_builtin_fputs): Change 2nd argument from "int ignore" to
1747         "rtx target" to be consistent with other expand_builtin_* functions.
1748         Change 3rd argument from "int unlocked" to "bool unlocked".
1749         (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
1750         c-common.c to avoid front-end dependencies.  Optimize printf("")
1751         as a no-op when the result isn't required.  Handle embedded NULs
1752         in format string.
1753         (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
1754         from c-common.c to avoid front-end dependencies.  Likewise, optimize
1755         fprintf(fp,"") as a no-op when the result isn't required, evaluating
1756         fp for side-effects.  Handle embedded NULs in format string.
1757         (expand_builtin_sprintf): Fix typo.
1758         (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
1759         optimizing.  Adjust calls of expand_builtin_fputs to match the API
1760         change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
1761         expand_builtin_printf.  Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
1762         and BUILT_IN_FPRINTF using expand_builtin_fprintf.
1763
1764         * c-common.c (is_valid_printf_arglist): Delete.
1765         (c_expand_builtin): Delete.
1766         (c_expand_builtin_printf): Moved to builtins.c. Delete.
1767         (c_expand_builtin_fprintf): Moved to builtins.c.  Delete.
1768         (c_expand_expr): No longer treat CALL_EXPRs specially.
1769         (CALLED_AS_BUILT_IN): Delete.
1770
1771 2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1772
1773         PR optimization/11631
1774         * gcse.c (store_motion): Connect infinite loops to exit.
1775
1776 2003-07-24  Jason Merrill  <jason@redhat.com>
1777
1778         * tree.h (boolean_type_node): Move from C/C++/Java frontends.
1779         (boolean_true_node, boolean_false_node): Likewise.
1780         (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
1781         * tree.c (build_common_tree_nodes): Init boolean_type_node.
1782         (build_common_tree_nodes_2): Init boolean_{true,false}_node.
1783         * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
1784         * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
1785         (truthvalue_true_node): Renamed from boolean_true_node.
1786         (truthvalue_false_node): Renamed from boolean_false_node.
1787         * c-decl.c: Just set truthvalue_* to integer_*.
1788         * c-*.[ch]: s/boolean/truthvalue/.  s/c_bool/boolean/.
1789
1790 2003-07-24  Roger Sayle  <roger@eyesopen.com>
1791
1792         * c-decl.c (match_builtin_function_types): New subroutine of
1793         duplicate_decls to test whether a redeclaration of a builtin
1794         function is suitably close, i.e. the return type and all of
1795         the argument types have the same modes as the builtin expects.
1796         (duplicate_decls): Fuzzy type matching for builtin functions
1797         moved to match_builtin_function_types.
1798
1799 2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1800
1801         * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
1802         flag correctly.
1803
1804 2003-07-24  Zack Weinberg  <zack@codesourcery.com>
1805
1806         * c-decl.c: Search-and-replace change 'binding level' to
1807         'scope' in commentary.
1808         (struct binding_level): Now struct c_scope.
1809         (current_binding_level): Now current_scope.
1810         (free_binding_level): Now scope_freelist.
1811         (current_function_level): Now current_function_scope.
1812         (global_binding_level): Now global_scope.
1813         (make_binding_level): Now make_scope.
1814         (pop_binding_level): Now pop_scope.
1815
1816 2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1817
1818         * configure.in (libgcc_visibility): Add missing whitespace.
1819
1820 2003-07-24  Richard Henderson  <rth@redhat.com>
1821
1822         * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
1823         __gcc_personality_v0.
1824
1825 2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1826
1827         * Makefile.in: Replace pwd by ${PWD_COMMAND}.
1828
1829 2003-07-24  Nathan Sidwell  <nathan@codesourcery.com>
1830
1831         * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
1832         documentation missed from my 2003-07-09 patch.
1833
1834 2003-07-24  Nathanael Nerode  <neroden@gcc.gnu.org>
1835
1836         * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
1837         it's not provided.
1838         * configure: Rebuild.
1839
1840 2003-07-24  Steven Bosscher  <steven@gcc.gnu.org>
1841
1842         PR c/10602
1843         * c-typeck.c (type_lists_compatible_p): Do not compare
1844         arguments if one of them is an error_mark_node
1845
1846 2003-07-24  Alan Modra  <amodra@bigpond.net.au>
1847
1848         * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
1849         if current_function_calls_eh_return.
1850
1851 2003-07-23  Mark Mitchell  <mark@codesourcery.com>
1852
1853         * doc/c-tree.texi (OFFSET_TYPE): Update description.
1854
1855 2003-07-23  Bob Wilson  <bob.wilson@acm.org>
1856
1857         * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
1858         * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
1859         __umodsi3, __modsi3): Increase frame size to 32.
1860
1861 2003-07-23  Geoffrey Keating  <geoffk@apple.com>
1862
1863         * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
1864         prototype.
1865
1866 2003-07-23  Mark Mitchell  <mark@codesourcery.com>
1867
1868         * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
1869
1870         PR optimization/10679
1871         * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
1872
1873 2003-07-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1874
1875         PR target/11607 and PR target/11516
1876         * pa.md (extzv, extv, insv): Revert latter half of last patch.
1877
1878 2003-07-22  Mark Mitchell  <mark@codesourcery.com>
1879
1880         * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
1881         * varasam.c (output_constant): Likewise.
1882
1883 2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>
1884
1885         * alias.c: Fix comment formatting.
1886         * c-common.c: Likewise.
1887         * c-decl.c: Likewise.
1888         * c-opts.c: Likewise.
1889         * combine.c: Likewise.
1890         * cpplib.c: Likewise.
1891         * diagnostic.c: Likewise.
1892         * dojump.c: Likewise.
1893         * final.c: Likewise.
1894         * fold-const.c: Likewise.
1895         * gcc.c: Likewise.
1896         * gcse.c: Likewise.
1897         * ggc-page.c: Likewise.
1898         * jump.c: Likewise.
1899         * loop.c: Likewise.
1900         * mips-tfile.c: Likewise.
1901         * recog.c: Likewise.
1902         * regclass.c: Likewise.
1903         * regmove.c: Likewise.
1904         * tree.c: Likewise.
1905         * tree.h: Likewise.
1906
1907 2003-07-22  Per Bothner  <pbothner@apple.com>
1908
1909         * line-map.c (add_line_map):  Handle invalid LEAVE request.
1910         Fixes PR preprocessor/11361.
1911
1912 2003-07-22  Per Bothner  <pbothner@apple.com>
1913
1914         * diagnostic.c.(diagnostic_report_current_module):  Update to match
1915         2003-06-05 changes to push_srcloc and pop_srcloc.
1916
1917 2003-07-22  Wolfgang Bangerth  <bangerth@dealii.org>
1918
1919         * doc/trouble.texi: Better document two-stage name lookup.
1920
1921 2003-07-22  Eric Christopher <echristo@redhat.com>
1922
1923         * config/s390.c (s390_valid_pointer_mode): New.
1924         (TARGET_VALID_POINTER_MODE): Use.
1925         (s390_emit_prologue): Add tpf profiling hooks.
1926         (s390_emit_epilogue): Ditto.
1927         * config/s390.h (MASK_TPF): New.
1928         (TARGET_TPF): Use.
1929         (POINTERS_EXTEND_UNSIGNED): Define.
1930         * config/s390.md (ptr_extend): New pattern.
1931
1932 2003-07-22  Zack Weinberg  <zack@codesourcery.com>
1933
1934         * hashtable.c (approx_sqrt): Make static.
1935         * hashtable.h: Don't prototype approx_sqrt.
1936         * line-map.c (init_line_maps): Rename linemap_init.
1937         (free_line_maps): Rename linemap_free.
1938         (add_line_map): Rename linemap_add.
1939         (lookup_line): Rename linemap_lookup.
1940         (print_containing_files): Rename linemap_print_containing_files.
1941         * linemap.h: Update to match.
1942
1943         * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
1944         linemap routines to use new names.
1945
1946 2003-07-16  Nathan Sidwell  <nathan@codesourcery.com>
1947
1948         * c-common.c (handle_packed_attribute): Don't pack a struct via a
1949         typedef. Propagate packedness from a main variant.
1950
1951 2003-07-22  Nathanael Nerode  <neroden@gcc.gnu.org>
1952
1953         * Makefile.in (install-common): Add dependency on installdirs.
1954
1955 2003-07-21  Alexandre Oliva  <aoliva@redhat.com>
1956
1957         * c-common.c (c_common_type_for_mode): Return integer types for
1958         pointer modes.
1959
1960 2003-07-22  Geoffrey Keating  <geoffk@apple.com>
1961
1962         * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
1963         (finish_decl): Call maybe_apply_pragma_weak here.
1964         (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
1965         TREE_PUBLIC and TREE_STATIC are decided.
1966         (start_function): Move call to maybe_apply_pragma_weak.  Check that
1967         DECL_ASSEMBLER_NAME isn't set too early.
1968
1969         * cpplex.c (_cpp_process_line_notes): Mention option name in
1970         trigraphs warning.
1971
1972 2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>
1973
1974         * combine.c (if_then_else_cond): Simplify the comparison of
1975         rtx against -1, 0, and 1.
1976         * loop.c (check_dbra_loop): Likewise.
1977         * optabs.c (emit_conditional_move): Likewise.
1978         (emit_conditional_add): Likewise.
1979         * config/i386/i386.md (*movsi_or): Likewise.
1980         (*movdi_or_rex6): Likewise.
1981
1982 Tue Jul 22 00:42:12 CEST 2003  Jan Hubicka  <jh@suse.cz>
1983
1984         * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
1985
1986 2003-07-21  Neil Booth  <neil@daikokuya.co.uk>
1987
1988         * cppfiles.c (open_file_pch): Don't put unused entries in the
1989         splay tree.  Remove dead code.
1990
1991 2003-07-21  Geoffrey Keating  <geoffk@apple.com>
1992
1993         * c-common.h (num_in_fnames): Declare.
1994         (c_static_assembler_name): Move from here...
1995         * c-tree.h (c_static_assembler_name): ... to here.
1996         * c-opts.c: Don't include langhooks-def.h.
1997         (c_static_assembler_name): Move to c-decl.c.
1998         (num_in_fnames): Make externally visible.
1999         * c-decl.c: Include langhooks-def.h.
2000         (c_static_assembler_name): Move from c-opts.c.
2001         * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
2002         (c-opts.o): Remove $(LANGHOOKS_DEF_H).
2003
2004         * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
2005         when it's not needed.
2006
2007 2003-07-21  Jakub Jelinek  <jakub@redhat.com>
2008
2009         * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
2010         * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
2011         (rs6000_emit_prologue): Save FPRs inline if set.
2012
2013 2003-07-21  H.J. Lu <hongjiu.lu@intel.com>
2014
2015         * config/ia64/ia64.md (prefetch): Support predicate.
2016
2017 2003-07-21  Josef Zlomek  <zlomekj@suse.cz>
2018
2019         * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
2020         * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
2021         table.
2022
2023 2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
2024
2025         PR optimization/11536
2026         * unroll.c (loop_iterations): Do not replace a register holding
2027         the final value by its equivalent before the loop if it is not
2028         invariant.
2029
2030 2003-07-21  Dave Fluri  <dave.fluri@onlink.net>
2031
2032         * doc/extend.texi: Fixes to spelling, grammar, and diction.
2033
2034 2003-07-21  Ben Elliston  <bje@wasabisystems.com>
2035
2036         * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
2037         (V850 Options): Spelling fixes.
2038
2039 2003-07-20  Lisa M. Goldstein  <opus@gnu.org>
2040
2041         * doc/invoke.texi: Fixes to style, grammar and diction.
2042
2043 2003-07-20  Roger Sayle  <roger@eyesopen.com>
2044
2045         * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
2046         * system.h (SMALL_STACK): Poison obsolete target macro.
2047         * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
2048
2049 2003-07-20  Phil Edwards  <pme@gcc.gnu.org>
2050
2051         * configure.in:  Cache the results of testing for cmp's capabilities.
2052         * configure:  Regenerate.
2053
2054 2003-07-20  Mark Mitchell  <mark@codesourcery.com>
2055
2056         PR debug/11279
2057         * dwarf2out.c (gen_enumeration_type_die): Remember that
2058         enumerators can be unsigned.
2059
2060 2003-07-19  Zack Weinberg  <zack@codesourcery.com>
2061
2062         * c-decl.c (named_labels, shadowed_labels, label_level_chain)
2063         (push_label_level, pop_label_level): Kill.
2064         (struct binding_level): Rename level_chain to outer.
2065         Add outer_function field.  Change parm_flag, function_body,
2066         keep, keep_if_subblocks to 1-bit bitfields of type bool.
2067         (current_function_level): New variable.
2068         (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
2069         (keep_next_level, declare_parm_level, warn_if_shadowing):
2070         Update to match.
2071         (struct language_function): Kill named_labels, shadowed_labels fields.
2072         (c_init_decl_processing, start_function, c_push__function_context)
2073         (c_pop_function_context): No need to muck with named_labels nor
2074         shadowed_labels.
2075
2076         (make_binding_level): No need to clear the structure here.
2077         (pop_binding_level): Always operate on current_binding_level.
2078         Update current_function_level if necessary.
2079         (pushlevel): Don't clear named_labels.  Update current_function_level
2080         if necessary.  Use "true" and "false" where appropriate.
2081         (poplevel): Diagnose labels defined but not used, or vice
2082         versa, and clear out label-meanings leaving scope, while
2083         walking down the decls list, for all binding levels.
2084         Handle LABEL_DECLs appearing in the shadowed list.
2085         pop_binding_level takes no arguments.
2086         (pushdecl_function_level): Use current_function_level.
2087
2088         (make_label, bind_label): New static functions.
2089         (declare_label): New exported function.
2090         (lookup_label, define_label): Rewritten for new data structure.
2091         (shadow_label): Kill.
2092
2093         * c-tree.h: Prototype declare_label; don't prototype
2094         push_label_level, pop_label_level, nor shadow_label.
2095         * c-parse.in: Remove all calls to push_label_level and
2096         pop_label_level.  Use declare_label for __label__ decls.
2097
2098         * doc/extend.texi: Clarify that __label__ can be used to
2099         declare labels with local scope in any nested block, not
2100         just statement expressions.  Cross-reference nested functions
2101         section from local labels section.
2102
2103 2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2104
2105         * sched-rgn.c (find_rgns): Initialize current_edge correctly.
2106
2107 2003-07-19  Phil Edwards  <pme@gcc.gnu.org>
2108
2109         * doc/makefile.texi (restrap, profiledbootstrap):  Document targets.
2110
2111 2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2112
2113         * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
2114         fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
2115
2116 2003-07-19  Ulrich Weigand  <uweigand@de.ibm.com>
2117
2118         * config/s390/s390.c (legitimize_pic_address): Access local symbols
2119         relative to the GOT instead of relative to the literal pool base.
2120         (s390_output_symbolic_const): Handle new GOT-relative accesses.
2121         * config/s390/s390.md ("call"): Access local functions and PLT stubs
2122         relative to the GOT instead of relative to the literal pool base.
2123         ("call_value"): Likewise.
2124         ("call_value_tls"): Likewise.
2125
2126         * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
2127         reloading.  Support LTREL_BASE / LTREL_OFFSET construct.
2128         (s390_chunkify_finish): Likewise.
2129         (s390_chunkify_cancel): Likewise.
2130         (s390_reorg): Adapt caller.
2131         (find_base_register_in_addr,
2132         find_base_register_ref, replace_base_register_ref): Delete.
2133         (find_ltrel_base, replace_ltrel_base): New functions.
2134         (find_constant_pool_ref): Handle LTREL_BASE unspecs.
2135         (s390_decompose_address): Handle LTREL_BASE unspecs.  Optimize
2136         base vs. index register usage.
2137         (struct constant_pool): Remove 'anchor'.
2138         (s390_add_anchor): Delete.
2139         (s390_dump_pool): Remove anchor handling.
2140         * config/s390/s390.md ("reload_anchor"): Remove.
2141
2142         * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
2143         (s390_load_got): New function.  Use LTREL_BASE/OFFSET.
2144         (s390_emit_prologue): Use it.
2145         * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
2146         "builtin_setjmp_receiver"): Cleanup.  Use s390_load_got.  Do not
2147         hard-code register 14.
2148         * config/s390/s390-protos.h (s390_load_got): Declare.
2149
2150         * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
2151         Support TImode constants.
2152         * config/s390/s390.md ("consttable_ti"): New.
2153         ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
2154
2155         * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
2156         UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
2157         UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
2158         UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
2159         UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
2160         New symbolic constants.
2161         ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
2162         "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
2163         "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
2164         "pool", "literal_pool_31", "literal_pool_64"): Cleanup.  Use
2165         symbolic UNSPEC values.
2166         * config/s390/s390.c (larl_operand, s390_short_displacement,
2167         bras_sym_operand, s390_cannot_force_const_mem,
2168         s390_delegitimize_address, s390_decompose_address,
2169         legitimize_pic_address, s390_output_symbolic_const,
2170         s390_function_profiler): Use symbolic UNSPEC values.
2171
2172 2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2173
2174         * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
2175         c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
2176         c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
2177         collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
2178         cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
2179         cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
2180         dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
2181         fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
2182         gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
2183         genemit.c genextract.c genoutput.c genrecog.c gensupport.c
2184         ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
2185         integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
2186         loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
2187         postreload.c prefix.c print-tree.c protoize.c ra-build.c
2188         ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
2189         regmove.c regrename.c reload.c reload1.c reorg.c resource.c
2190         sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
2191         simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
2192         tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
2193         varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
2194         casts.
2195
2196 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2197
2198         * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
2199         * toplev.h (warning): Remove attribute.
2200
2201 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2202
2203         * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
2204         (pop_label_level): Likewise.
2205         (duplicate_decls): Likewise.
2206         (implicitly_declare): Likewise.
2207         (shadow_label): Likewise.
2208         (start_decl): Likewise.
2209         (finish_decl): Likewise.
2210         (grokdeclarator): Likewise.
2211         (get_parm_info): Likewise.
2212         (detect_field_duplicates): Likewise.
2213         (finish_struct): Likewise.
2214         (start_function): Likewise.
2215         (store_parm_decls): Likewise.
2216         (finish_function): Likewise.
2217         (c_expand_body_1): Likewise.
2218         (check_for_loop_decls): Likewise.
2219         (merge_translation_unit_decls): Likewise.
2220
2221 2003-07-19  Neil Booth  <neil@daikokuya.co.uk>
2222
2223         * common.opt:  Document --param.
2224         * opts.c (columns, undocumented_msg): New.
2225         (print_help): Get number of columns from environment.  Print
2226         --param help.  Tweak newline handling.
2227         (print_param_help): New.
2228         (print_filtered_help): Better handling of duplicates.  Complain
2229         about undocumented switches.
2230         (print_switch): New.
2231         (wrap_help): Improve wrapping, use COLUMNS.
2232         * opts.sh: Ignore comments in records.
2233         * params.def: Fix typos and remove trailing periods.
2234         * toplev.c (display_help): Don't dump --param help.
2235         * doc/sourcebuild.texi: Update.
2236
2237 2003-07-18  Richard Henderson  <rth@redhat.com>
2238
2239         PR target/11556
2240         * optabs.c (prepare_operand): Fail gracefully instead of abort
2241         if the predicate doesn't satisfy.
2242         (gen_cond_trap): Allow prepare_operand to fail.
2243
2244 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2245
2246         * c-common.c: Don't undefine GCC_DIAG_STYLE.
2247         (fname_decl): Don't use xxx_with_decl.
2248         (c_add_case_label): Likewise.
2249         (handle_section_attribute): Likewise.
2250         (handle_alias_attribute): Likewise.
2251         (handle_no_instrument_function_attribute): Likewise.
2252         (handle_no_limit_stack_attribute): Likewise.
2253         * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
2254         * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
2255
2256 2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2257
2258         * Makefile.in (ifcvt.o): Add cfgloop.h.
2259         * basic-block.h (EDGE_LOOP_EXIT): New flag.
2260         * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
2261         * ifcvt.c: Include cfgloop.h.
2262         (mark_loop_exit_edges): New static function.
2263         (if_convert): Call it.
2264         (find_if_header): Ignore branches out of loops.
2265
2266 2003-07-18  Kazu Hirata  <kazu@cs.umass.edu>
2267
2268         * combine.c (simplify_comparison): Don't share rtx when converting
2269         (ne (and (not X) 1) 0) to (eq (and X 1) 0).
2270
2271 2003-07-18  David Edelsohn  <edelsohn@gnu.org>
2272
2273         * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
2274         (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
2275         (MUST_PASS_IN_STACK): Define.
2276         (BLOCK_REG_PADDING): Define.
2277
2278 2003-07-18  Richard Henderson  <rth@redhat.com>
2279
2280         * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
2281         to skip the addr_vec.
2282
2283 Fri Jul 18 15:22:28 2003  Alexandre Oliva  <aoliva@redhat.com>
2284
2285         * combine.c (combinable_i3pat): Don't forbid occurrences of
2286         i2dest or i1dest in inner_dest if inner_dest is a mem.
2287
2288 Fri Jul 18 17:05:57 CEST 2003  Jan Hubicka  <jh@suse.cz>
2289
2290         * cgraph.c (cgraph_remove_node): Clear the hash table slot.
2291
2292 2003-07-17  Jakub Jelinek  <jakub@redhat.com>
2293
2294         PR target/11087
2295         * loop.c (basic_induction_var): Check if convert_modes emitted any
2296         instructions. Remove them and return 0 if so.
2297
2298 2003-07-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
2299
2300         PR optimization/11083
2301         * toplev.c (rest_of_handle_addresof): Rename into
2302         rest_of_handle_addressof.  Delete unreachable blocks
2303         if dead edges were purged after the addressof pass.
2304
2305 2003-07-18  Neil Booth  <neil@daikokuya.co.uk>
2306
2307         * Makefile.in, configure, configure.in: Remove handling of
2308         lang-options.h and options_.h.
2309         * toplev.c (struct lang_opt, documented_lang_options): Remove.
2310         (display_help): Don't use documented_lang_options.
2311
2312 2003-07-17  Zack Weinberg  <zack@codesourcery.com>
2313
2314         * c-decl.c (pushdecl_function_level): Make static, return nothing.
2315         (kept_level_p): Fold into poplevel.
2316         (undeclared_variable): Moved here from c-typeck.c.  Export.
2317         * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
2318         (undeclared_variable): Prototype here.  Don't prototype
2319         kept_level_p nor pushdecl_function_level.
2320         * c-parse.in: Change first argument to poplevel from
2321         "kept_level_p()" to "KEEP_MAYBE".
2322         * c-typeck.c (undeclared_variable): Moved to c-decl.c.
2323
2324 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2325
2326         * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
2327         commutative operands instead of modifying the RTL in-place.
2328
2329 2003-07-17  Mark Mitchell  <mark@codesourcery.com>
2330
2331         PR optimization/11557
2332         * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
2333         unless we know which function is being called.
2334
2335 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2336
2337         * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
2338         whether to reorder the operands of a commutative binary operator.
2339
2340 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2341
2342         * fold-const.c (const_binop): Avoid performing the FP operation at
2343         compile-time, if either operand is NaN and we honor signaling NaNs,
2344         or if we're dividing by zero and either flag_trapping_math is set
2345         or the desired mode doesn't support infinities.
2346         (fold_initializer): New function to fold an expression ignoring any
2347         potential run-time exceptions or traps.
2348         * tree.h (fold_initializer): Prototype here.
2349         * c-typeck.c (build_binary_op): Move to the end of the file so
2350         that intializer_stack is in scope.  If constructing an initializer,
2351         i.e. when initializer_stack is not NULL, use fold_initializer to
2352         fold expressions.
2353         * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
2354         performing FP operations at compile-time, if they would raise an
2355         exception at run-time.
2356
2357 2003-07-17  Geoffrey Keating  <geoffk@apple.com>
2358
2359         PR 11498
2360         * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
2361         (langhooks.o): Add $(GGC_H), gt-langhooks.h.
2362         (GTFILES): Add langhooks.c.
2363         (gt-langhooks.h): New.
2364         * c-common.h (c_static_assembler_name): Prototype.
2365         * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
2366         * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
2367         * c-opts.c: Include langhooks-def.h.
2368         (c_static_assembler_name): New.
2369         * langhooks.c: Include ggc.h.  Include gt-langhooks.h.
2370         (var_labelno): New.
2371         (lhd_set_decl_assembler_name): Give static objects with context
2372         unique names.
2373         * varasm.c (var_labelno): Delete.
2374         (make_decl_rtl): Don't change the assembler name once it's set.
2375
2376         * c-opts.c (this_input_filename): New.
2377         (finish_options): Take new parameter, name of file being compiled.
2378         Update callers.  Set this_input_filename.
2379         (push_command_line_include): Use this_input_filename not
2380         main_input_filename.
2381
2382 2003-07-17  Neil Booth  <neil@daikokuya.co.uk>
2383
2384         * Makefile.in: Depend .pot generation on options.c.
2385         * po/exgettext: Add an extra_files variable containing additional
2386         files to scan.
2387
2388 2003-07-17  Zack Weinberg  <zack@codesourcery.com>
2389
2390         * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
2391         c_write_global_declarations.
2392
2393         * c-decl.c: Fix typos in several comments.  Remove all
2394         #if 0 blocks; reindent as needed.  Remove unused argument
2395         to declare_parm_level; all callers changed.
2396         * c-parse.in: Update calls to declare_parm_level.  Avoid
2397         issuing a double warning in some circumstances.
2398         * c-typeck.c: Update calls to declare_parm_level.
2399         * c-tree.h: Update prototype of declare_parm_level.
2400
2401         * c-pragma.c (apply_pragma_weak): Don't complain about a
2402         redundant #pragma weak.
2403
2404         * objc/objc-act.c (forward_declare_categories,
2405         build_selector_reference_decl, build_class_reference_decl,
2406         build_objc_string_decl, synth_forward_declarations,
2407         build_protocol_reference): Set TREE_PUBLIC on synthetic
2408         forward decl to 0, consistent with eventual definition.
2409         Correct comments to match.
2410
2411         * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
2412         in regexp that don't form a range expression.
2413         * fixinc/fixincl.def: Regenerate.
2414
2415 2003-07-17  Richard Henderson  <rth@redhat.com>
2416
2417         PR target/10907
2418         * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
2419         even with !TARGET_CONST_GP.
2420         (ia64_function_ok_for_sibcall): Reject non-local functions.
2421
2422 2003-07-17  Steven Bosscher  <steven@gcc.gnu.org>
2423
2424         * c-common.c (c_estimate_num_insns_1): Don't handle
2425         METHOD_CALL_EXPR.
2426         * expr.c (safe_from_p): Likewise.
2427         * gengtype.c (adjust_field_tree_exp): Likewise.
2428         * stmt.c (warn_if_unused_value): Likewise
2429         * tree.c (first_rtl_op): Likewise.
2430         * tree.def: Don't define METHOD_CALL_EXPR.
2431         * java/lang.c (java_estimate_num_insns_1): Don't handle
2432         METHOD_CALL_EXPR.
2433
2434 2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
2435
2436         PR other/11466
2437         * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
2438         and its restrictions for the SPARC64 port.
2439         Move the entry of "-mimpure-text" before that of "-mv8".
2440
2441 2003-07-17  Eric Botcazou <ebotcazou@libertysurf.fr>
2442             Phil Edwards <phil@jaj.com>
2443
2444         * doc/install.texi (*-*-solaris2*): Document the step-by-step
2445         procedure to bootstrap and install.
2446         Document the preference for the legacy Sun tools in /usr/bin
2447         over the POSIX tools in /usr/xpg4/bin for the build process.
2448
2449 2003-07-17  Neil Booth  <neil@daikokuya.co.uk>
2450
2451         * c.opt: Document Uncodumented; use it.  Document ObjC options.
2452         * opts.c (print_filtered_help): Skip undocumented switches.
2453         * opts.h (CL_UNDOCUMENTED): New.
2454         * opts.sh: Handle Undocumented.
2455         * toplev.c (documented_lang_options): Prevent its becoming empty.
2456 objc:
2457         * lang-options.h: Remove.
2458
2459 2003-07-16  Ulrich Weigand  <uweigand@de.ibm.com>
2460
2461         * loop.c (check_ext_dependent_givs): Pass const struct loop *
2462         instead of struct loop_info * as argument.  Accept BIVs with
2463         increment +/- 1 provided there is a friendly exit test against
2464         a loop-invariant value.
2465         (strength_reduce): Adapt call to check_ext_dependent_givs.
2466
2467 2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>
2468             Con Bradley <con.bradley@superh.com>
2469
2470         * sh-protos.h (sh_get_pr_initial_val): Declare.
2471         * sh.c (regno_reg_class): Make its elements type enum reg_class.
2472         (output_stack_adjust): Remove emit_fn argument.  Add epilogue_p
2473         and live_regs_mask arguments.  Changed all callers.
2474         (save_schedule_s): New structure.
2475         (save_schedule): New typedef.
2476         (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
2477         (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
2478         In interrupts handlers, also save registers that are usually
2479         partially saved, and make sure there is at least one general purpose
2480         register saved if a target register needs saving.
2481         Add casts in comparisons to avoid warnings.
2482         (sh_media_register_for_return): return -1 for interrupt handlers.
2483         (MAX_SAVED_REGS, MAX_TEMPS): New defines.
2484         (sh_expand_prologue): Use sh5_schedule_saves.  Check that any temp
2485         registers used are available.
2486         Set RTX_FRAME_RELATED_P where appropriate.
2487         Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
2488         (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
2489         (initial_elimination_offset): Likewise.
2490         * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
2491         (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
2492         (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
2493         (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
2494         (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
2495         and for target registers.
2496         (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
2497         (regno_reg_class): Make its elements type enum reg_class.
2498         (CONSTRAINT_LEN): Don't use isdigit.
2499         (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
2500         (FUNCTION_ARG): Add parentheses to avoid warnings.
2501         (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
2502         (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
2503         (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
2504         (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
2505         * sh.md (xordi3+1): Remove unused variable regno.
2506         (return_media): Check that tr0 is available before using it.
2507
2508 2003-07-16  Neil Booth  <neil@daikokuya.co.uk>
2509
2510         * c.opt: Document more options.
2511
2512 2003-07-16  Roger Sayle  <roger@eyesopen.com>
2513
2514         * combine.c (subst): Also handle (subreg (const_double ...)) case
2515         if created by a substitution, by using the original inner mode.
2516
2517 2003-07-16  Roger Sayle  <roger@eyesopen.com>
2518
2519         * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
2520         to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
2521         (simplify_rtx): Likewise.  Simplify (lo_sum (high X) X) as X.
2522
2523 2003-07-16  Andrew Pinski  <pinskia@physics.uc.edu>
2524
2525         * doc/install.texi (--without-headers): New.
2526
2527         Partial Fix PR/10129
2528         * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
2529         (machopic_output_function_base_name): New; print the true pic label.
2530         (machopic_classify_ident): Pic Base is always a defined data.
2531         * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
2532         * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
2533
2534         * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
2535         if they are not floating point registers.
2536
2537         PR c/10962
2538         * ggc.h: Add header guards.
2539         * c-decl.c (finish_struct): Sort fields if
2540         number greater than 15 and there are no
2541         anonymous structs/unions.
2542         * c-common.h: Include ggc.h.
2543         (sorted_fields_type): New struct.
2544         (field_decl_cmp): New prototype.
2545         (resort_sorted_fields): New prototype.
2546         (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
2547         * c-tree.h: (lang_type): Use pointer to sorted_fields_type
2548         as s, removing other fields.
2549         * c-typeck.c (lookup_field): Use s in lang_type.
2550         These were mostly moved from cp/class.c:
2551         * c-common.c (field_decl_cmp): New static function.
2552         (field_decl_cmp): New function.
2553         (resort_sorted_fields): New function.
2554
2555 2003-07-16  Geoffrey Keating  <geoffk@apple.com>
2556
2557         * config/darwin.c (machopic_select_section): Use decl_readonly_section
2558         to do most of the work.
2559
2560 2003-07-16  Hans-Peter Nilsson  <hp@bitrange.com>
2561
2562         * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
2563         * config/mmix/mmix.c: Convert functions to ISO C90.
2564         (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
2565         formatting.
2566         (mmix_get_hard_reg_initial_val): Tweak section head comment.
2567
2568 2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>
2569
2570         * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
2571
2572 2003-07-16  Jakub Jelinek  <jakub@redhat.com>
2573
2574         * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
2575         (uw_update_context_1): Use it.
2576         * config/rs6000/rs6000.c (insn_after_throw): Remove.
2577         (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
2578         in parent frame if _Unwind_* called directly instead of through
2579         .plt.
2580         (rs6000_emit_eh_toc_restore): Remove.
2581         (rs6000_emit_prologue): Update stack pointer before doing any saving
2582         if current_function_calls_eh_return.  Generate unwind info for $r2.
2583         (rs6000_emit_epilogue): Restore stack pointer after doing all
2584         restoring if current_function_calls_eh_return.  Restore $r2.
2585         * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
2586         * config/rs6000/rs6000.md (eh_return): Remove call to
2587         rs6000_emit_eh_toc_restore.
2588         * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
2589         * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
2590
2591 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
2592
2593         * expr.c (emit_block_move): Don't move anything if size is const 0.
2594         (clear_storage): Test against const0_rtx instead of comparing INTVAL
2595         against 0.
2596
2597 2003-07-15  David S. Miller  <davem@redhat.com>
2598
2599         * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
2600         emit nop if the last real insn is CALL_INSN.
2601
2602 2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
2603
2604         * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
2605         as "nul".
2606         * config/i386/xm-mingw32.h: Change GNU CC to GCC.
2607
2608 2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
2609
2610         * config/i386/winnt.c (associated_type): Artificial methods are not
2611         affected by the import/export status of their class unless they are
2612         COMDAT.
2613         (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
2614
2615         * config/i386/winnt.c: Fix GCC copyright comment.
2616
2617 2003-07-16  Gabriel Dos Reis  <gcc@integrable-solutions.net>
2618
2619         PR c++/11531
2620         * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
2621         not recursing on hard error.
2622         (diagnostic_for_decl): Likewise.
2623         * diagnostic.def: Rearrange.
2624
2625 2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>
2626
2627         * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
2628         If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
2629
2630 2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>
2631             Richard Henderson  <rth@redhat.com>
2632
2633         * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
2634         to decide if to access a _Unwind_Ptr or a _Unwind_Word.
2635         (_Unwind_SetGR): Likewise.
2636         (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
2637         (Unwind_SpTmp): New typedef.
2638         (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
2639         (uw_update_context): Use _Unwind_GetPtr.
2640         (init_dwarf_reg_size_table): Move above uw_init_context_1.
2641         (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
2642         Use _Unwind_SetSpColumn.
2643         (uw_install_context_1): Don't initialize dwarf_reg_size_table.
2644         Use _Unwind_GetPtr.
2645
2646 2003-07-15  Neil Booth  <neil@daikokuya.co.uk>
2647
2648         * c.opt: Document more options.
2649         * toplev.c (documented_lang_options): Remove all local help strings.
2650
2651 2003-07-15  Mark Mitchell  <mark@codesourcery.com>
2652
2653         PR debug/11473
2654         * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
2655         base classes.
2656
2657 2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>
2658
2659         PR target/10795
2660         * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
2661         swap comparison operands if doing so would generate an
2662         unrecognizable insn.
2663
2664 2003-07-15  Eric Botcazou  <ebotcazou@libertysurf.fr>
2665
2666         PR optimization/11320
2667         * sched-int.h (struct deps) [reg_conditional_sets]: New field.
2668         (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
2669         * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
2670         current_sched_info->compute_jump_reg_dependencies. Record which
2671         registers are used and which registers are set by the jump.
2672         Clear deps->reg_conditional_sets after a barrier.
2673         Set deps->reg_conditional_sets if the insn is a COND_EXEC.
2674         Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
2675         (init_deps): Initialize reg_conditional_sets.
2676         (free_deps): Clear reg_conditional_sets.
2677         * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
2678         Mark registers live on entry of the fallthrough block and conditionally
2679         set as set by the jump. Mark registers live on entry of non-fallthrough
2680         blocks as used by the jump.
2681         * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
2682         Mark new parameters as unused.
2683
2684 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
2685
2686         * doc/invoke.texi: Resync MIPS -march documentation.
2687
2688 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
2689
2690         * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
2691         (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
2692         (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
2693         * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
2694         (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
2695         (mips_issue_rate): Handle PROCESSOR_R9000.
2696         (mips_use_dfa_pipeline_interface): Likewise.
2697         * config/mips/9000.md: New file.
2698         * config/mips/mips.md: Include it.
2699         (define_attr cpu): Add r9000.
2700         (mulsi3_mult3): Use "mul" for rm9000 code.
2701
2702 2003-07-15  Stan Cox  <scox@redhat.com>
2703
2704         * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
2705         (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
2706         (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
2707         * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
2708         (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
2709         (mips_issue_rate): Handle PROCESSOR_R7000.
2710         (mips_use_dfa_pipeline_interface): Likewise.
2711         * config/mips/7000.md: New file.
2712         * config/mips/mips.md: Include it.
2713         (define_attr cpu): Add r7000.
2714         (mulsi3_mult3): Use "mul" for rm7000 code.
2715
2716 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
2717
2718         * config/mips/mips.md (define_attr type): Add condmove.  Use it for
2719         the conditional move patterns.
2720         * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
2721         Check for condmove type.
2722         (ir_vr54_arith): Add move type.
2723         * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
2724         * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
2725
2726 2003-07-15  Neil Booth  <neil@daikokuya.co.uk>
2727
2728         * c-opts.c (print_help): Remove.
2729         (c_common_handle_option): Don't handle --help.
2730         * c.opt: Document some options.
2731         (--help): Remove.
2732         * opts.c (print_filtered_help): New.
2733         (print_help): Use it.
2734
2735 2003-07-14  Geoffrey Keating  <geoffk@apple.com>
2736
2737         * c-common.c (c_common_type_for_mode): Handle V4DFmode.
2738         * tree.c: (build_common_tree_nodes_2): Likewise.
2739         * tree.h (enum tree_index): Add TI_V4DF_TYPE.
2740         (V4DF_type_node): New.
2741
2742         * c-opts.c (push_command_line_include): Don't free deferred_opts,
2743         we'll need it.
2744         (finish_options): Reset init_cursor.
2745
2746 2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>
2747
2748         * expr.c (expand_assignment): Remove an unused argument
2749         SUGGEST_REG.
2750         * expr.h: Update the prototype.
2751         * function.c: Update the callers.
2752         * stmt.c: Likewise.
2753
2754 2003-07-14  Mark Mitchell  <mark@codesourcery.com>
2755
2756         PR debug/11098
2757         * integrate.c (copy_decl_for_inlining): Do not mark copied decls
2758         as DECL_ABSTRACT.
2759
2760 2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>
2761
2762         * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
2763         with __cplusplus, not "we must use the C++ compiler's type"
2764         * fixinc/inclhack.def (void_null): Note that Interix needs this.
2765         * fixinc/fixincl.x: Regenerate.
2766
2767 2003-07-14  Geoffrey Keating  <geoffk@apple.com>
2768
2769         * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
2770         and unseen_objects from the global data before calling
2771         __deregister_frame_info_bases.
2772         (examine_objects): Insert objects into the seen_objects list,
2773         not unseen_objects.
2774         (_Unwind_Find_FDE): Always unlock the global object lists, even if
2775         we couldn't allocate a data structure to put in it.
2776
2777         * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
2778         (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
2779         (SET_TYPE_PROTOCOL_LIST): New.
2780         * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
2781         (get_object_reference): Likewise.
2782
2783 Mon Jul 14 23:14:28 CEST 2003  Jan Hubicka  <jh@suse.cz>
2784
2785         * cfglayout.c (locator_file): Break out from ....
2786         (insn_file): ... here.
2787         (locator_line): Break out from ....
2788         (insn_line): ... here.
2789         * rtl.h (locator_file, locator_line): Declare.
2790         (final_start_function): Set proper line/file info.
2791
2792 2003-07-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2793
2794         * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
2795         handled by pp_c_cast_expression.
2796
2797 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
2798
2799         * config/mips/mips.c (mips_expand_prologue): Use a single insn to
2800         allocate 32768 bytes of stack.  Use addition rather than subtraction
2801         when a single insn is enough.
2802         * config/mips/mips.md: Remove insns and splitters for subtracting
2803         constants.
2804         (subsi3): Only accept register operands.
2805         (subsi3_internal): Likewise.  Use for TARGET_MIPS16 as well.
2806         (subdi3_internal_3, subsi3_internal_2): Likewise.
2807         (casesi): Use expand_binop to subtract the lower bound.
2808
2809 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
2810
2811         * config/mips/mips.c (mips_in_small_data_p): Don't handle
2812         TARGET_MIPS16 specially.
2813
2814 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
2815
2816         * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
2817         mips_output_aligned_bss.
2818         * config/mips/linux.h: Likewise.
2819         * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
2820         * config/mips/mips.c (mips_output_aligned_bss): New function.
2821
2822         * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
2823         * config/mips/elf64.h: Likewise.
2824
2825         * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
2826         mips_declare_object_name.
2827         (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
2828         * config/mips/elf64.h: As for elf.h.
2829         * config/mips/iris6.h: Likewise.
2830         * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
2831         * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
2832         do...while (0) block.
2833         * config/mips/mips-protos.h (mips_declare_object_name): Declare.
2834         (mips_finish_declare_object): Declare.
2835         * config/mips/mips.c (mips_declare_object_name): New function.
2836         (mips_finish_declare_object): New function.
2837
2838         * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
2839         * config/mips/linux.h: Likewise.
2840
2841         * config/mips/mips.c (inside_function): Delete.
2842         (file_in_function_warning, ignore_line_number): Delete.
2843         (mips_output_filename): Don't warn about changing filenames within
2844         a function.
2845         (mips_output_lineno): Update accordingly.
2846         (mips_output_function_prologue): Don't reset the deleted variables.
2847         * config/mips/mips.h (inside_function): Delete.
2848         (file_in_function_warning, ignore_line_number): Delete.
2849
2850         * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
2851         * config/mips/elf64.h: Likewise.
2852         * config/mips/openbsd.h: Likewise.
2853         * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
2854         * config/mips/linux.h: Likewise.
2855         * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
2856         (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
2857
2858         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
2859         to the list of include files when using gas.
2860         (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
2861         * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
2862         * config/mips/elf64.h: Likewise.
2863         * config/mips/iris5.h: Likewise.
2864         * config/mips/linux.h: Likewise.
2865         * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
2866         * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
2867         (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
2868         * config/mips/sdb.h: ...this new file.
2869
2870 2003-07-14  Douglas Rupp  <rupp@gnat.com>
2871
2872         * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
2873         argument to getcwd; use fixed buffer instead.
2874
2875 2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>
2876
2877         * fixinc/mkfixinc.sh: Treat OpenBSD normally.
2878         * fixinc/fixinc.wrap: Delete.
2879
2880 2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>
2881
2882         * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
2883         don't have 2.
2884
2885 2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>
2886
2887         * ggc-page.c (struct globals): Add new fields to keep track of the
2888         total allocated memory and overhead.
2889         (ggc_print_statistics): Print them.
2890         (ggc_alloc): Keep track of the total allocated memory and the
2891         overhead.
2892
2893         * tree.c (dump_tree_statistics): Increase spacing.
2894         (enum tree_node_kind): Move to ...
2895         * tree.h (enum tree_node_kind): ... here.
2896         (tree_node_counts, tree_node_sizes): Declare.
2897
2898 2003-07-14  James A. Morrison  <ja2morri@student.math.uwaterloo.ca>
2899
2900         * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
2901
2902 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2903
2904         PR optimization/11440
2905         * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
2906         SIGN_EXTRACT SETs.
2907
2908 2003-07-14  Alan Modra  <amodra@bigpond.net.au>
2909
2910         * doc/tm.texi (BLOCK_REG_PADDING): Describe.
2911         * expr.h (struct locate_and_pad_arg_data): Add where_pad.
2912         (emit_group_load, emit_group_store): Adjust declarations.
2913         Remove most occurrences of #ifdef TREE_CODE.
2914         * expr.c (emit_group_load): Add "type" param, and use
2915         BLOCK_REG_PADDING to determine need for a shift.  Optimize non-
2916         aligned accesses if !SLOW_UNALIGNED_ACCESS.
2917         (emit_group_store): Likewise.
2918         (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
2919         emit_group_load and emit_group_store calls.
2920         * calls.c (store_unaligned_arguments_into_pseudos): Tidy.  Use
2921         BLOCK_REG_PADDING to determine whether we need endian_correction.
2922         (load_register_parameters): Localize vars.  Handle shifting of
2923         small values to the correct end of regs.  Adjust emit_group_load
2924         call.
2925         (expand_call, emit_library_call_value_1): Adjust emit_group_load
2926         and emit_group_store calls.
2927         * function.c (assign_parms): Set mem alignment for stack slots.
2928         Adjust emit_group_store call.  Store values at the "wrong" end
2929         of regs to the stack.  Use BLOCK_REG_PADDING.
2930         (locate_and_pad_parm): Save where_pad.
2931         (expand_function_end): Adjust emit_group_load call.
2932         * stmt.c (expand_value_return): Adjust emit_group_load call.
2933         * Makefile.in (calls.o): Depend on $(OPTABS_H).
2934         * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
2935         (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
2936         (MUST_PASS_IN_STACK): Define.
2937         (BLOCK_REG_PADDING): Define.
2938         * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
2939         (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
2940         * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
2941         (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
2942         Act on AGGREGATES_PAD_UPWARD_ALWAYS.
2943
2944 2003-07-13  Aaron W. LaFramboise  <awlaframboise@aol.com>
2945
2946         * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
2947
2948 2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2949
2950         * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
2951         both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
2952
2953 2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>
2954
2955         PR other/11123
2956         * toplev.c: Don't cut off option names.
2957
2958 2003-07-13  Andreas Jaeger  <aj@suse.de>
2959
2960         * c-decl.c (link_hash_hash): Avoid warning about casting pointer
2961         to integer of different size.
2962
2963 2003-07-13  Kazu Hirata  <kazu@cs.umass.edu>
2964
2965         * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
2966         to (eq (and X 1) 0).
2967
2968 2003-07-13  Andreas Jaeger  <aj@suse.de>
2969
2970         * config.gcc: Add pmmintrin.h for x86_64-*-*.
2971
2972 2003-07-13  Zack Weinberg  <zack@codesourcery.com>
2973
2974         * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
2975         (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
2976         list.  Move these all together down by cpplib.
2977
2978         * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
2979         definition of CPPCHAR_SIGNED_T.
2980
2981         * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
2982         * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
2983         * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
2984
2985         * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
2986         * cppinit.c (cpp_create_reader): Likewise.
2987
2988         * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
2989         * cpptrad.c: Likewise.  All callers changed.
2990         * cpplib.c: All callers changed.
2991         * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
2992         * hashtable.h: Define GTY(x) to nothing here too.
2993
2994 2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2995
2996         * stor-layout.c (compute_record_mode): Remove very obsolete test
2997         that forces BLKmode for records with fields crossing word boundary.
2998
2999 2003-07-13  Zack Weinberg  <zack@codesourcery.com>
3000
3001         * Makefile.in: Remove orphan reference to acconfig.h.
3002
3003 2003-07-13  Andreas Jaeger  <aj@suse.de>
3004
3005         * cgraphunit.c: Convert prototypes to ISO C90.
3006
3007 2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>
3008
3009         * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
3010         (for OpenBSD).
3011         * fixinc/fixincl.x: Rebuild.
3012
3013 2003-07-12  Zack Weinberg  <zack@codesourcery.com>
3014
3015         * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
3016         i?86-*-*.  Use correct name of cache variable.
3017         * configure: Regenerate.
3018
3019 2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>
3020
3021         * config/alpha/alpha.c: Fix comment typos.
3022         * config/alpha/alpha.md: Likewise.
3023         * config/arm/arm.c: Likewise.
3024         * config/arm/arm.md: Likewise.
3025         * config/arm/lib1funcs.asm: Likewise.
3026         * config/avr/avr.md: Likewise.
3027         * config/arm/README-interworking: Fix typos.
3028
3029 2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>
3030
3031         * c-format.c: Fix comment formatting.
3032         * c-typeck.c: Likewise.
3033         * coverage.c: Likewise.
3034         * cppcharset.c: Likewise.
3035         * cpplib.c: Likewise.
3036         * dbxout.c: Likewise.
3037         * gcov-io.h: Likewise.
3038         * toplev.c: Likewise.
3039
3040 2003-07-12  Nathanael Nerode  <neroden@gcc.gnu.org>
3041
3042         * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
3043         fix.
3044
3045 2003-07-12  Zack Weinberg  <zack@codesourcery.com>
3046
3047         * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
3048         uses three-argument AC_DEFINE so no acconfig.h entries are
3049         needed.
3050         (_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
3051         which contains the GAS version number as a scaled integer.
3052         (gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers.  Add
3053         ability to check for ELF assembler.
3054         (gcc_GAS_CHECK_FEATURE): New macro.
3055         * configure.in: Use gcc_AC_CHECK_TYPE.  Rewrite all
3056         assembler feature checks using gcc_GAS_CHECK_FEATURE.
3057         Use three-argument AC_DEFINE everywhere.
3058         * acconfig.h: Deleted.
3059         * config.in, configure: Regenerate.
3060
3061 2003-07-12  Nathanael Nerode  <neroden@gcc.gnu.org>
3062
3063         * fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
3064         (on OpenBSD).
3065         * fixinc/fixincl.x: Regenerate.
3066
3067         * fixinc/inclhack.def (gnu_types): Improve comment.
3068
3069 2003-07-12  Andreas Jaeger  <aj@suse.de>
3070
3071         * fp-test.c (main): Use ISO C90 prototype.
3072
3073         * version.c: Remove unneded include of ansidecl.h.
3074
3075         * cgraph.h: Convert prototypes to ISO C90.
3076         * cgraph.c: Likewise.
3077         * fix-header.c: Likewise.
3078         * ra.h: Likewise.
3079         * protoize.c: Likewise.
3080
3081 Sat Jul 12 06:09:38 CEST 2003  Jan Hubicka  <jh@suse.cz>
3082
3083         * cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
3084         warning.
3085
3086 Sat Jul 12 03:06:01 CEST 2003  Jan Hubicka  <jh@suse.cz>
3087                                Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3088
3089         * cgraph.c (cgraph_max_uid): New global variable.
3090         (cgraph_node): Set uid field.
3091         (create_edge): Keep inline flags consistent.
3092         (dump_cgraph): Dump more info.
3093         * cgraph.h (struct cgraph_local_info): Remove inline_many and
3094         can_inline_once; add inlinable, disgread_inline_limits, and self_insn
3095         (struct cgraph_global_info): Add insns, calls, cloned_times,
3096         will_be_output.
3097         (struct cgraph_node): Add uid.
3098         (struct cgraph_edge): Add inline_call.
3099         (cgraph_max_uid, cgraph_inline_p): Declare.
3100         * cgraph.c: Include params.h and fibheap.h
3101         (cgraph_mark_functions_to_inline_once): Kill.
3102         (INSNS_PER_CALL): New constant.
3103         (ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
3104         static variables.
3105         (cgraph_finalize_function): Do not analyze inlining.
3106         (cgraph_finalize_compilation_unit): Set inlining attributes.
3107         (cgraph_mark_functions_to_output): More consistency checks.
3108         (cgraph_optimize_function): Set current_function_decl to NULL.
3109         (cgraph_expand_function): Use new inline flags.
3110         (cgraph_postorder): Expand from cgraph_expand_functions.
3111         (INLINED_TIMES, SET_INLINED_TIMES): New macros.
3112         (cgraph_inlined_into, cgraph_inlined_callees,
3113         cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
3114         cgraph_mark_inline, cgraph_check_inline_limits,
3115         cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
3116         cgraph_decide_inlining, cgraph_inline_p): New functions.
3117         * params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
3118         PARAM_INLINE_UNIT_GROWTH): New parameters.
3119         * tree-inline.c (struct inline_data): New field current_decl.
3120         (expand_call_inline): Avoid forward declarations; use
3121         inlinable_function_p.
3122         (optimize_inline_calls): Set id.current_decl.
3123
3124 2003-07-11  Andrew Pinski  <pinskia@physics.uc.edu>
3125
3126         * configure.in: Remove wrongly added definition of
3127         local_prefix.
3128         * configure: Regenerate.
3129
3130 2003-07-11  Dan Nicolaescu  <dann@ics.uci.edu>
3131
3132         * rtl.def (NOTE): Do not use padding.
3133
3134 2003-07-11  Dara Hazeghi  <dhazeghi@yahoo.com>
3135
3136         * doc/install.tex: Update required binutils for i?86-*-linux*
3137
3138 2003-07-11  Richard Henderson  <rth@redhat.com>
3139
3140         * Makefile.in (stage1_build): Force OBJS-onestep=OBJS.
3141
3142 2003-07-11  Mark Mitchell  <mark@codesourcery.com>
3143
3144         * varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
3145         TRANSLATION_UNIT_DECL as top_level.
3146
3147 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
3148
3149         * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
3150         then fall back to cmpstrM.
3151         * builtins.c (expand_builtin_memcmp): Likewise.
3152         * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
3153         (s390_expand_cmpmem): ... this.
3154         * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
3155         cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
3156         from cmpstr* patterns.  Rename call to s390_expand_cmpstr
3157         to s390_expand_cmpmem.
3158         * config/s390/s390.c (s390_expand_cmpstr): Rename to...
3159         (s390_expand_cmpstr): ... this.  Rename cmpstr* instructions
3160         to cmpmem*.
3161         * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
3162         cmpstr* patterns.
3163         * doc/md.texi (cmpstrM): Describe as String compare insn, not
3164         Block compare insn.
3165         (cmpmemM): Add.
3166
3167 2003-07-11  Loren James Rittle  <ljrittle@acm.org>
3168
3169         * config/i386/freebsd.h (SET_ASM_OP): Remove.
3170         (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
3171         (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
3172          MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
3173
3174 2003-07-11  Richard Henderson  <rth@redhat.com>
3175
3176         * function.c (assign_parms): Don't recombine complex args if
3177         fnargs is unchanged from orig_fnargs.
3178         (split_complex_args): Return args without complex before copying.
3179         Re-layout the modified parameters.
3180
3181 2003-07-11  J"orn Rennecke <joern.rennecke@superh.com>
3182
3183         * regclass.c (choose_hard_reg_mode): Add third argument.
3184         Changed all callers.
3185         * rtl.h (choose_hard_reg_mode): Update declaration.
3186         * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
3187         Take HARD_REGNO_CALL_PART_CLOBBERED into account.
3188
3189 2003-07-11  Geoffrey Keating  <geoffk@apple.com>
3190
3191         * c-decl.c (finish_decl): Handle 'used' here...
3192         * cgraphunit.c (cgraph_finalize_function): ... and here ...
3193         * c-common.c: (handle_used_attribute): ... not here.
3194
3195         * configure.in (onstep): Support --enable-intermodule.
3196         * Makefile.in (OBJS-common): New.
3197         (OBJS-md): New.
3198         (OBJS-archive): New.
3199         (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
3200         (OBJS-onestep): New.
3201         (libbackend.a): Support @onestep@.
3202         (libbackend.o): New.
3203         * configure: Regenerate.
3204
3205         * c-common.h (c_reset_state): New prototype.
3206         (c_parse_file): New prototype.
3207         (finish_file): Move prototype from c-tree.h.
3208         * c-decl.c: Include <hashtab.h>.
3209         (builtin_decls): New.
3210         (current_file_decl): New.
3211         (duplicate_decls): Add extra parameter. Change all callers.  Don't
3212         output duplicate common symbols.
3213         (link_hash_hash): New.
3214         (link_hash_eq): New.
3215         (poplevel): Handle popping of the top level.
3216         (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
3217         (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
3218         (pushdecl_top_level): Likewise.
3219         (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
3220         (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
3221         (finish_decl): Handle TRANSLATION_UNIT_DECL.
3222         (merge_translation_unit_decls): New.
3223         (c_write_global_declarations): New.
3224         (c_reset_state): New.
3225         (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
3226         * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
3227         * c-objc-common.c (c_cannot_inline_tree_fn): Handle
3228         TRANSLATION_UNIT_DECL.
3229         (c_objc_common_finish_file): Call merge_translation_unit_decls.
3230         * c-opts.c (in_fnames): Rename from in_fname.
3231         (c_common_decode_option): Handle multiple input filenames.
3232         (c_common_post_options): Likewise.
3233         (c_common_parse_file): Likewise; also, call c_parse_file rather than
3234         yyparse.
3235         * c-parse.in: Move cleanup code to c_parse_file.
3236         (free_parser_stacks): Move contents to c_parse_file.
3237         (c_parse_file): New.
3238         * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
3239         for integer types.
3240         (C_DECL_FILE_SCOPE): New.
3241         (finish_file): Move prototype to c-common.h.
3242         (merge_translation_unit_decls): New prototype.
3243         (comptypes): Add extra parameter to prototype.
3244         (c_write_global_declarations): New prototype.
3245         * c-typeck.c (tagged_types_tu_compatible_p): New.
3246         (function_types_compatible_p): Add extra parameter, change all callers.
3247         (type_lists_compatible_p): Likewise.
3248         (comptypes): Likewise.
3249         (struct tagged_tu_seen): New.
3250         (tagged_tu_seen_base): New.
3251         (build_unary_op): Handle TRANSLATION_UNIT_DECL.
3252         (c_mark_addressable): Remove #if 0 code.
3253         * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
3254         comment explaining why it shouldn't have to.
3255         * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
3256         options.
3257         * cppinit.c (cpp_read_next_file): New.
3258         (cpp_read_main_file): Use it.
3259         * cpplib.c (undefine_macros): New.
3260         (cpp_undef_all): New.
3261         * cpplib.h (cpp_read_next_file): Prototype.
3262         (cpp_undef_all): Prototype.
3263         * langhooks-def.h (write_global_declarations): Remove prototype.
3264         * toplev.h (write_global_declarations): Add prototype.
3265         * tree.c (decl_type_context): Use switch statement, handle
3266         TRANSLATION_UNIT_DECL.
3267         * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
3268         (TRANSLATION_UNIT_DECL): New kind of tree.
3269         * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
3270         * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
3271         * doc/invoke.texi: Make attempt to document new functionality.
3272
3273         2003-05-19  Per Bothner <bothner@apple.com>
3274
3275         * gcc.c (combine_inputs): New.
3276         (process_command): Set combine_inputs.
3277         (do_spec_1): Handle combine_inputs.
3278         (main): Likewise.
3279
3280 2003-07-10  James E Wilson  <wilson@tuliptree.org>
3281
3282         PR optimization/9745
3283         * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
3284         loop_insn_emit_before.
3285         (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
3286
3287 2003-07-10  Zack Weinberg  <zack@codesourcery.com>
3288
3289         * cppcharset.c: Fix comment.
3290         (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
3291         (EILSEQ): #define to EINVAL if not already defined.
3292         (convert_using_iconv): #if out when !HAVE_ICONV.
3293         (init_iconv_desc): Handle !HAVE_ICONV here...
3294         (cpp_init_iconv): ...not here.
3295
3296 2003-07-11  Neil Booth  <neil@daikokuya.co.uk>
3297
3298         * common.opt: More --help messages.
3299         * opts.c (print_help): Use puts().
3300         * toplev.c (f_options): Remove help text.
3301         (display_help): Don't dump f_options.
3302
3303 2003-07-11  Nathanael Nerode  <neroden@gcc.gnu.org>
3304
3305         * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
3306         Move i?86-*-interix* to the don't-fix list.
3307         * fixinc/fixinc.interix: Delete with extreme prejudice.
3308
3309 2003-07-10  Dara Hazeghi  <dhazeghi@yahoo.com>
3310
3311         PR bootstrap/10758
3312         * doc/install.texi: Document requirements for ia64-*-hpux* target.
3313
3314 2003-07-10  Roger Sayle  <roger@eyesopen.com>
3315
3316         * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
3317
3318 2003-07-10  Zack Weinberg  <zack@codesourcery.com>
3319
3320         * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
3321         one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
3322         one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
3323         convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
3324         convert_no_conversion, convert_using_iconv): New functions.
3325         (APPLY_CONVERSION): New macro.
3326         (struct conversion, conversion_tab): New data structure.
3327         (init_iconv_desc): Check conversion_tab for a custom conversion
3328         primitive before trying to use iconv.
3329         (convert_cset): Deleted.
3330         (cpp_init_iconv): Use UTF- terminology, not UCS-.
3331         (_cpp_destroy_iconv): Update to match.
3332         (_cpp_valid_ucn): We don't need iconv to implement UCNs.
3333         (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
3334         (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
3335         (_cpp_interpret_string_notranslate): New function, moved here
3336         from cpplib.c.
3337
3338         * cpphash.h (convert_f, struct cset_converter): New types.
3339         (struct cpp_reader): narrow_cset_desc and wide_cset_desc
3340         are now struct cset_converter, not bare iconv_t.
3341         Update prototypes.
3342         * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
3343         all callers changed.
3344
3345 2003-07-10  Kelley Cook  <kelleycook@wideopenwest.com>
3346
3347         * Makefile.in (options.h): Depend on Makefile.  Add move-if-change
3348         to opts.sh command line.
3349         * opts.sh: Write to temporary files with a move-if-change at the end.
3350
3351 2003-07-10  Denis Chertykov  <denisc@overta.ru>
3352             Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3353
3354         * combine.c (gen_binary): Handle the CLOBBER rtx and
3355         don't build a binary operation with it.
3356
3357 2003-07-10  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
3358
3359         * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
3360         store_killed_after, store_killed_before): Keep track of the correct
3361         dependency function to use.
3362
3363 2003-07-10  Steven Bosscher  <steven@gcc.gnu.org>
3364         * toplev.c (do_compile): Don't try to open dump files before
3365         lang_dependent_init initializes dump_base_name.
3366
3367 2003-07-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3368
3369         * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
3370         Use ARRAY_SIZE.
3371         * config/frv/frv.c (frv_expand_builtin): Likewise.
3372         * config/sh/sh.c (sh_media_init_builtins): Likewise.
3373
3374 2003-07-09  Mark Mitchell  <mark@codesourcery.com>
3375
3376         PR c++/10032
3377         * doc/invoke.texi (C++ Dialect Options): Change documentation of
3378         -fpermissive.
3379
3380 2003-07-10  J"orn Rennecke <joern.rennecke@superh.com>
3381
3382         * tm.texi (RETURN_ADDR_OFFSET): Document.
3383
3384 2003-07-10  Nathan Sidwell  <nathan@codesourcery.com>
3385
3386         * gcov-io.h: Update documentation.
3387         (GCOV_UNSIGNED2STRING): New.
3388         (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
3389         GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
3390         GCOV_TAG_SUMMARY_LENGTH): Adjust.
3391         (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
3392         GCOV_TAG_COUNTER_NUM): New.
3393         (GCOV_BLOCK_SIZE): Number of words.
3394         (gcov_var): Adjust buffer type.
3395         * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
3396         (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
3397         count, not byte count.
3398         (gcov_open): Adjust overread init.
3399         (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
3400         gcov_write_string, gcov_write_tag, gcov_write_length,
3401         gcov_write_tag_length): Adjust.
3402         (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
3403         (gcov_sync, gcov_seek): Adjust.
3404         * gcov-dump.c (print_usage): Show gcc version only.
3405         (dump_file): Use GCOV_UNSIGNED2STRING.
3406         (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
3407         * gcov.c (print_version): Show gcc version only.
3408         (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
3409         GCOV_TAG_*_NUM macros.
3410         (read_count_file): Use GCOV_UNSIGNED2STRING. Use
3411         GCOV_TAG_COUNTER_LENGTH.
3412         * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
3413         Use GCOV_TAG_COUNTER_NUM.
3414         * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
3415         (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
3416
3417 2003-07-10  Andreas Schwab  <schwab@suse.de>
3418
3419         * gcov-dump.c (dump_file): Fix missing address operator.
3420
3421 2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>
3422
3423         PR c/11449
3424         * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
3425         of HOST_WIDE_INT.
3426         (fold_single_bit_test): If sign_bit_p() fails, assume that the
3427         bit being tested is not a sign bit.
3428
3429 2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>
3430
3431         * config/h8300/h8300.md (a peephole2): New.
3432
3433 2003-07-10  Alexandre Oliva  <aoliva@redhat.com>
3434
3435         2001-12-13  Alexandre Oliva  <aoliva@redhat.com>
3436         * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
3437         from ld-linux.so.2 to ld.so.1.
3438         2001-11-18  Alexandre Oliva  <aoliva@redhat.com>
3439         * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
3440         * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
3441         nor -Wl,-rpath-link.
3442         (LIB_SPEC): Add -rpath-link if !static.
3443         2001-08-22  Alexandre Oliva  <aoliva@redhat.com>
3444         * config/mn10300/mn10300.c (mn10300_protect_label): New
3445         variable.
3446         * config/mn10300/linux.h (PRINT_OPERAND,
3447         PRINT_OPERAND_ADDRESS): Set it during their execution.
3448         (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
3449         mn10300_protect_label is set.
3450         * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
3451         -Wl,-rpath-link.
3452         (LIB_SPEC, STARTFILE_SPEC): Define.
3453         2001-05-11  Alexandre Oliva  <aoliva@redhat.com>
3454         * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
3455         FLOAT_BIT_ORDER_MISMATCH.
3456         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
3457         * config.gcc (am33_2.0-*-linux*): Added.
3458         * config/mn10300/linux.h: New.
3459         * config/mn10300/t-linux: New.
3460
3461 2003-07-10  Andreas Jaeger  <aj@suse.de>
3462
3463         * fold-const.c: Properly wrap prototypes.
3464
3465 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
3466
3467         2003-06-16  Alexandre Oliva  <aoliva@redhat.com>
3468         * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
3469         Moved from...
3470         * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
3471         * config/mn10300/mn10300.h: GTY-declare it.
3472         2003-06-11  Alexandre Oliva  <aoliva@redhat.com>
3473         * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
3474         prototype.  Use incoming RTL argument.
3475         2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
3476         * config/mn10300/mn10300.md (int_label): Move C statements...
3477         (GOTaddr2picreg): ... here.
3478         2002-08-15  Alexandre Oliva  <aoliva@redhat.com>
3479         * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
3480         * config/mn10300/mn10300.c (mn10300_encode_section_info):
3481         ... here.  New function.
3482         (TARGET_ENCODE_SECTION_INFO): Define to it.
3483         2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
3484         * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
3485         pattern name.
3486         (mn10300_loadPC): Define as insn splittable after reload.
3487         2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
3488         * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
3489         be defined in .rodata even in PIC, now that the assembler
3490         supports that.
3491         2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
3492         * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
3493         symbol take an underscore prefix.
3494         2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
3495         * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
3496         legitimize_pic_address): Declare.
3497         * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
3498         the PIC register as fixed.
3499         (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
3500         (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
3501         PIC.
3502         (LEGITIMATE_PIC_OPERAND_P): Define.
3503         (PIC_OFFSET_TABLE_REGNUM): Define.
3504         (GOT_SYMBOL_NAME): Define.
3505         (SYMBOLIC_CONST_P): Define.
3506         (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
3507         symbols.
3508         (MN10300_GLOBAL_P): Test it.
3509         (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
3510         (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
3511         * config/mn10300/mn10300.c (print_operand): Handle unspec.
3512         (expand_prologue): Set PIC register.
3513         (call_address_operand): Don't match SYMBOL_REFs in PIC.
3514         (legitimize_address): Call legitimize_pic_address.
3515         (legitimize_pic_address): New fn.
3516         (legitimate_pic_operand_p): New fn.
3517         * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
3518         (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
3519         UNSPEC_PLT): New constants.
3520         (pop_pic_reg): New insn.
3521         (movsi): Adjust non-PIC addresses.
3522         (builtin_setjmp_receiver): Restore the PIC register.
3523         (casesi): New insn.
3524         (call): Adjust non-PIC addresses.
3525         (int_label, GOTaddr2picreg): New expands.
3526         (am33_loadPC): New insn.
3527         (mn10300_loadPC): New expand.
3528         (call_next_insn): New insn.
3529         (add_GOT_to_pic_reg): New expand.
3530         (symGOT2reg, symGOT2reg_i): New expands.
3531         (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
3532         (sym2PIC, sym2PLT): New expands.
3533
3534 2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
3535
3536         * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
3537         2001-05-01  Alexandre Oliva  <aoliva@redhat.com>
3538         * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
3539         to flag_unsafe_math_optimizations.
3540         2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
3541         * config/mn10300/mn10300.c (expand_prologue): Mark
3542         FP-register-saving insns as frame-related.
3543         2001-02-13  Alexandre Oliva  <aoliva@redhat.com>
3544         * config/mn10300/mn10300.c
3545         (mn10300_get_live_callee_saved_regs): Don't search past
3546         LAST_EXTENDED_REGNUM.
3547         (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
3548         * config/mn10300/mn10300.md: Remove excessive line breaks from
3549         `@' output patterns that were accounted as additional
3550         alternatives.
3551         * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
3552         Re-introduce changes accidentally removed in Richard Sandiford's
3553         2000-12-05's patch.
3554         * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
3555         Re-instate am33-2 lost in merge from net GCC.
3556         2000-08-26  Alexandre Oliva  <aoliva@redhat.com>
3557         * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
3558         floating-point registers.
3559         2000-08-07  Alexandre Oliva  <aoliva@redhat.com>
3560         * config/mn10300/mn10300.md (movdf): Revert some am33-specific
3561         pessimizations that had gone in on 2000-05-08.
3562         2000-06-28  Graham Stott  <grahams@cygnus.co.uk>
3563         * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
3564         2000-06-22  Graham Stott  <grahams@cygnus.co.uk>
3565         * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
3566         operand 0.
3567         * (movhi): Likewise.
3568         * (movsi): Likewise.
3569         * (movsf): Likewise.
3570         * (movdi): Likewise.
3571         * (movdf): Likewise.
3572         Wed May 24 13:16:09 2000  Alexandre Oliva  <aoliva@cygnus.com>
3573         * config/mn10300/mn10300.c (fp_regs_to_save): New function.
3574         (can_use_return_insn, initial_offset): Add fp_regs_to_save.
3575         (expand_prologue, expand_epilogue): Save and restore FP regs.
3576         2000-05-20  Alexandre Oliva  <aoliva@cygnus.com>
3577         * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
3578         2000-05-13  Alexandre Oliva  <aoliva@cygnus.com>
3579         * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
3580         subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
3581         Do not clobber cc0.
3582         2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
3583         * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
3584         Discourage the two-argument, longer opcodes.
3585         (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
3586         ones.
3587         * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
3588         (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
3589         * config/mn10300/mn10300.md (cmpsf): New pattern.
3590         (branch): Test mdep.fpCC and output fbCC.
3591         * config/mn10300/mn10300.c (print_operand): Output conditions.
3592         (notice_cc_update): Recognize fcmp and set mdep.fpCC.
3593         2000-05-10  Alexandre Oliva  <aoliva@cygnus.com>
3594         * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
3595         mulsf3, divsf3): Use the `F' constraint for FP values.
3596         * config/mn10300/mn10300.c (const_1f_operand): New function.
3597         * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
3598         * config/mn10300/mn10300.md (sqrtsf2): New expand.
3599         (rsqrtsf2): New insn.
3600         2000-05-09  Alexandre Oliva  <aoliva@cygnus.com>
3601         * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
3602         previous check-in.
3603         2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
3604         * config/mn10300/mn10300.md (abssf2, negdf2): On
3605         TARGET_AM33_2, expand to...
3606         (abssf2_am33_2, negdf2_am33_2): New insns.
3607         (addsf3, subsf3, mulsf3, divsf3): Likewise.
3608         (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
3609         * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
3610         movdi, movdf): Added FP regs.
3611         * invoke.texi (-mam33-2, -mno-am33-2): Document.
3612         2000-04-29  Alexandre Oliva  <aoliva@cygnus.com>
3613         * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
3614         New macros.
3615         (REGNO_AM33_2_FP_P): Renamed to...
3616         (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
3617         (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
3618         2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
3619         * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
3620         regs from GENERAL_REGS.
3621         2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
3622         * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
3623         * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
3624         * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
3625         2000-04-23  Alexandre Oliva  <aoliva@cygnus.com>
3626         * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
3627         as FP_REGS.
3628         2000-04-21  Alexandre Oliva  <aoliva@cygnus.com>
3629         * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
3630         (EXTRA_CONSTRAINT): Added OK_FOR_Q.
3631         * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
3632         * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
3633         * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
3634         (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
3635         AM33/2.0 floating-point registers.
3636         (CONDITIONAL_REGISTER_USAGE): Adjust.
3637         (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
3638         (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
3639         (REG_CLASS_FROM_LETTER): Added `f' and `A'.
3640         (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
3641         * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
3642         (MULTILIB_DIRNAMES): Likewise.
3643         * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
3644         `__AM33_2__' when `-mam33-2' is given.
3645         (TARGET_AM33_2): Define.
3646         (TARGET_SWITCHES): Adjust.
3647         * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
3648         when appropriate.
3649
3650 2003-07-09  Matt Kraai  <kraai@alumni.cmu.edu>
3651
3652         * doc/install.texi: Add missing @.
3653
3654 2003-07-09  Bob Wilson  <bob.wilson@acm.org>
3655
3656         * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
3657
3658 2003-07-09  Aldy Hernandez  <aldyh@redhat.com>
3659
3660         PR/11144
3661         * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
3662
3663 2003-07-09  Nathanael Nerode  <neroden@gcc.gnu.org>
3664
3665         PR bootstrap/11043
3666         * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
3667         "x-crtfini.o" with "crtinit.o", "crtfini.o".
3668
3669         * fixinc/inclhack.def (limits_ifndefs): Add select test.
3670         * fixinc/fixincl.x: Rebuild.
3671
3672         * fixinc/inclhack.def (math_exception):  Improve bypass and comment.
3673         * fixinc/fixincl.x: Rebuild.
3674
3675 2003-07-09  Hans-Peter Nilsson  <hp@bitrange.com>
3676
3677         * doc/install.texi (Configuration): Document the valgrind option
3678         to --enable-checking.
3679
3680 Wed Jul  9 16:16:30 CEST 2003  Jan Hubicka  <jh@suse.cz>
3681
3682         * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
3683
3684 2003-07-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3685
3686         * c-lex.c (cb_ident): Cast cstr.text to const char *.
3687
3688 2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>
3689
3690         * gcov-io.h: Update documentation.
3691         (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
3692         GCOV_NOTE_MAGIC.
3693         (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
3694         (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
3695         (struct gcov_var): Change buffer's type. Add endian flag.
3696         (gcov_open): Remove mode in libgcov.
3697         (gcov_magic): Prototype.
3698         * gcov-io.c (from_file): New.
3699         (gcov_open): Clear endian flag.
3700         (gcov_magic): New.
3701         (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
3702         pointers.
3703         (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
3704         gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
3705         (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
3706         * gcov-iov.c (main): Correct cast.
3707         * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
3708         conversion.
3709         (gcov_begin_output): Use GCOV_NOTE_MAGIC.
3710         (coverage_init): Use GCOV_NOTE_SUFFIX.
3711         * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
3712         Rename to gcov_version, and return flag.
3713         (gcov_exit): Use gcov_version.
3714         (__gcov_init): Use gcov_version.
3715         * Makefile.in (coverageexts): Update.
3716         * gcov.c (print_version): Remove endianness conversion.
3717         (create_file_names): Use GCOV_NOTE_SUFFIX.
3718         (read_graph_file): Use gcov_magic.
3719         (read_count_file): Likewise.
3720         * gcov-dump.c (dump_file): Remove endianness conversion, use
3721         gcov_magic.
3722
3723 2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>
3724
3725         * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
3726         coverage is on.
3727         * configure: Regenerated.
3728         * Makefile.in (ALL_CFLAGS): Correct its comment.
3729
3730 2003-07-08  Mark Mitchell  <mark@codesourcery.com>
3731
3732         * fold-const.c (make_range): Do not access operand 1 for a
3733         zero-operand operator.
3734
3735 2003-07-09  Neil Booth  <neil@daikokuya.co.uk>
3736
3737         * toplev.c (warn_dummy, W_options): Die.
3738         (display_help): Don't print W_options.
3739         * common.opt: Add W_options help from toplev.c.
3740
3741 2003-07-09  Andreas Jaeger  <aj@suse.de>
3742
3743         * opts.c (wrap_help): Only pass int arguments as arguments to
3744         printf's '*' modifier.  Change argument of function.
3745
3746 2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>
3747
3748         * doc/invoke.texi: Fix misspelling of "@item".
3749
3750 2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>
3751
3752         * config/i386/i386.md: Remove an old comment about
3753         NOTICE_UPDATE_CC.
3754
3755 Wed Jul  9 03:00:10 CEST 2003  Jan Hubicka  <jh@suse.cz>
3756
3757         * cgraph.c (cgraph_node_name): New function.
3758         (dump_cgraph): Use it.
3759         * cgraph.h (cgraph_dump_file): Declare.
3760         (cgraph_node_name): Declare.
3761         * cgraphunit.c: Include timevar.h
3762         (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
3763         (cgraph_optimize_function): Use TV_INTEGRATION.
3764         (cgraph_mark_local_functions): reorganize dumps.
3765         (cgraph_mark_functions_to_inline_once): Likewise.
3766         (cgraph_optimize): Likewise; use timevar.
3767         * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
3768         * toplev.c (dump_file_index): Add DFI_cgraph.
3769         (dump_file_info): Likewise.
3770         (cgraph_dump_file): New global variable.
3771         (do_compile): Open and close cgraph dump.
3772         * invoke.texi (-d): Document new flag; renumber.
3773
3774 2003-07-08  Roger Sayle  <roger@eyesopen.com>
3775
3776         PR c/11370
3777         * calls.c (emit_call_1): Don't bother popping the arguments off of
3778         the stack after a noreturn function call;  The adjustment is dead.
3779         (expand_call): Likewise.
3780
3781 2003-07-08  Geoffrey Keating  <geoffk@apple.com>
3782
3783         * expr.c (MOVE_MAX_PIECES): Move from here...
3784         * defaults.h (MOVE_MAX_PIECES): ... to here.
3785
3786 2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>
3787
3788         * Makefile.in (stage1-start): Handle an empty SUBDIRS.
3789
3790 2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3791
3792         * genattr.c (internal_dfa_insn_code): Don't prototype.
3793         * genattrtab.c (attr_desc): Add `static_p' field.
3794         (expand_units): Make blockage range and ready cost functions
3795         static.
3796         (write_attr_get): Don't add extern prototypes in C file.  Mark
3797         static functions as appropriate.
3798         (find_attr, make_internal_attr): Initialize static_p.
3799         * genattrtab.h (ATTR_STATIC): New macro.
3800         * genautomata.c (output_internal_reset_func): Mark output function
3801         as inline.
3802         (make_internal_dfa_insn_code_attr): Mark output function as static.
3803
3804 2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3805
3806         * genattrtab.h: Add new macros for attr `special' flags.
3807         * genattrtab.c (attr_desc): Reorder/resize fields better.
3808         Use attr `special' macros in all calls to make_internal_attr.
3809         * genautomata.c: Likewise.
3810
3811 Wed Jul  9 02:25:39 CEST 2003  Jan Hubicka  <jh@suse.cz>
3812
3813         * c-common.c (c_estimate_num_insns_1): New static function.
3814         (c_estimate_num_insns): New global function.
3815         * c-common.h (DECL_NUM_STMTS): Rename to...
3816         (DECL_ESTIMATED_INSNS): ... this.
3817         (c_estimate_num_insns): Declare.
3818         * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
3819         * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
3820         * c-semantics.c (add_stmt): Do not account statements.
3821         * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
3822         New.
3823         * langhooks.h (lang_hooks_for_tree_inlining): Add
3824         estimate_num_insns
3825         * params.def (max-inline-insns-auto, max-inline-insns-auto): set
3826         to 100.
3827         (max-inline-insns): set to 300.
3828         (min-inline-insns): set to 10.
3829         * tree-inline.c (struct inline_data): Rename inlined_stmts to
3830         inlined-insns.
3831         (INSNS_PER_STMT): Kill.
3832         (inlinable_function_p): Compute and store body size.
3833         (expand_call_inline): Likewise.
3834         (optimize_inline_calls): Likewise.
3835
3836 2003-07-08  James E Wilson  <wilson@tuliptree.org>
3837
3838         PR target/10021
3839         * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
3840         loop over new variable t2 instead of t.
3841
3842 2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>
3843
3844         PR bootstrap/11455
3845         * config/i386/winnt.c: Replace use of error(), warning() with
3846         error_with_decl(), warning_with_decl(),  throughout.
3847
3848 2003-07-08  Neil Booth  <neil@daikokuya.co.uk>
3849
3850         * opts.c (wrap_help): Use unsigned int, not size_t.
3851
3852 2003-07-08  Stephane Carrez  <stcarrez@nerim.fr>
3853
3854         * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
3855         as .file/.loc directives are incompatible with linker relaxation.
3856
3857 2003-07-08  Zack Weinberg  <zack@codesourcery.com>
3858
3859         * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
3860         * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
3861         * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
3862         * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
3863         * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
3864         * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
3865         Escape { and } characters which are not part of range expressions.
3866         * fixinc/fixincl.x: Regenerate.
3867         * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
3868
3869 2003-07-08  Steven Bosscher  <steven@gcc.gnu.org>
3870
3871         PR c/1687
3872         * tree-inline.c (find_alloca_call): Use
3873         walk_tree_without_duplicates, instead of walk_tree.
3874         (find_builtin_longjmp_call): Likewise.
3875         * c-objc-common.c (c_cannot_inline_fn): Likewise.
3876         * c-semantics.c (find_reachable_label): Likewise.
3877
3878 2003-07-08  Jakub Jelinek  <jakub@redhat.com>
3879
3880         PR c/11420
3881         * config/i386/i386.c (ix86_check_movabs): New function.
3882         * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
3883         * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
3884         (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
3885
3886 2003-07-08  Chris Demetriou  <cgd@broadcom.com>
3887
3888         * Makefile.in (install-po): Cope with empty CATALOGS.
3889
3890 2003-07-08  Richard Sandiford  <rsandifo@redhat.com>
3891
3892         * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
3893         (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
3894         (SECTION_FUNCTION_TEMPLATE): Delete.
3895         * config/mips/elf.h: As for elf64.h.
3896         (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
3897         * config/mips/linux.h: As for elf.h
3898         * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
3899         * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
3900         (EXTRA_SECTION_FUNCTIONS): Remove sdata_section.  Remove the handling
3901         of in_sdata from current_section_name and current_section_flags.
3902         * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
3903         * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
3904         (MASK_GP_OPT, TARGET_GP_OPT): Delete.
3905         (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
3906         (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
3907         (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
3908         * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
3909         (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
3910         (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
3911         (override_options): Remove setting of MASK_GPOPT.
3912         (mips_output_external): Use mips_in_small_data_p to check whether a
3913         symbol needs an .extern directive.  Don't emit such directives for
3914         TARGET_EXPLICIT_RELOCS.
3915         (mips_declare_object): Update accordingly.
3916         (mips_select_rtx_section): Call named_section rather than
3917         SMALL_DATA_SECTION.
3918         (mips_select_section): Use default_elf_section_section for everything
3919         except .text string constants.
3920         (mips_in_small_data_p): New function.
3921         (mips_encode_section_info): Remove small data handling.
3922         (mips_unique_section): Delete.
3923         (iris6_section_type_flags): New function.
3924         * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
3925
3926 2003-07-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3927
3928         PR Target/11453
3929         * pa.md: Disparage all mtsar constraints.
3930         (extzv, extv, insv): Don't fail on length of {32|64}.
3931
3932 2003-07-08  Zack Weinberg  <zack@codesourcery.com>
3933
3934         * system.h: Poison MAP_CHARACTER.
3935         * config/i370/i370-protos.h (mvs_map_char): Delete.
3936         * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
3937         * config/i370/i370.h (MAP_CHARACTER): Delete definition.
3938         (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
3939
3940 2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>
3941
3942         * toplev.c (randomize): Correct call to time().
3943
3944 2003-07-08  Jakub Jelinek  <jakub@redhat.com>
3945
3946         * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
3947         REG_EQUIV notes as well.
3948
3949 2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>
3950
3951         * doc/md.texi: Fix the description of addmodecc.
3952
3953 2003-07-07  Zack Weinberg  <zack@codesourcery.com>
3954
3955         * Makefile.in (top_builddir): Set to "..", not ".".
3956         (INTLLIBS, INTLDEPS): Delete.
3957         (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
3958         (LIBDEPS): Add $(LIBICONV_DEP).
3959         (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
3960         (INCLUDES): Replace -I../intl with @INCINTL@.
3961         ($(top_builddir)/intl/libintl.a): Delete rule.
3962         (stage2-start, stage3-start, stage4-start, stageprofile-start,
3963         stagefeedback-start): Use $$ for variable to be evaluated by
3964         shell, not make.
3965         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
3966         HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
3967         * aclocal.m4: sinclude ../config/progtest.m4.  Add
3968         contents of lcmessage.m4 from gettext distro.
3969         * configure.in: Check for wchar.h and setlocale.  Set
3970         LIBICONV_DEP to the empty string and substitute it.
3971         Call AM_LC_MESSAGES.  Delete AC_ARG_ENABLE for --enable-nls;
3972         this is handled elsewhere.  Use ZW_GNU_GETTEXT_SISTER_DIR,
3973         not CY_GNU_GETTEXT.  Clear $LIBICONV if its text is included
3974         in $LIBINTL, to avoid linking it twice.
3975         * configure, config.in: Regenerate.
3976
3977 2003-07-08  Nathanael Nerode  <neroden@gcc.gnu.org>
3978
3979         * fixinc/mkfixinc.sh: Remove winnt support.
3980         * fixinc/fixinc.winnt: Delete with extreme prejudice.
3981
3982 2003-07-08  Neil Booth  <neil@daikokuya.co.uk>
3983
3984         * Makefile.in: Update.
3985         * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
3986         * c.opt: Update documentation.
3987         * common.opt: Add some help text.
3988         * opts.c: Include intl.h.
3989         (wrap_help, print_help): New.
3990         (find_opt, handle_option, common_handle_option): opt_text now
3991         contains the '-'.  Use print_help to output help.
3992         * opts.h (struct cl_option): New member "help".
3993         * opts.sh: Update to handle help text output and to prepend
3994         options with '-'.
3995         * toplev.c (display_help): Remove some help text.
3996
3997 2003-07-07  David Edelsohn  <edelsohn@gnu.org>
3998             Fariborz Jahanian  <fjahanian@apple.com>
3999
4000         * configure.in: Test for PowerPC mfcr field support in assembler.
4001         * config.in, configure: Regenderated.
4002
4003         * config/rs6000/power4.md: Add mfcrf reservation.
4004         * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
4005         * config/rs6000/rs6000.c (mfcr_operation): Define.
4006         (print_operand): Add 'Q' case for mfcrf.
4007         * config/rs6000/rs6000.h (TARGET_MFCRF): New.
4008         * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
4009         (movcc_internal1): Emit optional field operand for mfcr and set
4010         "type" attribute appropriately.
4011         (mfcr SCC): Likewise.
4012         (movesi_from_cr_one): New.
4013
4014 2003-07-07  Roger Sayle  <roger@eyesopen.com>
4015
4016         * config/i386/i386.md: Correct check-in of incorrect version.
4017
4018 2003-07-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4019
4020         * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
4021         adjacent stdio calls.
4022         * c-decl.c (c_print_identifier): Likewise.
4023         * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
4024         * print-rtl.c (print_rtx): Likewise.
4025         * print-tree.c (print_node_brief, print_node): Likewise.
4026         * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
4027
4028         * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
4029         * config.in, configure: Regenerated.
4030
4031 2003-07-07  Roger Sayle  <roger@eyesopen.com>
4032
4033         PR target/10979
4034         * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
4035         Changed to define_expand patterns that copy operand[1] to prevent
4036         it from being clobbered before emitting an atan2?f3_1 insn.
4037         (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
4038         patterns that actually specify the behaviour of x87's FPATAN.
4039
4040 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
4041
4042         * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
4043         clearing of SYMBOL_FLAG_LOCAL bit.
4044         If vcall_offset fits into signed 16-bit immediate, use
4045         one instruction for both addition and load.
4046
4047 2003-07-07  Neil Booth  <neil@daikokuya.co.uk>
4048
4049         * opts.c (common_handle_option): Correct handling of the
4050         -falign- switches that do and don't take an argument.
4051
4052 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
4053
4054         * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
4055         today.
4056         (pushhi1_h8300hs): Likewise.
4057
4058 2003-07-07  Andreas Jaeger  <aj@suse.de>
4059
4060         * genextract.c: Convert remaining prototypes to ISO C90.
4061
4062         * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
4063         * fold-const.c (fold_single_bit_test): Likewise.
4064         * diagnostic.c (default_diagnostic_finalizer): Likewise.
4065         * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
4066
4067         * gengtype.c (write_array): Generate ISO C90 prototypes.
4068
4069         * genflags.c (gen_proto): Generate ISO C90 prototypes.
4070
4071 2003-07-07  Roger Sayle  <roger@eyesopen.com>
4072
4073         PR optimization/11059
4074         * expr.c (can_store_by_pieces): Return true if length is zero.
4075         (store_by_pieces): If length is zero and endp is two, abort,
4076         othwerise, if length is zero and endp is not two, return "to".
4077         (clear_by_pieces): Do nothing if length is zero.
4078         (clear_storage): Do nothing if length is zero.
4079         (store_constructor): Simplify code when size is zero, or the
4080         target has already been cleared.  This avoids emitting a
4081         blockage instruction when initializing empty structures.
4082
4083 2003-07-07  Andreas Jaeger  <aj@suse.de>
4084
4085         * mips-tfile.c: Convert prototypes to ISO C90.
4086         * mips-tdump.c: Convert prototypes to ISO C90.
4087
4088 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
4089
4090         * rtl.h (emit_line_note): Take a location_t.
4091         (emit_line_note_force): Remove.
4092         (set_file_and_line_for_statement): Take a location_t.
4093         * tree.g (emit_line_note): Take a location_t.
4094         * emit-rtl.c (emit_line_note): Take a location_t.
4095         (emit_line_note_force): Remove.
4096         * function.c (init_function_start): Adjust emit_line_note call.
4097         (expand_function_end): Use force_next_line_note, not
4098         emit_line_note_force.
4099         * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
4100         * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
4101         genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
4102         genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
4103         genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
4104         genrtl_continue_stmt, genrtl_switch_stmt,
4105         genrtl_asm_stmt): Likewise.
4106         * expr.c (expand_expr): Likewise.
4107         * integrate.c (expand_inline_function): Likewise.
4108         * stmt.c (set_file_and_line_for_stmt): Take a location_t.
4109         (expand_decl_init): Adjust emit_line_note call.
4110
4111 2003-07-07  Dale Johannesen  <dalej@apple.com>
4112
4113         * config/rs6000/darwin-tramp.asm:  Fix trampolines.  PR 10900.
4114
4115 2003-07-07  Andreas Jaeger  <aj@suse.de>
4116
4117         * config/i386/i386-protos.h: Convert prototypes to ISO C90.
4118         * config/i386/i386.c: Likewise.
4119
4120 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
4121
4122         * config/h8300/h8300.md: Use gen_int_mode instead of
4123         GEN_INT (trunc_int_for_mode (...)).
4124
4125 2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>
4126
4127         * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
4128         2 bytes and then subtract 2 from the stack pointer.
4129         (pushhi1_h8300hs): Likewise.
4130
4131 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
4132
4133         * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
4134         -frandom-seed.
4135         * configure: Regenerated.
4136         * Makefile.in: Remove extraneous comment.
4137         * toplev.c (randomize): Protect against potential multiple calls.
4138         * doc/invoke.texi (-frandom-seed): Document use for in coverage
4139         files.
4140
4141 2003-07-07  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4142             Eric Botcazou  <ebotcazou@libertysurf.fr>
4143
4144         PR optimization/11198
4145         * alias.c (objects_must_conflict_p): Return 1 if the types have
4146         the same alias set, not if the alias sets only conflict.
4147
4148 2003-07-07  Andrew Pinski  <pinskia@physics.uc.edu>
4149
4150         * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
4151         (convert_cset): Change inbuf to type ICONV_CONST char.
4152         * Makefile.in (LIBS): Add LIBICONV.
4153
4154         * doc/invoke.texi (-falign-functions): Document that
4155         when n is zero then a machine-dependent default is used.
4156         (-falign-labels): Document that when n is zero then a
4157         machine-dependent default is used and that -falign-labels =1
4158         is equivalent to -fno-align-labels.
4159         (-falign-loops): Likewise.
4160         (-falign-jumps): Likewise.
4161
4162 2003-07-06  Art Haas  <ahaas@airmail.net>
4163
4164         * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
4165         initializer syntax.
4166
4167 2003-07-06  James E Wilson  <wilson@tuliptree.org>
4168
4169         PR optimization/9812
4170         * rtl.h (mem_for_const_double): Delete prototype.
4171         * varasm.c (mem_for_const_double): Delete function.
4172         * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
4173         config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
4174         (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
4175         * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
4176         (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
4177         * config/m68k/m68k.md (movxf): Add reload_in_progress guard.  Add
4178         comment about confused support for XFmode constants.
4179
4180 Mon Jul  7 02:03:56 CEST 2003  Jan Hubicka  <jh@suse.cz>
4181
4182         * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
4183
4184 2003-07-06  Kazu Hirata  <kazu@cs.umass.edu>
4185
4186         * config/h8300/h8300.c: Fix comment typos.
4187         * config/h8300/h8300.md: Likewise.
4188         * config/i386/athlon.md: Likewise.
4189         * config/i386/i386.c: Likewise.
4190         * config/i386/pentium.md: Likewise.
4191         * config/ia64/ia64.c: Likewise.
4192         * config/ia64/itanium1.md: Likewise.
4193         * config/ia64/itanium2.md: Likewise.
4194         * config/m32r/m32r.md: Likewise.
4195         * config/m68hc11/m68hc11.c: Likewise.
4196         * config/mcore/mcore.c: Likewise.
4197         * config/mips/sr71k.md: Likewise.
4198         * config/mips/t-iris5-as: Likewise.
4199         * config/mmix/mmix.h: Likewise.
4200         * config/ns32k/ns32k.h: Likewise.
4201         * config/ns32k/NOTES: Fix a typo.
4202
4203 2003-07-06  Andreas Jaeger  <aj@suse.de>
4204
4205         * stmt.c: Convert remaining prototypes to ISO C90.
4206         * cfglayout.c: Likewise.
4207         * dbxout.c: Likewise.
4208         * gcc.c: Likewise.
4209         * genemit.c: Likewise.
4210
4211         * basic-block.h: Convert prototypes to ISO C90.
4212         * c-parse.in: Likewise.
4213         * c-pragma.h: Likewise.
4214         * c-typeck.c: Likewise.
4215         * cfghooks.h: Likewise.
4216         * cfgloopanal.c: Likewise.
4217         * dbxout.h: Likewise.
4218         * debug.h: Likewise.
4219         * dwarf2asm.h: Likewise.
4220         * gcov.c: Likewise.
4221         * gengtype-lex.l: Likewise.
4222         * sched-int.h: Likewise.
4223         * timevar.c: Likewise.
4224
4225 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
4226
4227         * c-common.h (c_comon_handle_filename,
4228         c_common_missing_arguement): New.
4229         * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
4230         LANG_HOOKS_MISSING_ARGUMENT): New.
4231         * c-opts.c (missing_arg): Rename c_common_missing_argument,
4232         update to be an appropriate langhook.
4233         (c_common_handle_option): Don't handle filenames.
4234         (c_common_handle_filename): New.
4235         * hooks.c (hook_void_constcharptr,
4236         hook_bool_constcharptr_size_t_false): New.
4237         * hooks.h (hook_void_constcharptr,
4238         hook_bool_constcharptr_size_t_false): New.
4239         * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
4240         LANG_HOOKS_MISSING_ARGUMENT): New.
4241         (LANG_HOOKS_INITIALIZER): Update.
4242         * langhooks.h (struct lang_hooks): Add handle_filename and
4243         missing_argument.
4244         * opts.c (handle_option): Don't handle filenames here, but ...
4245         (handle_options): ... here.
4246         (common_handle_option): Don't handle missing arguments here.
4247         * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
4248         LANG_HOOKS_MISSING_ARGUMENT): New.
4249
4250 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
4251
4252         * Makfile.in: Remove traces of mbchar.
4253         * c-parse.in (MULTIBYTE_CHARS): Remove.
4254         * config.in (MULTIBYTE_CHARS): Remove.
4255         * configure: Remove --enable-mbchar.
4256         * configure.in: Remove --enable-mbchar.
4257         * mbchar.c, mbchar.h: Remove.
4258         * system.h: Poison MULTIBYTE_CHARS.
4259         * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
4260         * config/linux.h (MULTIBYTE_CHARS): Remove.
4261         * config/svr4.h (MULTIBYTE_CHARS): Remove.
4262         * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
4263
4264 2003-07-06  Andreas Jaeger  <aj@suse.de>
4265
4266         * varray.c (varray_check_failed): Fix typo.
4267
4268         * unroll.c: Convert prototypes to ISO C90.
4269         * varasm.c: Likewise.
4270         * varray.c: Likewise.
4271         * varray.h: Likewise.
4272         * vmsdbgout.c: Likewise.
4273         * xcoffout.c: Likewise.
4274         * xcoffout.h: Likewise.
4275
4276 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
4277
4278         * gcov-io.h: Add a local time stamp.
4279         (struct gcov_info): Add stamp field.
4280         (gcov_truncate): New.
4281         * coverage.c (read_counts_file): Skip the stamp.
4282         (coverage_begin_output): Write the stamp.
4283         (build_gcov_info): Declare and init the stamp.
4284         (coverage_finish): Only unlink data file, if stamp is zero.
4285         * gcov-dump.c (dump_file): Dump the stamp.
4286         * gcov.c (bbg_stamp): New.
4287         (release_structures): Clear bbg_stamp.
4288         (read_graph_file): Read stamp.
4289         (read_count_file): Check stamp.
4290         * libgcov.c (gcov_exit): Check stamp and truncate if needed.
4291
4292 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
4293
4294         * tree.h (default_flag_random_seed): Remove.
4295         * toplev.h (local_tick): Declare.
4296         * tree.c (flag_random_seed, default_flag_random_seed): Move to
4297         toplev.c.
4298         (append_random_chars): Don't call default_flag_random_seed.
4299         * toplev.c (flag_random_seed): Define here. Set local_tick.
4300         (local_tick): Define.
4301         (randomize): New, moved from tree.c.
4302         (print_switch_values): Adjust.
4303         (toplev_main): Call randomize.
4304
4305 2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
4306
4307         * tree.h (crc32_string): Declare.
4308         * tree.c (append_random_chars): Remove.
4309         (crc32_string): New.
4310         (get_file_function_name_long): Use crc32_string here.
4311
4312 2003-07-06  Andreas Jaeger  <aj@suse.de>
4313
4314         * gcc.c: Convert prototypes to ISO C90.
4315         * gcc.h: Likewise.
4316         * gcov-dump.c: Likewise.
4317         * gcov-iov.c: Likewise.
4318         * gcse.c: Likewise.
4319         * genattrtab.h: Likewise.
4320         * ggc.h: Likewise.
4321         * global.c: Likewise.
4322         * graph.c: Likewise.
4323         * graph.h: Likewise.
4324         * hosthooks.h: Likewise.
4325         * hooks.h: Likewise.
4326         * hooks.c: Likewise.
4327         * hashtable.h: Likewise.
4328         * hashtable.c: Likewise.
4329         * haifa-sched.c: Likewise.
4330         * integrate.h: Likewise.
4331         * integrate.c: Likewise.
4332         * input.h: Likewise.
4333         * ifcvt.c: Likewise.
4334         * jump.c: Likewise.
4335         * langhooks-def.h: Likewise.  Add extern to prototypes.
4336         * langhooks.c: Likewise.
4337         * langhooks.h: Likewise.
4338         * lcm.c: Likewise.
4339         * local-alloc.c: Likewise.
4340         * loop-init.c: Likewise.
4341         * loop-unroll.c: Likewise.
4342         * loop-unswitch.c: Likewise.
4343         * loop.c: Likewise.
4344         * loop.h: Likewise. Add extern to prototypes.
4345         * machmode.h: Likewise.
4346         * main.c: Likewise.
4347         * mbchar.c: Likewise.
4348         * mbchar.h: Likewise.
4349         * mkdeps.c: Likewise.
4350         * mkdeps.h: Likewise.
4351         * optabs.c: Likewise.
4352         * optabs.h: Likewise.
4353         * output.h: Likewise.
4354         * gccspec.c: Likwise.
4355         * postreload.c: Likewise.
4356         * prefix.c: Likewise.
4357         * prefix.h: Likewise.
4358         * print-rtl.c: Likewise.
4359         * print-tree.c: Likewise.
4360         * profile.c: Likewise.
4361         * read-rtl.c: Likewise.
4362         * real.c: Likewise.
4363         * real.h: Likewise.
4364         * recog.c: Likewise.
4365         * recog.h: Likewise.
4366         * reg-stack.c: Likewise.
4367         * regclass.c: Likewise.
4368         * regmove.c: Likewise.
4369         * regrename.c: Likewise.
4370         * regs.h: Likewise.
4371         * reload.c: Likewise.
4372         * reload.h: Likewise.
4373         * reload1.c: Likewise.
4374         * reorg.c: Likewise.
4375         * resource.c: Likewise.
4376         * resource.h: Likewise.
4377         * rtl-error.c: Likewise.
4378         * rtl.c: Likewise.
4379         * rtl.h: Likewise.
4380         * rtlanal.c: Likewise.
4381         * sbitmap.c: Likewise.
4382         * sbitmap.h: Likewise.
4383         * scan-decls.c: Likewise.
4384         * scan.c: Likewise.
4385         * sched-deps.c: Likewise.
4386         * sched-ebb.c: Likewise.
4387         * sched-int.h: Likewise.
4388         * sched-rgn.c: Likewise.
4389         * sched-vis.c: Likewise.
4390         * sibcall.c: Likewise.
4391         * simplify-rtx.c: Likewise.
4392         * sreal.c: Likewise.
4393         * sreal.h: Likewise.
4394         * ssa-ccp.c: Likewise.
4395         * ssa-dce.c: Likewise.
4396         * ssa.c: Likewise.
4397         * ssa.h: Likewise.
4398         * stack.h: Likewise.
4399         * stmt.c: Likewise.
4400         * stor-layout.c: Likewise.
4401         * stringpool.c: Likewise.
4402         * target.h: Likewise.
4403         * timevar.c: Likewise.
4404         * timevar.h: Likewise.
4405         * tlink.c: Likewise.
4406         * tracer.c: Likewise.
4407         * tree-inline.c: Likewise.
4408         * tree-inline.h: Likewise.
4409         * tree.c: Likewise.
4410         * tree.h: Likewise.
4411
4412 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
4413
4414         * combine.c (nonzero_bits1): Fix a warning.
4415
4416 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
4417
4418         * config/h8300/h8300.c (compute_mov_length): Correct the
4419         length of loading CONST0_RTX (SFmode).
4420
4421 2003-07-05  Nathan Sidwell  <nathan@codesourcery.com>
4422
4423         * toplev.c (output_clean_symbol_name): Remove.
4424         * toplev.h (output_clean_symbol_name): Remove.
4425         * config/alpha/alpha.c (unicosmk_output_module_name): Use
4426         lbasename & clean_symbol_name.
4427
4428 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
4429
4430         * ggc.h: Follow spelling conventions.
4431         * config/i386/i386.c: Likewise.
4432         * config/i386/winnt.c: Likewise.
4433         * config/rs6000/rs6000.c: Likewise.
4434
4435 2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
4436
4437         * bt-load.c: Fix comment typos.
4438         * c-incpath.c: Likewise.
4439         * cfg.c: Likewise.
4440         * cfgcleanup.c: Likewise.
4441         * cfgloop.h: Likewise.
4442         * cfgloopmanip.c: Likewise.
4443         * cfgrtl.c: Likewise.
4444         * diagnostic.h: Likewise.
4445         * dwarfout.c: Likewise.
4446         * emit-rtl.c: Likewise.
4447         * et-forest.c: Likewise.
4448         * et-forest.h: Likewise.
4449         * expr.c: Likewise.
4450         * gcse.c: Likewise.
4451         * genattr.c: Likewise.
4452         * jump.c: Likewise.
4453         * langhooks.h: Likewise.
4454         * local-alloc.c: Likewise.
4455         * loop-unroll.c: Likewise.
4456         * loop-unswitch.c: Likewise.
4457         * ra-build.c: Likewise.
4458         * regclass.c: Likewise.
4459         * regmove.c: Likewise.
4460         * rtl.def: Likewise.
4461         * rtlanal.c: Likewise.
4462         * sched-ebb.c: Likewise.
4463         * sched-rgn.c: Likewise.
4464         * simplify-rtx.c: Likewise.
4465         * ssa.c: Likewise.
4466         * tracer.c: Likewise.
4467         * tree.c: Likewise.
4468
4469 2003-07-05  Zack Weinberg  <zack@codesourcery.com>
4470
4471         * cppcharset.c: Use the correct return type for the fallback iconv
4472         macro.
4473
4474 Sat Jul  5 16:18:53 CEST 2003  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
4475
4476         Blame to Jan Hubicka  <jh@suse.cz>
4477         * cfglayout.c (record_effective_endpoints): Split insns before
4478         first basic block correctly.
4479
4480 2003-07-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4481
4482         * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
4483         bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
4484         if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
4485
4486 2003-07-05  Andreas Jaeger  <aj@suse.de>
4487
4488         * genattrtab.c (write_attr_get): Revert part of last patch to
4489         always write out a prototype.
4490
4491         * genemit.c (gen_split): Readd lost unused attributes in last
4492         patch.
4493
4494 2003-07-05  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
4495
4496         * cfgloopmanip.c (force_single_succ_latches): Force latch to be
4497         different from header.
4498
4499 2003-07-05  Andreas Schwab  <schwab@suse.de>
4500
4501         * config/m68k/m68k.c: Remove code protected by CRDS.
4502         * config/m68k/m68k.md: Likewise.
4503
4504 2003-07-05  Neil Booth  <neil@daikokuya.co.uk>
4505
4506         PR driver/11417
4507         * c-opts.c (permit_fortran_options): New.
4508         (c_common_init_options): Accept fortran front end options if
4509         it looks like we might be preprocessing Fortran.
4510         (c_common_handle_option): Don't reject switch if permit_fotran_options.
4511
4512 2003-07-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4513
4514         * genattr.c (internal_dfa_insn_code): Output prototype.
4515         * genattrtab.c: Don't output unnecessary decls, output in ISO C.
4516         * genautomata.c: Likewise.
4517         * genconditions.c: Likewise.
4518         * genemit.c: Likewise.
4519         * genextract.c: Likewise.
4520         * gengenrtl.c: Likewise.
4521         * gengtype.c: Likewise.
4522         * genopinit.c: Likewise.
4523         * genoutput.c: Likewise.
4524         * genpeep.c: Likewise.
4525         * genrecog.c: Likewise.
4526
4527 2003-07-04  Zack Weinberg  <zack@codesourcery.com>
4528
4529         * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
4530         (struct cpp_options): Add narrow_charset, wide_charset,
4531         bytes_big_endian fields.  Remove EBCDIC field.
4532         (cpp_init_iconv, cpp_interpret_string): New external interfaces.
4533
4534         * cpphash.h: Include <iconv.h> if we have it, otherwise
4535         provide a dummy definition of iconv_t.
4536         (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
4537         (_cpp_valid_ucn): Update prototype.
4538         (_cpp_destroy_iconv): New prototype.
4539
4540         * doc/cpp.texi: Document character set handling.
4541         * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
4542         * doc/extend.texi: Delete entire section on multiline strings.
4543         Rewrite section on __FUNCTION__ etc now that these are
4544         variables in C.
4545
4546         * cppucnid.tab, cppucnid.pl: New files.
4547         * cppucnid.h: New generated file.
4548         * cppcharset.c: Include cppucnid.h.  Lots of commentary added.
4549         (iconv_open, iconv, iconv_close): Provide dummy definitions
4550         if !HAVE_ICONV.
4551         (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
4552         _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
4553         emit_numeric_escape, convert_hex, convert_oct, convert_escape,
4554         cpp_interpret_string, narrow_str_to_charconst,
4555         wide_str_to_charconst): New.
4556         (ucn_valid_in_identifier): Use a binary search through the
4557         ucnranges table defined in cppucnid.h, not a long chain of if
4558         statements.
4559         (_cpp_valid_ucn): Add a limit pointer.  Downgrade "universal
4560         character names are only valid in C++ and C99" to a warning.
4561         Issue the "meaning of \[uU] is different in traditional C"
4562         warning here.  Take care not to let iconv see an invalid UCS
4563         value if we get a malformed UCN.  Issue an error if we don't
4564         have iconv.
4565         (cpp_interpret_charconst): Moved here from cpplex.c.  Use
4566         cpp_interpret_string to do the heavy lifting.
4567
4568         * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
4569         narrow_charset, wide_charset fields of options structure.
4570         (cpp_destroy): Call _cpp_destroy_iconv.
4571         * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
4572         (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
4573         (cpp_interpret_charconst): Moved to cppcharset.c.
4574         * cpplib.c (dequote_string): Delete.
4575         (interpret_string_notranslate): New.
4576         (do_line, do_linemarker): Use interpret_string_notranslate.
4577
4578         * Makefile.in (cppcharset.o): Depend on cppucnid.h.
4579
4580         * c-common.c (fname_string, combine_strings): Delete.
4581         * c-common.h (fname_string, combine_strings): Delete prototypes.
4582         * c-lex.c (ignore_escape_flag): Delete.
4583         (cb_ident): Use cpp_interpret_string, not lex_string.
4584         (get_nonpadding_token): New function.
4585         (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
4586         Adjust calls to lex_string.  Don't write *value twice.
4587         (lex_string): Now handles string constant concatenation.
4588         Most of the work handed off to cpp_interpret_string.
4589         Call fix_string_type here.
4590         * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
4591         FUNC_NAME, throughout.
4592         (OBJC_STRING): New token type.
4593         (primary:STRING): No need to call fix_string_type here.
4594         (primary:objc_string): Make that OBJC_STRING.
4595         (objc_string nonterminal): Delete.
4596         (yylexname): Delete code to handle fake string constants.
4597         (yylexstring): Delete entirely.
4598         (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING.  No need
4599         to handle CPP_ATSIGN.
4600
4601         * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
4602         * c-opts.c (missing_arg, c_common_handle_option): Handle
4603         OPT_fexec_charset_ and OPT_fwide_exec_charset_.
4604         (c_common_init): Set cpp_opts->bytes_big_endian, not
4605         cpp_opts->EBCDIC.  Call cpp_init_iconv.
4606         (print_help): Document -fexec-charset= and -fexec-wide-charset=.
4607         (TARGET_EBCDIC): Delete default definition.
4608
4609         * objc/objc-act.c (build_objc_string_object): No need to
4610         handle string constant concatenation.
4611
4612 2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
4613
4614         * doc/install.texi: Fix typos.
4615         * doc/invoke.texi: Likewise.
4616         * doc/tm.texi: Likewise.
4617
4618 2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
4619
4620         * config/pa/fptr.c: Fix comment typos.
4621         * config/pa/pa-64.h: Likewise.
4622         * config/pa/pa.c: Likewise.
4623         * config/pa/pa.h: Likewise.
4624         * config/rs6000/603.md: Likewise.
4625         * config/rs6000/7xx.md: Likewise.
4626         * config/rs6000/darwin.h: Likewise.
4627         * config/rs6000/freebsd.h: Likewise.
4628         * config/rs6000/rs6000.c: Likewise.
4629         * config/rs6000/rs6000.md: Likewise.
4630         * config/rs6000/spe.h: Likewise.
4631
4632 2003-07-04  Ulrich Weigand  <uweigand@de.ibm.com>
4633
4634         * config/s390/2064.md: Change GNU CC to GCC.
4635         * config/s390/2084.md: Likewise.
4636         * config/s390/fixdfdi.h: Likewise.
4637         * config/s390/linux.h: Likewise.
4638         * config/s390/s390-modes.def: Likewise.
4639         * config/s390/s390-protos.h: Likewise.
4640         * config/s390/s390.c: Likewise.
4641         * config/s390/s390.h: Likewise.
4642         * config/s390/s390.md: Likewise.
4643         * config/s390/s390x.h: Likewise.
4644
4645 2003-07-04  Jeff Law  <law@redhat.com>
4646
4647         PR c/11428
4648         * expr.c (do_store_flag): Pass in the correct result type
4649         when calling fold_single_bit_test.
4650         * fold-const.c (fold_single_bit_test): Use result_type for the
4651         result when folding a sign bit test.
4652
4653 2003-07-04  Neil Booth  <neil@daikokuya.co.uk>
4654
4655         * opts.c (common_handle_options): Negate sense of -falign- switches.
4656
4657 2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
4658
4659         * Makefile.in: Replace PWD with PWD_COMMAND.
4660
4661 2003-07-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
4662
4663         * cfgloopanal.c (count_strange_loop_iterations): New static function.
4664         (constant_iterations, count_loop_iterations, simple_loop_exit_p):
4665         Handle strange loops.
4666
4667 2003-07-04  Toon Moene  <toon@moene.indiv.nluug.nl>
4668
4669         * install.texi: Even the g77 manpage is derived from
4670         the full g77 manual.
4671
4672 2003-07-04  Zack Weinberg  <zack@codesourcery.com>
4673
4674         * ABOUT-NLS: Delete.
4675         * intl: Delete entire directory.
4676         * aclocal.m4: Include ../config/gettext.m4.  Delete
4677         AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
4678         AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
4679         * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
4680         Remove intl/Makefile from all_outputs.
4681         * configure, config.in: Regenerate.
4682         * Makefile.in: Expunge all references to intl subdirectory.
4683         Add -I../intl to INCLUDES.
4684         * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
4685
4686 2003-07-04  Roger Sayle  <roger@eyesopen.com>
4687
4688         * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
4689         * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
4690
4691 2003-07-04  Danny Smith  <dannysmith@users.sourceforge.net>
4692
4693         PR c++/5287, PR c++/7910, PR c++/11021
4694         * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
4695         dllimport attribute if function is defined at declaration, but
4696         report error instead. Likewise for dllimport'd variable
4697         definitions.  Set implicit TREE_PUBLIC for dllimport'd variables
4698         declared within functions, Report error if dllimport or dllexport
4699         symbol is not global.
4700         (i386_pe_dllimport_p): Ignore dllimport attribute of functions
4701         if defined after declaration or if inlined. Don't allow definition
4702         of static data members of C++ classes. Don't dllimport virtual
4703         methods.
4704         (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
4705         (i386_pe_mark_dllimport): Remove unnecessary checks.
4706         (i386_pe_encode_section_info): Warn if the dllimport attribute
4707         and symbol prefix have been instantiated and then overridden.
4708
4709         * doc/extend.texi: Document dllimport and dllexport attributes.
4710
4711         * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
4712
4713 2003-07-03 Uwe Stieber <uwe@kaos-group.de>
4714
4715         * config/kaos.h (CPP_PREDEFINES): Delete.
4716         (TARGET_OS_CPP_BUILTINS): New.
4717
4718 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4719
4720         * c-aux-info.c: Include toplev.h after c-tree.h.
4721         * c-common.c: Likewise.
4722         (GCC_DIAG_STYLE): Undef.
4723         * c-semantics.c (GCC_DIAG_STYLE): Define.
4724         * c-tree.h (GCC_DIAG_STYLE): Likewise.
4725         * diagnostic.h (inform): Move prototype to toplev.h.
4726         * jump.c: Include diagnostic.h before toplev.h.
4727         * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
4728         (warning, error, fatal_error, pedwarn, sorry, inform,
4729         error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
4730
4731 2003-07-03  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
4732
4733         * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
4734         at all if edge is not specified.
4735         (can_copy_bbs_p, copy_bbs): New.
4736         * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
4737         * cfgloop.c (get_loop_body): Comment more precisely.
4738         * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
4739         (scale_bbs_frequencies): Fix comment typo.
4740         (can_duplicate_loop_p): Use can_copy_bbs_p.
4741         (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
4742
4743 2003-07-03  Devang Patel <dpatel@apple.com>
4744
4745         * c-opts.c (c_common_parse_file): Remove extra
4746         debug_hooks->start_source_file call.
4747
4748 2003-07-03  Roger Sayle  <roger@eyesopen.com>
4749
4750         * real.c (real_trunc, real_floor, real_ceil): New functions
4751         to implement trunc, floor and ceil respectively.
4752         * real.h (real_trunc, real_floor, real_ceil): Prototype here.
4753         * builtins.c (integer_valued_real_p): New function to test if
4754         a floating point expression has an integer valued result.
4755         (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
4756         foo(x) where foo is an integer rounding function.  Similarly,
4757         optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
4758         (double)(int)x when both foo and bar are integer rounding
4759         functions and we don't need to honor errno.
4760         (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
4761         New functions to fold trunc, floor and ceil.
4762         (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
4763         fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
4764         to fold BUILT_IN_CEIL*.
4765         * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
4766         the remaining integer rounding functions.
4767
4768 2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
4769
4770         * config/sparc/sparc.c (function_arg_partial_nregs): Use
4771         SPARC_INT_ARG_MAX to determine where to split unnamed
4772         complex FP arguments.
4773
4774 Thu Jul  3 20:36:47 CEST 2003  Jan Hubicka  <jh@suse.cz>
4775
4776         * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
4777         * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
4778         (merge_blocks_move_predecessor_nojumps,
4779          merge_blocks_move_successor_nojumps): Use merge_blocks.
4780         (try_optimize_cfg): Use merge_blocks_move.
4781         * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
4782         (merge_blocks_nomove): Rename to rtl_merge_blocks.
4783         (cfg_layout_create_basic_block): New.
4784         (rtl_can_merge_blocks): New.
4785         (cfg_layout_split_block): Do not alloc aux by hand.
4786         * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
4787         merge_blocks.
4788         (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
4789         * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
4790         * cfgloopmanip.c (loop_split_edge_with): Likewise.
4791         * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
4792
4793         * basic-block.h (basic_block_def): Add field 'rbi'.
4794         * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
4795         find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
4796         * cfg.c (entry_exit_blocks): Add new field.
4797         * cfglayout.c: Include alloc-pool.h;
4798         (cfg_layout_pool): New.
4799         (record_effective_endpoints, fixup_reorder_chain,
4800         fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
4801         of rbi.
4802         (cfg_layout_initialize_rbi): New function.
4803         (cfg_layout_initialize): Use it.
4804         (cfg_layout_finalize): Clear rbi fields.
4805         * cfglayout.h (RBI): Kill.
4806         (cfg_layout_initialize_rbi): Declare.
4807         * cfgloopmanip.c (copy_bbs): Use rbi.
4808         (record_exit_edges): Likewise.
4809         (duplicate_loop_to_header_edge): Likewise.
4810         * cfgrtl.c (cfg_layout_create_basic_block): Use
4811         cfg_layout_initialize_rbi.
4812         (cfg_layout_split_block): Use rbi.
4813         (cfg_layout_delete_block): Likewise.
4814         * loop-init.c (loop_optimizer_finalize): Likewise.
4815         * loop-unswitch.c (unswitch_loop): Likewise.
4816         * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
4817
4818         * cfgrtl.c: Update comments.
4819         (try_redirect_by_replacing_jump): New argument.
4820         (redirect_branch_edge): Break out from ...
4821         (rtl_redirect_edge_and_branch): ... this one.
4822         (update_cfg_after_block_merging): Break out from ...
4823         (rtl_merge_blocks): ... this one.
4824         (cfg_layout_split_edge): New.
4825         (cfg_layout_merge_blocks): New.
4826         (cfg_layout_can_merge_blocks_p): New.
4827         (cfg_layout_redirect_edge_and_branch): Reorganize.
4828         (cfg_layout_rtl_cfg_hooks): Fill in.
4829         (cfg_layout_delete_block): Kill barriers.
4830         * cfganal.c (can_fallthru): Deal with exit blocks
4831         * cfglayout.c (cfg_layout_function_header): New function
4832         (record_effective_endpoints): Record function header.
4833         (fixup_reorder_chain): Fixup dead jumptables; place header
4834
4835         * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
4836         * bb-reorder.c (cfg_layout_initialize): Update call.
4837         * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
4838         edges in cfglayout mode.
4839         * cfglayout.c (cleanup_unconditional_jumps): Kill.
4840         (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
4841         * cfglayout.h (cfg_layout_initialize): Update prototype.
4842         * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
4843         * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
4844         * flow.c (propagate_block): Do not crash when basic block ends
4845         by first insn in the chain.
4846         * loop-init.c (loop_optimizer_init):  First enter cfglayout mode; later
4847         do loop discovery.
4848         * tracer.c (tracer): Update call of cfg_layout_initialize.
4849
4850 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4851
4852         * Makefile.in: Use dependency variables in lieu of explicit
4853         files throughout.
4854
4855 2003-07-03  Steven Bosscher  <steven@gcc.gnu.org>
4856
4857         * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
4858         * tree.h: ...to here.
4859
4860 2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
4861
4862         * config/s390/2064.md: Fix comment typos.
4863         * config/s390/2084.md: Likewise.
4864         * config/s390/s390.c: Likewise.
4865         * config/s390/s390.md: Likewise.
4866         * config/sh/sh.c: Likewise.
4867         * config/sh/sh.h: Likewise.
4868         * config/sh/sh.md: Likewise.
4869         * config/sparc/sparc.c: Likewise.
4870         * config/sparc/sparc.h: Likewise.
4871         * config/sparc/sparc.md: Likewise.
4872         * config/stormy16/stormy16.c: Likewise.
4873         * config/stormy16/stormy16.h: Likewise.
4874         * config/stormy16/stormy-abi: Fix a typo.
4875
4876 2003-07-03  Kelley Cook  <kelleycook@wideopenwest.org>
4877
4878         * Makefile.in (ifcvt.o): Depend on OPTABS_H.
4879
4880 2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4881
4882         * config/mips/mips.h (save_argv): Delete.
4883
4884 2003-07-03  Roger Sayle  <roger@eyesopen.com>
4885
4886         PR target/10700
4887         * fold-const.c (extract_muldiv_1): There's nothing that can be done
4888         if the expression is a SAVE_EXPR.
4889
4890 2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
4891
4892         * config/m32r/m32r.c: Fix comment typos.
4893         * config/m68hc11/m68hc11.c: Likewise.
4894         * config/m68hc11/m68hc11.h: Likewise.
4895         * config/m68k/m68k.c: Likewise.
4896         * config/mcore/mcore.c: Likewise.
4897         * config/mcore/mcore.h: Likewise.
4898         * config/mcore/mcore.md: Likewise.
4899         * config/mips/mips.c: Likewise.
4900         * config/mips/mips.h: Likewise.
4901         * config/mips/mips.md: Likewise.
4902         * config/mips/netbsd.h: Likewise.
4903         * config/mn10300/mn10300.c: Likewise.
4904
4905 2003-07-03  Andreas Schwab  <schwab@suse.de>
4906
4907         * dbxout.c (pending_bincls): Move decl down inside
4908         DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
4909
4910 2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
4911
4912         * rtl.h (NOTE_DATA): Refer to whole union.
4913         * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
4914
4915 2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
4916
4917         PR optimization/11381
4918         * simplify-rtx.c (simplify_relational_operation): Check that
4919         two equal operands have no side-effects before simplifying
4920         the comparison.
4921
4922 2003-07-02  Jeff Law  <law@redhat.com>
4923
4924         * expr.c (do_store_flag): Remove special case folding for
4925         single bit tests.  Instead call back into the commonized folder
4926         routine.
4927         * fold-const.c (fold_single_bit_test): New function, mostly
4928         extracted from do_store_flag, with an additional case extracted
4929         from fold.
4930         (fold): Call fold_single_bit_test appropriately.
4931         * tree.h (fold_single_bit_test): Prototype.
4932
4933 2003-07-02  Zack Weinberg  <zack@codesourcery.com>
4934
4935         * system.h: Include filenames.h.
4936         (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
4937         (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
4938         define based on HAVE_DOS_BASED_FILE_SYSTEM.
4939         * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
4940         * config/i386/xm-mingw32.h: Don't define
4941         HAVE_DOS_BASED_FILE_SYSTEM,
4942         DIR_SEPARATOR, or DIR_SEPARATOR_2.
4943         * doc/hostconfig.texi: Update to match.
4944
4945         * cppfiles.c, gcc.c, gensupport.c, protoize.c,
4946         config/i386/cygwin.h:
4947         Use IS_ABSOLUTE_PATH throughout.
4948         * gcc.c (DIR_UP): Delete, unused.
4949         * protoize.c (IS_SAME_PATH): Define in terms of
4950         FILENAME_CMP.
4951         (is_abspath): Delete.
4952
4953 2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
4954
4955         * config/i386/emmintrin.h: Fix comment typos.
4956         * config/i386/i386.c: Likewise.
4957         * config/i386/i386.h: Likewise.
4958         * config/i386/sco5.h: Likewise.
4959         * config/ia64/ia64.c: Likewise.
4960         * config/ia64/itanium2.md: Likewise.
4961
4962 2003-07-02  H.J. Lu  <hongjiu.lu@intel.com>
4963
4964         * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
4965         DBX_USE_BINCL.
4966         (emit_bincl_stab): Same.
4967         (emit_pending_bincls): Same.
4968
4969 2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
4970
4971         * config/h8300/h8300.c (compute_mov_length): Fix the length of
4972         loading CONST0_RTX (SFmode).
4973         * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
4974         'G' to CONST0_RTX (SFmode).
4975         * config/h8300/h8300.md (movsf_h8300): Change the first
4976         constraint to 'G'.
4977         (movsf_h8300h): Likewise.
4978
4979 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
4980
4981         * c-common.h (c_common_init_options): New prototype.
4982         * c-opts.c (deferred_size): Remove.
4983         (defer_opt): Array is now pre-allocated.
4984         (c_common_init_options): Pre-allocate deferred_opts.  Make
4985         lang_flags unsigned.
4986         (push_command_line_options): Free deferred_opts.
4987         * hooks.c (hook_uint_uint_constcharptrptr_0): New.
4988         * hooks.h (hook_uint_uint_constcharptrptr_0): New.
4989         * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
4990         * langhooks.h (struct lang_hooks): New prototype for init_options.
4991         * main.c (main): Cast argv.
4992         * opts.c (handle_option, handle_options): Update prototypes.
4993         (decode_options): save_argc, save_argv are not global.  Constify.
4994         * opts.h (decode_options): New prototype.
4995         * toplev.c (general_init): New protoype.
4996         (save_argv): Make static.
4997         (save_argc): Remove.
4998         (print_switch_values, general_init): Constify.
4999         (toplev_main): Save argv.
5000         * toplev.h (toplev_main): Update prototype.
5001         (save_argc, save_argv): Remove.
5002
5003 2003-07-02  David Edelsohn  <edelsohn@gnu.org>
5004
5005         * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
5006         (emit_bincl_stab): Same.
5007         (emit_pending_bincls): Same.
5008
5009 2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
5010
5011         PR c++/11072
5012         * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
5013
5014 2003-07-02  Andreas Schwab  <schwab@suse.de>
5015
5016         * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
5017
5018 2003-07-02  Eric Botcazou  <ebotcazou@libertysurf.fr>
5019
5020         PR optimization/11210
5021         * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
5022         about the behaviour with regard to bitfields.
5023         * fold-const (decode_field_reference): Record outermost type in
5024         case the expression is a NOP. Strip all NOPs. Set the signedness
5025         to that of the outermost type (if any) when the bitsize is equal
5026         to the size of the type.
5027
5028 2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
5029
5030         * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
5031         (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
5032         (adddi3_internal_3, addsi3_internal_2): Likewise.
5033
5034 2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
5035
5036         * config/mips/mips.c (machine_function): Add new fields:
5037         ignore_hazard_length_p and all_noreorder_p.
5038         (mips_flag_delayed_branch): New variable.
5039         (override_options): Treat '/' as an operand punctuation character.
5040         Set up mips_flag_delayed_branch.
5041         (print_operand): Handle '/'.
5042         (mips_output_function_prologue): Put the whole function in
5043         .set noreorder and .set nomacro if all_noreorder_p is true.
5044         (mips_output_function_epilogue): End the noreorder/nomacro sequence.
5045         (mips16_optimize_gp): Remove "first insn" parameter.
5046         (mips16_lay_out_constants): New function, split out from mips_reorg.
5047         (mips_avoid_hazard, mips_avoid_hazards): New functions.
5048         (mips_reorg): For mips16 code, call mips16_lay_out_constant
5049         and (optionally) mips16_optimize.  If TARGET_EXPLICIT_RELOCS,
5050         do delayed-branch scheduling followed by hazard detection.
5051         (mips_adjust_insn_length): Only account for hazards if
5052         !ignore_hazard_length_p.
5053         (mips_output_load_label): Add a nop to the o32 sequence if
5054         the target suffers from load delays.
5055         (mips_output_conditional_branch): Add %/ to the end of branches.
5056         (mips_output_division): Fill the branch delay slot with %#.
5057         * config/mips/mips.md: Remove redundant '%*' from mips16 branch
5058         instructions.  End all other %* branches with %/.
5059         (ffssi2, ffsdi2): Fix lengths.
5060         (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
5061         (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
5062         (fix_truncsfsi2_macro): Likewise.
5063         (mov_lwl): Set hazard to "none".
5064         (ashldi3_internal): Fill the branch delay slot with %#.
5065         (ashrdi3_internal, lshrdi3_internal): Likewise.
5066         (exception_receiver): Explicitly set $28.
5067         (hazard_nop): New pattern.
5068
5069 Wed Jul  2 08:12:36 CEST 2003  Jan Hubicka  <jh@suse.cz>
5070
5071         * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
5072         before calling tree_inlinable_function_p.
5073
5074 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5075
5076         * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
5077         <internal/stdio_core.h> too.
5078         (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
5079         <internal/wchar_core.h> too.
5080         Substitute va_list uses in inline definition.
5081         * fixinc/fixincl.x: Regenerate.
5082
5083 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5084
5085         * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
5086         Undef before redefinition.
5087         (LABEL_AFTER_LOC): Likewise.
5088         (DEFAULT_SIGNED_CHAR): Likewise.
5089         (ASM_OUTPUT_ASCII): Moved here from iris4.h.
5090         Fix IRIX spelling.
5091
5092         * config/mips/iris3.h: Remove, unused.
5093         * config/mips/iris4.h: Likewise.
5094
5095         * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
5096
5097         * config/mips/iris5.h (TARGET_DEFAULT): Move ...
5098         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
5099         target_cpu_default.
5100
5101         * config/mips/iris5.h: Move explicit includes ...
5102         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
5103
5104         * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
5105         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
5106         tm_defines.
5107
5108         * config/mips/iris6.h (TARGET_DEFAULT): Move ...
5109         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
5110         target_cpu_default.
5111
5112         * config/mips/iris6.h: Fix IRIX spelling.
5113         (MULTILIB_DEFAULTS): Undef before redefinition.
5114
5115         * config/mips/iris6.h: Move explicit includes ...
5116         * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
5117
5118 Wed Jul  2 02:16:48 CEST 2003  Jan Hubicka  <jh@suse.cz>
5119
5120         * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
5121         cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
5122         Use next_needed field instead of aux to maintain the queue.
5123         * cgraph.h (cgraph_node): Add next_needed.
5124         (cgraph_varpool_node): Add next_needed; remove aux.
5125         * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
5126
5127 Wed Jul  2 02:12:51 CEST 2003  Jan Hubicka  <jh@suse.cz>
5128
5129         * cgraphunit.c (cgraph_finalize_function): Set finalized.
5130         (cgraph_finalize_function): Do not examine inlinablility.
5131         (cgraph_finalize_compilation_unit): Do it here.
5132         * cgraph.h (cgraph_local_info): Add finalized field.
5133
5134 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5135
5136         * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
5137         (gt_pch_restore): Likewise.
5138
5139 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
5140
5141         * config/alpha/alpha.c: Fix comment typos.
5142         * config/alpha/elf.h: Likewise.
5143         * config/arm/arm.c: Likewise.
5144         * config/arm/arm.h: Likewise.
5145         * config/arm/arm.md: Likewise.
5146         * config/arm/t-arm-coff: Likewise.
5147         * config/arm/t-strongarm-pe: Likewise.
5148         * config/arm/xscale-elf.h: Likewise.
5149         * config/avr/avr.h: Likewise.
5150
5151 2003-07-01  Jeff Law  <law@redhat.com>
5152
5153         * stmt.c (any_pending_cleanups): Remove another redundant test.
5154
5155 2003-07-01  David Edelsohn  <edelsohn@gnu.org>
5156             J"orn Rennecke <joern.rennecke@superh.com>
5157
5158         * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
5159         for MEM case.
5160
5161 2003-07-01  Devang Patel  <dpatel@apple.com>
5162
5163         * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
5164         (binclstatus): New.
5165         (struct dbx_file): New members - bincl_status, pending_bincl_name and
5166         prev.
5167         (pending_bincls): New.
5168         (dbxout_init): Initialize new dbx_file members.
5169         (dbxout_start_source_file): Same.
5170         (emit_bincl_stab): New function.
5171         (emit_pending_bincls): Same.
5172         (emit_pending_bincls_if_required): Same.
5173         (dbxout_end_source_file): Emit EINCL stab only if BINCL is  already
5174         processed.
5175         (dbxout_begin_block): Emit pending BINCL stabs.
5176         (dbxout_end_block): Same.
5177         (dbxout_function_decl): Same.
5178         (dbxout_continue): Same.
5179         (dbxout_type): Same.
5180         (dbxout_class_name_qualifiers): Same.
5181         (dbxout_symbol): Same.
5182         (dbxout_symbol_location): Same.
5183         (dbxout_parms): Same.
5184
5185 2003-07-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5186
5187         * c-semantics.c (genrtl_case_label): Fix format specifier bug.
5188         * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
5189
5190 2003-07-01  Andreas Jaeger  <aj@suse.de>
5191
5192         * fold-const.c: Convert prototypes to ISO C90.
5193         * function.c: Likewise.
5194         * function.h: Likewise.
5195
5196 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
5197
5198         * doc/contrib.texi: Fix typos.
5199         * doc/invoke.texi: Likewise.
5200         * doc/passes.texi: Likewise.
5201         * doc/sourcebuild.texi: Likewise.
5202         * doc/tm.texi: Likewise.
5203
5204 2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
5205
5206         * basic-block.h: Fix comment typos.
5207         * bb-reorder.c: Likewise.
5208         * c-format.c: Likewise.
5209         * cfgcleanup.c: Likewise.
5210         * cfghooks.h: Likewise.
5211         * cfgloop.c: Likewise.
5212         * cfgloopmanip.c: Likewise.
5213         * cfgrtl.c: Likewise.
5214         * cgraph.h: Likewise.
5215         * cgraphunit.c: Likewise.
5216         * combine.c: Likewise.
5217         * convert.c: Likewise.
5218         * dbxout.c: Likewise.
5219         * df.c: Likewise.
5220         * df.h: Likewise.
5221         * diagnostic.c: Likewise.
5222         * dwarf2out.c: Likewise.
5223         * et-forest.h: Likewise.
5224         * flow.c: Likewise.
5225         * fold-const.c: Likewise.
5226         * function.h: Likewise.
5227         * gcov-io.h: Likewise.
5228         * gcov.c: Likewise.
5229         * gcse.c: Likewise.
5230         * genautomata.c: Likewise.
5231         * ggc-common.c: Likewise.
5232         * ggc-page.c: Likewise.
5233         * loop-unroll.c: Likewise.
5234         * loop-unswitch.c: Likewise.
5235         * loop.c: Likewise.
5236         * mips-tfile.c: Likewise.
5237         * optabs.c: Likewise.
5238         * ra-build.c: Likewise.
5239         * ra-colorize.c: Likewise.
5240         * ra-rewrite.c: Likewise.
5241         * ra.h: Likewise.
5242         * regmove.c: Likewise.
5243         * reload.c: Likewise.
5244         * rtlanal.c: Likewise.
5245         * sched-ebb.c: Likewise.
5246         * sched-int.h: Likewise.
5247         * sched-vis.c: Likewise.
5248         * sreal.c: Likewise.
5249         * ssa-ccp.c: Likewise.
5250         * ssa.c: Likewise.
5251         * toplev.c: Likewise.
5252         * tree-inline.c: Likewise.
5253         * value-prof.c: Likewise.
5254         * value-prof.h: Likewise.
5255
5256 2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
5257
5258         * rtl.h (emit_line_note_after): Remove.
5259         (emit_note_copy_after, emit_note_copy): New.
5260         * emit-rtl.c (reorder_insns_with_line_notes): Replace
5261         emit_line_note_after with emit_note_copy_after.
5262         (emit_insn_after_with_line_notes): Likewise.
5263         (emit_line_note_after): Kill.
5264         (emit_note_copy_after): New.
5265         (emit_note_copy): New.
5266         * function.c (emit_return_into_block): Use emit_note_copy_after.
5267         (thread_prologue_and_epilogue_insns): Likewise.
5268         * integrate.c (expand_inline_function): Use emit_note_copy.
5269         (copy_insn_list): Likewise.
5270         * unroll.c (copy_loop_body): Likewise.
5271         * cfglayout.c (duplicate_insn_chain): Likewise.
5272
5273 2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
5274
5275         * c-tree.h (define_label): Replace filename and lineno arguments
5276         with a location_t.
5277         * c-decl.c (poplevel): Adjust define_label call.
5278         (pop_label_level): Likewise.
5279         (define_label): Replace filename and lineno arguments with a
5280         location_t.
5281         (store_parm_decls): Use DECL_SOURCE_LOCATION.
5282         * c-parse.in (label): Adjust define_label call.
5283
5284 2003-07-01  Neil Booth  <neil@daikokuya.co.uk>
5285
5286         * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
5287         config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
5288         config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
5289         config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
5290         config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
5291
5292 2003-07-01  Andreas Jaeger  <aj@suse.de>
5293
5294         * final.c: Convert prototypes to ISO C90.
5295         * flow.c: Likewise.
5296         * flags.h: Likewise.
5297         * gcov-io.c: Likewise.
5298         * gcov-io.h: Likewise.
5299
5300 See ChangeLog.9 for earlier changes.