OSDN Git Service

* gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2003-08-22  bernardo innocenti  <bernie@develer.com>
2
3         * gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
4         function.
5         * gcc/config/m68k/m68k.c (-m68k_svr3_asm_out_constructor): likewise.
6
7 2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>
8
9         * config/i386/i386.c (const_int_1_operand): Simplify an
10         integer comparison.
11
12 2003-08-22  Alan Modra  <amodra@bigpond.net.au>
13
14         * config/fp-bit.c: Specify config/ dir for include of fp-bit.h.
15         * config/rs6000/ppc64-fp.c: Likewise.
16
17 2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>
18
19         * cfgcleanup.c: Fix comment typos.
20         * emit-rtl.c: Likewise.
21         * optabs.c: Likewise.
22         * ra-build.c: Likewise.
23         * rtlanal.c: Likewise.
24         * tree.h: Likewise.
25
26 2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>
27
28         * c-decl.c: Fix comment formatting.
29         * cfgrtl.c: Likewise.
30         * combine.c: Likewise.
31         * convert.c: Likewise.
32         * dominance.c: Likewise.
33         * dwarf2out.c: Likewise.
34         * dwarfout.c: Likewise.
35         * expmed.c: Likewise.
36         * fold-const.c: Likewise.
37         * gcov.c: Likewise.
38         * genattrtab.c: Likewise.
39         * ggc-common.c: Likewise.
40         * mips-tfile.c: Likewise.
41         * regmove.c: Likewise.
42
43 2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>
44
45         * builtin-attrs.def: Fix comment formatting.
46         * c-pretty-print.c: Likewise.
47         * diagnostic.h: Likewise.
48         * langhooks.h: Likewise.
49         * recog.c: Likewise.
50         * simplify-rtx.c: Likewise.
51         * tree.def: Likewise.
52
53 2003-08-22  Bernardo Innocenti  <bernie@develer.com>
54
55         * config/m68k/m68k-protos.h: Convert to ISO C90.
56         * config/m68k/m68k.c: Likewise.
57
58 2003-08-21  Bernardo Innocenti  <bernie@develer.com>
59             Paul Dale  <pauli@snapgear.com>
60             Peter Barada <peter@baradas.org>
61
62         * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
63         ColdFire cores.
64
65 2003-08-21  Zack Weinberg  <zack@codesourcery.com>
66
67         * Makefile.in (INCLUDES): Remove -I$(srcdir)/config.
68         * config.gcc (*-*-openbsd): Don't set tm_file.
69         (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*,
70         arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*,
71         h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*,
72         i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*,
73         i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*,
74         m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*,
75         m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*,
76         m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*,
77         mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka,
78         sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*,
79         xscale-*-coff): Use explicit and complete lists of target headers
80         to include.  Move definitions to tm_defines where appropriate.
81         (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for
82         not-yet-contributed configuration.
83
84         * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h
85         * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h
86         * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h
87         * config/i386/nto.h, config/iq2000/iq2000.h,
88         * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h
89         * config/m68k/linux.h, config/m68k/m68k-aout.h
90         * config/m68k/m68k-none.h, config/m68k/m68kv4.h
91         * config/m68k/netbsd.h, config/m68k/openbsd.h
92         * config/m68k/sgs.h, config/mcore/mcore-pe.h,
93         * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h,
94         * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h:
95         Remove includes of other target config headers, and
96         definitions of macros moved to tm_defines lists.  Add #undefs
97         where now necessary to prevent redefinition warnings.
98
99         * config/h8300/coff.h: New file split out of...
100         * config/h8300/elf.h: ...here.
101         * config/m68k/hp320base.h: New file split out of...
102         * config/m68k/hp320.h: ...here.
103         * config/rs6000/lynxbase.h: New file split out of...
104         * config/rs6000/lynx.h: ...here.
105
106         * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h
107         * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file.
108
109         * config/sol2.h: Remove #if 0-ed #include of sys/mman.h.
110         * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h.
111         * config/mcore/mcore.h: Don't include hwint.h nor machmode.h.
112         Remove unnecessary #ifndef.
113         * config/s390/s390.h: Prefix #include of s390/fixdfdi.h
114         [under IN_LIBGCC2] with config/.
115
116 2003-08-21  Per Bothner  <bothner@pbothner.com>
117
118         * cppfiles.c (stack_file):  Correctly pass return_at_eof parameter
119         to cpp_push_buffer.
120         * cpplex.c (_cpp_get_fresh_line):  Don't buffer->prev - handled
121         by return_at_eof check.  Always call _cpp_pop_buffer at end.
122
123 2003-08-21  Kazu Hirata  <kazu@cs.umass.edu>
124
125         PR target/11805
126         * config/h8300/h8300.md (two anonymous patterns): Remove.
127
128 2003-08-21  Richard Sandiford  <rsandifo@redhat.com>
129
130         * config/mips/mips.h (MUST_PASS_IN_STACK): Remove BLKmode clause.
131         * config/mips/mips.c (function_arg_pass_by_reference): Never return
132         true for n32 & n64.
133
134 2003-08-21  Josef Zlomek  <zlomekj@suse.cz>
135
136         * fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
137         and similarly in (A | C) == D where C & ~D != 0.
138
139 2003-08-20  Geoffrey Keating  <geoffk@apple.com>
140
141         PR 8180
142         * configure.in: When testing with_libs and with_headers, treat
143         'no' as unset.  Based on a patch by Dan Kegel <dank@kegel.com>.
144         * configure: Regenerate.
145
146 2003-08-20  Peter Barada <peter@baradas.org>
147
148         * longlong.h (umul_ppmm): Add ColdFire support.
149
150 2003-08-20  Peter Barada <peter@baradas.org>
151             Bernardo Innocenti  <bernie@develer.com>
152
153         * config/m68k/m68k-none.h: Introduce new ColdFire archs.
154         * config/m68k/m68k.h: Likewise.
155         * config/m68k/lb1sf68.asm: Rename __mcf5200__ to __mcoldfire__.
156         * config/m68k/coff.h: Rename TARGET_5200 to TARGET_COLDFIRE.
157         * config/m68k/linux.h: Likewise.
158         * config/m68k/m68k.c: Likewise.
159         * config/m68k/m68k.md: Likewise.
160         * config/m68k/m68kelf.h: Likewise.
161         * config/m68k/netbsd-elf.h: Likewise.
162         * config/m68k/t-m68kelf: Add multilib targets for new ColdFire archs.
163
164 2003-08-20  Bernardo Innocenti  <bernie@develer.com>
165
166         * config/m68k/m68k.c: Strip away code depending on NO_ADDSUB_Q definition.
167         * config/m68k/m68k.md: Likewise.
168
169 2003-08-20  Mark Mitchell  <mark@codesourcery.com>
170
171         PR java/11996
172         Revert this change:
173         2003-08-19  Mark Mitchell  <mark@codesourcery.com>
174         * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
175         types with precisions other than those given by native machine
176         modes.
177
178 2003-08-20  Gunther Nikl  <gni@gecko.de>
179
180         * config/m68k/m68k.md (anonymous define_insn): remove obsolete code
181         selected by FSGLMUL_USE_S and FSGLDIV_USE_S
182         * config/m68k/m68k.c (output_move_himode): remove SGS_NO_LI check
183         * config/m68k/m68k.md (anonymous define_insn): Likewise
184         * config/m68k/m68k.md (anonymous define_insn): remove ISI_OV check
185         * config/m68k/m68k.c (standard_68881_constant_p): remove obsolete
186         code selected by NO_ASM_FMOVECR
187
188 2003-08-20  Gunther Nikl  <gni@gecko.de>
189
190         * config/m68k/m68k.c (output_move_const_into_data_reg,
191         output_move_himode): unify MOTOROLA/MIT handling of moveq
192         * config/m68k/m68k.md (movsi_const0, anonymous define_insn):
193         Likewise
194
195 2003-08-20  Gunther Nikl  <gni@gecko.de>
196
197         * config/m68k/m68k.c (m68k_output_function_prologue): use %U in
198         label name
199         * config/m68k/m68k.c (m68k_output_function_epilogue): replace
200         HOST_WIDE_INT_PRINT_DEC with %wd
201
202 2003-08-20  Loren James Rittle  <ljrittle@acm.org>
203
204         * config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Handle
205         redefine warning.
206
207 2003-08-20  Roger Sayle  <roger@eyesopen.com>
208
209         PR middle-end/11984
210         * fold-const.c (fold <PLUS_EXPR>): Check for integer constant
211         operands before calling tree_int_cst_lt when performing associative
212         transformations.
213
214 2003-08-20  Jason Merrill  <jason@redhat.com>
215
216         * tree.h (IS_EXPR_CODE_CLASS): Also include 'r' and 's'.
217         (EXPR_CHECK): Don't check for 'r' or 's' if we're
218         checking IS_EXPR_CODE_CLASS.
219         * calls.c (calls_function_1): Likewise.
220         * fold-const.c (fold): Likewise.
221         * tree.c (iterative_hash_expr): Likewise.
222         * tree-inline.c (walk_tree, copy_tree_r): Likewise.
223
224 2003-08-20  Gunther Nikl  <gni@gecko.de>
225
226         * config/m68k/m68k.c (m68k_output_mi_thunk): delete obsolete code
227         depending on MOTOROLA_BSR
228         * config/m68k/m68k.md (anonymous define_insn): Likewise
229
230 2003-08-20  Jason Merrill  <jason@redhat.com>
231
232         * builtins.c (expand_builtin_mathfn): Use get_callee_fndecl.
233         (expand_builtin_mathfn2, expand_builtin, builtin_mathfn_code,
234         fold_trunc_transparent_mathfn, fold_builtin): Likewise.
235         * dojump.c (do_jump): Likewise.
236         * fold-const.c (operand_equal_p, fold): Likewise.
237         (tree_expr_nonnegative_p): Likewise.
238
239         * stor-layout.c (do_type_align): Only copy DECL_USER_ALIGN from
240         TYPE_USER_ALIGN for FIELD_DECLs.
241
242         * attribs.c (decl_attributes): Rebuild the function pointer type after
243         changing the target type.
244         * tree.c (get_qualified_type): Also check that the attributes match.
245
246 2003-08-19  Matt Kraai  <kraai@alumni.cmu.edu>
247
248         * Makefile.in (STAGESTUFF): Move cc1obj$(exeext) from here ...
249         * objc/config-lang.in (stagestuff): ... to here.
250
251 2003-08-19  Mark Mitchell  <mark@codesourcery.com>
252
253         PR c++/11946
254         * convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
255         NOP_EXPR) when necessary.
256         * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
257         types with precisions other than those given by native machine
258         modes.
259
260 2003-08-19  Geoffrey Keating  <geoffk@apple.com>
261
262         * cpppch.c (cpp_valid_state): Re-add warning about PCH not used
263         because some macro is defined.
264
265         * config/darwin.h (LINK_COMMAND_SPEC): Add -arch and -arch_only
266         options.
267         * config/i386/darwin.h (ASM_SPEC): New.
268         (SUBTARGET_EXTRA_SPECS): New.
269         * config/rs6000/darwin.h (ASM_SPEC): New.
270         (SUBTARGET_EXTRA_SPECS): New.
271         * configure.in: Don't set CROSS or SYSTEM_HEADER_DIR when building
272         a cross-compiler between two different processors on Darwin.
273         * configure: Regenerate.
274
275 2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>
276
277         * builtins.c: Fix comment typos.
278         * c-common.c: Likewise.
279         * c-decl.c: Likewise.
280         * c-pretty-print.c: Likewise.
281         * cfgbuild.c: Likewise.
282         * cfglayout.c: Likewise.
283         * cfgloopanal.c: Likewise.
284         * cgraphunit.c: Likewise.
285         * cppfiles.c: Likewise.
286         * dwarfout.c: Likewise.
287         * expr.c: Likewise.
288         * fold-const.c: Likewise.
289         * gcse.c: Likewise.
290         * ggc-page.c: Likewise.
291         * haifa-sched.c: Likewise.
292         * pretty-print.c: Likewise.
293         * tree.c: Likewise.
294         * tree.h: Likewise.
295         * value-prof.c: Likewise.
296
297 2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>
298
299         * c-decl.c: Follow spelling conventions.
300         * cppfiles.c: Likewise.
301
302 2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>
303
304         * c-common.c: Fix comment formatting.
305         * c-common.h: Likewise.
306         * c-decl.c: Likewise.
307         * cppinit.c: Likewise.
308         * cpplib.h: Likewise.
309         * emit-rtl.c: Likewise.
310         * input.h: Likewise.
311         * line-map.h: Likewise.
312         * opts.c: Likewise.
313         * opts.h: Likewise.
314         * simplify-rtx.c: Likewise.
315
316 2003-08-19  Daniel Jacobowitz  <drow@mvista.com>
317
318         * unwind-c.c: Add libgcc-style exception.
319         * unwind-dw2.c: Likewise.
320         * unwind-pe.h: Likewise.
321         * unwind-sjlj.c: Likewise.
322         * unwind.inc: Likewise.
323
324 2003-08-19  Andrew Pinski  <pinskia@physics.uc.edu>
325
326         PR c/5582 PR c++/10538
327         * langhooks-def.h (lhd_decl_uninit): Declare.
328         (LANG_HOOKS_DECL_UNINIT): New macro.
329         (LANG_HOOKS_INITIALIZER): Adjust.
330         * langhooks.h (struct lang_hooks): Add new field
331         decl_uninit.
332         * langhooks.c (lhd_decl_uninit): Define.
333         * c-common.c (c_decl_uninit_1): New function.
334         (c_decl_uninit): New function.
335         (warn_init_self): Define.
336         * c-common.h (c_decl_uninit): Declare.
337         (warn_init_self): Declare.
338         * c.opt: Introduce -Winit-self.
339         * c-opts.c (c_common_handle_options): Set warn_init_self.
340         * c-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
341         * objc/objc-lang.c  (LANG_HOOKS_DECL_UNINIT): Define.
342         * function.c (uninitialized_vars_warning): Call the language hook.
343         * doc/invoke.texi: Document -Winit-self.
344
345 2003-08-19  Chris Demetriou  <cgd@broadcom.com>
346
347         * config/mips/mips.md: Adjust SI-mode "trap_if" instruction
348         to use better predicates and constraints.  Define new
349         instruction to handle "trap_if" with DI-mode arguments.
350         (conditional_trap): FAIL if trap code is not 0.
351
352 2003-08-19  Andrew Pinski  <pinskia@physics.uc.edu>
353
354         * config/i386/i386.c (legitimate_pic_address_disp_p): Change the
355         strstr with $pb to a strcompare with "<pic base>"
356         (ix86_output_addr_diff_elt): Output the real pic base.
357
358 2003-08-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
359
360         * langhooks-def.h (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Fix spelling.
361         (LANG_HOOKS_INITIALIZER): Correct.
362         * c-lang.c: Likewise.
363
364 2003-08-19  Jan Hubicka  <jh@suse.cz>
365
366         * cgraph.c (cgraph_mark_needed_node): Call notice_global_symbol.
367         (cgraph_varpool_mark_needed_node): Likewise.
368         * cgraph.h (notice_global_symbol): Declare
369         * varasm.c (notice_global_symbol): Break out from ...
370         (assemble_start_function): ... here; update for variables.
371         (assemble_variable): Use notice_global_symbol.
372
373 2003-08-19  Richard Sandiford  <rsandifo@redhat.com>
374
375         * config/mips/mips.c (mips_va_arg): If EABI_FLOAT_VARARGS_P,
376         expect SFmode and DFmode arguments to be passed in FPRs,
377         regardless of the underlying type.
378
379 2003-08-19  Richard Sandiford  <rsandifo@redhat.com>
380
381         PR target/11924
382         * config/mips/mips.c (INTERNAL_SYMBOL_P): New macro.
383         (mips_classify_symbol, m16_usym8_4, m16_usym5_4): Use it.
384
385 2003-08-18  Matt Kraai  <kraai@alumni.cmu.edu>
386
387         PR c/11207
388         * c-typeck.c (set_init_index): Check for negative index.
389
390 2003-08-18  Bob Wilson  <bob.wilson@acm.org>
391
392         * config/xtensa/crti.asm (_init, _fini): Add alternate code for new
393         call0 ABI.
394         * config/xtensa/crtn.asm (_init, _fini): Likewise.
395         * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
396         __umodsi3, __modsi3): Likewise.
397         * config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
398         $(INCLUDES).
399
400 2003-08-18  Aldy Hernandez  <aldyh@redhat.com>
401
402         * config/rs6000/spe.md ("*nabssf2_gpr"): New.
403
404 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
405
406         * config/mips/mips.md: Quote C code in braces.  Remove use of
407         fake const0_rtx operands.  Remove double backslashes.  Use \;.
408         Remove workarounds for bogus warnings.
409
410 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
411
412         * config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
413         (muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
414         rather than TARGET_MIPS4300.
415         (mulsf3_internal, mulsf3_r4300): Likewise.
416
417 2003-08-18  Richard Sandiford  <rsandifo@redhat.com>
418
419         * config/mips/mips.md: Renumber unspecs.  Clean up comments.
420
421 2003-08-17  Roger Sayle  <roger@eyesopen.com>
422
423         * simplify-rtx.c (associative_constant_p): New function to test
424         whether an RTX expression is an immediate constant.
425         (simplify_associative_operation): New function to perform some
426         reassociation optimizations of associative binary expressions.
427         (simplify_binary_operation): Use simplify_associative_operation
428         to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
429         Floating point expressions are only reassociated when unsafe
430         math optimizations are permitted.
431
432 2003-08-17  Andreas Jaeger  <aj@suse.de>
433
434         * config/alpha/alpha.md: Remove usage of PARAMS.
435
436         * config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
437         * config/i386/i386-interix.h: Likewise.
438         * config/i386/winnt.c: Likewise.
439         * config/i386/cygming.h: Likewise.
440         * config/i386/cygwin2.c: Likewise.
441         * config/darwin.c: Likewise.
442         * config/darwin-c.c: Likewise.
443         * config/darwin-protos.h: Likewise.
444         * config/darwin.h: Likewise.
445         * config/s390/s390-protos.h: Likewise.
446         * config/s390/s390.c: Likewise.
447         * config/ia64/ia64.c: Likewse
448         * config/ia64/ia64-protos.h: Likewise.
449         * config/ia64/ia64-c.c: Likewise.
450
451 2003-08-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
452
453         * config/sparc/sparc.c: Convert to ISO C.
454
455         * config/sparc/sparc-protos.h: Don't use the PARAMS macro.
456         * config/sparc/sparc.c: Likewise.
457
458 2003-08-16  Nathan Sidwell  <nathan@codesourcery.com>
459
460         PR c++/11512
461         * stmt.c (expand_expr_stmt_value): Don't warn about any void
462         typed expression.
463
464 2003-08-16  Jan Hubicka  <jh@suse.cz>
465
466         * i386.c (ix86_fntype_regparm): Rename from ...
467         (ix86_function_regparm): ... this one; add fastcall and local
468         functions.
469         (ix86_function_ok_for_sibcall): Update.
470         (ix86_return_pops_args): Likewise.
471         (init_cumulative_args): Likewise.
472         (x86_can_output_mi_thunk): Likewise.
473         (function_arg): Fix formating.
474         (x86_this_parameter): Fix fastcall.
475         (x86_output_mi_thunk): Likewise.
476
477         * cgraph.c (cgraph_mark_needed_node): Do not mark functions without
478         body as reachable; mark nested functions as needed too.
479         (dump_cgraph): Do not output global.calls.
480         * cgraph.h (cgraph_global_info): Kill.
481         * cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
482         (record_call_1): Speedup.
483         (cgraph_analyze_function): Break out from ...; compute inlining
484         parameters.
485         (cgraph_finalize_compilation_unit): ... here.
486         (cgraph_mark_inline): Kill computation of calls.
487         (cgraph_decide_inlining): Do not compute most of initial values.
488
489 2003-08-14  Roger Sayle  <roger@eyesopen.com>
490
491         * fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
492         to negate if either operand is easy to negate, if we don't care
493         about sign-dependent rounding.
494         (negate_expr): Make the logic to negate a REAL_CST explicit.
495         Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
496         that's easy to negate, if we don't honor sign-dependent rounding.
497         (fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
498         negate, and the symmetric A * -B as -A * B if A is easy to negate.
499         (fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
500         -C/D if B and C are cheap to negate.  Add an explicit rule to
501         optimize X/-1.0 as -X when we don't care about signaling NaNs.
502
503 2003-08-14  Zack Weinberg  <zack@codesourcery.com>
504
505         * Makefile.in (tm_file): Rename tm_include_list.
506         (tm_p_file): Rename tm_p_include_list.
507         (build_xm_file): Rename build_xm_include_list.
508         (host_xm_file): Rename host_xm_include_list.
509         (xm_file): Rename xm_include_list.
510         (xm_file_list): Add to be substituted.
511         (cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
512         Update to match.
513         (bt-load.o): Add missing dependency on $(TM_H).
514         * configure.in: Prefix value of EXTRA_MODES_FILE with config/.
515         For each of tm_file, tm_p_file, xm_file, host_xm_file, and
516         build_xm_file, generate both *_file_list and *_include_list
517         values from it.  (xm_file_list was formerly not being generated.)
518         In *_include_list, prefix the names of all headers found in
519         $(srcdir)/config with config/.  In each loop, consider only
520         the special case files that can actually appear in that list.
521         AC_SUBST all *_file_list and all *_include_list variables; do
522         not AC_SUBST the plain *_file variables.
523         * configure: Regenerate.
524
525 2003-08-14  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
526
527         * cfg.c (dump_edge_info): Add name of loop_exit edge flag.
528
529 2003-08-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
530
531         * pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
532         direct calls.
533         (attr_length_call): Include it here.  Improve length estimate for
534         local calls.
535         (output_call): Use targetm.binds_local_p.
536
537 2003-08-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
538
539         * builtins.c (CASE_MATHFN): New helper macro.
540         (mathfn_built_in): Simplify and sort.
541
542         * protoize.c (substr): Delete, callers changed to `strstr'.
543
544 2003-08-13  Zack Weinberg  <zack@codesourcery.com>
545
546         * config.gcc (iq2000*-*-elf*): Don't set xm_file.
547         * config/iq2000/xm-iq2000.h: Delete file.
548
549 2003-08-13  Geoffrey Keating  <geoffk@apple.com>
550
551         * gengtype.c (walk_type): Process a subobject before processing
552         the pointer that points to the subobject.
553
554 2003-08-13  Per Bothner  <pbothner@apple.com>
555
556         * regclass.c (init_reg_modes):  Make non-static.
557         Rename to init_reg_modes_once per new naming convention.
558         (init_regs):  Don't call init_reg_modes here.
559         * emit-rtl.c (init_emit_once):  Call init_reg_modes_once here instead.
560         * rtl.h (init_reg_modes_once):  New declaration.
561         * toplev.c (backend_init):  Call init_regs after init_emit_once.
562
563 2003-08-13  Kaz Kojima  <kkojima@gcc.gnu.org>
564
565         * config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
566         special index for MD_FALLBACK_FRAME_STATE_FOR to itself.
567
568 2003-08-13  J"orn Rennecke <joern.rennecke@superh.com>
569
570         * sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
571         * sh.md (load_ra): Change insn predicate to TARGET_SH1.
572
573 2003-08-13  Dale Johannesen  <dalej@apple.com>
574
575         * config/rs6000/rs6000.md (ctrsi, ctrdi):  Reenable
576         handling of decrement-and-branch farther than 32 bits.
577
578 2003-08-12  Kelley Cook  <kelleycook@wideopenwest.com>
579
580         * configure.in (make_compare_target): Move test to ...
581         * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
582         * configure: Regenerate.
583
584 2003-08-12  Richard Sandiford  <rsandifo@redhat.com>
585
586         * config/mips/iris6.h: Convert to C90 prototypes.
587         * config/mips/irix6-libc-compat.c: Likewise.
588         * config/mips/mips-protos.h: Likewise.
589         * config/mips/mips.c: Likewise.
590
591 2003-08-12  Nathanael Nerode  <neroden@gcc.gnu.org>
592
593         fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel.  Enable
594         for selected machines.  Comment heavily.
595         fixinc/fixincl.x: Rebuild.
596         fixinc/tests/base/fs/rfs/rf_cache.h: New file.
597
598 2003-08-12  Richard Sandiford  <rsandifo@redhat.com>
599
600         * config/mips/mips.h: Tweak various comments.
601         * config/mips/mips.c: Likewise.
602
603 2003-08-11  James E Wilson  <wilson@tuliptree.org>
604
605         PR optimization/11319
606         PR target/10021
607         * alias.c (find_base_value, case REG): Return 0 not src if no base
608         found.
609
610 2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
611
612         * gcse.c (gmalloc): Fix last change.
613
614 2003-08-11  Roger Sayle  <roger@eyesopen.com>
615
616         * simplify-rtx.c (simplify_binary_operation): Replace calls to
617         gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
618         and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
619         gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.
620
621 2003-08-11  Roger Sayle  <roger@eyesopen.com>
622
623         * expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
624         * c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
625         typecode for an ABS_EXPR.
626
627         * doc/c-tree.texi: Document ABS_EXPR.
628
629 2003-08-11  Roger Sayle  <roger@eyesopen.com>
630
631         * fold-const.c (fold): Optimize any associative floating point
632         operator with -funsafe-math-optimizations, not just MULT_EXPR.
633
634 2003-08-11  Kaz Kojima  <kkojima@gcc.gnu.org>
635
636         * config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
637         information in SHmedia case too.
638         (__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
639         Likewise.
640         (__set_fpscr): Use an access via GOT for PIC case.
641
642 2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>
643
644         * configure.in (intermodule): Make switch test more portable.
645         * configure: Regenerate.
646
647 2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>
648
649         * Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
650         (restrap): Likewise.
651
652 2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
653
654         * gcse.c (gmalloc): Argument is a size_t.  Add ATTRIBUTE_MALLOC.
655         (grealloc): Size argument is a size_t.
656         (gcalloc): New function.  Use throughout in lieu of
657         gmalloc/memset.
658
659         * config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
660         xmalloc/memset.
661         * config/ia64/ia64.c (ia64_reorg): Likewise.
662         * conflict.c (conflict_graph_new): Likewise.
663         * fixinc/fixincl.c (run_compiles): Likewise.
664         * genattrtab.c (optimize_attrs): Likewise.
665         * genrecog.c (new_decision): Likewise.
666         * haifa-sched.c (schedule_block): Likewise.
667         * hashtable.c (ht_create): Likewise.
668
669 2003-08-11  Bob Wilson  <bob.wilson@acm.org>
670
671         * config/xtensa/lib2funcs.S: Fix whitespace.
672         * config/xtensa/xtensa.md (all insns and expanders): Use brace block
673         syntax where appropriate.  Remove unnecessary backslash escapes.
674         Reformat comments and fix some code formatting.
675         (extendqisi2): Rearrange conditional.
676         (*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
677         *maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
678         of fatal_insn.
679
680 2003-08-11  Richard Sandiford  <rsandifo@redhat.com>
681
682         * config/mips/mips.c: Various formatting fixes.
683         (override_options): Resync -mtune handling with gas.
684         (mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
685         * config/mips/mips.h: More formatting fixes.
686         (mips_abi): Move declaration.
687         * config/mips/mips.md (exception_receiver): Add mode to
688         unspec_volatile.
689
690 2003-08-11  Aldy Hernandez  <aldyh@redhat.com>
691
692         * config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
693         evsplatfi here.
694         (bdesc_1arg): Remove evsplati and evsplatfi.
695
696 2003-08-11  J"orn Rennecke <joern.rennecke@superh.com>
697
698         * dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
699         into account.
700
701 2003-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
702
703         * builtins.c (expand_builtin_strcat): Optimize constant strings.
704
705 2003-08-10  Gabriel Dos Reis  <gdr@integrable-solutions.net>
706
707         * pretty-print.c (pp_base_indent): Rename from pp_indent.
708         * c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
709         (struct c_pretty_print_info): Add more fields.
710         (pp_c_left_paren): Move to c-pretty-print.c.
711         (pp_c_right_paren): Likewise.
712         (pp_c_left_brace): Likewise.
713         (pp_c_right_brace): Likewise.
714         (pp_c_left_bracket): Likewise.
715         (pp_c_right_bracket): Likewise.
716         (pp_c_declarator): Declare.
717         (pp_c_direct_declarator): Likewise.
718         (pp_c_specifier_qualifier_list): Likewise.
719         (pp_c_type_id): Likewise.
720         * c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
721         (pp_c_type_qualifier_list): New.
722         (pp_c_pointer): Likewise.
723         (pp_c_parameter_type_list): Likewise.
724         (pp_c_function_definition): Likewise.
725         (pp_c_id_expression): Likewise.
726         (pp_c_simple_type_specifier): Tidy.
727         (pp_c_unary_expression): Likewise.
728         (pp_c_expression): Likewise.
729         (pp_c_pretty_printer_init): Likewise.
730         (pp_c_specifier_qualifier_list): Rework..
731         (pp_c_abstract_declarator): Likewise.
732         (pp_c_postfix_expression): Likewise.
733         (pp_c_primary_expression): Likewise.
734         (pp_c_cast_expression): Likewise.
735         (pp_c_direct_abstract_declarator): Likewise.
736         (pp_c_storage_class_specifier): Likewise.
737         (pp_c_function_specifier): Likewise.
738         (pp_c_declaration_specifiers): Likewise.
739         (pp_c_direct_declarator): Likewise.
740         (pp_c_declarator): Likewise.
741         (pp_c_declaration): Likewise.
742         (pp_c_statement): Likewise.
743         (pp_c_integer_constant): Rename from pp_c_integer_literal.
744         (pp_c_character_constant): Rename from pp_c_character_literal.
745         (pp_c_bool_constant): Rename from pp_c_bool_literal.
746         (pp_c_enumeration_constant): Rename from pp_c_enumerator.
747         (pp_c_floating_constant): Rename from pp_c_real_literal.
748         (pp_c_constant): Rename from pp_c_literal.
749         * c-lang.c: Include diagnostic.h and c-pretty-print.h
750         (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
751         (c_initialize_diagnostics): New.
752         * Makefile.in (c-lang.o): Update dependency.
753
754 2003-08-10  Nathan Sidwell  <nathan@codesourcery.com>
755
756         * c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.
757
758 2003-08-10  Richard Sandiford  <rsandifo@redhat.com>
759
760         * config/mips/mips.c (mips_no_mips16_string): Remove.
761         (override_options): Don't handle -mips16 as part of -mipsN.
762         * config/mips/mips.h (mips_no_mips16_string): Remove declaration.
763         (TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
764         (TARGET_OPTIONS): Remove -mno-mips16.
765
766 2003-08-10  Richard Sandiford  <rsandifo@redhat.com>
767
768         * config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
769         (coprocessor2_operand): Likewise.
770         * config/mips/mips.c (STAB_CODE_TYPE): Remove.
771         (lookup_name): Remove declaration.
772         (abort_with_insn): Remove.  Replace all uses with fatal_insn.
773         (mips16, mips_abicalls): Remove.
774         (mips_char_to_class): Remove initialiser: all entries are NO_REGS.
775         (arith32_operand, large_int, true_reg_or_0_operand): Remove.
776         (coprocessor_operand, coprocessor2_operand): Remove.
777         (override_options): Don't set mips16 or mips_abicalls.
778         (print_operand): Don't expect SIGN_EXTEND operands.
779         (mips_secondary_reload_class): Likewise.
780         (mips_output_conditional_branch): Remove disabled long-branch code.
781         * config/mips/mips.h (call_used_regs): Remove declaration.
782         (may_call_alloca): Likewise.
783         (mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
784         (mips_abicalls, mips16): Remove declarations.
785         (ASM_FINAL_SPEC, LIB_SPEC): Remove.
786         (CC1_SPEC): Remove outdated comment.
787         (MIPS_VERSION, MACHINE_TYPE): Remove.
788         (TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
789         (PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
790         (STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
791         (PUSH_ROUNDING): Likewise.
792         (ASSEMBLER_SCRATCH_REGNUM): Remove.
793         * config/mips/mips.md: Replace mips_cpu_attr with mips_tune
794         and mips16 with TARGET_MIPS16.
795
796 2003-08-09  Per Bothner  <pbothner@apple.com>
797
798         * cppinit.c (cpp_read_main_file):  Split out source-independent
799         initialization to separate function ...
800         (cpp_post_options):  New function.
801         * cppfiles.c (cpp_stack_file):  Rename public name to ...
802         (_cpp_stack_file):  New internal function name.
803         * cpplib.h:  Update accordingly.
804         * cppinit.c:  (cpp_create_reader):  Initialize cpp_readers line here.
805         (cpp_read_main_file):  Don't initialize line here.
806         * c-opts.c (c_common_post_options):  Call cpp_post_options.
807         (c_common_parse_file):  Call cpp_read_main_file, not cpp_stack_file.
808         * fix-header.c (read_scan_file):  Call cpp_post_options.
809
810 2003-08-09  Per Bothner  <per@bothner.com>
811
812         * c-decl.c (SCOPE_LIST_APPEND):  Remove bogus line continuation.
813
814 2003-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
815
816         * pa.c (pa_asm_output_mi_thunk): Fix typo.
817
818 2003-08-09  Neil Booth  <neil@daikokuya.co.uk>
819
820         PR preprocessor/11839
821         * cppfiles.c (open_file): Handle ENOTDIR.
822
823 2003-08-09  Richard Sandiford  <rsandifo@redhat.com>
824
825         PR target/11699
826         * config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.
827
828 2003-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
829
830         * pa.md (extzv, extv, insv): Fix operand limit checks.  Fail if
831         source/destination is not a register operand.
832
833 2003-08-08  Richard Henderson  <rth@redhat.com>
834
835         PR target/11535
836         * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
837         RETURN_ADDRESS_POINTER_REGNUM.
838         (ia64_expand_prologue): Don't frob it.
839         (ia64_output_function_epilogue): Likewise.
840         (ia64_return_addr_rtx): New.
841         (ia64_split_return_addr_rtx): New.
842         * config/ia64/ia64-protos.h: Update.
843         * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
844         (RETURN_ADDRESS_POINTER_REGNUM): Remove.
845         (GENERAL_REGNO_P): Don't check it.
846         (AR_*_REGNUM): Renumber.
847         (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
848         (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
849         (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
850         (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
851         (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
852         * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
853         (movdi_ret_addr): New.
854
855 2003-08-08  Geoffrey Keating  <geoffk@apple.com>
856
857         * config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.
858
859 2003-08-08  Roger Sayle  <roger@eyesopen.com>
860
861         * tree.h (get_identifier) Define a macro form of get_identifier
862         that calls get_identifier_with_length when the string is constant.
863         (get_identifier_with_length): Change type of second argument to
864         size_t in prototype.
865         * stringpool.c (get_identifier): Undefine the macro before giving
866         the function definition.
867         (get_identifier_with_length): Change  type of second argument to
868         size_t in function definition.
869         * hashtable.c (calc_hash): Change type of second argument to size_t.
870         (ht_lookup): Change type of third argument to size_t.  Reorganize
871         to speed-up the cases where the hash table slot is empty, or the
872         first probe matches (i.e. there isn't a collision).
873         * hashtable.h (ht_lookup): Adjust function prototype.
874
875 2003-08-08  Bernardo Innocenti  <bernie@develer.com>
876
877         PR target/9697
878         PR target/11777
879         * longlong.h (count_leading_zeros): Exclude on __mcpu32__.
880
881 2003-08-08  Neil Booth  <neil@daikokuya.co.uk>
882
883         * common.opt: Add debug switches.
884         * flags.h (use_gnu_debug_info_extensions): Boolify.
885         * opts.c (write_symbols, debug_info_level,
886         use_gnu_debug_info_extensions): Move from toplev.c.
887         (set_debug_level): New.
888         (common_handle_options): Handle debug switches.
889         (print_help): Display target options directly.
890         * toplev.c (debug_hooks): Don't initialize.
891         (write_symbols, debug_info_level,
892         use_gnu_debug_info_extensions): Move to opts.c.
893         (debug_args, display_help, decode_g_option): Remove.
894         (process_options): Set no debug if level zero here,
895         and no-debug-hooks.  Error here if impossible debug format selected.
896         * toplev.h (display_help, decode_g_option): Remove.
897
898 2003-08-08  Richard Sandiford  <rsandifo@redhat.com>
899
900         * tree.c (get_file_function_name_long): Fix size of alloca() area.
901
902 2003-08-08  Kelley Cook  <kelleycook@wideopenwest.com>
903
904         * configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
905         and gcc_cv_prog_cmp_skip.
906         * configure: Regenerate.
907
908 2003-08-08  Stan Cox  <scox@redhat.com>
909
910         * config/iq2000: New port.
911         * config.gcc (iq2000-*-elf): Added.
912         * doc/install.texi (Specific):  Add iq2000 description.
913
914 2003-08-08  Andreas Schwab  <schwab@suse.de>
915
916         * configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
917         and insert missing empty argument.
918         * configure: Regenerate.
919
920 2003-08-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
921
922         * pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
923         (attr_length_millicode_call): Likewise.
924         (attr_length_call): Likewise.  Revise some maximum insn lengths.
925         (attr_length_indirect_call): Likewise.
926         (output_call): Fix thinko that added extra nop.
927         * pa.h (IN_NAMED_SECTION_P): Define.
928
929         PR c++/11712
930         * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
931         __STDC_EXT__ when using C++ dialect.
932
933 2003-08-07  J"orn Rennecke <joern.rennecke@superh.com>
934
935         * sh.c (calc_live_regs): If the return address pointer is live,
936         force pr live.
937         (sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
938         for saves / restores.
939         (sh_expand_epilogue): If sh_media_register_for_return returns a
940         register number, flag the instructions that restores PR_MEDIA_REG
941         as possibly dead.
942         Remove dead update of offset.
943         (sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
944         we can use the result of get_hard_reg_initial_val.
945         * sh.md (UNSPEC_RA): New constant.
946         (movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
947         (load_ra).  Handle UNSPEC_RA.
948         (sibcall_media): Use PR_MEDIA_REG.
949
950         * sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
951         * sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
952         needs saving on SHmedia.
953
954 2003-08-07  Ulrich Weigand  <uweigand@de.ibm.com>
955
956         * config/s390/s390.md: Replace all occurrences of \\t with \t.
957
958 2003-08-07  Richard Sandiford  <rsandifo@redhat.com>
959
960         * local-alloc.c (combine_regs): Fix comment typo.
961
962 2003-08-06  Zack Weinberg  <zack@codesourcery.com>
963
964         * c-decl.c (builtin_decls): Replace with first_builtin_decl
965         and last_builtin_decl.
966         (c_init_decl_processing): Initialize both.
967         (c_reset_state): Iterate from first_builtin_decl to
968         last_builtin_decl inclusive to reintroduce builtins.
969
970 2003-08-06  David Mosberger  <davidm@hpl.hp.com>
971
972         * doc/extend.texi (Function Attributes): Document the IA-64 version
973         of the "model" attribute.
974
975         * config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
976         (SYMBOL_REF_SMALL_ADDR_P): Ditto.
977         (PREDICATE_CODES): Mention "small_addr_symbolic_operand".
978
979         * config/ia64/ia64.c (ia64_handle_model_attribute): New function.
980         (ia64_encode_section_info): Likewise.
981         (ia64_attribute_table): Add "model" attribute.
982         (TARGET_ENCODE_SECTION_INFO): Define.
983         (small_addr_symbolic_operand): New function.
984         (got_symbolic_operand): Return 0 for a symbolref to an object
985         in the small address area.
986         (enum ia64_addr_area): New type.
987         (small_ident1): New variable.
988         (small_ident2): Likewise.
989         (init_idents): New function.
990         (ia64_get_addr_area): Likewise.
991         (ia64_encode_addr_area): Likewise.
992         (ia64_encode_section_info): Likewise.
993         (ia64_expand_load_address): For symbolic references to objects in
994         the small-address-area, load the address via gen_rtx_SET() (which,
995         eventually, will expand into "addl").
996
997 2003-08-06  Per Bothner  <pbothner@apple.com>
998
999         * line-map.h (fileline):  New typedef.
1000         (struct line_map, linemap_add, linemap_lookup):  Use it.
1001         * input.h (struct location_s):  Comment notes that long-term we want
1002         to replace it by fileline.
1003
1004 2003-08-06  J"orn Rennecke <joern.rennecke@superh.com>
1005
1006         Fix SHcompact exception handling:
1007         * sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
1008         by the prologue, return a MEM with return_address_pointer_rtx
1009         as address.
1010         * sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
1011         (RETURN_ADDR_OFFSET): Don't define.
1012         (SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
1013         registers that are visible in compact mode.  Show that SHmedia
1014         registers still exist in compact mode, even if there are not
1015         readily accessible.
1016         (ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
1017         if GLOBAL.  Use DW_EH_PE_textrel (nominally) for CODE,
1018         and DW_EH_PE_pcrel for pic data.
1019         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
1020         set SYMBOL_FLAG_FUNCTION in symbol, and actually use
1021         DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
1022         (ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
1023         * sh.md (movsi_media-1): New splitter.
1024
1025 2003-08-06  Graeme Peterson <gp@qnx.com>
1026
1027         * config/i386/nto.h: New.
1028         * config/i386/t-nto: New.
1029         * config.gcc (i[34567]86-*-nto-qnx*): New.
1030
1031 2003-08-06  Phil Edwards  <pme@gcc.gnu.org>
1032
1033         * doc/install.texi (*-*-solaris2*):  Refine configure instructions.
1034
1035 2003-08-06  Alan Modra  <amodra@bigpond.net.au>
1036
1037         * calls.c (load_register_parameters): Arrange for call_fusage to
1038         report the whole register as used when shifting to the msb.
1039
1040 2003-08-05  Roger Sayle  <roger@eyesopen.com>
1041
1042         * builtins.c (expand_builtin): When not optimizing, call the library
1043         function for all builtins that have library functions (except alloca).
1044
1045 2003-08-05  Alexandre Oliva  <aoliva@redhat.com>
1046
1047         * c.opt: Introduce -fworking-directory.
1048         * doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
1049         * c-common.h (flag_working_directory): Declare.
1050         * c-common.c (flag_working_directory): Define.
1051         * c-opts.c (c_common_handle_options): Set it.
1052         (sanitize_cpp_opts): Set...
1053         * cpplib.h (struct cpp_options): ... working_directory option.
1054         (struct cpp_callbacks): Add dir_change.
1055         * cppinit.c (read_original_filename): Call...
1056         (read_original_directory): New.  Look for # 1 "directory//"
1057         and process it.
1058         (cpp_read_main_file): Call dir_change callback if working_directory
1059         option is set.
1060         * gcc.c (cpp_unique_options): Pass -g*.
1061         * c-lex.c (cb_dir_change): New.
1062         (init_c_lex): Set dir_change callback.
1063         * toplev.c (src_pwd): New static variable.
1064         (set_src_pwd, get_src_pwd): New functions.
1065         * toplev.h (get_src_pwd, set_src_pwd): Declare.
1066         * dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
1067         * dwarf2out.c (gen_compile_unit_die): Likewise.
1068         * dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.
1069
1070 2003-08-05  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1071
1072         * pretty-print.h (pp_set_line_maximum_length): Make macro.
1073         (pp_set_prefix): Likewise.
1074         (pp_destroy_prefix): Likewise.
1075         (pp_remaining_character_count_for_line): Likewise.
1076         (pp_clear_output_area): Likewise.
1077         (pp_formatted_text): Likewise.
1078         (pp_last_position_in_text): Likewise.
1079         (pp_emit_prefix): Likewise.
1080         (pp_append_text): Likewise.
1081         (pp_flush): Likewise.
1082         (pp_format_text): Likewise.
1083         (pp_format_verbatim): Likewise.
1084         (pp_tree_identifier): Tidy.
1085         * pretty-print.c (pp_base_format_text): Rename from pp_format_text.
1086         (pp_base_format_verbatim): Rename from pp_format_verbatim.
1087         (pp_base_flush): Rename from pp_flush.
1088         (pp_base_set_line_maximum_length): Rename from
1089         pp_set_line_maximum_length.
1090         (pp_base_clear_output_area): Rename from pp_clear_output_area.
1091         (pp_base_set_prefix): Rename from pp_set_prefix.
1092         (pp_base_destroy_prefix): Rename from pp_destroy_prefix.
1093         (pp_base_emit_prefix): Rename from pp_emit_prefix.
1094         (pp_base_append_text): Rename from pp_append_text.
1095         (pp_base_formatted_text): Rename from pp_formatted_text.
1096         (pp_base_last_position_in_text): Rename from pp_last_position_in_text.
1097         (pp_base_remaining_character_count_for_line): Rename from
1098         pp_remaining_character_count_for_line.
1099         * diagnostic.h (diagnostic_format_decoder): Tidy.
1100         (diagnostic_flush_buffer): Likewise.
1101         * c-pretty-print.h: (pp_c_string_literal): Declare.
1102         (pp_c_real_literal): Likewise.
1103         (pp_c_integer_literal): Likewise.
1104         * c-pretty-print.c (pp_c_char): Use pp_string in lieu of
1105         pp_identifier.
1106         (pp_c_character_literal): Tidy.
1107         (pp_c_string_literal): Make public.
1108         (pp_c_bool_literal): Likewise.
1109         (pp_c_integer_literal): Likewise.
1110         (pp_c_real_literal): Likewise.
1111
1112         * Makefile.in (C_PRETTY_PRINT_H): New variable.
1113         (c-pretty-print.o): Update dependence.
1114
1115 2003-08-05  Chris Demetriou  <cgd@broadcom.com>
1116
1117         * config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
1118         ".set nomacro" state.
1119         (fix_truncsfsi2_macro): Likewise.
1120
1121 2003-08-05  Steven Bosscher  <steven@gcc.gnu.org>
1122
1123         * tree.h (DID_INLINE_FUNC): Remove macro.
1124         (DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
1125         add tree check for FUNCTION_DECL.
1126         (DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
1127         (struct tree_decl): Rename inlined_function_flag to
1128         declared_inline_flag.
1129         * c-common.h (c_lang_decl): Remove.
1130         (DECL_ESTIMATED_INSNS): Remove.
1131         * c-tree.h (struct lang_decl): Don't include c_lang_decl.
1132         (DECL_DECLARED_INLINE_P): Remove.
1133         * c-decl.c (grokdeclarator): Update comment.  With -finline-functions,
1134         do not reset DECL_DECLARED_INLINE_P.  Don't use DID_INLINE_FUNC.
1135         (finish_function): Make uninlinable a bool.  Fixup call to
1136         tree_inlinable_function_p() and fix some code style issues.
1137         * cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
1138         * cgraph.c (dump_cgraph): Likewise.
1139         * cgraphunit.c (cgraph_decide_inlining): Likewise
1140         (cgraph_finalize_compilation_unit): Likewise.
1141         Also update call to tree_inlinable_function_p().
1142         (cgraph_default_inline_p): Don't use DID_INLINE_FUNC.  Instead
1143         look at DECL_DECLARED_INLINE and reverse logic.
1144         * print-tree.c (print_node): Likewise.
1145         * toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
1146         * tree-inline.h (tree_inlinable_function_p): Make a bool.  Update
1147         prototype.
1148         * tree-inline.c (inlinable_function_p): Split up in this function to
1149         check for basic inlining inhibiting conditions, and new
1150         limits_allow_inlining() function.  Warn if inlining is impossible
1151         because the inline candidate calls alloca or uses sjlj exceptions.
1152         (limits_allow_inlining): this new function to check if the inlining
1153         limits are satisfied.  Throttle from currfn_max_inline_insns, not from
1154         MAX_INLINE_INSNS_SINGLE.  The latter only makes sense if
1155         MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
1156         Update prototypes.
1157         (tree_inlinable_function_p): Make a bool.  Update call to
1158         inlinable_function_p
1159         (expand_call_inline): Use limits_allow_inlining() when not in
1160         unit-at-a-time mode to decide on inlining.  Don't use DID_INLINE_FUNC,
1161         instead see if the function was declared `inline'.
1162
1163 2003-08-05  Josef Zlomek  <zlomekj@suse.cz>
1164
1165         * gcse.c (try_replace_reg): Fix updating of note.
1166
1167 2003-08-04  Roger Sayle  <roger@eyesopen.com>
1168
1169         PR middle-end/11771
1170         * fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
1171         logic in negate_expr, i.e. we don't invert (A-B) for floating
1172         point types unless flag_unsafe_math_optimizations.
1173
1174 2003-08-04  Roger Sayle  <roger@eyesopen.com>
1175
1176         * fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
1177         Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
1178         for floating point expressions with -ffast-math.
1179         (fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
1180         * expmed.c (expand_mult): Wrap long line.  Expand x*2.0 as x+x.
1181
1182 2003-08-04  Roger Sayle  <roger@eyesopen.com>
1183
1184         * c-common.c (flag_noniso_default_format_attributes): Delete.
1185         (built_in_attribute): Don't define/undefine DEF_FN_ATTR.
1186         (c_attrs_initialized): Delete.
1187         (c_common_nodes_and_builtins): Don't test c_attrs_initialized,
1188         always call c_init_attributes.
1189         (c_init_attributes): Don't define/undefine DEF_FN_ATTR.  Don't
1190         set c_attrs_initialized when done.
1191         (c_common_insert_default_attributes): Delete.
1192         * c-common.h (flag_noniso_default_format_attributes): Delete.
1193         (c_coomon_insert_default_attributes): Delete prototype.
1194         * c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
1195         flag_noniso_default_format_attributes.
1196
1197         * c-decl.c (c_insert_default_attributes): Delete.
1198         * c-tree.h (c_insert_default_attributes): Delete prototype.
1199
1200         * attribs.c (decl_attributes): Don't call insert_default_attributes
1201         langhook.  Update function description comment.
1202         * langhooks.h (lang_hooks): Remove insert_default_attributes field.
1203         * langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
1204         * c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
1205         * system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.
1206
1207         * objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
1208         define.
1209
1210 2003-08-04  Richard Sandiford  <rsandif@redhat.com>
1211
1212         * config/mips/mips.c (override_options): Disable -G on targets that
1213         have no .section support.
1214         (mips_select_section): Use default_select_section for such targets.
1215
1216 2003-08-04  Nathanael Nerode  <neroden@gcc.gnu.org>
1217
1218         * fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
1219         * fixinc/inclhack.def (static_getrnge): Remove disabled hack.
1220         * fixinc/fixincl.x: Rebuild.
1221         * fixinc/tests/base/regexp.h: New test.
1222
1223 2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
1224
1225         * c-ppoutput.c (cb_line_change): Don't skip line changing while
1226         parsing macro arguments in the top-level context.
1227
1228 2003-08-04  Neil Booth  <neil@daikokuya.co.uk>
1229
1230         * config.in: Remove HAVE_LSTAT.
1231         * configure, configure.in: Don't test for lstat.
1232
1233 2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1234
1235         * opts.c (decode_options): Do language-specific initialization for
1236         the global diagnostic context.
1237         * langhooks-def.h (lhd_initialize_diagnostics): Declare.
1238         (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
1239         (LANG_HOOKS_INITIALIZER): Adjust.
1240         * langhooks.h (struct lang_hooks): Add new field
1241         initialize_diagnostics.
1242         * langhooks.c (lhd_initialize_diagnostics): Define.
1243
1244 2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1245
1246         * pretty-print.h:   Adjust macro definitions.
1247         * pretty-print.c (pp_newline): Rename to pp_base_newline.
1248         (pp_character): Rename to pp_base_character.
1249         (pp_string): Rename to pp_base_string.
1250         * c-pretty-print.c (pp_buffer): Move to pretty-print.h
1251         (pp_newline):  Likewise.  Adjust.
1252         (pp_c_char): Adjust.
1253
1254 2003-08-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1255
1256         * builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
1257         BUILT_IN_LLABS): Move to miscellaneous section.
1258
1259 2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
1260
1261         PR preprocessor/11534
1262         * cppexp.c (parse_defined): Warn only if -pedantic.
1263
1264 2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
1265
1266         * cppfiles.c (stack_file): Use file path.
1267
1268 2003-08-02  Roger Sayle  <roger@eyesopen.com>
1269
1270         * builtin-types.def (BT_SSIZE): New primitive type.
1271         (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
1272         BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
1273         BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
1274         BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
1275         * builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
1276         BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
1277         BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
1278         * builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
1279         few functions that define default attributes using it.
1280         * c-common.c (c_common_insert_default_attributes): Do nothing.
1281
1282         * doc/extend.texi: Document these "new" builtins.
1283
1284 2003-08-02  Kaz Kojima  <kkojima@gcc.gnu.org>
1285
1286         * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
1287         (LIB_SPEC): Set -lpthread always when -pthread set.  Set -lieee
1288         when -mieee-fp set and -shared not set.
1289         (SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.
1290
1291 2003-08-02  Neil Booth  <neil@daikokuya.co.uk>
1292
1293         * cppfiles.c (struct _cpp_file): Rename once_only_next to
1294         next_file.  Remove import and pragma_once, add once_only.
1295         (find_file): Add new file structures to the all_files list.
1296         (should_stack_file): Mark #import-ed files once-only, and
1297         don't stack them if the file has already been stacked.
1298         (_cp_mark_file_once_only): Simplify.
1299         * cpphash.h (struct cpp_reader): Rename once_only_files
1300         to all_files.  Rename saw_pragma_once to seen_once_only.
1301         (_cpp_mark_file_once_only): Update prototype.
1302         * cpplib.c (do_pragma_once): Update.
1303
1304 2003-08-02  Neil Booth  <neil@daikokuya.co.uk>
1305
1306         * cppfiles.c (ENOTDIR): Remove.
1307         (open_file_in_dir): Rename find_file_in_dir.  Handle errors
1308         other than ENOENT here.
1309         (once_only_file_p): Rename should_stack_file.
1310         (find_file, open_file_failed, read_file_guts): Report errors
1311         with full path name.
1312         (read_file): Move pch handling to should_stack_file.
1313         (should_stack_file): Handle PCH and once-only issues, and
1314         reading the file.
1315         (stack_file): Don't do file reads.
1316
1317 2003-08-02  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1318
1319         * libgcov.c (gcov_exit): Cleanup and fix.
1320         * profile.c (compute_value_histograms): Don't try to read profiles
1321         that are not present.
1322
1323 2003-08-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1324
1325         * builtins.def: Categorize.
1326
1327         * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
1328         Mind fp rounding.
1329         (BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.
1330
1331 2003-08-02  Andreas Tobler  <a.tobler@schweiz.ch>
1332
1333         * config.gcc: Enable posix threads by default on darwin.
1334
1335 2003-08-01  Jakub Jelinek  <jakub@redhat.com>
1336
1337         * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
1338         even if nehedges1 is 0.
1339
1340 2003-08-01  Nathanael Nerode  <neroden@gcc.gnu.org>
1341
1342         * fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
1343         fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
1344         fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
1345         and defintions.
1346
1347         * fixinc/inclhack.def (broken_cabs): Make matching more generous.
1348         * fixinc/fixincl.x: Regenerate.
1349         * fixinc/tests/base/math.h: Regenerate to match test_text change.
1350
1351 2003-08-01  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1352
1353         * ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.
1354
1355 2003-08-01  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1356
1357         * except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
1358         for accesses to exc_ptr.
1359
1360 2003-08-01  Geoffrey Keating  <geoffk@apple.com>
1361
1362         * doc/sourcebuild.texi (Front End Directory): Don't make references
1363         to libsubdir, it's not part of the interface to frontends.
1364         * doc/install.texi (Configuration): Help users read faster by saying
1365         that GCC's configure options are the standard autoconf ones.
1366         Mention --libdir.  Update the default rules for finding the
1367         assembler.  Don't use libsubdir since we haven't said what it means.
1368         (Specific): In the Solaris 7 notes, update the place to put the
1369         assembler.
1370         * doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
1371         * doc/cpp.texi (Search Path): Actually, the search path
1372         depends on libdir, which can relocate with cpp.
1373         * doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
1374         now a private interface between the Makefile and the driver.
1375
1376 2003-08-01  Richard Henderson  <rth@redhat.com>
1377
1378         * system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
1379
1380         * varasm.c (lookup_constant_def): New function.
1381         * rtl.h (lookup_constant_def): Declare it.
1382         * dwarf2out.c (loc_descriptor_from_tree): Use it.
1383         Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.
1384
1385 2003-08-01  Zack Weinberg  <zack@codesourcery.com>
1386
1387         * c-decl.c (gettags, pushdecl_function_level): Delete.
1388         (last_function_parm_vars): Rename last_function_parm_others.
1389         (current_function_parm_vars): Rename current_function_parm_others.
1390         (struct c_scope): Rewrite comment explaining this data structure.
1391         Add names_last, blocks_last, parms_last fields.  Rename
1392         incomplete_list to incomplete.
1393         (SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
1394         (poplevel): Ignore second argument.  No need to nreverse
1395         anything.  Restructure such that each list is processed
1396         exactly once.  Use 'const location_t *locus' syntactic sugar
1397         variable where useful.  Issue unused variable warnings
1398         ourselves, do not rely on function.c.
1399         (insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
1400         (pushdecl_top_level): Likewise.  Don't call duplicate_decls.
1401         (implicitly_declare): decl cannot be error_mark_node.
1402         (undeclared_variable): Manipulate scope structure directly.
1403         (c_make_fname_decl): Likewise.
1404         (getdecls, c_init_decl_processing): Fix comment.
1405         (mark_forward_parm_decls): Use SCOPE_LIST_CONCAT.  No need
1406         for 'last' variable.
1407         (grokparms): No need to nreverse parms list.
1408         (store_parm_decls_newstyle): Set up the parms_last and
1409         names_last fields of the new scope too.
1410         (store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
1411         on parms to begin with; check this under ENABLE_CHECKING.  Set
1412         up parms_last.
1413         (check_for_loop_decls): Refer directly to current_scope->tags.
1414         Use consistent quote style in diagnostics.
1415         (c_write_global_declarations): The names list is not backward.
1416
1417         * c-common.h: Don't prototype gettags.
1418         * c-parse.in: Call poplevel with second argument 0 always.
1419
1420 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1421
1422         * builtins.def: Resort builtins.
1423
1424 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1425
1426         * builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
1427         DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
1428         Prepend "__builtin_" onto NAME with string concatenation.  Remove
1429         explicit "__builtin_" from each macro call.
1430
1431         Reformat entire file.
1432
1433 2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1434
1435         * builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
1436         ATTR_MATHFN_FPROUNDING_ERRNO): New macros.  Use throughout.
1437
1438 2003-08-01  Andreas Krebbel  <krebbel1@de.ibm.com>
1439
1440         * config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
1441         CCL1, or CCL2 modes with floating point operations.
1442
1443         * config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
1444         "*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
1445         "*subdf3_cconly"): New insns.
1446         ("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.
1447
1448 2003-08-01  Neil Booth  <neil@daikokuya.co.uk>
1449
1450         * Makefile.in: Refine dependencies.
1451         * c-opts.c (c_common_handle_option): Do nothing for -Wimport.
1452         * c.opt: Update help for -Wimport.
1453         * cppfiles.c: Include hashtab.h.  Update comments.
1454         (stack_file): Read the file before updating dependencies.
1455         (once_only_file_p): Be smarter about marking once-only files.
1456         (_cpp_mark_file_once_only): Correct the check for existence on
1457         the list.
1458         (open_file_failed): Use name not path, which is NULL.
1459         * cpphash.h: Don't include hashtab.h.
1460         (struct _cpp_file): Remove.
1461         (struct cpp_reader): Update.
1462         * cppinit.c (cpp_create_reader): Don't initialize warn_import.
1463         * cpplib.h (struct cpp_options): Remove warn_import.
1464         (cpp_simplify_path): Remove.
1465
1466 2003-08-01  Nathan Sidwell  <nathan@codesourcery.com>
1467
1468         PR c++/11295
1469         * doc/extend.texi (Statement Expressions): Document C++ semantics.
1470
1471 2003-07-31  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
1472
1473         * config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.
1474
1475 2003-07-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1476
1477         * builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
1478         throughout.
1479         * builtins.def: Likewise.
1480
1481 2003-07-31  Jason Merrill  <jason@redhat.com>
1482
1483         * Makefile.in (bubblestrap): Don't require a previous full
1484         bootstrap.
1485
1486         * expr.c (mostly_zeros_p): No longer static.
1487         * tree.h: Declare it.
1488         * stmt.c (resolve_asm_operand_names): Don't copy the pattern
1489         unless we need to do substitutions.
1490
1491 2003-07-31  Roger Sayle  <roger@eyesopen.com>
1492
1493         * fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
1494         pow(x,c)*x as pow(x,c+1) for constant values c.  Optimize x*x
1495         as pow(x,2.0) when the latter will be expanded back into x*x.
1496         (fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
1497         * builtins.c (expand_builtin_pow): Ignore flag_errno_math as
1498         pow can never set errno when used with an integer exponent.
1499         Always use expand_powi when exponent is -1, 0, 1 or 2.
1500         (fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
1501         as 1.0/(x*x).  This avoids unbounded recursion as we now prefer
1502         the pow forms of these expressions.
1503
1504 2003-07-31  Geoffrey Keating  <geoffk@apple.com>
1505
1506         * Makefile.in (libexecdir): New.
1507         (libsubdir): Use gcc instead of gcc-lib.
1508         (libexecsubdir): New.
1509         (ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
1510         (DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
1511         gcc-lib.
1512         (installdirs): Make libexecsubdir.
1513         (install-common): Put executables in libexecsubdir.
1514         (itoolsdir): Use libexecsubdir.
1515         (itoolsdatadir): New.
1516         (install-mkheaders): Separate data files and executables.
1517         (install-collect2): Put executables in libexecsubdir.
1518         (uninstall): Remove libexecsubdir.
1519         * mkheaders.in: Update for new arrangement of files.
1520         (libexecdir): New.
1521         (libexecsubdir): New.
1522         (itoolsdir): Use libexecsubdir.
1523         (itoolsdatadir): New.
1524         * gcc.c (gcc_libexec_prefix): New.
1525         (STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
1526         (standard_exec_prefix_1): Use libexec.
1527         (standard_exec_prefix_2): New.
1528         (standard_libexec_prefix): New.
1529         (process_command): Update for new arrangement of files.  Compute
1530         gcc_libexec_prefix.  Update for change from gcc-lib to gcc.
1531
1532 2003-07-31  Nathanael Nerode  <neroden@gcc.gnu.org>
1533
1534         * inclhack.def (stdio_va_list): Avoid bogus replacement which
1535         triggers on Interix.
1536         * fixincl.x: Regenerate.
1537
1538 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
1539
1540         * config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
1541         SYMBOL_REFs not inside UNSPEC even in PLUS rtx.
1542
1543 2003-07-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1544
1545         * dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.
1546
1547 2003-07-31  Per Bothner  <pbothner@apple.com>
1548
1549         * opts.c (in_fnames, num_in_fnames):  Moved here from c-opts.
1550         (add_input_filename):  New function.
1551         (handle_options):  Call add_input_filename directly instead of
1552         with a lang hook.
1553         * opts.h (in_fnames, num_in_fnames):  Moved here.
1554         (add_input_filename):  Declare.
1555         * c-decl.c:  Need to #include opts.h.
1556         * Makefile.in (c-decl.o):  Also depends on opts.h.
1557         * c-opts.c (in_fnames, num_in_fnames):  Moved to opts.c.
1558         (c_common_handle_filename):  Replaced by add_input_filename.
1559         * c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
1560         Remove.
1561         * langhooks.h (struct lang_hooks):  Remove handle_filename hook.
1562         * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.
1563         (LANG_HOOKS_INITIALIZER):  Remove use of LANG_HOOKS_HANDLE_FILENAME.
1564         * c-lang.c (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.
1565
1566 2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1567
1568         * combine.c (try_combine): Set JUMP_LABEL for newly created
1569         unconditional jump.
1570
1571 2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1572
1573         * fold-const.c (fold): Fold some comparisons of bit operations.
1574
1575 Thu Jul 31 19:49:53 CEST 2003  Jan Hubicka  <jh@suse.cz>
1576
1577         * cgraph.c (create_edge): Fix typo.
1578         * i386.c (pic_symbolic_operand): Reorder tests.
1579
1580 2003-07-31  Nathan Sidwell  <nathan@codesourcery.com>
1581
1582         * doc/gcov.texi (Invoking Gcov): Describe output name mangling
1583         more fully.
1584         (Gcov Data Files): Update.
1585
1586 2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1587
1588         * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
1589         default.
1590
1591         * gthr-posix.c: New file.
1592         * gthr-posix.h: Define _REENTRANT if missing.
1593         Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
1594
1595         * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
1596         by gthr-posix.o.
1597         * config/alpha/t-osf-pthread: New file.
1598
1599         * fixinc/inclhack.def (alpha_pthread): New fix.
1600         * fixinc/fixincl.x: Regenerate.
1601         * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
1602
1603         * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
1604         warning.
1605         Fixes PR bootstrap/9330.
1606
1607 2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1608
1609         * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
1610         without GNU ld.
1611         Update comment.
1612         * configure: Regenerate.
1613
1614 2003-07-31  Vladimir Makarov  <vmakarov@redhat.com>
1615
1616         * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
1617         setter.
1618
1619 2003-07-30  Roger Sayle  <roger@eyesopen.com>
1620
1621         * builtins.def: Alphabetize.
1622
1623 2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>
1624
1625         * doc/c-tree.texi: Normalize spellings of "lowercase" and
1626         "uppercase".
1627         * doc/cpp.texi: Likewise.
1628         * doc/md.texi: Likewise.
1629         * doc/rtl.texi: Likewise.
1630         * doc/tm.texi: Likewise.
1631
1632 2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>
1633
1634         * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
1635         (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
1636         of cc1obj.
1637
1638 2003-07-30  Chris Demetriou  <cgd@broadcom.com>
1639
1640         * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
1641         macros before defining them.
1642
1643 2003-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
1644
1645         * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
1646         UNSPECV_BLOCKAGE): New constants.
1647         ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
1648         "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
1649         splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
1650         "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
1651
1652         (all insns and expanders): Write output control string as brace block
1653         where appropriate.  Remove \-escapes for doublequote characters.
1654
1655 Thu Jul 31 01:04:19 CEST 2003  Jan Hubicka  <jh@suse.cz>
1656
1657         * gcse.c (insert_store): Fix typo in previous patch.
1658
1659 2003-07-30  Neil Booth  <neil@daikokuya.co.uk>
1660
1661         * cppfiles.c (stack_file, open_file_failed): Use path for deps.
1662
1663 2003-07-30  Andi Kleen  <ak@muc.de>
1664
1665         * loop.c (check_dbra_loop): Allow LTU in the loop condition.
1666
1667 2003-07-30  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1668
1669         * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
1670         * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
1671         GCOV_N_VALUE_COUNTERS): New.
1672         * profile.c (compute_value_histograms): New static function.
1673         (branch_prob): Read back the value histograms.
1674         * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
1675         * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
1676         * value-prof.c: Add comment on reading the profile.
1677         * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
1678         * doc/invoke.texi (-fprofile-values): Document behavior with
1679         -fbranch-probabilities.
1680
1681 2003-07-30  David Edelsohn  <edelsohn@gnu.org>
1682
1683         * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
1684
1685 2003-07-30  Ulrich Weigand  <uweigand@de.ibm.com>
1686
1687         * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
1688         symbolically.
1689
1690 Wed Jul 30 19:12:10 CEST 2003  Jan Hubicka  <jh@suse.cz>
1691
1692         * gcse.c (insert_store): Ignore fake edges.
1693
1694         * c-common.c (flag_vtable_gc): Kill.
1695         * c-common.g (flag_vtable_gc): Kill.
1696         * c-opts (c_common_handle_option): Kill.
1697         * c.opt (fvtable-gc): Kill.
1698         * final.c (final_scan_insn): Do not call assemble_vtable_entry.
1699         * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
1700         * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
1701
1702         * invoke.texi (-ftable-gc): Kill documentation.
1703
1704         * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
1705         just because function body is missing.
1706
1707         * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
1708
1709 2003-07-30  Ranjit Mathew  <rmathew@hotmail.com>
1710
1711         * unwind-sjlj.c: Fix typo in file description.
1712
1713 2003-07-30  Alan Modra  <amodra@bigpond.net.au>
1714
1715         * calls.c (load_register_parameters): When shifting reg sized values
1716         to the msb, move the value to a reg first.
1717
1718 2003-07-29  Geoffrey Keating  <geoffk@apple.com>
1719
1720         * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
1721         * line-map.h (linemap_add): Update comments.
1722         * line-map.c (linemap_add): Update comments, interpret zero-length
1723         filename as "<stdin>".
1724
1725 2003-07-29  Nathanael Nerode  <neroden@gcc.gnu.org>
1726
1727         * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
1728
1729 2003-07-29  Zack Weinberg  <zack@codesourcery.com>
1730
1731         * c-decl.c (last_function_parm_vars, current_function_parm_vars):
1732         New static variables.
1733         (struct c_scope): Add parms and warned_forward_parm_decls
1734         fields; remove parm_order.
1735         (storedecls, storetags): Delete.
1736         (poplevel): Also clear bindings on the parms chain.
1737         (pushdecl): Handle forward declarations of parameters, and
1738         chain PARM_DECLs on the parms list, not the names list.
1739         (lookup_name_current_level): Check for PARM_DECLs on the parms
1740         list too.
1741         (push_parm_decl): Don't update parm_order.
1742         (clear_parm_order): Rename mark_forward_parm_decls.  Issue the
1743         warning, only once per parameter list, and set TREE_ASM_WRITTEN
1744         on the decls here.  Then move the forward decls to the names list.
1745         (grokparms): Set last_function_parm_vars.
1746         (get_parm_info): Don't use gettags or getdecls.  No need to
1747         extract non-parms from the parms list, or reorganize the parms
1748         list.  Feed nonparms back in the TREE_TYPE of the list node
1749         returned.  Issue only one error per parameter list for "void"
1750         appearing more than once in said parameter list.  Collapse
1751         parmlist_tags_warning into this function to avoid double scan
1752         of tags list.
1753         (start_function): Set current_function_parm_vars.
1754         (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
1755         directly.  Get non-parms from current_function_parm_vars; no
1756         need to extract them from the parms chain.  Properly bind tags
1757         in the new scope.
1758         (store_parm_decls_oldstyle): No need to extract non-parameters
1759         from the parms chain, nor to store them back afterward.  Move
1760         declaration to top of function, restructure code reordering
1761         DECL_ARGUMENTS.
1762         (store_parm_decls): No need to save and restore warn_shadow.
1763         * c-parse.in: Don't call parmlist_tags_warning nor
1764         clear_parm_order.  Call mark_forward_parm_decls when forward
1765         parm decls are encountered.
1766         * c-tree.h: Prototype mark_forward_parm_decls; not
1767         clear_parm_order or parmlist_tags_warning.
1768
1769 2003-07-29  Geoffrey Keating  <geoffk@apple.com>
1770
1771         * c-common.c (allow_pch): Remove.
1772         * c-common.h (allow_pch): Remove.
1773         (c_common_no_more_pch): Declare.
1774         * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
1775         * c-pch.c: Include hosthooks.h.
1776         (c_common_valid_pch): Don't check allow_pch.
1777         (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
1778         (c_common_no_more_pch): New.
1779         * ggc-common.c: Include hosthooks.h.
1780         (gt_pch_save): Call gt_pch_get_address.
1781         (gt_pch_restore): Call gt_pch_use_address.
1782         * hooks.c (hook_voidp_size_t_null): New.
1783         (hook_bool_voidp_size_t_false): New.
1784         * hooks.h (hook_voidp_size_t_null): New.
1785         (hook_bool_voidp_size_t_false): New.
1786         * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
1787         (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
1788         (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
1789         HOST_HOOKS_GT_PCH_USE_ADDRESS.
1790         * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
1791         gt_pch_use_address.
1792         * doc/hostconfig.texi (Host Common): Document
1793         HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
1794         * Makefile.in (c-pch.o): Depend on hosthooks.h.
1795         (ggc-common.o): Likewise.
1796
1797         * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
1798         (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
1799         (pch_address_space): New.
1800         (darwin_rs6000_gt_pch_get_address): New.
1801         (darwin_rs6000_gt_pch_use_address): New.
1802
1803 2003-07-29  Neil Booth  <neil@daikokuya.co.uk>
1804
1805         PR preprocessor/11569
1806         PR preprocessor/11649
1807         * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
1808         * cppfiles.c: Completely rewritten.
1809         * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
1810         struct cpp_path is now struct cpp_dir.
1811         (remove_duplicates): Don't simplify path names.
1812         * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
1813         cpp_stack_file.
1814         * cpphash.h: Include hashtab.h.
1815         (_cpp_file): Declare.
1816         (struct cpp_buffer): struct include_file is now struct _cpp_file,
1817         and struct cpp_path is now struct cpp_dir.  Rename members.
1818         (struct cpp_reader): Similarly.  New members once_only_files,
1819         file_hash, file_hash_entries, quote_ignores_source_dir,
1820         no_search_path, saw_pragma_once.  Remove all_include_files and
1821         max_include_len.  Make some members bool.
1822         (_cpp_mark_only_only): Renamed from _cpp_never_reread.
1823         (_cpp_stack_file): Renamed from _cpp_read_file.
1824         (_cpp_stack_include): Renamed from _cpp_execute_include.
1825         (_cpp_init_files): Renamed from _cpp_init_includes.
1826         (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
1827         * cppinit.c (cpp_create_reader): Initialize no_search_path.  Update.
1828         (cpp_read_next_file): Rename and move to cppfiles.c.
1829         (cpp_read_main_file): Update.
1830         * cpplib.c (run_directive): Update for renamed members.
1831         (do_include_common, _cpp_pop_buffer): Update.
1832         (do_import): Undeprecate #import.
1833         (do_pragma_once): Undeprecate.  Use _cpp_mark_file_once_only.
1834         * cpplib.h: Remove file_name_map_list.
1835         (cpp_options): Remove map_list.
1836         (cpp_dir): Rename from cpp_path.  New datatype for name_map.
1837         (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
1838
1839 2003-07-29  Phil Edwards  <pme@gcc.gnu.org>
1840
1841         * Makefile.in:  Make stamp-objdir safe for parallel builds.
1842
1843 2003-07-29  Phil Edwards  <pme@gcc.gnu.org>
1844
1845         * Makefile.in (stmp-docobjdir):  New target; ensure $docobjdir exists.
1846         (info):  Depend on stmp-docobjdir.
1847
1848 2003-07-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1849
1850         * configure: Regenerate.
1851
1852 Tue Jul 29 19:24:49 CEST 2003  Jan Hubicka  <jh@suse.cz>
1853
1854         PR C++/11131
1855         * tree-inline.c (expand_call_inline): Always call inlinable_function_p
1856         in !unit-at-a-time mode.
1857
1858 2003-07-28  Geoffrey Keating  <geoffk@apple.com>
1859
1860         * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
1861         main function.
1862
1863 2003-07-28  Mark Mitchell  <mark@codesourcery.com>
1864
1865         PR c++/11667
1866         * c-common.c (shorten_compare): Take into account differences
1867         between C and C++ representation for enumeration types.
1868         * tree.h (set_min_and_max_values_for_integral_type): Declare.
1869         * stor-layout.c (set_min_and_max_values_for_integral_type): New
1870         function, broken out from ...
1871         (fixup_signed_type): ... here and ...
1872         (fixup_unsigned_type): ... here.
1873
1874 2003-07-28  Zack Weinberg  <zack@codesourcery.com>
1875
1876         * c-decl.c: Update commentary, adjust blank lines throughout.
1877         (struct c_scope): Fix indentation.  Reorder members so
1878         outer-context pointers come first, booleans last.
1879         (duplicate_decls, define_label): Use a 'locus' variable for
1880         diagnostic locations in a few more places.
1881         (warn_if_shadowing): Un-split a conditional that fits on one line.
1882         (c_init_decl_processing): No need to clear current_scope and
1883         current_function_scope.
1884         (start_decl): Merge if/else if statements with same action.
1885         (push_parm_decl): Rename old_immediate_size_expand to use
1886         save_foo convention; save/restore around entire function.
1887         (grokdeclarator): Remove unnecessary braces.
1888
1889 2003-07-28  Hans-Peter Nilsson  <hp@bitrange.com>
1890             Michael Culbertson  <Michael.J.Culbertson@wheaton.edu>
1891
1892         * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
1893         when warn_declaration_after_statement.  Call pedwarn_c90, not
1894         pedwarn.  Correct message: it's "ISO C90", not "ISO C89".
1895         * c-common.c (warn_declaration_after_statement): Define.
1896         * c-common.h (warn_declaration_after_statement): Declare.
1897         * c.opt (Wdeclaration-after-statement): New.
1898         * c-errors.c (pedwarn_c90): New function.
1899         * c-opts.c (c_common_handle_option) <case
1900         OPT_Wdeclaration_after_statement>: New.
1901         * c-tree.h (pedwarn_c90): Declare.
1902         * doc/invoke.texi (Option Summary): Document
1903         -Wdeclaration-after-statement.
1904         (Warning Options): Ditto.
1905
1906 Mon Jul 28 20:13:06 CEST 2003  Jan Hubicka  <jh@suse.cz>
1907
1908         * i386.md (memory attribute) Avoid accessing uninitialized memory
1909         for ishift1 type instructions.
1910
1911 2003-07-28  Jakub Jelinek  <jakub@redhat.com>
1912
1913         * configure.in (--enable-checking): Add fold category.
1914         (ENABLE_FOLD_CHECKING): Define if requested.
1915         * configure: Rebuilt.
1916         * config.in: Rebuilt.
1917         * doc/install.texi: Document it.
1918         * fold-const.c: Include md5.h.
1919         [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
1920         [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
1921         print_fold_checksum): New functions.
1922
1923         * fold-const.c (fold): Never modify argument passed to fold, instead
1924         change a copy and return it.
1925         * convert.c (convert_to_integer): Likewise.
1926
1927 2003-07-27  Nathanael Nerode  <neroden@gcc.gnu.org>
1928
1929         * fixinc/fixinc.svr4: Remove dead code.  Remove now-unnecessary
1930         cleanup of junk after #else and #endif directives.  Collapse repeated
1931         clauses into for statment.
1932
1933         * fixinc/fixincl.sh: GNU C -> GCC.  Add usage comment.
1934
1935 2003-07-27  Zack Weinberg  <zack@codesourcery.com>
1936
1937         * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
1938         (keep_next_if_subblocks): Rename next_is_function_body.
1939         (pushlevel): Adjust commentary.  Always set ->keep on the
1940         outermost level of a function.  Don't set ->keep_if_subblocks.
1941         (poplevel): Adjust commentary.  Don't look at ->keep_if_subblocks.
1942         (store_parm_decls): Adjust to match.
1943         (finish_function): Adjust to match.
1944         Call poplevel with all three arguments zero.
1945
1946         * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
1947         New functions split out of store_parm_decls.
1948         Avoid unnecessary work. Use local variables consistently.
1949         (store_parm_decls): Likewise.
1950
1951         (finish_function): No need to set functionbody flag on call to
1952         poplevel.
1953         (struct language_function): Remove scope field.
1954         (c_push_function_context, c_pop_function_context): No need to
1955         save and restore current_scope.
1956
1957 2003-07-27  Nathan Sidwell  <nathan@codesourcery.com>
1958
1959         * doc/extend.texi (Deprecated Features): Implicit typename is
1960         gone. Default args on types is going.
1961
1962 2003-07-26  J"orn Rennecke <joern.rennecke@superh.com>
1963
1964         * Makefile.in (ifcvt.o): Depend on target.h
1965         * ifcvt.c (target.h): Include.
1966         (if_convert): Don't call mark_loop_exit_edges if we can't
1967         modify jumps.
1968
1969 2003-07-26  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1970
1971         * doc/install.texi (Testing): Adjust required versions of DejaGnu.
1972
1973 2003-07-26  Richard Henderson  <rth@redhat.com>
1974
1975         PR inline-asm/11676
1976         * cse.c (count_reg_usage): Handle asm_operands properly.
1977
1978 2003-07-26  Roger Sayle  <roger@eyesopen.com>
1979
1980         * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
1981         (DEF_EXT_FALLBACK_BUILTIN): Delete.
1982         (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
1983         the regular DEF_EXT_LIB_BUILTIN macro.
1984         (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
1985         the regular DEF_LIB_BUILTIN macro.
1986         (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
1987         BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
1988         BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
1989         DEF_EXT_LIB_BUILTIN macro.
1990
1991         * c-decl.c (duplicate_decls): Remove code to handle builtin
1992         functions prototyped without an argument list.
1993
1994 2003-07-26  Danny Smith  <dannysmith@users.sourceforge.net>
1995
1996         * config/i386/winnt.c: Revert 2003-07-08 change.
1997         (i386_pe_section_type_flags): Remove error_with_decl here too.
1998
1999 2003-07-26  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2000
2001         * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
2002         * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
2003         * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
2004         (v850_handle_data_area_attribute): Likewise.
2005
2006 2003-07-26  Geoffrey Keating  <geoffk@apple.com>
2007
2008         * varasm.c (output_constant_def_contents): Use
2009         ASM_DECLARE_CONSTANT_NAME if defined.
2010         * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
2011         * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
2012         objects get at least one byte to prevent assembler problems.
2013         (ASM_DECLARE_CONSTANT_NAME): New.
2014
2015         * Makefile.in (libbackend.o): Remove options_.h.
2016         (mostlyclean): Likewise.
2017
2018         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
2019         insert a label at the end of an function under Mach-O.
2020
2021         * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
2022
2023 2003-07-25  Aldy Hernandez  <aldyh@redhat.com>
2024
2025         * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
2026         equality.
2027         (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
2028
2029         * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
2030
2031 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2032
2033         * doc/passes.texi (Passes): Mention pretty-printing and
2034         diagnostic files.
2035
2036 2003-07-25  Nathan Sidwell  <nathan@codesourcery.com>
2037
2038         * doc/extend.texi (Function Attributes): GNU C++ does now allow
2039         unused parameter decls.
2040         (Attribute Syntax): GNU C++ does not allow label attributes to be
2041         after the ':'.
2042
2043 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2044
2045         * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
2046         (objc_declare_class): Likewise.
2047         (error_with_ivar): Likewise.
2048         (start_class): Likewise.
2049         (warn_with_method): Likewise.
2050
2051 2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2052
2053         Remove pedwarn_with_decl, warning_with_decl and error_with_decl
2054         from GCC.
2055         * calls.c (try_to_integrate): Don't use xxx_with_decl.
2056         (expand_call): Likewise.
2057         * dwarfout.c (output_reg_number): Likewise.
2058         * expr.c (expand_expr): Likewise.
2059         * function.c (assign_temp): Likewise.
2060         (uninitialized_vars_warning): Likewise.
2061         (setjmp_args_warning): Likewise.
2062         (expand_function_end): Likewise.
2063         * stmt.c (fixup_gotos): Likewise.
2064         (warn_about_unused_variables): Likewise.
2065         (expand_end_bindings): Likewise.
2066         * stor-layout.c (layout_decl): Likewise.
2067         (place_field): Likewise.
2068         * toplev.c (check_global_declarations): Likewise.
2069         (rest_of_handle_inlining): Likewise.
2070         (default_tree_printer): New function.
2071         (general_init): Initialize diagnostic machinery before routing
2072         signals to the ICE machinery.  Set default tree printer.
2073         * toplev.h (pedwarn_with_decl): Remove declaration.
2074         (warning_with_decl): Likewise.
2075         (error_with_decl): Likewise.
2076         (pedwarn): Remove attribute for the time being.
2077         * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
2078         * varasm.c (named_section): Likewise.
2079         (make_decl_rtl): Likewise.
2080         (assemble_variable): Likewise.
2081         (merge_weak): Likewise.
2082         (declare_weak): Likewise.
2083
2084         * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
2085         * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
2086         (format_with_decl): Remove.
2087         (diagnostic_for_decl): Likewise.
2088         (pedwarn_with_decl): Likewise.
2089         (warning_with_decl): Likewise.
2090         (error_with_decl): Likewise.
2091         (diagnostic_initialize): Adjust.
2092         (diagnostic_count_diagnostic): Likewise.
2093         (announce_function): Likewise.
2094         (lhd_print_error_function): Likewise.
2095         (diagnostic_report_current_module): Likewise.
2096         (default_diagnostic_starter): Likewise.
2097         (diagnostic_report_diagnostic): Likewise.
2098         (default_diagnostic_finalizer): Likewise.
2099         (verbatim): Likewise.
2100         (error): Likewise.
2101         (warning): Likewise.
2102         * opts.c (common_handle_option): Likewise.
2103         * pretty-print.c: New file.
2104         * c-pretty-print.h (pp_base): Override.
2105         * c-pretty-print.c: Adjust use of macros throughout.
2106         (pp_buffer): New macro.
2107         (pp_newline): Likewise.
2108         * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
2109         * Makefile.in (DIAGNOSTIC_H): New variable.
2110         (c-errors.o): Use it.
2111         (c-objc-common.o): Likewise.
2112         (c-common.o): Likewise.
2113         (c-opts.o): Likewise.
2114         (c-format.o): Likewise.
2115         (diagnostic.o): Likewise.
2116         (opts.o): Likewise.
2117         (toplev.o): Likewise.
2118         (rtl-error.o): Likewise.
2119         (dwarf2out.o): Likewise.
2120         (jump.o): Likewise.
2121         (pretty-print.o): New rule.
2122
2123 2003-07-24  Roger Sayle  <roger@eyesopen.com>
2124
2125         * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
2126         front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
2127         (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
2128         from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
2129         (DEF_FRONT_END_LIB_BUILTIN): Delete.
2130         (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
2131         (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
2132
2133         * builtins.c (build_string_literal): New function to construct
2134         a char* pointer to a string literal.
2135         (expand_builtin_fputs): Change 2nd argument from "int ignore" to
2136         "rtx target" to be consistent with other expand_builtin_* functions.
2137         Change 3rd argument from "int unlocked" to "bool unlocked".
2138         (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
2139         c-common.c to avoid front-end dependencies.  Optimize printf("")
2140         as a no-op when the result isn't required.  Handle embedded NULs
2141         in format string.
2142         (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
2143         from c-common.c to avoid front-end dependencies.  Likewise, optimize
2144         fprintf(fp,"") as a no-op when the result isn't required, evaluating
2145         fp for side-effects.  Handle embedded NULs in format string.
2146         (expand_builtin_sprintf): Fix typo.
2147         (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
2148         optimizing.  Adjust calls of expand_builtin_fputs to match the API
2149         change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
2150         expand_builtin_printf.  Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
2151         and BUILT_IN_FPRINTF using expand_builtin_fprintf.
2152
2153         * c-common.c (is_valid_printf_arglist): Delete.
2154         (c_expand_builtin): Delete.
2155         (c_expand_builtin_printf): Moved to builtins.c. Delete.
2156         (c_expand_builtin_fprintf): Moved to builtins.c.  Delete.
2157         (c_expand_expr): No longer treat CALL_EXPRs specially.
2158         (CALLED_AS_BUILT_IN): Delete.
2159
2160 2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2161
2162         PR optimization/11631
2163         * gcse.c (store_motion): Connect infinite loops to exit.
2164
2165 2003-07-24  Jason Merrill  <jason@redhat.com>
2166
2167         * tree.h (boolean_type_node): Move from C/C++/Java frontends.
2168         (boolean_true_node, boolean_false_node): Likewise.
2169         (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
2170         * tree.c (build_common_tree_nodes): Init boolean_type_node.
2171         (build_common_tree_nodes_2): Init boolean_{true,false}_node.
2172         * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
2173         * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
2174         (truthvalue_true_node): Renamed from boolean_true_node.
2175         (truthvalue_false_node): Renamed from boolean_false_node.
2176         * c-decl.c: Just set truthvalue_* to integer_*.
2177         * c-*.[ch]: s/boolean/truthvalue/.  s/c_bool/boolean/.
2178
2179 2003-07-24  Roger Sayle  <roger@eyesopen.com>
2180
2181         * c-decl.c (match_builtin_function_types): New subroutine of
2182         duplicate_decls to test whether a redeclaration of a builtin
2183         function is suitably close, i.e. the return type and all of
2184         the argument types have the same modes as the builtin expects.
2185         (duplicate_decls): Fuzzy type matching for builtin functions
2186         moved to match_builtin_function_types.
2187
2188 2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2189
2190         * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
2191         flag correctly.
2192
2193 2003-07-24  Zack Weinberg  <zack@codesourcery.com>
2194
2195         * c-decl.c: Search-and-replace change 'binding level' to
2196         'scope' in commentary.
2197         (struct binding_level): Now struct c_scope.
2198         (current_binding_level): Now current_scope.
2199         (free_binding_level): Now scope_freelist.
2200         (current_function_level): Now current_function_scope.
2201         (global_binding_level): Now global_scope.
2202         (make_binding_level): Now make_scope.
2203         (pop_binding_level): Now pop_scope.
2204
2205 2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2206
2207         * configure.in (libgcc_visibility): Add missing whitespace.
2208
2209 2003-07-24  Richard Henderson  <rth@redhat.com>
2210
2211         * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
2212         __gcc_personality_v0.
2213
2214 2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2215
2216         * Makefile.in: Replace pwd by ${PWD_COMMAND}.
2217
2218 2003-07-24  Nathan Sidwell  <nathan@codesourcery.com>
2219
2220         * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
2221         documentation missed from my 2003-07-09 patch.
2222
2223 2003-07-24  Nathanael Nerode  <neroden@gcc.gnu.org>
2224
2225         * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
2226         it's not provided.
2227         * configure: Rebuild.
2228
2229 2003-07-24  Steven Bosscher  <steven@gcc.gnu.org>
2230
2231         PR c/10602
2232         * c-typeck.c (type_lists_compatible_p): Do not compare
2233         arguments if one of them is an error_mark_node
2234
2235 2003-07-24  Alan Modra  <amodra@bigpond.net.au>
2236
2237         * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
2238         if current_function_calls_eh_return.
2239
2240 2003-07-23  Mark Mitchell  <mark@codesourcery.com>
2241
2242         * doc/c-tree.texi (OFFSET_TYPE): Update description.
2243
2244 2003-07-23  Bob Wilson  <bob.wilson@acm.org>
2245
2246         * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
2247         * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
2248         __umodsi3, __modsi3): Increase frame size to 32.
2249
2250 2003-07-23  Geoffrey Keating  <geoffk@apple.com>
2251
2252         * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
2253         prototype.
2254
2255 2003-07-23  Mark Mitchell  <mark@codesourcery.com>
2256
2257         * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
2258
2259         PR optimization/10679
2260         * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
2261
2262 2003-07-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2263
2264         PR target/11607 and PR target/11516
2265         * pa.md (extzv, extv, insv): Revert latter half of last patch.
2266
2267 2003-07-22  Mark Mitchell  <mark@codesourcery.com>
2268
2269         * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
2270         * varasam.c (output_constant): Likewise.
2271
2272 2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>
2273
2274         * alias.c: Fix comment formatting.
2275         * c-common.c: Likewise.
2276         * c-decl.c: Likewise.
2277         * c-opts.c: Likewise.
2278         * combine.c: Likewise.
2279         * cpplib.c: Likewise.
2280         * diagnostic.c: Likewise.
2281         * dojump.c: Likewise.
2282         * final.c: Likewise.
2283         * fold-const.c: Likewise.
2284         * gcc.c: Likewise.
2285         * gcse.c: Likewise.
2286         * ggc-page.c: Likewise.
2287         * jump.c: Likewise.
2288         * loop.c: Likewise.
2289         * mips-tfile.c: Likewise.
2290         * recog.c: Likewise.
2291         * regclass.c: Likewise.
2292         * regmove.c: Likewise.
2293         * tree.c: Likewise.
2294         * tree.h: Likewise.
2295
2296 2003-07-22  Per Bothner  <pbothner@apple.com>
2297
2298         * line-map.c (add_line_map):  Handle invalid LEAVE request.
2299         Fixes PR preprocessor/11361.
2300
2301 2003-07-22  Per Bothner  <pbothner@apple.com>
2302
2303         * diagnostic.c.(diagnostic_report_current_module):  Update to match
2304         2003-06-05 changes to push_srcloc and pop_srcloc.
2305
2306 2003-07-22  Wolfgang Bangerth  <bangerth@dealii.org>
2307
2308         * doc/trouble.texi: Better document two-stage name lookup.
2309
2310 2003-07-22  Eric Christopher <echristo@redhat.com>
2311
2312         * config/s390.c (s390_valid_pointer_mode): New.
2313         (TARGET_VALID_POINTER_MODE): Use.
2314         (s390_emit_prologue): Add tpf profiling hooks.
2315         (s390_emit_epilogue): Ditto.
2316         * config/s390.h (MASK_TPF): New.
2317         (TARGET_TPF): Use.
2318         (POINTERS_EXTEND_UNSIGNED): Define.
2319         * config/s390.md (ptr_extend): New pattern.
2320
2321 2003-07-22  Zack Weinberg  <zack@codesourcery.com>
2322
2323         * hashtable.c (approx_sqrt): Make static.
2324         * hashtable.h: Don't prototype approx_sqrt.
2325         * line-map.c (init_line_maps): Rename linemap_init.
2326         (free_line_maps): Rename linemap_free.
2327         (add_line_map): Rename linemap_add.
2328         (lookup_line): Rename linemap_lookup.
2329         (print_containing_files): Rename linemap_print_containing_files.
2330         * linemap.h: Update to match.
2331
2332         * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
2333         linemap routines to use new names.
2334
2335 2003-07-16  Nathan Sidwell  <nathan@codesourcery.com>
2336
2337         * c-common.c (handle_packed_attribute): Don't pack a struct via a
2338         typedef. Propagate packedness from a main variant.
2339
2340 2003-07-22  Nathanael Nerode  <neroden@gcc.gnu.org>
2341
2342         * Makefile.in (install-common): Add dependency on installdirs.
2343
2344 2003-07-21  Alexandre Oliva  <aoliva@redhat.com>
2345
2346         * c-common.c (c_common_type_for_mode): Return integer types for
2347         pointer modes.
2348
2349 2003-07-22  Geoffrey Keating  <geoffk@apple.com>
2350
2351         * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
2352         (finish_decl): Call maybe_apply_pragma_weak here.
2353         (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
2354         TREE_PUBLIC and TREE_STATIC are decided.
2355         (start_function): Move call to maybe_apply_pragma_weak.  Check that
2356         DECL_ASSEMBLER_NAME isn't set too early.
2357
2358         * cpplex.c (_cpp_process_line_notes): Mention option name in
2359         trigraphs warning.
2360
2361 2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>
2362
2363         * combine.c (if_then_else_cond): Simplify the comparison of
2364         rtx against -1, 0, and 1.
2365         * loop.c (check_dbra_loop): Likewise.
2366         * optabs.c (emit_conditional_move): Likewise.
2367         (emit_conditional_add): Likewise.
2368         * config/i386/i386.md (*movsi_or): Likewise.
2369         (*movdi_or_rex6): Likewise.
2370
2371 Tue Jul 22 00:42:12 CEST 2003  Jan Hubicka  <jh@suse.cz>
2372
2373         * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
2374
2375 2003-07-21  Neil Booth  <neil@daikokuya.co.uk>
2376
2377         * cppfiles.c (open_file_pch): Don't put unused entries in the
2378         splay tree.  Remove dead code.
2379
2380 2003-07-21  Geoffrey Keating  <geoffk@apple.com>
2381
2382         * c-common.h (num_in_fnames): Declare.
2383         (c_static_assembler_name): Move from here...
2384         * c-tree.h (c_static_assembler_name): ... to here.
2385         * c-opts.c: Don't include langhooks-def.h.
2386         (c_static_assembler_name): Move to c-decl.c.
2387         (num_in_fnames): Make externally visible.
2388         * c-decl.c: Include langhooks-def.h.
2389         (c_static_assembler_name): Move from c-opts.c.
2390         * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
2391         (c-opts.o): Remove $(LANGHOOKS_DEF_H).
2392
2393         * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
2394         when it's not needed.
2395
2396 2003-07-21  Jakub Jelinek  <jakub@redhat.com>
2397
2398         * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
2399         * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
2400         (rs6000_emit_prologue): Save FPRs inline if set.
2401
2402 2003-07-21  H.J. Lu <hongjiu.lu@intel.com>
2403
2404         * config/ia64/ia64.md (prefetch): Support predicate.
2405
2406 2003-07-21  Josef Zlomek  <zlomekj@suse.cz>
2407
2408         * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
2409         * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
2410         table.
2411
2412 2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
2413
2414         PR optimization/11536
2415         * unroll.c (loop_iterations): Do not replace a register holding
2416         the final value by its equivalent before the loop if it is not
2417         invariant.
2418
2419 2003-07-21  Dave Fluri  <dave.fluri@onlink.net>
2420
2421         * doc/extend.texi: Fixes to spelling, grammar, and diction.
2422
2423 2003-07-21  Ben Elliston  <bje@wasabisystems.com>
2424
2425         * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
2426         (V850 Options): Spelling fixes.
2427
2428 2003-07-20  Lisa M. Goldstein  <opus@gnu.org>
2429
2430         * doc/invoke.texi: Fixes to style, grammar and diction.
2431
2432 2003-07-20  Roger Sayle  <roger@eyesopen.com>
2433
2434         * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
2435         * system.h (SMALL_STACK): Poison obsolete target macro.
2436         * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
2437
2438 2003-07-20  Phil Edwards  <pme@gcc.gnu.org>
2439
2440         * configure.in:  Cache the results of testing for cmp's capabilities.
2441         * configure:  Regenerate.
2442
2443 2003-07-20  Mark Mitchell  <mark@codesourcery.com>
2444
2445         PR debug/11279
2446         * dwarf2out.c (gen_enumeration_type_die): Remember that
2447         enumerators can be unsigned.
2448
2449 2003-07-19  Zack Weinberg  <zack@codesourcery.com>
2450
2451         * c-decl.c (named_labels, shadowed_labels, label_level_chain)
2452         (push_label_level, pop_label_level): Kill.
2453         (struct binding_level): Rename level_chain to outer.
2454         Add outer_function field.  Change parm_flag, function_body,
2455         keep, keep_if_subblocks to 1-bit bitfields of type bool.
2456         (current_function_level): New variable.
2457         (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
2458         (keep_next_level, declare_parm_level, warn_if_shadowing):
2459         Update to match.
2460         (struct language_function): Kill named_labels, shadowed_labels fields.
2461         (c_init_decl_processing, start_function, c_push__function_context)
2462         (c_pop_function_context): No need to muck with named_labels nor
2463         shadowed_labels.
2464
2465         (make_binding_level): No need to clear the structure here.
2466         (pop_binding_level): Always operate on current_binding_level.
2467         Update current_function_level if necessary.
2468         (pushlevel): Don't clear named_labels.  Update current_function_level
2469         if necessary.  Use "true" and "false" where appropriate.
2470         (poplevel): Diagnose labels defined but not used, or vice
2471         versa, and clear out label-meanings leaving scope, while
2472         walking down the decls list, for all binding levels.
2473         Handle LABEL_DECLs appearing in the shadowed list.
2474         pop_binding_level takes no arguments.
2475         (pushdecl_function_level): Use current_function_level.
2476
2477         (make_label, bind_label): New static functions.
2478         (declare_label): New exported function.
2479         (lookup_label, define_label): Rewritten for new data structure.
2480         (shadow_label): Kill.
2481
2482         * c-tree.h: Prototype declare_label; don't prototype
2483         push_label_level, pop_label_level, nor shadow_label.
2484         * c-parse.in: Remove all calls to push_label_level and
2485         pop_label_level.  Use declare_label for __label__ decls.
2486
2487         * doc/extend.texi: Clarify that __label__ can be used to
2488         declare labels with local scope in any nested block, not
2489         just statement expressions.  Cross-reference nested functions
2490         section from local labels section.
2491
2492 2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2493
2494         * sched-rgn.c (find_rgns): Initialize current_edge correctly.
2495
2496 2003-07-19  Phil Edwards  <pme@gcc.gnu.org>
2497
2498         * doc/makefile.texi (restrap, profiledbootstrap):  Document targets.
2499
2500 2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2501
2502         * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
2503         fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
2504
2505 2003-07-19  Ulrich Weigand  <uweigand@de.ibm.com>
2506
2507         * config/s390/s390.c (legitimize_pic_address): Access local symbols
2508         relative to the GOT instead of relative to the literal pool base.
2509         (s390_output_symbolic_const): Handle new GOT-relative accesses.
2510         * config/s390/s390.md ("call"): Access local functions and PLT stubs
2511         relative to the GOT instead of relative to the literal pool base.
2512         ("call_value"): Likewise.
2513         ("call_value_tls"): Likewise.
2514
2515         * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
2516         reloading.  Support LTREL_BASE / LTREL_OFFSET construct.
2517         (s390_chunkify_finish): Likewise.
2518         (s390_chunkify_cancel): Likewise.
2519         (s390_reorg): Adapt caller.
2520         (find_base_register_in_addr,
2521         find_base_register_ref, replace_base_register_ref): Delete.
2522         (find_ltrel_base, replace_ltrel_base): New functions.
2523         (find_constant_pool_ref): Handle LTREL_BASE unspecs.
2524         (s390_decompose_address): Handle LTREL_BASE unspecs.  Optimize
2525         base vs. index register usage.
2526         (struct constant_pool): Remove 'anchor'.
2527         (s390_add_anchor): Delete.
2528         (s390_dump_pool): Remove anchor handling.
2529         * config/s390/s390.md ("reload_anchor"): Remove.
2530
2531         * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
2532         (s390_load_got): New function.  Use LTREL_BASE/OFFSET.
2533         (s390_emit_prologue): Use it.
2534         * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
2535         "builtin_setjmp_receiver"): Cleanup.  Use s390_load_got.  Do not
2536         hard-code register 14.
2537         * config/s390/s390-protos.h (s390_load_got): Declare.
2538
2539         * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
2540         Support TImode constants.
2541         * config/s390/s390.md ("consttable_ti"): New.
2542         ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
2543
2544         * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
2545         UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
2546         UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
2547         UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
2548         UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
2549         New symbolic constants.
2550         ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
2551         "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
2552         "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
2553         "pool", "literal_pool_31", "literal_pool_64"): Cleanup.  Use
2554         symbolic UNSPEC values.
2555         * config/s390/s390.c (larl_operand, s390_short_displacement,
2556         bras_sym_operand, s390_cannot_force_const_mem,
2557         s390_delegitimize_address, s390_decompose_address,
2558         legitimize_pic_address, s390_output_symbolic_const,
2559         s390_function_profiler): Use symbolic UNSPEC values.
2560
2561 2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2562
2563         * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
2564         c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
2565         c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
2566         collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
2567         cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
2568         cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
2569         dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
2570         fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
2571         gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
2572         genemit.c genextract.c genoutput.c genrecog.c gensupport.c
2573         ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
2574         integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
2575         loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
2576         postreload.c prefix.c print-tree.c protoize.c ra-build.c
2577         ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
2578         regmove.c regrename.c reload.c reload1.c reorg.c resource.c
2579         sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
2580         simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
2581         tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
2582         varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
2583         casts.
2584
2585 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2586
2587         * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
2588         * toplev.h (warning): Remove attribute.
2589
2590 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2591
2592         * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
2593         (pop_label_level): Likewise.
2594         (duplicate_decls): Likewise.
2595         (implicitly_declare): Likewise.
2596         (shadow_label): Likewise.
2597         (start_decl): Likewise.
2598         (finish_decl): Likewise.
2599         (grokdeclarator): Likewise.
2600         (get_parm_info): Likewise.
2601         (detect_field_duplicates): Likewise.
2602         (finish_struct): Likewise.
2603         (start_function): Likewise.
2604         (store_parm_decls): Likewise.
2605         (finish_function): Likewise.
2606         (c_expand_body_1): Likewise.
2607         (check_for_loop_decls): Likewise.
2608         (merge_translation_unit_decls): Likewise.
2609
2610 2003-07-19  Neil Booth  <neil@daikokuya.co.uk>
2611
2612         * common.opt:  Document --param.
2613         * opts.c (columns, undocumented_msg): New.
2614         (print_help): Get number of columns from environment.  Print
2615         --param help.  Tweak newline handling.
2616         (print_param_help): New.
2617         (print_filtered_help): Better handling of duplicates.  Complain
2618         about undocumented switches.
2619         (print_switch): New.
2620         (wrap_help): Improve wrapping, use COLUMNS.
2621         * opts.sh: Ignore comments in records.
2622         * params.def: Fix typos and remove trailing periods.
2623         * toplev.c (display_help): Don't dump --param help.
2624         * doc/sourcebuild.texi: Update.
2625
2626 2003-07-18  Richard Henderson  <rth@redhat.com>
2627
2628         PR target/11556
2629         * optabs.c (prepare_operand): Fail gracefully instead of abort
2630         if the predicate doesn't satisfy.
2631         (gen_cond_trap): Allow prepare_operand to fail.
2632
2633 2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2634
2635         * c-common.c: Don't undefine GCC_DIAG_STYLE.
2636         (fname_decl): Don't use xxx_with_decl.
2637         (c_add_case_label): Likewise.
2638         (handle_section_attribute): Likewise.
2639         (handle_alias_attribute): Likewise.
2640         (handle_no_instrument_function_attribute): Likewise.
2641         (handle_no_limit_stack_attribute): Likewise.
2642         * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
2643         * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
2644
2645 2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2646
2647         * Makefile.in (ifcvt.o): Add cfgloop.h.
2648         * basic-block.h (EDGE_LOOP_EXIT): New flag.
2649         * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
2650         * ifcvt.c: Include cfgloop.h.
2651         (mark_loop_exit_edges): New static function.
2652         (if_convert): Call it.
2653         (find_if_header): Ignore branches out of loops.
2654
2655 2003-07-18  Kazu Hirata  <kazu@cs.umass.edu>
2656
2657         * combine.c (simplify_comparison): Don't share rtx when converting
2658         (ne (and (not X) 1) 0) to (eq (and X 1) 0).
2659
2660 2003-07-18  David Edelsohn  <edelsohn@gnu.org>
2661
2662         * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
2663         (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
2664         (MUST_PASS_IN_STACK): Define.
2665         (BLOCK_REG_PADDING): Define.
2666
2667 2003-07-18  Richard Henderson  <rth@redhat.com>
2668
2669         * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
2670         to skip the addr_vec.
2671
2672 Fri Jul 18 15:22:28 2003  Alexandre Oliva  <aoliva@redhat.com>
2673
2674         * combine.c (combinable_i3pat): Don't forbid occurrences of
2675         i2dest or i1dest in inner_dest if inner_dest is a mem.
2676
2677 Fri Jul 18 17:05:57 CEST 2003  Jan Hubicka  <jh@suse.cz>
2678
2679         * cgraph.c (cgraph_remove_node): Clear the hash table slot.
2680
2681 2003-07-17  Jakub Jelinek  <jakub@redhat.com>
2682
2683         PR target/11087
2684         * loop.c (basic_induction_var): Check if convert_modes emitted any
2685         instructions. Remove them and return 0 if so.
2686
2687 2003-07-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
2688
2689         PR optimization/11083
2690         * toplev.c (rest_of_handle_addresof): Rename into
2691         rest_of_handle_addressof.  Delete unreachable blocks
2692         if dead edges were purged after the addressof pass.
2693
2694 2003-07-18  Neil Booth  <neil@daikokuya.co.uk>
2695
2696         * Makefile.in, configure, configure.in: Remove handling of
2697         lang-options.h and options_.h.
2698         * toplev.c (struct lang_opt, documented_lang_options): Remove.
2699         (display_help): Don't use documented_lang_options.
2700
2701 2003-07-17  Zack Weinberg  <zack@codesourcery.com>
2702
2703         * c-decl.c (pushdecl_function_level): Make static, return nothing.
2704         (kept_level_p): Fold into poplevel.
2705         (undeclared_variable): Moved here from c-typeck.c.  Export.
2706         * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
2707         (undeclared_variable): Prototype here.  Don't prototype
2708         kept_level_p nor pushdecl_function_level.
2709         * c-parse.in: Change first argument to poplevel from
2710         "kept_level_p()" to "KEEP_MAYBE".
2711         * c-typeck.c (undeclared_variable): Moved to c-decl.c.
2712
2713 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2714
2715         * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
2716         commutative operands instead of modifying the RTL in-place.
2717
2718 2003-07-17  Mark Mitchell  <mark@codesourcery.com>
2719
2720         PR optimization/11557
2721         * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
2722         unless we know which function is being called.
2723
2724 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2725
2726         * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
2727         whether to reorder the operands of a commutative binary operator.
2728
2729 2003-07-17  Roger Sayle  <roger@eyesopen.com>
2730
2731         * fold-const.c (const_binop): Avoid performing the FP operation at
2732         compile-time, if either operand is NaN and we honor signaling NaNs,
2733         or if we're dividing by zero and either flag_trapping_math is set
2734         or the desired mode doesn't support infinities.
2735         (fold_initializer): New function to fold an expression ignoring any
2736         potential run-time exceptions or traps.
2737         * tree.h (fold_initializer): Prototype here.
2738         * c-typeck.c (build_binary_op): Move to the end of the file so
2739         that intializer_stack is in scope.  If constructing an initializer,
2740         i.e. when initializer_stack is not NULL, use fold_initializer to
2741         fold expressions.
2742         * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
2743         performing FP operations at compile-time, if they would raise an
2744         exception at run-time.
2745
2746 2003-07-17  Geoffrey Keating  <geoffk@apple.com>
2747
2748         PR 11498
2749         * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
2750         (langhooks.o): Add $(GGC_H), gt-langhooks.h.
2751         (GTFILES): Add langhooks.c.
2752         (gt-langhooks.h): New.
2753         * c-common.h (c_static_assembler_name): Prototype.
2754         * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
2755         * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
2756         * c-opts.c: Include langhooks-def.h.
2757         (c_static_assembler_name): New.
2758         * langhooks.c: Include ggc.h.  Include gt-langhooks.h.
2759         (var_labelno): New.
2760         (lhd_set_decl_assembler_name): Give static objects with context
2761         unique names.
2762         * varasm.c (var_labelno): Delete.
2763         (make_decl_rtl): Don't change the assembler name once it's set.
2764
2765         * c-opts.c (this_input_filename): New.
2766         (finish_options): Take new parameter, name of file being compiled.
2767         Update callers.  Set this_input_filename.
2768         (push_command_line_include): Use this_input_filename not
2769         main_input_filename.
2770
2771 2003-07-17  Neil Booth  <neil@daikokuya.co.uk>
2772
2773         * Makefile.in: Depend .pot generation on options.c.
2774         * po/exgettext: Add an extra_files variable containing additional
2775         files to scan.
2776
2777 2003-07-17  Zack Weinberg  <zack@codesourcery.com>
2778
2779         * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
2780         c_write_global_declarations.
2781
2782         * c-decl.c: Fix typos in several comments.  Remove all
2783         #if 0 blocks; reindent as needed.  Remove unused argument
2784         to declare_parm_level; all callers changed.
2785         * c-parse.in: Update calls to declare_parm_level.  Avoid
2786         issuing a double warning in some circumstances.
2787         * c-typeck.c: Update calls to declare_parm_level.
2788         * c-tree.h: Update prototype of declare_parm_level.
2789
2790         * c-pragma.c (apply_pragma_weak): Don't complain about a
2791         redundant #pragma weak.
2792
2793         * objc/objc-act.c (forward_declare_categories,
2794         build_selector_reference_decl, build_class_reference_decl,
2795         build_objc_string_decl, synth_forward_declarations,
2796         build_protocol_reference): Set TREE_PUBLIC on synthetic
2797         forward decl to 0, consistent with eventual definition.
2798         Correct comments to match.
2799
2800         * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
2801         in regexp that don't form a range expression.
2802         * fixinc/fixincl.def: Regenerate.
2803
2804 2003-07-17  Richard Henderson  <rth@redhat.com>
2805
2806         PR target/10907
2807         * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
2808         even with !TARGET_CONST_GP.
2809         (ia64_function_ok_for_sibcall): Reject non-local functions.
2810
2811 2003-07-17  Steven Bosscher  <steven@gcc.gnu.org>
2812
2813         * c-common.c (c_estimate_num_insns_1): Don't handle
2814         METHOD_CALL_EXPR.
2815         * expr.c (safe_from_p): Likewise.
2816         * gengtype.c (adjust_field_tree_exp): Likewise.
2817         * stmt.c (warn_if_unused_value): Likewise
2818         * tree.c (first_rtl_op): Likewise.
2819         * tree.def: Don't define METHOD_CALL_EXPR.
2820         * java/lang.c (java_estimate_num_insns_1): Don't handle
2821         METHOD_CALL_EXPR.
2822
2823 2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
2824
2825         PR other/11466
2826         * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
2827         and its restrictions for the SPARC64 port.
2828         Move the entry of "-mimpure-text" before that of "-mv8".
2829
2830 2003-07-17  Eric Botcazou <ebotcazou@libertysurf.fr>
2831             Phil Edwards <phil@jaj.com>
2832
2833         * doc/install.texi (*-*-solaris2*): Document the step-by-step
2834         procedure to bootstrap and install.
2835         Document the preference for the legacy Sun tools in /usr/bin
2836         over the POSIX tools in /usr/xpg4/bin for the build process.
2837
2838 2003-07-17  Neil Booth  <neil@daikokuya.co.uk>
2839
2840         * c.opt: Document Uncodumented; use it.  Document ObjC options.
2841         * opts.c (print_filtered_help): Skip undocumented switches.
2842         * opts.h (CL_UNDOCUMENTED): New.
2843         * opts.sh: Handle Undocumented.
2844         * toplev.c (documented_lang_options): Prevent its becoming empty.
2845 objc:
2846         * lang-options.h: Remove.
2847
2848 2003-07-16  Ulrich Weigand  <uweigand@de.ibm.com>
2849
2850         * loop.c (check_ext_dependent_givs): Pass const struct loop *
2851         instead of struct loop_info * as argument.  Accept BIVs with
2852         increment +/- 1 provided there is a friendly exit test against
2853         a loop-invariant value.
2854         (strength_reduce): Adapt call to check_ext_dependent_givs.
2855
2856 2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>
2857             Con Bradley <con.bradley@superh.com>
2858
2859         * sh-protos.h (sh_get_pr_initial_val): Declare.
2860         * sh.c (regno_reg_class): Make its elements type enum reg_class.
2861         (output_stack_adjust): Remove emit_fn argument.  Add epilogue_p
2862         and live_regs_mask arguments.  Changed all callers.
2863         (save_schedule_s): New structure.
2864         (save_schedule): New typedef.
2865         (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
2866         (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
2867         In interrupts handlers, also save registers that are usually
2868         partially saved, and make sure there is at least one general purpose
2869         register saved if a target register needs saving.
2870         Add casts in comparisons to avoid warnings.
2871         (sh_media_register_for_return): return -1 for interrupt handlers.
2872         (MAX_SAVED_REGS, MAX_TEMPS): New defines.
2873         (sh_expand_prologue): Use sh5_schedule_saves.  Check that any temp
2874         registers used are available.
2875         Set RTX_FRAME_RELATED_P where appropriate.
2876         Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
2877         (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
2878         (initial_elimination_offset): Likewise.
2879         * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
2880         (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
2881         (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
2882         (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
2883         (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
2884         and for target registers.
2885         (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
2886         (regno_reg_class): Make its elements type enum reg_class.
2887         (CONSTRAINT_LEN): Don't use isdigit.
2888         (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
2889         (FUNCTION_ARG): Add parentheses to avoid warnings.
2890         (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
2891         (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
2892         (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
2893         (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
2894         * sh.md (xordi3+1): Remove unused variable regno.
2895         (return_media): Check that tr0 is available before using it.
2896
2897 2003-07-16  Neil Booth  <neil@daikokuya.co.uk>
2898
2899         * c.opt: Document more options.
2900
2901 2003-07-16  Roger Sayle  <roger@eyesopen.com>
2902
2903         * combine.c (subst): Also handle (subreg (const_double ...)) case
2904         if created by a substitution, by using the original inner mode.
2905
2906 2003-07-16  Roger Sayle  <roger@eyesopen.com>
2907
2908         * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
2909         to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
2910         (simplify_rtx): Likewise.  Simplify (lo_sum (high X) X) as X.
2911
2912 2003-07-16  Andrew Pinski  <pinskia@physics.uc.edu>
2913
2914         * doc/install.texi (--without-headers): New.
2915
2916         Partial Fix PR/10129
2917         * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
2918         (machopic_output_function_base_name): New; print the true pic label.
2919         (machopic_classify_ident): Pic Base is always a defined data.
2920         * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
2921         * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
2922
2923         * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
2924         if they are not floating point registers.
2925
2926         PR c/10962
2927         * ggc.h: Add header guards.
2928         * c-decl.c (finish_struct): Sort fields if
2929         number greater than 15 and there are no
2930         anonymous structs/unions.
2931         * c-common.h: Include ggc.h.
2932         (sorted_fields_type): New struct.
2933         (field_decl_cmp): New prototype.
2934         (resort_sorted_fields): New prototype.
2935         (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
2936         * c-tree.h: (lang_type): Use pointer to sorted_fields_type
2937         as s, removing other fields.
2938         * c-typeck.c (lookup_field): Use s in lang_type.
2939         These were mostly moved from cp/class.c:
2940         * c-common.c (field_decl_cmp): New static function.
2941         (field_decl_cmp): New function.
2942         (resort_sorted_fields): New function.
2943
2944 2003-07-16  Geoffrey Keating  <geoffk@apple.com>
2945
2946         * config/darwin.c (machopic_select_section): Use decl_readonly_section
2947         to do most of the work.
2948
2949 2003-07-16  Hans-Peter Nilsson  <hp@bitrange.com>
2950
2951         * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
2952         * config/mmix/mmix.c: Convert functions to ISO C90.
2953         (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
2954         formatting.
2955         (mmix_get_hard_reg_initial_val): Tweak section head comment.
2956
2957 2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>
2958
2959         * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
2960
2961 2003-07-16  Jakub Jelinek  <jakub@redhat.com>
2962
2963         * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
2964         (uw_update_context_1): Use it.
2965         * config/rs6000/rs6000.c (insn_after_throw): Remove.
2966         (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
2967         in parent frame if _Unwind_* called directly instead of through
2968         .plt.
2969         (rs6000_emit_eh_toc_restore): Remove.
2970         (rs6000_emit_prologue): Update stack pointer before doing any saving
2971         if current_function_calls_eh_return.  Generate unwind info for $r2.
2972         (rs6000_emit_epilogue): Restore stack pointer after doing all
2973         restoring if current_function_calls_eh_return.  Restore $r2.
2974         * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
2975         * config/rs6000/rs6000.md (eh_return): Remove call to
2976         rs6000_emit_eh_toc_restore.
2977         * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
2978         * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
2979
2980 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
2981
2982         * expr.c (emit_block_move): Don't move anything if size is const 0.
2983         (clear_storage): Test against const0_rtx instead of comparing INTVAL
2984         against 0.
2985
2986 2003-07-15  David S. Miller  <davem@redhat.com>
2987
2988         * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
2989         emit nop if the last real insn is CALL_INSN.
2990
2991 2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
2992
2993         * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
2994         as "nul".
2995         * config/i386/xm-mingw32.h: Change GNU CC to GCC.
2996
2997 2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>
2998
2999         * config/i386/winnt.c (associated_type): Artificial methods are not
3000         affected by the import/export status of their class unless they are
3001         COMDAT.
3002         (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
3003
3004         * config/i386/winnt.c: Fix GCC copyright comment.
3005
3006 2003-07-16  Gabriel Dos Reis  <gcc@integrable-solutions.net>
3007
3008         PR c++/11531
3009         * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
3010         not recursing on hard error.
3011         (diagnostic_for_decl): Likewise.
3012         * diagnostic.def: Rearrange.
3013
3014 2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>
3015
3016         * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
3017         If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
3018
3019 2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>
3020             Richard Henderson  <rth@redhat.com>
3021
3022         * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
3023         to decide if to access a _Unwind_Ptr or a _Unwind_Word.
3024         (_Unwind_SetGR): Likewise.
3025         (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
3026         (Unwind_SpTmp): New typedef.
3027         (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
3028         (uw_update_context): Use _Unwind_GetPtr.
3029         (init_dwarf_reg_size_table): Move above uw_init_context_1.
3030         (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
3031         Use _Unwind_SetSpColumn.
3032         (uw_install_context_1): Don't initialize dwarf_reg_size_table.
3033         Use _Unwind_GetPtr.
3034
3035 2003-07-15  Neil Booth  <neil@daikokuya.co.uk>
3036
3037         * c.opt: Document more options.
3038         * toplev.c (documented_lang_options): Remove all local help strings.
3039
3040 2003-07-15  Mark Mitchell  <mark@codesourcery.com>
3041
3042         PR debug/11473
3043         * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
3044         base classes.
3045
3046 2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>
3047
3048         PR target/10795
3049         * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
3050         swap comparison operands if doing so would generate an
3051         unrecognizable insn.
3052
3053 2003-07-15  Eric Botcazou  <ebotcazou@libertysurf.fr>
3054
3055         PR optimization/11320
3056         * sched-int.h (struct deps) [reg_conditional_sets]: New field.
3057         (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
3058         * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
3059         current_sched_info->compute_jump_reg_dependencies. Record which
3060         registers are used and which registers are set by the jump.
3061         Clear deps->reg_conditional_sets after a barrier.
3062         Set deps->reg_conditional_sets if the insn is a COND_EXEC.
3063         Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
3064         (init_deps): Initialize reg_conditional_sets.
3065         (free_deps): Clear reg_conditional_sets.
3066         * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
3067         Mark registers live on entry of the fallthrough block and conditionally
3068         set as set by the jump. Mark registers live on entry of non-fallthrough
3069         blocks as used by the jump.
3070         * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
3071         Mark new parameters as unused.
3072
3073 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
3074
3075         * doc/invoke.texi: Resync MIPS -march documentation.
3076
3077 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
3078
3079         * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
3080         (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
3081         (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
3082         * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
3083         (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
3084         (mips_issue_rate): Handle PROCESSOR_R9000.
3085         (mips_use_dfa_pipeline_interface): Likewise.
3086         * config/mips/9000.md: New file.
3087         * config/mips/mips.md: Include it.
3088         (define_attr cpu): Add r9000.
3089         (mulsi3_mult3): Use "mul" for rm9000 code.
3090
3091 2003-07-15  Stan Cox  <scox@redhat.com>
3092
3093         * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
3094         (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
3095         (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
3096         * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
3097         (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
3098         (mips_issue_rate): Handle PROCESSOR_R7000.
3099         (mips_use_dfa_pipeline_interface): Likewise.
3100         * config/mips/7000.md: New file.
3101         * config/mips/mips.md: Include it.
3102         (define_attr cpu): Add r7000.
3103         (mulsi3_mult3): Use "mul" for rm7000 code.
3104
3105 2003-07-15  Richard Sandiford  <rsandifo@redhat.com>
3106
3107         * config/mips/mips.md (define_attr type): Add condmove.  Use it for
3108         the conditional move patterns.
3109         * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
3110         Check for condmove type.
3111         (ir_vr54_arith): Add move type.
3112         * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
3113         * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
3114
3115 2003-07-15  Neil Booth  <neil@daikokuya.co.uk>
3116
3117         * c-opts.c (print_help): Remove.
3118         (c_common_handle_option): Don't handle --help.
3119         * c.opt: Document some options.
3120         (--help): Remove.
3121         * opts.c (print_filtered_help): New.
3122         (print_help): Use it.
3123
3124 2003-07-14  Geoffrey Keating  <geoffk@apple.com>
3125
3126         * c-common.c (c_common_type_for_mode): Handle V4DFmode.
3127         * tree.c: (build_common_tree_nodes_2): Likewise.
3128         * tree.h (enum tree_index): Add TI_V4DF_TYPE.
3129         (V4DF_type_node): New.
3130
3131         * c-opts.c (push_command_line_include): Don't free deferred_opts,
3132         we'll need it.
3133         (finish_options): Reset init_cursor.
3134
3135 2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>
3136
3137         * expr.c (expand_assignment): Remove an unused argument
3138         SUGGEST_REG.
3139         * expr.h: Update the prototype.
3140         * function.c: Update the callers.
3141         * stmt.c: Likewise.
3142
3143 2003-07-14  Mark Mitchell  <mark@codesourcery.com>
3144
3145         PR debug/11098
3146         * integrate.c (copy_decl_for_inlining): Do not mark copied decls
3147         as DECL_ABSTRACT.
3148
3149 2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>
3150
3151         * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
3152         with __cplusplus, not "we must use the C++ compiler's type"
3153         * fixinc/inclhack.def (void_null): Note that Interix needs this.
3154         * fixinc/fixincl.x: Regenerate.
3155
3156 2003-07-14  Geoffrey Keating  <geoffk@apple.com>
3157
3158         * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
3159         and unseen_objects from the global data before calling
3160         __deregister_frame_info_bases.
3161         (examine_objects): Insert objects into the seen_objects list,
3162         not unseen_objects.
3163         (_Unwind_Find_FDE): Always unlock the global object lists, even if
3164         we couldn't allocate a data structure to put in it.
3165
3166         * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
3167         (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
3168         (SET_TYPE_PROTOCOL_LIST): New.
3169         * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
3170         (get_object_reference): Likewise.
3171
3172 Mon Jul 14 23:14:28 CEST 2003  Jan Hubicka  <jh@suse.cz>
3173
3174         * cfglayout.c (locator_file): Break out from ....
3175         (insn_file): ... here.
3176         (locator_line): Break out from ....
3177         (insn_line): ... here.
3178         * rtl.h (locator_file, locator_line): Declare.
3179         (final_start_function): Set proper line/file info.
3180
3181 2003-07-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>
3182
3183         * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
3184         handled by pp_c_cast_expression.
3185
3186 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
3187
3188         * config/mips/mips.c (mips_expand_prologue): Use a single insn to
3189         allocate 32768 bytes of stack.  Use addition rather than subtraction
3190         when a single insn is enough.
3191         * config/mips/mips.md: Remove insns and splitters for subtracting
3192         constants.
3193         (subsi3): Only accept register operands.
3194         (subsi3_internal): Likewise.  Use for TARGET_MIPS16 as well.
3195         (subdi3_internal_3, subsi3_internal_2): Likewise.
3196         (casesi): Use expand_binop to subtract the lower bound.
3197
3198 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
3199
3200         * config/mips/mips.c (mips_in_small_data_p): Don't handle
3201         TARGET_MIPS16 specially.
3202
3203 2003-07-14  Richard Sandiford  <rsandifo@redhat.com>
3204
3205         * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
3206         mips_output_aligned_bss.
3207         * config/mips/linux.h: Likewise.
3208         * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
3209         * config/mips/mips.c (mips_output_aligned_bss): New function.
3210
3211         * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
3212         * config/mips/elf64.h: Likewise.
3213
3214         * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
3215         mips_declare_object_name.
3216         (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
3217         * config/mips/elf64.h: As for elf.h.
3218         * config/mips/iris6.h: Likewise.
3219         * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
3220         * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
3221         do...while (0) block.
3222         * config/mips/mips-protos.h (mips_declare_object_name): Declare.
3223         (mips_finish_declare_object): Declare.
3224         * config/mips/mips.c (mips_declare_object_name): New function.
3225         (mips_finish_declare_object): New function.
3226
3227         * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
3228         * config/mips/linux.h: Likewise.
3229
3230         * config/mips/mips.c (inside_function): Delete.
3231         (file_in_function_warning, ignore_line_number): Delete.
3232         (mips_output_filename): Don't warn about changing filenames within
3233         a function.
3234         (mips_output_lineno): Update accordingly.
3235         (mips_output_function_prologue): Don't reset the deleted variables.
3236         * config/mips/mips.h (inside_function): Delete.
3237         (file_in_function_warning, ignore_line_number): Delete.
3238
3239         * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
3240         * config/mips/elf64.h: Likewise.
3241         * config/mips/openbsd.h: Likewise.
3242         * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
3243         * config/mips/linux.h: Likewise.
3244         * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
3245         (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
3246
3247         * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
3248         to the list of include files when using gas.
3249         (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
3250         * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
3251         * config/mips/elf64.h: Likewise.
3252         * config/mips/iris5.h: Likewise.
3253         * config/mips/linux.h: Likewise.
3254         * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
3255         * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
3256         (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
3257         * config/mips/sdb.h: ...this new file.
3258
3259 2003-07-14  Douglas Rupp  <rupp@gnat.com>
3260
3261         * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
3262         argument to getcwd; use fixed buffer instead.
3263
3264 2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>
3265
3266         * fixinc/mkfixinc.sh: Treat OpenBSD normally.
3267         * fixinc/fixinc.wrap: Delete.
3268
3269 2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>
3270
3271         * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
3272         don't have 2.
3273
3274 2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>
3275
3276         * ggc-page.c (struct globals): Add new fields to keep track of the
3277         total allocated memory and overhead.
3278         (ggc_print_statistics): Print them.
3279         (ggc_alloc): Keep track of the total allocated memory and the
3280         overhead.
3281
3282         * tree.c (dump_tree_statistics): Increase spacing.
3283         (enum tree_node_kind): Move to ...
3284         * tree.h (enum tree_node_kind): ... here.
3285         (tree_node_counts, tree_node_sizes): Declare.
3286
3287 2003-07-14  James A. Morrison  <ja2morri@student.math.uwaterloo.ca>
3288
3289         * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
3290
3291 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3292
3293         PR optimization/11440
3294         * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
3295         SIGN_EXTRACT SETs.
3296
3297 2003-07-14  Alan Modra  <amodra@bigpond.net.au>
3298
3299         * doc/tm.texi (BLOCK_REG_PADDING): Describe.
3300         * expr.h (struct locate_and_pad_arg_data): Add where_pad.
3301         (emit_group_load, emit_group_store): Adjust declarations.
3302         Remove most occurrences of #ifdef TREE_CODE.
3303         * expr.c (emit_group_load): Add "type" param, and use
3304         BLOCK_REG_PADDING to determine need for a shift.  Optimize non-
3305         aligned accesses if !SLOW_UNALIGNED_ACCESS.
3306         (emit_group_store): Likewise.
3307         (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
3308         emit_group_load and emit_group_store calls.
3309         * calls.c (store_unaligned_arguments_into_pseudos): Tidy.  Use
3310         BLOCK_REG_PADDING to determine whether we need endian_correction.
3311         (load_register_parameters): Localize vars.  Handle shifting of
3312         small values to the correct end of regs.  Adjust emit_group_load
3313         call.
3314         (expand_call, emit_library_call_value_1): Adjust emit_group_load
3315         and emit_group_store calls.
3316         * function.c (assign_parms): Set mem alignment for stack slots.
3317         Adjust emit_group_store call.  Store values at the "wrong" end
3318         of regs to the stack.  Use BLOCK_REG_PADDING.
3319         (locate_and_pad_parm): Save where_pad.
3320         (expand_function_end): Adjust emit_group_load call.
3321         * stmt.c (expand_value_return): Adjust emit_group_load call.
3322         * Makefile.in (calls.o): Depend on $(OPTABS_H).
3323         * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
3324         (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
3325         (MUST_PASS_IN_STACK): Define.
3326         (BLOCK_REG_PADDING): Define.
3327         * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
3328         (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
3329         * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
3330         (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
3331         Act on AGGREGATES_PAD_UPWARD_ALWAYS.
3332
3333 2003-07-13  Aaron W. LaFramboise  <awlaframboise@aol.com>
3334
3335         * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
3336
3337 2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3338
3339         * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
3340         both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
3341
3342 2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>
3343
3344         PR other/11123
3345         * toplev.c: Don't cut off option names.
3346
3347 2003-07-13  Andreas Jaeger  <aj@suse.de>
3348
3349         * c-decl.c (link_hash_hash): Avoid warning about casting pointer
3350         to integer of different size.
3351
3352 2003-07-13  Kazu Hirata  <kazu@cs.umass.edu>
3353
3354         * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
3355         to (eq (and X 1) 0).
3356
3357 2003-07-13  Andreas Jaeger  <aj@suse.de>
3358
3359         * config.gcc: Add pmmintrin.h for x86_64-*-*.
3360
3361 2003-07-13  Zack Weinberg  <zack@codesourcery.com>
3362
3363         * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
3364         (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
3365         list.  Move these all together down by cpplib.
3366
3367         * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
3368         definition of CPPCHAR_SIGNED_T.
3369
3370         * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
3371         * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
3372         * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
3373
3374         * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
3375         * cppinit.c (cpp_create_reader): Likewise.
3376
3377         * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
3378         * cpptrad.c: Likewise.  All callers changed.
3379         * cpplib.c: All callers changed.
3380         * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
3381         * hashtable.h: Define GTY(x) to nothing here too.
3382
3383 2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3384
3385         * stor-layout.c (compute_record_mode): Remove very obsolete test
3386         that forces BLKmode for records with fields crossing word boundary.
3387
3388 2003-07-13  Zack Weinberg  <zack@codesourcery.com>
3389
3390         * Makefile.in: Remove orphan reference to acconfig.h.
3391
3392 2003-07-13  Andreas Jaeger  <aj@suse.de>
3393
3394         * cgraphunit.c: Convert prototypes to ISO C90.
3395
3396 2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>
3397
3398         * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
3399         (for OpenBSD).
3400         * fixinc/fixincl.x: Rebuild.
3401
3402 2003-07-12  Zack Weinberg  <zack@codesourcery.com>
3403
3404         * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
3405         i?86-*-*.  Use correct name of cache variable.
3406         * configure: Regenerate.
3407
3408 2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>
3409
3410         * config/alpha/alpha.c: Fix comment typos.
3411         * config/alpha/alpha.md: Likewise.
3412         * config/arm/arm.c: Likewise.
3413         * config/arm/arm.md: Likewise.
3414         * config/arm/lib1funcs.asm: Likewise.
3415         * config/avr/avr.md: Likewise.
3416         * config/arm/README-interworking: Fix typos.
3417
3418 2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>
3419
3420         * c-format.c: Fix comment formatting.
3421         * c-typeck.c: Likewise.
3422         * coverage.c: Likewise.
3423         * cppcharset.c: Likewise.
3424         * cpplib.c: Likewise.
3425         * dbxout.c: Likewise.
3426         * gcov-io.h: Likewise.
3427         * toplev.c: Likewise.
3428
3429 2003-07-12  Nathanael Nerode  <neroden@gcc.gnu.org>
3430
3431         * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
3432         fix.
3433
3434 2003-07-12  Zack Weinberg  <zack@codesourcery.com>
3435
3436         * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
3437