]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
cgraph.c (create_edge): Fix typo.
[gcc.git] / gcc / ChangeLog
CommitLineData
fdacb904
JH
1Thu Jul 31 19:49:53 CEST 2003 Jan Hubicka <jh@suse.cz>
2
3 * cgraph.c (create_edge): Fix typo.
4 * i386.c (pic_symbolic_operand): Reorder tests.
5
8100063e
NS
62003-07-31 Nathan Sidwell <nathan@codesourcery.com>
7
8 * doc/gcov.texi (Invoking Gcov): Describe output name mangling
9 more fully.
10 (Gcov Data Files): Update.
11
2a4e8ebc
RO
122003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
13
14 * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
15 default.
16
17 * gthr-posix.c: New file.
18 * gthr-posix.h: Define _REENTRANT if missing.
19 Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
20
21 * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
22 by gthr-posix.o.
23 * config/alpha/t-osf-pthread: New file.
24
25 * fixinc/inclhack.def (alpha_pthread): New fix.
26 * fixinc/fixincl.x: Regenerate.
27 * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
28
29 * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
30 warning.
31 Fixes PR bootstrap/9330.
32
689a714d
RO
332003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
34
35 * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
36 without GNU ld.
37 Update comment.
38 * configure: Regenerate.
39
caf819ae
VM
402003-07-31 Vladimir Makarov <vmakarov@redhat.com>
41
42 * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
43 setter.
44
1aa0a5f6
RS
452003-07-30 Roger Sayle <roger@eyesopen.com>
46
47 * builtins.def: Alphabetize.
48
4bd0bee9
MK
492003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
50
51 * doc/c-tree.texi: Normalize spellings of "lowercase" and
52 "uppercase".
53 * doc/cpp.texi: Likewise.
54 * doc/md.texi: Likewise.
55 * doc/rtl.texi: Likewise.
56 * doc/tm.texi: Likewise.
57
7f02cb5c
MK
582003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
59
60 * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
61 (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
62 of cc1obj.
63
498887c8
CD
642003-07-30 Chris Demetriou <cgd@broadcom.com>
65
66 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
67 macros before defining them.
68
10bbf137
UW
692003-07-31 Ulrich Weigand <uweigand@de.ibm.com>
70
71 * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
72 UNSPECV_BLOCKAGE): New constants.
73 ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
74 "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
75 splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
76 "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
77
78 (all insns and expanders): Write output control string as brace block
79 where appropriate. Remove \-escapes for doublequote characters.
80
3f2eae23
JH
81Thu Jul 31 01:04:19 CEST 2003 Jan Hubicka <jh@suse.cz>
82
83 * gcse.c (insert_store): Fix typo in previous patch.
84
f0babc9a
NB
852003-07-30 Neil Booth <neil@daikokuya.co.uk>
86
87 * cppfiles.c (stack_file, open_file_failed): Use path for deps.
88
edeac5de
AK
892003-07-30 Andi Kleen <ak@muc.de>
90
91 * loop.c (check_dbra_loop): Allow LTU in the loop condition.
92
6e885ee3
ZD
932003-07-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
94
95 * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
96 * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
97 GCOV_N_VALUE_COUNTERS): New.
98 * profile.c (compute_value_histograms): New static function.
99 (branch_prob): Read back the value histograms.
100 * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
101 * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
102 * value-prof.c: Add comment on reading the profile.
103 * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
104 * doc/invoke.texi (-fprofile-values): Document behavior with
105 -fbranch-probabilities.
106
0e6cb2cb
DE
1072003-07-30 David Edelsohn <edelsohn@gnu.org>
108
109 * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
110
656ec3b1
UW
1112003-07-30 Ulrich Weigand <uweigand@de.ibm.com>
112
113 * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
114 symbolically.
115
a0c8285b
JH
116Wed Jul 30 19:12:10 CEST 2003 Jan Hubicka <jh@suse.cz>
117
118 * gcse.c (insert_store): Ignore fake edges.
119
120 * c-common.c (flag_vtable_gc): Kill.
121 * c-common.g (flag_vtable_gc): Kill.
122 * c-opts (c_common_handle_option): Kill.
123 * c.opt (fvtable-gc): Kill.
124 * final.c (final_scan_insn): Do not call assemble_vtable_entry.
125 * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
126 * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
127
128 * invoke.texi (-ftable-gc): Kill documentation.
129
130 * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
131 just because function body is missing.
132
133 * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
134
b2e863b8
RM
1352003-07-30 Ranjit Mathew <rmathew@hotmail.com>
136
137 * unwind-sjlj.c: Fix typo in file description.
138
9206d736
AM
1392003-07-30 Alan Modra <amodra@bigpond.net.au>
140
141 * calls.c (load_register_parameters): When shifting reg sized values
142 to the msb, move the value to a reg first.
143
9074464c
GK
1442003-07-29 Geoffrey Keating <geoffk@apple.com>
145
146 * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
147 * line-map.h (linemap_add): Update comments.
148 * line-map.c (linemap_add): Update comments, interpret zero-length
149 filename as "<stdin>".
150
e55e4f68
NN
1512003-07-29 Nathanael Nerode <neroden@gcc.gnu.org>
152
153 * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
154
55d54003
ZW
1552003-07-29 Zack Weinberg <zack@codesourcery.com>
156
157 * c-decl.c (last_function_parm_vars, current_function_parm_vars):
158 New static variables.
159 (struct c_scope): Add parms and warned_forward_parm_decls
160 fields; remove parm_order.
161 (storedecls, storetags): Delete.
162 (poplevel): Also clear bindings on the parms chain.
163 (pushdecl): Handle forward declarations of parameters, and
164 chain PARM_DECLs on the parms list, not the names list.
165 (lookup_name_current_level): Check for PARM_DECLs on the parms
166 list too.
167 (push_parm_decl): Don't update parm_order.
168 (clear_parm_order): Rename mark_forward_parm_decls. Issue the
169 warning, only once per parameter list, and set TREE_ASM_WRITTEN
170 on the decls here. Then move the forward decls to the names list.
171 (grokparms): Set last_function_parm_vars.
172 (get_parm_info): Don't use gettags or getdecls. No need to
173 extract non-parms from the parms list, or reorganize the parms
174 list. Feed nonparms back in the TREE_TYPE of the list node
175 returned. Issue only one error per parameter list for "void"
176 appearing more than once in said parameter list. Collapse
177 parmlist_tags_warning into this function to avoid double scan
178 of tags list.
179 (start_function): Set current_function_parm_vars.
180 (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
181 directly. Get non-parms from current_function_parm_vars; no
182 need to extract them from the parms chain. Properly bind tags
183 in the new scope.
184 (store_parm_decls_oldstyle): No need to extract non-parameters
185 from the parms chain, nor to store them back afterward. Move
186 declaration to top of function, restructure code reordering
187 DECL_ARGUMENTS.
188 (store_parm_decls): No need to save and restore warn_shadow.
189 * c-parse.in: Don't call parmlist_tags_warning nor
190 clear_parm_order. Call mark_forward_parm_decls when forward
191 parm decls are encountered.
192 * c-tree.h: Prototype mark_forward_parm_decls; not
193 clear_parm_order or parmlist_tags_warning.
194
18c81520
GK
1952003-07-29 Geoffrey Keating <geoffk@apple.com>
196
197 * c-common.c (allow_pch): Remove.
198 * c-common.h (allow_pch): Remove.
199 (c_common_no_more_pch): Declare.
200 * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
201 * c-pch.c: Include hosthooks.h.
202 (c_common_valid_pch): Don't check allow_pch.
203 (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
204 (c_common_no_more_pch): New.
205 * ggc-common.c: Include hosthooks.h.
206 (gt_pch_save): Call gt_pch_get_address.
207 (gt_pch_restore): Call gt_pch_use_address.
208 * hooks.c (hook_voidp_size_t_null): New.
209 (hook_bool_voidp_size_t_false): New.
210 * hooks.h (hook_voidp_size_t_null): New.
211 (hook_bool_voidp_size_t_false): New.
212 * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
213 (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
214 (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
215 HOST_HOOKS_GT_PCH_USE_ADDRESS.
216 * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
217 gt_pch_use_address.
218 * doc/hostconfig.texi (Host Common): Document
219 HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
220 * Makefile.in (c-pch.o): Depend on hosthooks.h.
221 (ggc-common.o): Likewise.
222
223 * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
224 (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
225 (pch_address_space): New.
226 (darwin_rs6000_gt_pch_get_address): New.
227 (darwin_rs6000_gt_pch_use_address): New.
228
8f9b4009
NB
2292003-07-29 Neil Booth <neil@daikokuya.co.uk>
230
231 * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
232 * cppfiles.c: Completely rewritten.
233 * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
234 struct cpp_path is now struct cpp_dir.
235 (remove_duplicates): Don't simplify path names.
236 * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
237 cpp_stack_file.
238 * cpphash.h: Include hashtab.h.
239 (_cpp_file): Declare.
240 (struct cpp_buffer): struct include_file is now struct _cpp_file,
241 and struct cpp_path is now struct cpp_dir. Rename members.
242 (struct cpp_reader): Similarly. New members once_only_files,
243 file_hash, file_hash_entries, quote_ignores_source_dir,
244 no_search_path, saw_pragma_once. Remove all_include_files and
245 max_include_len. Make some members bool.
246 (_cpp_mark_only_only): Renamed from _cpp_never_reread.
247 (_cpp_stack_file): Renamed from _cpp_read_file.
248 (_cpp_stack_include): Renamed from _cpp_execute_include.
249 (_cpp_init_files): Renamed from _cpp_init_includes.
250 (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
251 * cppinit.c (cpp_create_reader): Initialize no_search_path. Update.
252 (cpp_read_next_file): Rename and move to cppfiles.c.
253 (cpp_read_main_file): Update.
254 * cpplib.c (run_directive): Update for renamed members.
255 (do_include_common, _cpp_pop_buffer): Update.
256 (do_import): Undeprecate #import.
257 (do_pragma_once): Undeprecate. Use _cpp_mark_file_once_only.
258 * cpplib.h: Remove file_name_map_list.
259 (cpp_options): Remove map_list.
260 (cpp_dir): Rename from cpp_path. New datatype for name_map.
261 (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
262
a6400add
PE
2632003-07-29 Phil Edwards <pme@gcc.gnu.org>
264
265 * Makefile.in: Make stamp-objdir safe for parallel builds.
266
b2790407
PE
2672003-07-29 Phil Edwards <pme@gcc.gnu.org>
268
269 * Makefile.in (stmp-docobjdir): New target; ensure $docobjdir exists.
270 (info): Depend on stmp-docobjdir.
271
8e3940b2
RO
2722003-07-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
273
274 * configure: Regenerate.
275
987bf56f
JH
276Tue Jul 29 19:24:49 CEST 2003 Jan Hubicka <jh@suse.cz>
277
278 PR C++/11131
279 * tree-inline.c (expand_call_inline): Always call inlinable_function_p
280 in !unit-at-a-time mode.
281
5f0eabcc
GK
2822003-07-28 Geoffrey Keating <geoffk@apple.com>
283
284 * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
285 main function.
286
7b6d72fc
MM
2872003-07-28 Mark Mitchell <mark@codesourcery.com>
288
289 PR c++/11667
290 * c-common.c (shorten_compare): Take into account differences
291 between C and C++ representation for enumeration types.
292 * tree.h (set_min_and_max_values_for_integral_type): Declare.
293 * stor-layout.c (set_min_and_max_values_for_integral_type): New
294 function, broken out from ...
295 (fixup_signed_type): ... here and ...
296 (fixup_unsigned_type): ... here.
297
14077d68
ZW
2982003-07-28 Zack Weinberg <zack@codesourcery.com>
299
300 * c-decl.c: Update commentary, adjust blank lines throughout.
301 (struct c_scope): Fix indentation. Reorder members so
302 outer-context pointers come first, booleans last.
303 (duplicate_decls, define_label): Use a 'locus' variable for
304 diagnostic locations in a few more places.
305 (warn_if_shadowing): Un-split a conditional that fits on one line.
306 (c_init_decl_processing): No need to clear current_scope and
307 current_function_scope.
308 (start_decl): Merge if/else if statements with same action.
309 (push_parm_decl): Rename old_immediate_size_expand to use
310 save_foo convention; save/restore around entire function.
311 (grokdeclarator): Remove unnecessary braces.
312
85617eba
HPN
3132003-07-28 Hans-Peter Nilsson <hp@bitrange.com>
314 Michael Culbertson <Michael.J.Culbertson@wheaton.edu>
315
316 * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
317 when warn_declaration_after_statement. Call pedwarn_c90, not
318 pedwarn. Correct message: it's "ISO C90", not "ISO C89".
319 * c-common.c (warn_declaration_after_statement): Define.
320 * c-common.h (warn_declaration_after_statement): Declare.
321 * c.opt (Wdeclaration-after-statement): New.
322 * c-errors.c (pedwarn_c90): New function.
323 * c-opts.c (c_common_handle_option) <case
324 OPT_Wdeclaration_after_statement>: New.
325 * c-tree.h (pedwarn_c90): Declare.
326 * doc/invoke.texi (Option Summary): Document
327 -Wdeclaration-after-statement.
328 (Warning Options): Ditto.
329
f527d196
JH
330Mon Jul 28 20:13:06 CEST 2003 Jan Hubicka <jh@suse.cz>
331
332 * i386.md (memory attribute) Avoid accessing uninitialized memory
333 for ishift1 type instructions.
334
5dfa45d0
JJ
3352003-07-28 Jakub Jelinek <jakub@redhat.com>
336
337 * configure.in (--enable-checking): Add fold category.
338 (ENABLE_FOLD_CHECKING): Define if requested.
339 * configure: Rebuilt.
340 * config.in: Rebuilt.
341 * doc/install.texi: Document it.
342 * fold-const.c: Include md5.h.
343 [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
344 [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
345 print_fold_checksum): New functions.
346
347 * fold-const.c (fold): Never modify argument passed to fold, instead
348 change a copy and return it.
349 * convert.c (convert_to_integer): Likewise.
350
447673de
NN
3512003-07-27 Nathanael Nerode <neroden@gcc.gnu.org>
352
14077d68 353 * fixinc/fixinc.svr4: Remove dead code. Remove now-unnecessary
447673de
NN
354 cleanup of junk after #else and #endif directives. Collapse repeated
355 clauses into for statment.
356
357 * fixinc/fixincl.sh: GNU C -> GCC. Add usage comment.
358
66db6b62
ZW
3592003-07-27 Zack Weinberg <zack@codesourcery.com>
360
a8ccdffe
ZW
361 * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
362 (keep_next_if_subblocks): Rename next_is_function_body.
363 (pushlevel): Adjust commentary. Always set ->keep on the
364 outermost level of a function. Don't set ->keep_if_subblocks.
365 (poplevel): Adjust commentary. Don't look at ->keep_if_subblocks.
366 (store_parm_decls): Adjust to match.
367 (finish_function): Adjust to match.
368 Call poplevel with all three arguments zero.
369
66db6b62
ZW
370 * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
371 New functions split out of store_parm_decls.
372 Avoid unnecessary work. Use local variables consistently.
373 (store_parm_decls): Likewise.
374
375 (finish_function): No need to set functionbody flag on call to
376 poplevel.
377 (struct language_function): Remove scope field.
378 (c_push_function_context, c_pop_function_context): No need to
379 save and restore current_scope.
380
90ea7324
NS
3812003-07-27 Nathan Sidwell <nathan@codesourcery.com>
382
383 * doc/extend.texi (Deprecated Features): Implicit typename is
384 gone. Default args on types is going.
385
11a004ef
R
3862003-07-26 J"orn Rennecke <joern.rennecke@superh.com>
387
388 * Makefile.in (ifcvt.o): Depend on target.h
389 * ifcvt.c (target.h): Include.
390 (if_convert): Don't call mark_loop_exit_edges if we can't
391 modify jumps.
392
6cbf57c9
GP
3932003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
394
395 * doc/install.texi (Testing): Adjust required versions of DejaGnu.
396
a6c14a64
RH
3972003-07-26 Richard Henderson <rth@redhat.com>
398
399 PR inline-asm/11676
400 * cse.c (count_reg_usage): Handle asm_operands properly.
401
cc42f5f5
RS
4022003-07-26 Roger Sayle <roger@eyesopen.com>
403
404 * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
405 (DEF_EXT_FALLBACK_BUILTIN): Delete.
406 (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
407 the regular DEF_EXT_LIB_BUILTIN macro.
408 (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
409 the regular DEF_LIB_BUILTIN macro.
410 (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
411 BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
412 BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
413 DEF_EXT_LIB_BUILTIN macro.
414
415 * c-decl.c (duplicate_decls): Remove code to handle builtin
416 functions prototyped without an argument list.
417
92e7a6ef
DS
4182003-07-26 Danny Smith <dannysmith@users.sourceforge.net>
419
420 * config/i386/winnt.c: Revert 2003-07-08 change.
421 (i386_pe_section_type_flags): Remove error_with_decl here too.
422
ba9cfcb5
GDR
4232003-07-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
424
425 * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
426 * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
427 * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
428 (v850_handle_data_area_attribute): Likewise.
429
0e5da0be
GK
4302003-07-26 Geoffrey Keating <geoffk@apple.com>
431
66db6b62 432 * varasm.c (output_constant_def_contents): Use
18f3e349
GK
433 ASM_DECLARE_CONSTANT_NAME if defined.
434 * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
435 * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
436 objects get at least one byte to prevent assembler problems.
437 (ASM_DECLARE_CONSTANT_NAME): New.
438
d2908a50
GK
439 * Makefile.in (libbackend.o): Remove options_.h.
440 (mostlyclean): Likewise.
441
0e5da0be
GK
442 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
443 insert a label at the end of an function under Mach-O.
863d3dfb
GK
444
445 * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
446
36252949
AH
4472003-07-25 Aldy Hernandez <aldyh@redhat.com>
448
449 * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
450 equality.
451 (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
452
453 * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
454
0fe37f68
GDR
4552003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
456
457 * doc/passes.texi (Passes): Mention pretty-printing and
458 diagnostic files.
459
50fc59e7
NS
4602003-07-25 Nathan Sidwell <nathan@codesourcery.com>
461
462 * doc/extend.texi (Function Attributes): GNU C++ does now allow
463 unused parameter decls.
464 (Attribute Syntax): GNU C++ does not allow label attributes to be
465 after the ':'.
466
cd475805
GDR
4672003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
468
469 * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
470 (objc_declare_class): Likewise.
471 (error_with_ivar): Likewise.
472 (start_class): Likewise.
473 (warn_with_method): Likewise.
474
b6fe0bb8
GDR
4752003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
476
477 Remove pedwarn_with_decl, warning_with_decl and error_with_decl
66db6b62 478 from GCC.
b6fe0bb8
GDR
479 * calls.c (try_to_integrate): Don't use xxx_with_decl.
480 (expand_call): Likewise.
481 * dwarfout.c (output_reg_number): Likewise.
482 * expr.c (expand_expr): Likewise.
483 * function.c (assign_temp): Likewise.
484 (uninitialized_vars_warning): Likewise.
485 (setjmp_args_warning): Likewise.
486 (expand_function_end): Likewise.
487 * stmt.c (fixup_gotos): Likewise.
488 (warn_about_unused_variables): Likewise.
489 (expand_end_bindings): Likewise.
490 * stor-layout.c (layout_decl): Likewise.
491 (place_field): Likewise.
492 * toplev.c (check_global_declarations): Likewise.
493 (rest_of_handle_inlining): Likewise.
494 (default_tree_printer): New function.
495 (general_init): Initialize diagnostic machinery before routing
496 signals to the ICE machinery. Set default tree printer.
497 * toplev.h (pedwarn_with_decl): Remove declaration.
498 (warning_with_decl): Likewise.
499 (error_with_decl): Likewise.
66db6b62 500 (pedwarn): Remove attribute for the time being.
b6fe0bb8
GDR
501 * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
502 * varasm.c (named_section): Likewise.
503 (make_decl_rtl): Likewise.
504 (assemble_variable): Likewise.
505 (merge_weak): Likewise.
506 (declare_weak): Likewise.
507
508 * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
509 * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
510 (format_with_decl): Remove.
511 (diagnostic_for_decl): Likewise.
512 (pedwarn_with_decl): Likewise.
513 (warning_with_decl): Likewise.
514 (error_with_decl): Likewise.
515 (diagnostic_initialize): Adjust.
516 (diagnostic_count_diagnostic): Likewise.
517 (announce_function): Likewise.
518 (lhd_print_error_function): Likewise.
519 (diagnostic_report_current_module): Likewise.
520 (default_diagnostic_starter): Likewise.
521 (diagnostic_report_diagnostic): Likewise.
522 (default_diagnostic_finalizer): Likewise.
523 (verbatim): Likewise.
524 (error): Likewise.
525 (warning): Likewise.
526 * opts.c (common_handle_option): Likewise.
527 * pretty-print.c: New file.
528 * c-pretty-print.h (pp_base): Override.
529 * c-pretty-print.c: Adjust use of macros throughout.
530 (pp_buffer): New macro.
531 (pp_newline): Likewise.
532 * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
533 * Makefile.in (DIAGNOSTIC_H): New variable.
534 (c-errors.o): Use it.
535 (c-objc-common.o): Likewise.
536 (c-common.o): Likewise.
537 (c-opts.o): Likewise.
538 (c-format.o): Likewise.
539 (diagnostic.o): Likewise.
540 (opts.o): Likewise.
541 (toplev.o): Likewise.
542 (rtl-error.o): Likewise.
543 (dwarf2out.o): Likewise.
544 (jump.o): Likewise.
545 (pretty-print.o): New rule.
546
868b8cda
RS
5472003-07-24 Roger Sayle <roger@eyesopen.com>
548
549 * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
550 front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
551 (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
552 from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
553 (DEF_FRONT_END_LIB_BUILTIN): Delete.
554 (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
555 (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
556
557 * builtins.c (build_string_literal): New function to construct
558 a char* pointer to a string literal.
559 (expand_builtin_fputs): Change 2nd argument from "int ignore" to
560 "rtx target" to be consistent with other expand_builtin_* functions.
561 Change 3rd argument from "int unlocked" to "bool unlocked".
562 (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
563 c-common.c to avoid front-end dependencies. Optimize printf("")
564 as a no-op when the result isn't required. Handle embedded NULs
565 in format string.
566 (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
567 from c-common.c to avoid front-end dependencies. Likewise, optimize
568 fprintf(fp,"") as a no-op when the result isn't required, evaluating
569 fp for side-effects. Handle embedded NULs in format string.
570 (expand_builtin_sprintf): Fix typo.
571 (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
572 optimizing. Adjust calls of expand_builtin_fputs to match the API
573 change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
574 expand_builtin_printf. Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
575 and BUILT_IN_FPRINTF using expand_builtin_fprintf.
576
577 * c-common.c (is_valid_printf_arglist): Delete.
578 (c_expand_builtin): Delete.
579 (c_expand_builtin_printf): Moved to builtins.c. Delete.
580 (c_expand_builtin_fprintf): Moved to builtins.c. Delete.
581 (c_expand_expr): No longer treat CALL_EXPRs specially.
582 (CALLED_AS_BUILT_IN): Delete.
583
2a868ea4
ZD
5842003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
585
586 PR optimization/11631
587 * gcse.c (store_motion): Connect infinite loops to exit.
588
de7df9eb
JM
5892003-07-24 Jason Merrill <jason@redhat.com>
590
591 * tree.h (boolean_type_node): Move from C/C++/Java frontends.
592 (boolean_true_node, boolean_false_node): Likewise.
593 (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
594 * tree.c (build_common_tree_nodes): Init boolean_type_node.
595 (build_common_tree_nodes_2): Init boolean_{true,false}_node.
596 * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
597 * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
598 (truthvalue_true_node): Renamed from boolean_true_node.
599 (truthvalue_false_node): Renamed from boolean_false_node.
600 * c-decl.c: Just set truthvalue_* to integer_*.
601 * c-*.[ch]: s/boolean/truthvalue/. s/c_bool/boolean/.
602
6907ddd3
RS
6032003-07-24 Roger Sayle <roger@eyesopen.com>
604
605 * c-decl.c (match_builtin_function_types): New subroutine of
606 duplicate_decls to test whether a redeclaration of a builtin
607 function is suitably close, i.e. the return type and all of
608 the argument types have the same modes as the builtin expects.
609 (duplicate_decls): Fuzzy type matching for builtin functions
610 moved to match_builtin_function_types.
611
84d45ad1
ZD
6122003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
613
614 * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
615 flag correctly.
616
f8521984
ZW
6172003-07-24 Zack Weinberg <zack@codesourcery.com>
618
619 * c-decl.c: Search-and-replace change 'binding level' to
620 'scope' in commentary.
621 (struct binding_level): Now struct c_scope.
622 (current_binding_level): Now current_scope.
623 (free_binding_level): Now scope_freelist.
624 (current_function_level): Now current_function_scope.
625 (global_binding_level): Now global_scope.
626 (make_binding_level): Now make_scope.
627 (pop_binding_level): Now pop_scope.
628
0f31374d
RO
6292003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
630
631 * configure.in (libgcc_visibility): Add missing whitespace.
632
270606ac
RH
6332003-07-24 Richard Henderson <rth@redhat.com>
634
635 * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
636 __gcc_personality_v0.
f8521984 637
5f08e44f
RO
6382003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
639
640 * Makefile.in: Replace pwd by ${PWD_COMMAND}.
641
a4878735
NS
6422003-07-24 Nathan Sidwell <nathan@codesourcery.com>
643
644 * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
645 documentation missed from my 2003-07-09 patch.
646
5aaaf0e8
NN
6472003-07-24 Nathanael Nerode <neroden@gcc.gnu.org>
648
649 * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
650 it's not provided.
651 * configure: Rebuild.
652
8f5b6d29
SB
6532003-07-24 Steven Bosscher <steven@gcc.gnu.org>
654
655 PR c/10602
656 * c-typeck.c (type_lists_compatible_p): Do not compare
657 arguments if one of them is an error_mark_node
658
acd0b319
AM
6592003-07-24 Alan Modra <amodra@bigpond.net.au>
660
661 * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
662 if current_function_calls_eh_return.
663
28b619b2
MM
6642003-07-23 Mark Mitchell <mark@codesourcery.com>
665
666 * doc/c-tree.texi (OFFSET_TYPE): Update description.
667
07154156
BW
6682003-07-23 Bob Wilson <bob.wilson@acm.org>
669
670 * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
671 * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
672 __umodsi3, __modsi3): Increase frame size to 32.
673
5f5bfdd0
GK
6742003-07-23 Geoffrey Keating <geoffk@apple.com>
675
676 * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
677 prototype.
678
11b8e71c
MM
6792003-07-23 Mark Mitchell <mark@codesourcery.com>
680
28b619b2
MM
681 * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
682
11b8e71c
MM
683 PR optimization/10679
684 * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
685
9d6b7c09
JDA
6862003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
687
688 PR target/11607 and PR target/11516
689 * pa.md (extzv, extv, insv): Revert latter half of last patch.
690
a5ac359a
MM
6912003-07-22 Mark Mitchell <mark@codesourcery.com>
692
693 * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
694 * varasam.c (output_constant): Likewise.
695
938d968e
KH
6962003-07-22 Kazu Hirata <kazu@cs.umass.edu>
697
698 * alias.c: Fix comment formatting.
699 * c-common.c: Likewise.
700 * c-decl.c: Likewise.
701 * c-opts.c: Likewise.
702 * combine.c: Likewise.
703 * cpplib.c: Likewise.
704 * diagnostic.c: Likewise.
705 * dojump.c: Likewise.
706 * final.c: Likewise.
707 * fold-const.c: Likewise.
708 * gcc.c: Likewise.
709 * gcse.c: Likewise.
710 * ggc-page.c: Likewise.
711 * jump.c: Likewise.
712 * loop.c: Likewise.
713 * mips-tfile.c: Likewise.
714 * recog.c: Likewise.
715 * regclass.c: Likewise.
716 * regmove.c: Likewise.
717 * tree.c: Likewise.
718 * tree.h: Likewise.
719
b3147029
PB
7202003-07-22 Per Bothner <pbothner@apple.com>
721
722 * line-map.c (add_line_map): Handle invalid LEAVE request.
723 Fixes PR preprocessor/11361.
724
53f72d60
PB
7252003-07-22 Per Bothner <pbothner@apple.com>
726
727 * diagnostic.c.(diagnostic_report_current_module): Update to match
728 2003-06-05 changes to push_srcloc and pop_srcloc.
729
5cf0212f
WB
7302003-07-22 Wolfgang Bangerth <bangerth@dealii.org>
731
732 * doc/trouble.texi: Better document two-stage name lookup.
733
c7453384
EC
7342003-07-22 Eric Christopher <echristo@redhat.com>
735
736 * config/s390.c (s390_valid_pointer_mode): New.
737 (TARGET_VALID_POINTER_MODE): Use.
738 (s390_emit_prologue): Add tpf profiling hooks.
739 (s390_emit_epilogue): Ditto.
740 * config/s390.h (MASK_TPF): New.
741 (TARGET_TPF): Use.
742 (POINTERS_EXTEND_UNSIGNED): Define.
743 * config/s390.md (ptr_extend): New pattern.
744
a2f7be91
ZW
7452003-07-22 Zack Weinberg <zack@codesourcery.com>
746
747 * hashtable.c (approx_sqrt): Make static.
748 * hashtable.h: Don't prototype approx_sqrt.
749 * line-map.c (init_line_maps): Rename linemap_init.
750 (free_line_maps): Rename linemap_free.
751 (add_line_map): Rename linemap_add.
752 (lookup_line): Rename linemap_lookup.
753 (print_containing_files): Rename linemap_print_containing_files.
754 * linemap.h: Update to match.
755
756 * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
757 linemap routines to use new names.
758
c6e4cc53
NS
7592003-07-16 Nathan Sidwell <nathan@codesourcery.com>
760
761 * c-common.c (handle_packed_attribute): Don't pack a struct via a
762 typedef. Propagate packedness from a main variant.
763
55de4f08
NN
7642003-07-22 Nathanael Nerode <neroden@gcc.gnu.org>
765
766 * Makefile.in (install-common): Add dependency on installdirs.
767
fb5d2a87
AO
7682003-07-21 Alexandre Oliva <aoliva@redhat.com>
769
770 * c-common.c (c_common_type_for_mode): Return integer types for
771 pointer modes.
772
905bd7b5
GK
7732003-07-22 Geoffrey Keating <geoffk@apple.com>
774
d05cc98e
GK
775 * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
776 (finish_decl): Call maybe_apply_pragma_weak here.
777 (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
778 TREE_PUBLIC and TREE_STATIC are decided.
779 (start_function): Move call to maybe_apply_pragma_weak. Check that
780 DECL_ASSEMBLER_NAME isn't set too early.
781
905bd7b5
GK
782 * cpplex.c (_cpp_process_line_notes): Mention option name in
783 trigraphs warning.
784
87d9741e
KH
7852003-07-22 Kazu Hirata <kazu@cs.umass.edu>
786
787 * combine.c (if_then_else_cond): Simplify the comparison of
788 rtx against -1, 0, and 1.
789 * loop.c (check_dbra_loop): Likewise.
790 * optabs.c (emit_conditional_move): Likewise.
791 (emit_conditional_add): Likewise.
792 * config/i386/i386.md (*movsi_or): Likewise.
793 (*movdi_or_rex6): Likewise.
794
b67d7f4a
JH
795Tue Jul 22 00:42:12 CEST 2003 Jan Hubicka <jh@suse.cz>
796
797 * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
798
8d973a83
NB
7992003-07-21 Neil Booth <neil@daikokuya.co.uk>
800
801 * cppfiles.c (open_file_pch): Don't put unused entries in the
802 splay tree. Remove dead code.
803
49a64b24
GK
8042003-07-21 Geoffrey Keating <geoffk@apple.com>
805
48873ed2
GK
806 * c-common.h (num_in_fnames): Declare.
807 (c_static_assembler_name): Move from here...
808 * c-tree.h (c_static_assembler_name): ... to here.
809 * c-opts.c: Don't include langhooks-def.h.
810 (c_static_assembler_name): Move to c-decl.c.
811 (num_in_fnames): Make externally visible.
812 * c-decl.c: Include langhooks-def.h.
813 (c_static_assembler_name): Move from c-opts.c.
814 * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
815 (c-opts.o): Remove $(LANGHOOKS_DEF_H).
816
49a64b24
GK
817 * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
818 when it's not needed.
819
8c29550d
JJ
8202003-07-21 Jakub Jelinek <jakub@redhat.com>
821
822 * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
823 * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
824 (rs6000_emit_prologue): Save FPRs inline if set.
825
92cbea22
L
8262003-07-21 H.J. Lu <hongjiu.lu@intel.com>
827
828 * config/ia64/ia64.md (prefetch): Support predicate.
829
ee735eef
JZ
8302003-07-21 Josef Zlomek <zlomekj@suse.cz>
831
832 * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
833 * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
834 table.
835
bbda30a4
EB
8362003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
837
a2f7be91 838 PR optimization/11536
bbda30a4
EB
839 * unroll.c (loop_iterations): Do not replace a register holding
840 the final value by its equivalent before the loop if it is not
841 invariant.
842
64c18e57
DF
8432003-07-21 Dave Fluri <dave.fluri@onlink.net>
844
845 * doc/extend.texi: Fixes to spelling, grammar, and diction.
846
b222f49a
BE
8472003-07-21 Ben Elliston <bje@wasabisystems.com>
848
849 * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
850 (V850 Options): Spelling fixes.
851
9eff22bc
LG
8522003-07-20 Lisa M. Goldstein <opus@gnu.org>
853
a2f7be91 854 * doc/invoke.texi: Fixes to style, grammar and diction.
9eff22bc 855
6a6c0154
RS
8562003-07-20 Roger Sayle <roger@eyesopen.com>
857
858 * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
859 * system.h (SMALL_STACK): Poison obsolete target macro.
860 * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
861
d38b3a8d
PE
8622003-07-20 Phil Edwards <pme@gcc.gnu.org>
863
864 * configure.in: Cache the results of testing for cmp's capabilities.
865 * configure: Regenerate.
866
35dc2bd8
MM
8672003-07-20 Mark Mitchell <mark@codesourcery.com>
868
869 PR debug/11279
870 * dwarf2out.c (gen_enumeration_type_die): Remember that
871 enumerators can be unsigned.
872
14e33ee8
ZW
8732003-07-19 Zack Weinberg <zack@codesourcery.com>
874
875 * c-decl.c (named_labels, shadowed_labels, label_level_chain)
876 (push_label_level, pop_label_level): Kill.
877 (struct binding_level): Rename level_chain to outer.
878 Add outer_function field. Change parm_flag, function_body,
879 keep, keep_if_subblocks to 1-bit bitfields of type bool.
880 (current_function_level): New variable.
881 (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
882 (keep_next_level, declare_parm_level, warn_if_shadowing):
883 Update to match.
884 (struct language_function): Kill named_labels, shadowed_labels fields.
885 (c_init_decl_processing, start_function, c_push__function_context)
886 (c_pop_function_context): No need to muck with named_labels nor
887 shadowed_labels.
888
889 (make_binding_level): No need to clear the structure here.
890 (pop_binding_level): Always operate on current_binding_level.
891 Update current_function_level if necessary.
892 (pushlevel): Don't clear named_labels. Update current_function_level
893 if necessary. Use "true" and "false" where appropriate.
894 (poplevel): Diagnose labels defined but not used, or vice
895 versa, and clear out label-meanings leaving scope, while
896 walking down the decls list, for all binding levels.
897 Handle LABEL_DECLs appearing in the shadowed list.
898 pop_binding_level takes no arguments.
899 (pushdecl_function_level): Use current_function_level.
900
901 (make_label, bind_label): New static functions.
902 (declare_label): New exported function.
903 (lookup_label, define_label): Rewritten for new data structure.
904 (shadow_label): Kill.
905
906 * c-tree.h: Prototype declare_label; don't prototype
907 push_label_level, pop_label_level, nor shadow_label.
908 * c-parse.in: Remove all calls to push_label_level and
909 pop_label_level. Use declare_label for __label__ decls.
910
911 * doc/extend.texi: Clarify that __label__ can be used to
912 declare labels with local scope in any nested block, not
913 just statement expressions. Cross-reference nested functions
914 section from local labels section.
915
8a6b9b7f
ZD
9162003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
917
918 * sched-rgn.c (find_rgns): Initialize current_edge correctly.
919
026fe6c8
PE
9202003-07-19 Phil Edwards <pme@gcc.gnu.org>
921
922 * doc/makefile.texi (restrap, profiledbootstrap): Document targets.
923
c68b0a84
KG
9242003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
925
926 * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
927 fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
928
fd7643fb
UW
9292003-07-19 Ulrich Weigand <uweigand@de.ibm.com>
930
14e33ee8 931 * config/s390/s390.c (legitimize_pic_address): Access local symbols
fd7643fb
UW
932 relative to the GOT instead of relative to the literal pool base.
933 (s390_output_symbolic_const): Handle new GOT-relative accesses.
934 * config/s390/s390.md ("call"): Access local functions and PLT stubs
935 relative to the GOT instead of relative to the literal pool base.
936 ("call_value"): Likewise.
937 ("call_value_tls"): Likewise.
938
14e33ee8 939 * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
fd7643fb
UW
940 reloading. Support LTREL_BASE / LTREL_OFFSET construct.
941 (s390_chunkify_finish): Likewise.
942 (s390_chunkify_cancel): Likewise.
943 (s390_reorg): Adapt caller.
944 (find_base_register_in_addr,
945 find_base_register_ref, replace_base_register_ref): Delete.
946 (find_ltrel_base, replace_ltrel_base): New functions.
947 (find_constant_pool_ref): Handle LTREL_BASE unspecs.
948 (s390_decompose_address): Handle LTREL_BASE unspecs. Optimize
949 base vs. index register usage.
950 (struct constant_pool): Remove 'anchor'.
951 (s390_add_anchor): Delete.
952 (s390_dump_pool): Remove anchor handling.
953 * config/s390/s390.md ("reload_anchor"): Remove.
954
955 * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
956 (s390_load_got): New function. Use LTREL_BASE/OFFSET.
957 (s390_emit_prologue): Use it.
14e33ee8
ZW
958 * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
959 "builtin_setjmp_receiver"): Cleanup. Use s390_load_got. Do not
fd7643fb
UW
960 hard-code register 14.
961 * config/s390/s390-protos.h (s390_load_got): Declare.
962
14e33ee8 963 * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
fd7643fb
UW
964 Support TImode constants.
965 * config/s390/s390.md ("consttable_ti"): New.
966 ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
967
968 * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
969 UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
970 UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
971 UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
972 UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
973 New symbolic constants.
974 ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
975 "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
976 "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
977 "pool", "literal_pool_31", "literal_pool_64"): Cleanup. Use
978 symbolic UNSPEC values.
14e33ee8 979 * config/s390/s390.c (larl_operand, s390_short_displacement,
fd7643fb
UW
980 bras_sym_operand, s390_cannot_force_const_mem,
981 s390_delegitimize_address, s390_decompose_address,
982 legitimize_pic_address, s390_output_symbolic_const,
983 s390_function_profiler): Use symbolic UNSPEC values.
984
703ad42b
KG
9852003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
986
987 * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
988 c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
989 c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
990 collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
991 cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
992 cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
993 dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
994 fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
995 gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
996 genemit.c genextract.c genoutput.c genrecog.c gensupport.c
997 ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
998 integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
999 loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
1000 postreload.c prefix.c print-tree.c protoize.c ra-build.c
1001 ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
1002 regmove.c regrename.c reload.c reload1.c reorg.c resource.c
1003 sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
1004 simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
1005 tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
1006 varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
1007 casts.
1008
308ca868
GDR
10092003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
1010
1011 * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
1012 * toplev.h (warning): Remove attribute.
1013
435ab236
GDR
10142003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
1015
1016 * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
1017 (pop_label_level): Likewise.
1018 (duplicate_decls): Likewise.
1019 (implicitly_declare): Likewise.
1020 (shadow_label): Likewise.
1021 (start_decl): Likewise.
1022 (finish_decl): Likewise.
1023 (grokdeclarator): Likewise.
1024 (get_parm_info): Likewise.
1025 (detect_field_duplicates): Likewise.
1026 (finish_struct): Likewise.
1027 (start_function): Likewise.
1028 (store_parm_decls): Likewise.
1029 (finish_function): Likewise.
1030 (c_expand_body_1): Likewise.
1031 (check_for_loop_decls): Likewise.
1032 (merge_translation_unit_decls): Likewise.
1033
2cc98056
NB
10342003-07-19 Neil Booth <neil@daikokuya.co.uk>
1035
1036 * common.opt: Document --param.
1037 * opts.c (columns, undocumented_msg): New.
1038 (print_help): Get number of columns from environment. Print
1039 --param help. Tweak newline handling.
1040 (print_param_help): New.
1041 (print_filtered_help): Better handling of duplicates. Complain
1042 about undocumented switches.
1043 (print_switch): New.
1044 (wrap_help): Improve wrapping, use COLUMNS.
1045 * opts.sh: Ignore comments in records.
1046 * params.def: Fix typos and remove trailing periods.
1047 * toplev.c (display_help): Don't dump --param help.
1048 * doc/sourcebuild.texi: Update.
1049
d893ccde
RH
10502003-07-18 Richard Henderson <rth@redhat.com>
1051
0e38b30b 1052 PR target/11556
d893ccde
RH
1053 * optabs.c (prepare_operand): Fail gracefully instead of abort
1054 if the predicate doesn't satisfy.
1055 (gen_cond_trap): Allow prepare_operand to fail.
1056
eb8221ea
GDR
10572003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
1058
1059 * c-common.c: Don't undefine GCC_DIAG_STYLE.
1060 (fname_decl): Don't use xxx_with_decl.
1061 (c_add_case_label): Likewise.
1062 (handle_section_attribute): Likewise.
1063 (handle_alias_attribute): Likewise.
1064 (handle_no_instrument_function_attribute): Likewise.
1065 (handle_no_limit_stack_attribute): Likewise.
1066 * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
1067 * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
1068
65f43cdf
ZD
10692003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1070
1071 * Makefile.in (ifcvt.o): Add cfgloop.h.
1072 * basic-block.h (EDGE_LOOP_EXIT): New flag.
1073 * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
1074 * ifcvt.c: Include cfgloop.h.
1075 (mark_loop_exit_edges): New static function.
1076 (if_convert): Call it.
1077 (find_if_header): Ignore branches out of loops.
1078
e5686da7
KH
10792003-07-18 Kazu Hirata <kazu@cs.umass.edu>
1080
14e33ee8 1081 * combine.c (simplify_comparison): Don't share rtx when converting
e5686da7
KH
1082 (ne (and (not X) 1) 0) to (eq (and X 1) 0).
1083
8d05ebaa
DE
10842003-07-18 David Edelsohn <edelsohn@gnu.org>
1085
1086 * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
1087 (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
1088 (MUST_PASS_IN_STACK): Define.
1089 (BLOCK_REG_PADDING): Define.
1090
79019985
RH
10912003-07-18 Richard Henderson <rth@redhat.com>
1092
1093 * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
1094 to skip the addr_vec.
1095
0595d388
AO
1096Fri Jul 18 15:22:28 2003 Alexandre Oliva <aoliva@redhat.com>
1097
1098 * combine.c (combinable_i3pat): Don't forbid occurrences of
1099 i2dest or i1dest in inner_dest if inner_dest is a mem.
1100
2ee1067b
JH
1101Fri Jul 18 17:05:57 CEST 2003 Jan Hubicka <jh@suse.cz>
1102
1103 * cgraph.c (cgraph_remove_node): Clear the hash table slot.
1104
16f6812f
JJ
11052003-07-17 Jakub Jelinek <jakub@redhat.com>
1106
1107 PR target/11087
1108 * loop.c (basic_induction_var): Check if convert_modes emitted any
1109 instructions. Remove them and return 0 if so.
1110
f129791c
EB
11112003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr>
1112
1113 PR optimization/11083
1114 * toplev.c (rest_of_handle_addresof): Rename into
1115 rest_of_handle_addressof. Delete unreachable blocks
1116 if dead edges were purged after the addressof pass.
1117
b2e608ca
NB
11182003-07-18 Neil Booth <neil@daikokuya.co.uk>
1119
1120 * Makefile.in, configure, configure.in: Remove handling of
1121 lang-options.h and options_.h.
1122 * toplev.c (struct lang_opt, documented_lang_options): Remove.
1123 (display_help): Don't use documented_lang_options.
1124
9cd51ef6
ZW
11252003-07-17 Zack Weinberg <zack@codesourcery.com>
1126
1127 * c-decl.c (pushdecl_function_level): Make static, return nothing.
1128 (kept_level_p): Fold into poplevel.
1129 (undeclared_variable): Moved here from c-typeck.c. Export.
1130 * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
1131 (undeclared_variable): Prototype here. Don't prototype
1132 kept_level_p nor pushdecl_function_level.
1133 * c-parse.in: Change first argument to poplevel from
1134 "kept_level_p()" to "KEEP_MAYBE".
1135 * c-typeck.c (undeclared_variable): Moved to c-decl.c.
1136
cf6bcbd0
RS
11372003-07-17 Roger Sayle <roger@eyesopen.com>
1138
1139 * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
1140 commutative operands instead of modifying the RTL in-place.
1141
2b187c63
MM
11422003-07-17 Mark Mitchell <mark@codesourcery.com>
1143
1144 PR optimization/11557
1145 * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
1146 unless we know which function is being called.
1147
c715abdd
RS
11482003-07-17 Roger Sayle <roger@eyesopen.com>
1149
1150 * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
1151 whether to reorder the operands of a commutative binary operator.
1152
3e4093b6
RS
11532003-07-17 Roger Sayle <roger@eyesopen.com>
1154
1155 * fold-const.c (const_binop): Avoid performing the FP operation at
1156 compile-time, if either operand is NaN and we honor signaling NaNs,
1157 or if we're dividing by zero and either flag_trapping_math is set
1158 or the desired mode doesn't support infinities.
1159 (fold_initializer): New function to fold an expression ignoring any
1160 potential run-time exceptions or traps.
1161 * tree.h (fold_initializer): Prototype here.
1162 * c-typeck.c (build_binary_op): Move to the end of the file so
1163 that intializer_stack is in scope. If constructing an initializer,
1164 i.e. when initializer_stack is not NULL, use fold_initializer to
1165 fold expressions.
1166 * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
1167 performing FP operations at compile-time, if they would raise an
1168 exception at run-time.
1169
89e9faee
GK
11702003-07-17 Geoffrey Keating <geoffk@apple.com>
1171
26e0dcb3
GK
1172 PR 11498
1173 * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
1174 (langhooks.o): Add $(GGC_H), gt-langhooks.h.
1175 (GTFILES): Add langhooks.c.
1176 (gt-langhooks.h): New.
1177 * c-common.h (c_static_assembler_name): Prototype.
1178 * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
1179 * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
1180 * c-opts.c: Include langhooks-def.h.
1181 (c_static_assembler_name): New.
1182 * langhooks.c: Include ggc.h. Include gt-langhooks.h.
1183 (var_labelno): New.
1184 (lhd_set_decl_assembler_name): Give static objects with context
1185 unique names.
1186 * varasm.c (var_labelno): Delete.
1187 (make_decl_rtl): Don't change the assembler name once it's set.
1188
89e9faee
GK
1189 * c-opts.c (this_input_filename): New.
1190 (finish_options): Take new parameter, name of file being compiled.
1191 Update callers. Set this_input_filename.
1192 (push_command_line_include): Use this_input_filename not
1193 main_input_filename.
1194
6ec3f553
NB
11952003-07-17 Neil Booth <neil@daikokuya.co.uk>
1196
1197 * Makefile.in: Depend .pot generation on options.c.
1198 * po/exgettext: Add an extra_files variable containing additional
1199 files to scan.
1200
78ff95dc
ZW
12012003-07-17 Zack Weinberg <zack@codesourcery.com>
1202
36c6d174
ZW
1203 * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
1204 c_write_global_declarations.
1205
eb1dfbb2
ZW
1206 * c-decl.c: Fix typos in several comments. Remove all
1207 #if 0 blocks; reindent as needed. Remove unused argument
1208 to declare_parm_level; all callers changed.
1209 * c-parse.in: Update calls to declare_parm_level. Avoid
1210 issuing a double warning in some circumstances.
1211 * c-typeck.c: Update calls to declare_parm_level.
1212 * c-tree.h: Update prototype of declare_parm_level.
1213
1214 * c-pragma.c (apply_pragma_weak): Don't complain about a
1215 redundant #pragma weak.
1216
1217 * objc/objc-act.c (forward_declare_categories,
1218 build_selector_reference_decl, build_class_reference_decl,
1219 build_objc_string_decl, synth_forward_declarations,
1220 build_protocol_reference): Set TREE_PUBLIC on synthetic
1221 forward decl to 0, consistent with eventual definition.
1222 Correct comments to match.
1223
78ff95dc
ZW
1224 * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
1225 in regexp that don't form a range expression.
1226 * fixinc/fixincl.def: Regenerate.
1227
b23ba0b8
RH
12282003-07-17 Richard Henderson <rth@redhat.com>
1229
78ff95dc
ZW
1230 PR target/10907
1231 * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
1232 even with !TARGET_CONST_GP.
1233 (ia64_function_ok_for_sibcall): Reject non-local functions.
b23ba0b8 1234
d944c82d
SB
12352003-07-17 Steven Bosscher <steven@gcc.gnu.org>
1236
1237 * c-common.c (c_estimate_num_insns_1): Don't handle
1238 METHOD_CALL_EXPR.
1239 * expr.c (safe_from_p): Likewise.
1240 * gengtype.c (adjust_field_tree_exp): Likewise.
1241 * stmt.c (warn_if_unused_value): Likewise
1242 * tree.c (first_rtl_op): Likewise.
1243 * tree.def: Don't define METHOD_CALL_EXPR.
1244 * java/lang.c (java_estimate_num_insns_1): Don't handle
1245 METHOD_CALL_EXPR.
1246
54284728
EB
12472003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
1248
1249 PR other/11466
1250 * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
1251 and its restrictions for the SPARC64 port.
1252 Move the entry of "-mimpure-text" before that of "-mv8".
1253
bc890961 12542003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
78ff95dc 1255 Phil Edwards <phil@jaj.com>
bc890961
EB
1256
1257 * doc/install.texi (*-*-solaris2*): Document the step-by-step
1258 procedure to bootstrap and install.
1259 Document the preference for the legacy Sun tools in /usr/bin
1260 over the POSIX tools in /usr/xpg4/bin for the build process.
1261
f2ac9964
NB
12622003-07-17 Neil Booth <neil@daikokuya.co.uk>
1263
1264 * c.opt: Document Uncodumented; use it. Document ObjC options.
1265 * opts.c (print_filtered_help): Skip undocumented switches.
1266 * opts.h (CL_UNDOCUMENTED): New.
1267 * opts.sh: Handle Undocumented.
1268 * toplev.c (documented_lang_options): Prevent its becoming empty.
1269objc:
1270 * lang-options.h: Remove.
1271
03988cac
UW
12722003-07-16 Ulrich Weigand <uweigand@de.ibm.com>
1273
1274 * loop.c (check_ext_dependent_givs): Pass const struct loop *
1275 instead of struct loop_info * as argument. Accept BIVs with
1276 increment +/- 1 provided there is a friendly exit test against
1277 a loop-invariant value.
1278 (strength_reduce): Adapt call to check_ext_dependent_givs.
1279
fada1961
R
12802003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
1281 Con Bradley <con.bradley@superh.com>
1282
1283 * sh-protos.h (sh_get_pr_initial_val): Declare.
1284 * sh.c (regno_reg_class): Make its elements type enum reg_class.
1285 (output_stack_adjust): Remove emit_fn argument. Add epilogue_p
1286 and live_regs_mask arguments. Changed all callers.
1287 (save_schedule_s): New structure.
1288 (save_schedule): New typedef.
1289 (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
1290 (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
1291 In interrupts handlers, also save registers that are usually
1292 partially saved, and make sure there is at least one general purpose
1293 register saved if a target register needs saving.
1294 Add casts in comparisons to avoid warnings.
1295 (sh_media_register_for_return): return -1 for interrupt handlers.
1296 (MAX_SAVED_REGS, MAX_TEMPS): New defines.
1297 (sh_expand_prologue): Use sh5_schedule_saves. Check that any temp
1298 registers used are available.
1299 Set RTX_FRAME_RELATED_P where appropriate.
1300 Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
1301 (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
1302 (initial_elimination_offset): Likewise.
1303 * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
1304 (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
1305 (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
1306 (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
1307 (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
1308 and for target registers.
1309 (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
1310 (regno_reg_class): Make its elements type enum reg_class.
1311 (CONSTRAINT_LEN): Don't use isdigit.
1312 (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
1313 (FUNCTION_ARG): Add parentheses to avoid warnings.
1314 (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
1315 (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
1316 (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
1317 (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
1318 * sh.md (xordi3+1): Remove unused variable regno.
1319 (return_media): Check that tr0 is available before using it.
1320
bae92bf3
NB
13212003-07-16 Neil Booth <neil@daikokuya.co.uk>
1322
1323 * c.opt: Document more options.
1324
cc8c96fd
RS
13252003-07-16 Roger Sayle <roger@eyesopen.com>
1326
1327 * combine.c (subst): Also handle (subreg (const_double ...)) case
1328 if created by a substitution, by using the original inner mode.
1329
d41ba56f
RS
13302003-07-16 Roger Sayle <roger@eyesopen.com>
1331
1332 * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
1333 to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
1334 (simplify_rtx): Likewise. Simplify (lo_sum (high X) X) as X.
1335
264d65c1 13362003-07-16 Andrew Pinski <pinskia@physics.uc.edu>
78ff95dc 1337
264d65c1 1338 * doc/install.texi (--without-headers): New.
1622229c
AP
1339
1340 Partial Fix PR/10129
1341 * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
1342 (machopic_output_function_base_name): New; print the true pic label.
1343 (machopic_classify_ident): Pic Base is always a defined data.
1344 * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
1345 * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
1346
db2f435b
AP
1347 * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
1348 if they are not floating point registers.
1349
d07605f5
AP
1350 PR c/10962
1351 * ggc.h: Add header guards.
1352 * c-decl.c (finish_struct): Sort fields if
1353 number greater than 15 and there are no
1354 anonymous structs/unions.
1355 * c-common.h: Include ggc.h.
1356 (sorted_fields_type): New struct.
1357 (field_decl_cmp): New prototype.
1358 (resort_sorted_fields): New prototype.
1359 (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
1360 * c-tree.h: (lang_type): Use pointer to sorted_fields_type
1361 as s, removing other fields.
1362 * c-typeck.c (lookup_field): Use s in lang_type.
1363 These were mostly moved from cp/class.c:
1364 * c-common.c (field_decl_cmp): New static function.
1365 (field_decl_cmp): New function.
1366 (resort_sorted_fields): New function.
1367
3d7964d5
GK
13682003-07-16 Geoffrey Keating <geoffk@apple.com>
1369
1370 * config/darwin.c (machopic_select_section): Use decl_readonly_section
1371 to do most of the work.
1372
4e58524e
HPN
13732003-07-16 Hans-Peter Nilsson <hp@bitrange.com>
1374
1375 * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
1376 * config/mmix/mmix.c: Convert functions to ISO C90.
1377 (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
1378 formatting.
1379 (mmix_get_hard_reg_initial_val): Tweak section head comment.
1380
1e0343dd
R
13812003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
1382
1383 * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
1384
fc4767bb
JJ
13852003-07-16 Jakub Jelinek <jakub@redhat.com>
1386
1387 * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
1388 (uw_update_context_1): Use it.
1389 * config/rs6000/rs6000.c (insn_after_throw): Remove.
1390 (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
1391 in parent frame if _Unwind_* called directly instead of through
1392 .plt.
1393 (rs6000_emit_eh_toc_restore): Remove.
1394 (rs6000_emit_prologue): Update stack pointer before doing any saving
1395 if current_function_calls_eh_return. Generate unwind info for $r2.
1396 (rs6000_emit_epilogue): Restore stack pointer after doing all
1397 restoring if current_function_calls_eh_return. Restore $r2.
1398 * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
1399 * config/rs6000/rs6000.md (eh_return): Remove call to
1400 rs6000_emit_eh_toc_restore.
1401 * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
1402 * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
1403
6972c506
JJ
14042003-07-15 Jakub Jelinek <jakub@redhat.com>
1405
1406 * expr.c (emit_block_move): Don't move anything if size is const 0.
1407 (clear_storage): Test against const0_rtx instead of comparing INTVAL
1408 against 0.
1409
ac59ed37
DM
14102003-07-15 David S. Miller <davem@redhat.com>
1411
1412 * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
1413 emit nop if the last real insn is CALL_INSN.
1414
b828d124
DS
14152003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
1416
1417 * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
1418 as "nul".
1419 * config/i386/xm-mingw32.h: Change GNU CC to GCC.
1420
d5648e12
DS
14212003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
1422
1423 * config/i386/winnt.c (associated_type): Artificial methods are not
1424 affected by the import/export status of their class unless they are
1425 COMDAT.
1426 (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
1427
1428 * config/i386/winnt.c: Fix GCC copyright comment.
1429
b0e3f7ec
GDR
14302003-07-16 Gabriel Dos Reis <gcc@integrable-solutions.net>
1431
1432 PR c++/11531
1433 * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
1434 not recursing on hard error.
1435 (diagnostic_for_decl): Likewise.
1436 * diagnostic.def: Rearrange.
1437
71628aa0
R
14382003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
1439
1440 * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
1441 If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
1442
14432003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
1444 Richard Henderson <rth@redhat.com>
1445
1446 * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
1447 to decide if to access a _Unwind_Ptr or a _Unwind_Word.
1448 (_Unwind_SetGR): Likewise.
1449 (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
1450 (Unwind_SpTmp): New typedef.
1451 (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
1452 (uw_update_context): Use _Unwind_GetPtr.
1453 (init_dwarf_reg_size_table): Move above uw_init_context_1.
1454 (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
1455 Use _Unwind_SetSpColumn.
1456 (uw_install_context_1): Don't initialize dwarf_reg_size_table.
1457 Use _Unwind_GetPtr.
1458
5a170a05
NB
14592003-07-15 Neil Booth <neil@daikokuya.co.uk>
1460
1461 * c.opt: Document more options.
1462 * toplev.c (documented_lang_options): Remove all local help strings.
1463
b0afa2fc
MM
14642003-07-15 Mark Mitchell <mark@codesourcery.com>
1465
1466 PR debug/11473
1467 * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
1468 base classes.
1469
5df90541
KH
14702003-07-15 Kazu Hirata <kazu@cs.umass.edu>
1471
1472 PR target/10795
1473 * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
1474 swap comparison operands if doing so would generate an
1475 unrecognizable insn.
1476
5a257872
EB
14772003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr>
1478
1479 PR optimization/11320
1480 * sched-int.h (struct deps) [reg_conditional_sets]: New field.
1481 (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
1482 * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
1483 current_sched_info->compute_jump_reg_dependencies. Record which
1484 registers are used and which registers are set by the jump.
1485 Clear deps->reg_conditional_sets after a barrier.
1486 Set deps->reg_conditional_sets if the insn is a COND_EXEC.
1487 Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
1488 (init_deps): Initialize reg_conditional_sets.
1489 (free_deps): Clear reg_conditional_sets.
1490 * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
1491 Mark registers live on entry of the fallthrough block and conditionally
1492 set as set by the jump. Mark registers live on entry of non-fallthrough
1493 blocks as used by the jump.
1494 * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
1495 Mark new parameters as unused.
1496
3cec3f83
RS
14972003-07-15 Richard Sandiford <rsandifo@redhat.com>
1498
1499 * doc/invoke.texi: Resync MIPS -march documentation.
1500
98450f0d
RS
15012003-07-15 Richard Sandiford <rsandifo@redhat.com>
1502
1503 * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
1504 (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
1505 (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
1506 * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
1507 (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
1508 (mips_issue_rate): Handle PROCESSOR_R9000.
1509 (mips_use_dfa_pipeline_interface): Likewise.
1510 * config/mips/9000.md: New file.
1511 * config/mips/mips.md: Include it.
1512 (define_attr cpu): Add r9000.
1513 (mulsi3_mult3): Use "mul" for rm9000 code.
1514
5fe25f47
SC
15152003-07-15 Stan Cox <scox@redhat.com>
1516
1517 * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
1518 (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
1519 (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
1520 * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
1521 (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
1522 (mips_issue_rate): Handle PROCESSOR_R7000.
1523 (mips_use_dfa_pipeline_interface): Likewise.
1524 * config/mips/7000.md: New file.
1525 * config/mips/mips.md: Include it.
1526 (define_attr cpu): Add r7000.
1527 (mulsi3_mult3): Use "mul" for rm7000 code.
1528
5a2515e6
RS
15292003-07-15 Richard Sandiford <rsandifo@redhat.com>
1530
1531 * config/mips/mips.md (define_attr type): Add condmove. Use it for
1532 the conditional move patterns.
1533 * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
1534 Check for condmove type.
1535 (ir_vr54_arith): Add move type.
1536 * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
1537 * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
1538
72de27ea
NB
15392003-07-15 Neil Booth <neil@daikokuya.co.uk>
1540
1541 * c-opts.c (print_help): Remove.
1542 (c_common_handle_option): Don't handle --help.
1543 * c.opt: Document some options.
1544 (--help): Remove.
1545 * opts.c (print_filtered_help): New.
1546 (print_help): Use it.
1547
e6ebd07b
GK
15482003-07-14 Geoffrey Keating <geoffk@apple.com>
1549
2d799c09
GK
1550 * c-common.c (c_common_type_for_mode): Handle V4DFmode.
1551 * tree.c: (build_common_tree_nodes_2): Likewise.
1552 * tree.h (enum tree_index): Add TI_V4DF_TYPE.
1553 (V4DF_type_node): New.
1554
e6ebd07b
GK
1555 * c-opts.c (push_command_line_include): Don't free deferred_opts,
1556 we'll need it.
1557 (finish_options): Reset init_cursor.
1558
b90f141a
KH
15592003-07-15 Kazu Hirata <kazu@cs.umass.edu>
1560
1561 * expr.c (expand_assignment): Remove an unused argument
1562 SUGGEST_REG.
1563 * expr.h: Update the prototype.
1564 * function.c: Update the callers.
1565 * stmt.c: Likewise.
1566
1e7ee6ad
MM
15672003-07-14 Mark Mitchell <mark@codesourcery.com>
1568
1569 PR debug/11098
1570 * integrate.c (copy_decl_for_inlining): Do not mark copied decls
1571 as DECL_ABSTRACT.
1572
bf66f7b0
NN
15732003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
1574
1575 * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
1576 with __cplusplus, not "we must use the C++ compiler's type"
1577 * fixinc/inclhack.def (void_null): Note that Interix needs this.
1578 * fixinc/fixincl.x: Regenerate.
1579
18009d03
GK
15802003-07-14 Geoffrey Keating <geoffk@apple.com>
1581
ea00486e
GK
1582 * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
1583 and unseen_objects from the global data before calling
1584 __deregister_frame_info_bases.
1585 (examine_objects): Insert objects into the seen_objects list,
1586 not unseen_objects.
1587 (_Unwind_Find_FDE): Always unlock the global object lists, even if
1588 we couldn't allocate a data structure to put in it.
1589
18009d03
GK
1590 * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
1591 (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
1592 (SET_TYPE_PROTOCOL_LIST): New.
1593 * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
1594 (get_object_reference): Likewise.
1595
9ae130f8
JH
1596Mon Jul 14 23:14:28 CEST 2003 Jan Hubicka <jh@suse.cz>
1597
1598 * cfglayout.c (locator_file): Break out from ....
1599 (insn_file): ... here.
1600 (locator_line): Break out from ....
1601 (insn_line): ... here.
1602 * rtl.h (locator_file, locator_line): Declare.
1603 (final_start_function): Set proper line/file info.
1604
e07d4821
GDR
16052003-07-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
1606
1607 * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
1608 handled by pp_c_cast_expression.
1609
121d69e6
RS
16102003-07-14 Richard Sandiford <rsandifo@redhat.com>
1611
1612 * config/mips/mips.c (mips_expand_prologue): Use a single insn to
1613 allocate 32768 bytes of stack. Use addition rather than subtraction
1614 when a single insn is enough.
1615 * config/mips/mips.md: Remove insns and splitters for subtracting
1616 constants.
1617 (subsi3): Only accept register operands.
1618 (subsi3_internal): Likewise. Use for TARGET_MIPS16 as well.
1619 (subdi3_internal_3, subsi3_internal_2): Likewise.
1620 (casesi): Use expand_binop to subtract the lower bound.
1621
3485245e
RS
16222003-07-14 Richard Sandiford <rsandifo@redhat.com>
1623
1624 * config/mips/mips.c (mips_in_small_data_p): Don't handle
1625 TARGET_MIPS16 specially.
1626
6627b7f9
RS
16272003-07-14 Richard Sandiford <rsandifo@redhat.com>
1628
6d0b50a4
RS
1629 * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
1630 mips_output_aligned_bss.
1631 * config/mips/linux.h: Likewise.
1632 * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
1633 * config/mips/mips.c (mips_output_aligned_bss): New function.
1634
8d50bd19
RS
1635 * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
1636 * config/mips/elf64.h: Likewise.
1637
c1115ccd
RS
1638 * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
1639 mips_declare_object_name.
1640 (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
1641 * config/mips/elf64.h: As for elf.h.
1642 * config/mips/iris6.h: Likewise.
1643 * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
1644 * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
1645 do...while (0) block.
1646 * config/mips/mips-protos.h (mips_declare_object_name): Declare.
1647 (mips_finish_declare_object): Declare.
1648 * config/mips/mips.c (mips_declare_object_name): New function.
1649 (mips_finish_declare_object): New function.
1650
060ff934
RS
1651 * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
1652 * config/mips/linux.h: Likewise.
1653
d82783b6
RS
1654 * config/mips/mips.c (inside_function): Delete.
1655 (file_in_function_warning, ignore_line_number): Delete.
1656 (mips_output_filename): Don't warn about changing filenames within
1657 a function.
1658 (mips_output_lineno): Update accordingly.
1659 (mips_output_function_prologue): Don't reset the deleted variables.
1660 * config/mips/mips.h (inside_function): Delete.
1661 (file_in_function_warning, ignore_line_number): Delete.
1662
373f8df7
RS
1663 * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
1664 * config/mips/elf64.h: Likewise.
1665 * config/mips/openbsd.h: Likewise.
1666 * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
1667 * config/mips/linux.h: Likewise.
1668 * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
1669 (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
1670
6627b7f9
RS
1671 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
1672 to the list of include files when using gas.
1673 (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
1674 * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
1675 * config/mips/elf64.h: Likewise.
1676 * config/mips/iris5.h: Likewise.
1677 * config/mips/linux.h: Likewise.
1678 * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
1679 * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
1680 (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
1681 * config/mips/sdb.h: ...this new file.
1682
c18b00c0
NN
16832003-07-14 Douglas Rupp <rupp@gnat.com>
1684
1685 * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
1686 argument to getcwd; use fixed buffer instead.
1687
16882003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
1689
1690 * fixinc/mkfixinc.sh: Treat OpenBSD normally.
1691 * fixinc/fixinc.wrap: Delete.
1692
adc4adcd
GP
16932003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
1694
1695 * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
1696 don't have 2.
1697
16982003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
1699
1700 * ggc-page.c (struct globals): Add new fields to keep track of the
1701 total allocated memory and overhead.
1702 (ggc_print_statistics): Print them.
1703 (ggc_alloc): Keep track of the total allocated memory and the
1704 overhead.
1705
1706 * tree.c (dump_tree_statistics): Increase spacing.
1707 (enum tree_node_kind): Move to ...
1708 * tree.h (enum tree_node_kind): ... here.
1709 (tree_node_counts, tree_node_sizes): Declare.
1710
17112003-07-14 James A. Morrison <ja2morri@student.math.uwaterloo.ca>
1712
1713 * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
1714
bbd288a4
FS
17152003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1716
1717 PR optimization/11440
1718 * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
1719 SIGN_EXTRACT SETs.
1720
6e985040
AM
17212003-07-14 Alan Modra <amodra@bigpond.net.au>
1722
1723 * doc/tm.texi (BLOCK_REG_PADDING): Describe.
1724 * expr.h (struct locate_and_pad_arg_data): Add where_pad.
1725 (emit_group_load, emit_group_store): Adjust declarations.
1726 Remove most occurrences of #ifdef TREE_CODE.
1727 * expr.c (emit_group_load): Add "type" param, and use
1728 BLOCK_REG_PADDING to determine need for a shift. Optimize non-
1729 aligned accesses if !SLOW_UNALIGNED_ACCESS.
1730 (emit_group_store): Likewise.
1731 (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
1732 emit_group_load and emit_group_store calls.
1733 * calls.c (store_unaligned_arguments_into_pseudos): Tidy. Use
1734 BLOCK_REG_PADDING to determine whether we need endian_correction.
1735 (load_register_parameters): Localize vars. Handle shifting of
1736 small values to the correct end of regs. Adjust emit_group_load
1737 call.
1738 (expand_call, emit_library_call_value_1): Adjust emit_group_load
1739 and emit_group_store calls.
1740 * function.c (assign_parms): Set mem alignment for stack slots.
1741 Adjust emit_group_store call. Store values at the "wrong" end
1742 of regs to the stack. Use BLOCK_REG_PADDING.
1743 (locate_and_pad_parm): Save where_pad.
1744 (expand_function_end): Adjust emit_group_load call.
1745 * stmt.c (expand_value_return): Adjust emit_group_load call.
1746 * Makefile.in (calls.o): Depend on $(OPTABS_H).
1747 * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
1748 (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
1749 (MUST_PASS_IN_STACK): Define.
1750 (BLOCK_REG_PADDING): Define.
1751 * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
1752 (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
1753 * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
1754 (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
1755 Act on AGGREGATES_PAD_UPWARD_ALWAYS.
1756
4fab535e
AL
17572003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com>
1758
1759 * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
1760
8d2e5f72
RK
17612003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1762
1763 * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
1764 both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
1765
7eaab492
NN
17662003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
1767
1768 PR other/11123
1769 * toplev.c: Don't cut off option names.
1770
9d4a30f2
AJ
17712003-07-13 Andreas Jaeger <aj@suse.de>
1772
1773 * c-decl.c (link_hash_hash): Avoid warning about casting pointer
1774 to integer of different size.
1775
34ed3bb0
KH
17762003-07-13 Kazu Hirata <kazu@cs.umass.edu>
1777
1778 * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
1779 to (eq (and X 1) 0).
1780
1a7d0840
AJ
17812003-07-13 Andreas Jaeger <aj@suse.de>
1782
1783 * config.gcc: Add pmmintrin.h for x86_64-*-*.
1784
43839642
ZW
17852003-07-13 Zack Weinberg <zack@codesourcery.com>
1786
1787 * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
1788 (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
1789 list. Move these all together down by cpplib.
1790
1791 * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
1792 definition of CPPCHAR_SIGNED_T.
1793
1794 * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
1795 * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
1796 * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
1797
1798 * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
1799 * cppinit.c (cpp_create_reader): Likewise.
1800
1801 * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
1802 * cpptrad.c: Likewise. All callers changed.
1803 * cpplib.c: All callers changed.
1804 * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
1805 * hashtable.h: Define GTY(x) to nothing here too.
1806
0acf4f88
RK
18072003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1808
1809 * stor-layout.c (compute_record_mode): Remove very obsolete test
1810 that forces BLKmode for records with fields crossing word boundary.
1811
46db61e7
ZW
18122003-07-13 Zack Weinberg <zack@codesourcery.com>
1813
1814 * Makefile.in: Remove orphan reference to acconfig.h.
1815
db0e878d
AJ
18162003-07-13 Andreas Jaeger <aj@suse.de>
1817
1818 * cgraphunit.c: Convert prototypes to ISO C90.
1819
4146d8d0
NN
18202003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
1821
1822 * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
1823 (for OpenBSD).
1824 * fixinc/fixincl.x: Rebuild.
1825
6f3ca281
ZW
18262003-07-12 Zack Weinberg <zack@codesourcery.com>
1827
1828 * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
1829 i?86-*-*. Use correct name of cache variable.
1830 * configure: Regenerate.
1831
9a9f7594
KH
18322003-07-12 Kazu Hirata <kazu@cs.umass.edu>
1833
1834 * config/alpha/alpha.c: Fix comment typos.
1835 * config/alpha/alpha.md: Likewise.
1836 * config/arm/arm.c: Likewise.
1837 * config/arm/arm.md: Likewise.
1838 * config/arm/lib1funcs.asm: Likewise.
1839 * config/avr/avr.md: Likewise.
1840 * config/arm/README-interworking: Fix typos.
1841
4ed43216
KH
18422003-07-12 Kazu Hirata <kazu@cs.umass.edu>
1843
1844 * c-format.c: Fix comment formatting.
1845 * c-typeck.c: Likewise.
1846 * coverage.c: Likewise.
1847 * cppcharset.c: Likewise.
1848 * cpplib.c: Likewise.
1849 * dbxout.c: Likewise.
1850 * gcov-io.h: Likewise.
1851 * toplev.c: Likewise.
1852
c3a5b1e9
NN
18532003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
1854
6f3ca281 1855 * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
c3a5b1e9
NN
1856 fix.
1857
8ada417f
ZW
18582003-07-12 Zack Weinberg <zack@codesourcery.com>
1859
1860 * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
1861 uses three-argument AC_DEFINE so no acconfig.h entries are
1862 needed.
1863 (_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
1864 which contains the GAS version number as a scaled integer.
1865 (gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers. Add
1866 ability to check for ELF assembler.
1867 (gcc_GAS_CHECK_FEATURE): New macro.
1868 * configure.in: Use gcc_AC_CHECK_TYPE. Rewrite all
1869 assembler feature checks using gcc_GAS_CHECK_FEATURE.
1870 Use three-argument AC_DEFINE everywhere.
1871 * acconfig.h: Deleted.
1872 * config.in, configure: Regenerate.
1873
d5d16b5f
NN
18742003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
1875
3b57c563
NN
1876 * fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
1877 (on OpenBSD).
d33fb69b 1878 * fixinc/fixincl.x: Regenerate.
3b57c563 1879
d5d16b5f
NN
1880 * fixinc/inclhack.def (gnu_types): Improve comment.
1881
439f7bc3
AJ
18822003-07-12 Andreas Jaeger <aj@suse.de>
1883
1884 * fp-test.c (main): Use ISO C90 prototype.
1885
1886 * version.c: Remove unneded include of ansidecl.h.
1887
1888 * cgraph.h: Convert prototypes to ISO C90.
1889 * cgraph.c: Likewise.
1890 * fix-header.c: Likewise.
1891 * ra.h: Likewise.
1892 * protoize.c: Likewise.
1893
1a5c5701
JH
1894Sat Jul 12 06:09:38 CEST 2003 Jan Hubicka <jh@suse.cz>
1895
1896 * cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
1897 warning.
1898
b58b1157
JH
1899Sat Jul 12 03:06:01 CEST 2003 Jan Hubicka <jh@suse.cz>
1900 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1901
1902 * cgraph.c (cgraph_max_uid): New global variable.
1903 (cgraph_node): Set uid field.
1904 (create_edge): Keep inline flags consistent.
1905 (dump_cgraph): Dump more info.
1906 * cgraph.h (struct cgraph_local_info): Remove inline_many and
1907 can_inline_once; add inlinable, disgread_inline_limits, and self_insn
1908 (struct cgraph_global_info): Add insns, calls, cloned_times,
1909 will_be_output.
1910 (struct cgraph_node): Add uid.
1911 (struct cgraph_edge): Add inline_call.
1912 (cgraph_max_uid, cgraph_inline_p): Declare.
1913 * cgraph.c: Include params.h and fibheap.h
1914 (cgraph_mark_functions_to_inline_once): Kill.
1915 (INSNS_PER_CALL): New constant.
1916 (ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
1917 static variables.
1918 (cgraph_finalize_function): Do not analyze inlining.
1919 (cgraph_finalize_compilation_unit): Set inlining attributes.
1920 (cgraph_mark_functions_to_output): More consistency checks.
1921 (cgraph_optimize_function): Set current_function_decl to NULL.
1922 (cgraph_expand_function): Use new inline flags.
1923 (cgraph_postorder): Expand from cgraph_expand_functions.
1924 (INLINED_TIMES, SET_INLINED_TIMES): New macros.
1925 (cgraph_inlined_into, cgraph_inlined_callees,
1926 cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
1927 cgraph_mark_inline, cgraph_check_inline_limits,
439f7bc3 1928 cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
b58b1157
JH
1929 cgraph_decide_inlining, cgraph_inline_p): New functions.
1930 * params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
1931 PARAM_INLINE_UNIT_GROWTH): New parameters.
1932 * tree-inline.c (struct inline_data): New field current_decl.
1933 (expand_call_inline): Avoid forward declarations; use
1934 inlinable_function_p.
1935 (optimize_inline_calls): Set id.current_decl.
1936
27b8e366
AP
19372003-07-11 Andrew Pinski <pinskia@physics.uc.edu>
1938
1939 * configure.in: Remove wrongly added definition of
1940 local_prefix.
1941 * configure: Regenerate.
1942
80fa0b4c
DN
19432003-07-11 Dan Nicolaescu <dann@ics.uci.edu>
1944
1945 * rtl.def (NOTE): Do not use padding.
1946
1ea6f4c8
DH
19472003-07-11 Dara Hazeghi <dhazeghi@yahoo.com>
1948
1949 * doc/install.tex: Update required binutils for i?86-*-linux*
1950
ed2d8944
RH
19512003-07-11 Richard Henderson <rth@redhat.com>
1952
1953 * Makefile.in (stage1_build): Force OBJS-onestep=OBJS.
1954
a44cea75
MM
19552003-07-11 Mark Mitchell <mark@codesourcery.com>
1956
1957 * varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
1958 TRANSLATION_UNIT_DECL as top_level.
1959
358b8f01
JJ
19602003-07-11 Jakub Jelinek <jakub@redhat.com>
1961
1962 * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
1963 then fall back to cmpstrM.
1964 * builtins.c (expand_builtin_memcmp): Likewise.
1965 * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
1966 (s390_expand_cmpmem): ... this.
1967 * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
1968 cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
1969 from cmpstr* patterns. Rename call to s390_expand_cmpstr
1970 to s390_expand_cmpmem.
1971 * config/s390/s390.c (s390_expand_cmpstr): Rename to...
1972 (s390_expand_cmpstr): ... this. Rename cmpstr* instructions
1973 to cmpmem*.
1974 * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
1975 cmpstr* patterns.
1976 * doc/md.texi (cmpstrM): Describe as String compare insn, not
1977 Block compare insn.
1978 (cmpmemM): Add.
1979
8634e925
LR
19802003-07-11 Loren James Rittle <ljrittle@acm.org>
1981
1982 * config/i386/freebsd.h (SET_ASM_OP): Remove.
1983 (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
1984 (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
1985 MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
1986
48144cd4
RH
19872003-07-11 Richard Henderson <rth@redhat.com>
1988
1989 * function.c (assign_parms): Don't recombine complex args if
1990 fnargs is unchanged from orig_fnargs.
1991 (split_complex_args): Return args without complex before copying.
1992 Re-layout the modified parameters.
1993
fee226d2
R
19942003-07-11 J"orn Rennecke <joern.rennecke@superh.com>
1995
1996 * regclass.c (choose_hard_reg_mode): Add third argument.
1997 Changed all callers.
1998 * rtl.h (choose_hard_reg_mode): Update declaration.
1999 * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
2000 Take HARD_REGNO_CALL_PART_CLOBBERED into account.
2001
d1bd0ded
GK
20022003-07-11 Geoffrey Keating <geoffk@apple.com>
2003
2004 * c-decl.c (finish_decl): Handle 'used' here...
2005 * cgraphunit.c (cgraph_finalize_function): ... and here ...
2006 * c-common.c: (handle_used_attribute): ... not here.
439f7bc3 2007
d1bd0ded
GK
2008 * configure.in (onstep): Support --enable-intermodule.
2009 * Makefile.in (OBJS-common): New.
2010 (OBJS-md): New.
2011 (OBJS-archive): New.
2012 (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
2013 (OBJS-onestep): New.
2014 (libbackend.a): Support @onestep@.
2015 (libbackend.o): New.
2016 * configure: Regenerate.
439f7bc3 2017
d1bd0ded
GK
2018 * c-common.h (c_reset_state): New prototype.
2019 (c_parse_file): New prototype.
2020 (finish_file): Move prototype from c-tree.h.
2021 * c-decl.c: Include <hashtab.h>.
2022 (builtin_decls): New.
2023 (current_file_decl): New.
2024 (duplicate_decls): Add extra parameter. Change all callers. Don't
2025 output duplicate common symbols.
2026 (link_hash_hash): New.
2027 (link_hash_eq): New.
2028 (poplevel): Handle popping of the top level.
2029 (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
2030 (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
2031 (pushdecl_top_level): Likewise.
2032 (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
2033 (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
2034 (finish_decl): Handle TRANSLATION_UNIT_DECL.
2035 (merge_translation_unit_decls): New.
2036 (c_write_global_declarations): New.
2037 (c_reset_state): New.
2038 (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
2039 * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
2040 * c-objc-common.c (c_cannot_inline_tree_fn): Handle
2041 TRANSLATION_UNIT_DECL.
2042 (c_objc_common_finish_file): Call merge_translation_unit_decls.
2043 * c-opts.c (in_fnames): Rename from in_fname.
2044 (c_common_decode_option): Handle multiple input filenames.
2045 (c_common_post_options): Likewise.
2046 (c_common_parse_file): Likewise; also, call c_parse_file rather than
2047 yyparse.
2048 * c-parse.in: Move cleanup code to c_parse_file.
2049 (free_parser_stacks): Move contents to c_parse_file.
2050 (c_parse_file): New.
2051 * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
2052 for integer types.
2053 (C_DECL_FILE_SCOPE): New.
2054 (finish_file): Move prototype to c-common.h.
2055 (merge_translation_unit_decls): New prototype.
2056 (comptypes): Add extra parameter to prototype.
2057 (c_write_global_declarations): New prototype.
2058 * c-typeck.c (tagged_types_tu_compatible_p): New.
2059 (function_types_compatible_p): Add extra parameter, change all callers.
2060 (type_lists_compatible_p): Likewise.
2061 (comptypes): Likewise.
2062 (struct tagged_tu_seen): New.
2063 (tagged_tu_seen_base): New.
2064 (build_unary_op): Handle TRANSLATION_UNIT_DECL.
2065 (c_mark_addressable): Remove #if 0 code.
2066 * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
2067 comment explaining why it shouldn't have to.
2068 * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
2069 options.
2070 * cppinit.c (cpp_read_next_file): New.
2071 (cpp_read_main_file): Use it.
2072 * cpplib.c (undefine_macros): New.
2073 (cpp_undef_all): New.
2074 * cpplib.h (cpp_read_next_file): Prototype.
2075 (cpp_undef_all): Prototype.
2076 * langhooks-def.h (write_global_declarations): Remove prototype.
2077 * toplev.h (write_global_declarations): Add prototype.
2078 * tree.c (decl_type_context): Use switch statement, handle
2079 TRANSLATION_UNIT_DECL.
2080 * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
2081 (TRANSLATION_UNIT_DECL): New kind of tree.
2082 * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
2083 * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
2084 * doc/invoke.texi: Make attempt to document new functionality.
2085
2086 2003-05-19 Per Bothner <bothner@apple.com>
2087
2088 * gcc.c (combine_inputs): New.
2089 (process_command): Set combine_inputs.
2090 (do_spec_1): Handle combine_inputs.
2091 (main): Likewise.
2092
ac8354b1
JW
20932003-07-10 James E Wilson <wilson@tuliptree.org>
2094
2095 PR optimization/9745
2096 * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
2097 loop_insn_emit_before.
2098 (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
439f7bc3 2099
dea55da5
ZW
21002003-07-10 Zack Weinberg <zack@codesourcery.com>
2101
2102 * cppcharset.c: Fix comment.
2103 (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
2104 (EILSEQ): #define to EINVAL if not already defined.
2105 (convert_using_iconv): #if out when !HAVE_ICONV.
2106 (init_iconv_desc): Handle !HAVE_ICONV here...
2107 (cpp_init_iconv): ...not here.
2108
f3fdaec4
NB
21092003-07-11 Neil Booth <neil@daikokuya.co.uk>
2110
2111 * common.opt: More --help messages.
2112 * opts.c (print_help): Use puts().
2113 * toplev.c (f_options): Remove help text.
2114 (display_help): Don't dump f_options.
2115
7ebbf1ea
NN
21162003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
2117
2118 * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
2119 Move i?86-*-interix* to the don't-fix list.
2120 * fixinc/fixinc.interix: Delete with extreme prejudice.
2121
959a73a4
DH
21222003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
2123
2124 PR bootstrap/10758
2125 * doc/install.texi: Document requirements for ia64-*-hpux* target.
2126
9959901c
RS
21272003-07-10 Roger Sayle <roger@eyesopen.com>
2128
2129 * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
2130
6b88314c
ZW
21312003-07-10 Zack Weinberg <zack@codesourcery.com>
2132
2133 * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
2134 one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
2135 one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
2136 convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
2137 convert_no_conversion, convert_using_iconv): New functions.
2138 (APPLY_CONVERSION): New macro.
2139 (struct conversion, conversion_tab): New data structure.
2140 (init_iconv_desc): Check conversion_tab for a custom conversion
2141 primitive before trying to use iconv.
2142 (convert_cset): Deleted.
2143 (cpp_init_iconv): Use UTF- terminology, not UCS-.
2144 (_cpp_destroy_iconv): Update to match.
2145 (_cpp_valid_ucn): We don't need iconv to implement UCNs.
2146 (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
2147 (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
2148 (_cpp_interpret_string_notranslate): New function, moved here
2149 from cpplib.c.
2150
2151 * cpphash.h (convert_f, struct cset_converter): New types.
2152 (struct cpp_reader): narrow_cset_desc and wide_cset_desc
2153 are now struct cset_converter, not bare iconv_t.
2154 Update prototypes.
2155 * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
2156 all callers changed.
2157
38f4680f 21582003-07-10 Kelley Cook <kelleycook@wideopenwest.com>
6b88314c 2159
38f4680f
KC
2160 * Makefile.in (options.h): Depend on Makefile. Add move-if-change
2161 to opts.sh command line.
2162 * opts.sh: Write to temporary files with a move-if-change at the end.
2163
2a868fac 21642003-07-10 Denis Chertykov <denisc@overta.ru>
6b88314c 2165 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
9db367b4
DC
2166
2167 * combine.c (gen_binary): Handle the CLOBBER rtx and
2168 don't build a binary operation with it.
2169
3b14e3af
ZD
21702003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2171
2172 * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
2173 store_killed_after, store_killed_before): Keep track of the correct
2174 dependency function to use.
2175
a9189cc0
SB
21762003-07-10 Steven Bosscher <steven@gcc.gnu.org>
2177 * toplev.c (do_compile): Don't try to open dump files before
2178 lang_dependent_init initializes dump_base_name.
2179
e97a46ce
KG
21802003-07-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2181
2182 * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
2183 Use ARRAY_SIZE.
2184 * config/frv/frv.c (frv_expand_builtin): Likewise.
2185 * config/sh/sh.c (sh_media_init_builtins): Likewise.
2186
4a386498
MM
21872003-07-09 Mark Mitchell <mark@codesourcery.com>
2188
2189 PR c++/10032
2190 * doc/invoke.texi (C++ Dialect Options): Change documentation of
2191 -fpermissive.
2192
1e60c057
R
21932003-07-10 J"orn Rennecke <joern.rennecke@superh.com>
2194
2195 * tm.texi (RETURN_ADDR_OFFSET): Document.
2196
330d2e2a
NS
21972003-07-10 Nathan Sidwell <nathan@codesourcery.com>
2198
2199 * gcov-io.h: Update documentation.
2200 (GCOV_UNSIGNED2STRING): New.
2201 (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
2202 GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
2203 GCOV_TAG_SUMMARY_LENGTH): Adjust.
2204 (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
2205 GCOV_TAG_COUNTER_NUM): New.
2206 (GCOV_BLOCK_SIZE): Number of words.
2207 (gcov_var): Adjust buffer type.
2208 * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
2209 (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
2210 count, not byte count.
2211 (gcov_open): Adjust overread init.
2212 (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
2213 gcov_write_string, gcov_write_tag, gcov_write_length,
2214 gcov_write_tag_length): Adjust.
2215 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
2216 (gcov_sync, gcov_seek): Adjust.
2217 * gcov-dump.c (print_usage): Show gcc version only.
2218 (dump_file): Use GCOV_UNSIGNED2STRING.
2219 (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
2220 * gcov.c (print_version): Show gcc version only.
2221 (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
2222 GCOV_TAG_*_NUM macros.
2223 (read_count_file): Use GCOV_UNSIGNED2STRING. Use
2224 GCOV_TAG_COUNTER_LENGTH.
2225 * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
2226 Use GCOV_TAG_COUNTER_NUM.
2227 * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
2228 (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
2229
3dbb446e
AS
22302003-07-10 Andreas Schwab <schwab@suse.de>
2231
2232 * gcov-dump.c (dump_file): Fix missing address operator.
2233
11791dbc
KH
22342003-07-10 Kazu Hirata <kazu@cs.umass.edu>
2235
2236 PR c/11449
2237 * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
2238 of HOST_WIDE_INT.
2239 (fold_single_bit_test): If sign_bit_p() fails, assume that the
2240 bit being tested is not a sign bit.
2241
ae12c666
KH
22422003-07-10 Kazu Hirata <kazu@cs.umass.edu>
2243
2244 * config/h8300/h8300.md (a peephole2): New.
2245
2beef00e
AO
22462003-07-10 Alexandre Oliva <aoliva@redhat.com>
2247
2248 2001-12-13 Alexandre Oliva <aoliva@redhat.com>
2249 * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
2250 from ld-linux.so.2 to ld.so.1.
2251 2001-11-18 Alexandre Oliva <aoliva@redhat.com>
2252 * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
2253 * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
2254 nor -Wl,-rpath-link.
2255 (LIB_SPEC): Add -rpath-link if !static.
2256 2001-08-22 Alexandre Oliva <aoliva@redhat.com>
2257 * config/mn10300/mn10300.c (mn10300_protect_label): New
2258 variable.
2259 * config/mn10300/linux.h (PRINT_OPERAND,
2260 PRINT_OPERAND_ADDRESS): Set it during their execution.
2261 (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
2262 mn10300_protect_label is set.
2263 * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
2264 -Wl,-rpath-link.
2265 (LIB_SPEC, STARTFILE_SPEC): Define.
2266 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
2267 * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
2268 FLOAT_BIT_ORDER_MISMATCH.
2269 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
2270 * config.gcc (am33_2.0-*-linux*): Added.
2271 * config/mn10300/linux.h: New.
2272 * config/mn10300/t-linux: New.
2273
75040a04
AJ
22742003-07-10 Andreas Jaeger <aj@suse.de>
2275
2276 * fold-const.c: Properly wrap prototypes.
2277
d1776069
AO
22782003-07-09 Alexandre Oliva <aoliva@redhat.com>
2279
2280 2003-06-16 Alexandre Oliva <aoliva@redhat.com>
2281 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
2282 Moved from...
2283 * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
2284 * config/mn10300/mn10300.h: GTY-declare it.
2285 2003-06-11 Alexandre Oliva <aoliva@redhat.com>
2286 * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
2287 prototype. Use incoming RTL argument.
2288 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
2289 * config/mn10300/mn10300.md (int_label): Move C statements...
2290 (GOTaddr2picreg): ... here.
2291 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
2292 * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
2293 * config/mn10300/mn10300.c (mn10300_encode_section_info):
2294 ... here. New function.
2295 (TARGET_ENCODE_SECTION_INFO): Define to it.
2296 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
2297 * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
2298 pattern name.
2299 (mn10300_loadPC): Define as insn splittable after reload.
2300 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
2301 * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
2302 be defined in .rodata even in PIC, now that the assembler
2303 supports that.
2304 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
2305 * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
2306 symbol take an underscore prefix.
2307 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
2308 * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
2309 legitimize_pic_address): Declare.
2310 * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
2311 the PIC register as fixed.
2312 (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
2313 (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
2314 PIC.
2315 (LEGITIMATE_PIC_OPERAND_P): Define.
2316 (PIC_OFFSET_TABLE_REGNUM): Define.
2317 (GOT_SYMBOL_NAME): Define.
2318 (SYMBOLIC_CONST_P): Define.
2319 (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
2320 symbols.
2321 (MN10300_GLOBAL_P): Test it.
2322 (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
2323 (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
2324 * config/mn10300/mn10300.c (print_operand): Handle unspec.
2325 (expand_prologue): Set PIC register.
2326 (call_address_operand): Don't match SYMBOL_REFs in PIC.
2327 (legitimize_address): Call legitimize_pic_address.
2328 (legitimize_pic_address): New fn.
2329 (legitimate_pic_operand_p): New fn.
2330 * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
2331 (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
2332 UNSPEC_PLT): New constants.
2333 (pop_pic_reg): New insn.
2334 (movsi): Adjust non-PIC addresses.
2335 (builtin_setjmp_receiver): Restore the PIC register.
2336 (casesi): New insn.
2337 (call): Adjust non-PIC addresses.
2338 (int_label, GOTaddr2picreg): New expands.
2339 (am33_loadPC): New insn.
2340 (mn10300_loadPC): New expand.
2341 (call_next_insn): New insn.
2342 (add_GOT_to_pic_reg): New expand.
2343 (symGOT2reg, symGOT2reg_i): New expands.
2344 (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
2345 (sym2PIC, sym2PLT): New expands.
2346
18e9d2f9
AO
23472003-07-09 Alexandre Oliva <aoliva@redhat.com>
2348
2349 * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
2350 2001-05-01 Alexandre Oliva <aoliva@redhat.com>
2351 * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
2352 to flag_unsafe_math_optimizations.
2353 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
2354 * config/mn10300/mn10300.c (expand_prologue): Mark
2355 FP-register-saving insns as frame-related.
2356 2001-02-13 Alexandre Oliva <aoliva@redhat.com>
2357 * config/mn10300/mn10300.c
2358 (mn10300_get_live_callee_saved_regs): Don't search past
2359 LAST_EXTENDED_REGNUM.
2360 (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
2361 * config/mn10300/mn10300.md: Remove excessive line breaks from
2362 `@' output patterns that were accounted as additional
2363 alternatives.
2364 * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
2365 Re-introduce changes accidentally removed in Richard Sandiford's
2366 2000-12-05's patch.
2367 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
2368 Re-instate am33-2 lost in merge from net GCC.
2369 2000-08-26 Alexandre Oliva <aoliva@redhat.com>
2370 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
2371 floating-point registers.
2372 2000-08-07 Alexandre Oliva <aoliva@redhat.com>
2373 * config/mn10300/mn10300.md (movdf): Revert some am33-specific
2374 pessimizations that had gone in on 2000-05-08.
2375 2000-06-28 Graham Stott <grahams@cygnus.co.uk>
2376 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
2377 2000-06-22 Graham Stott <grahams@cygnus.co.uk>
2378 * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
2379 operand 0.
2380 * (movhi): Likewise.
2381 * (movsi): Likewise.
2382 * (movsf): Likewise.
2383 * (movdi): Likewise.
2384 * (movdf): Likewise.
2385 Wed May 24 13:16:09 2000 Alexandre Oliva <aoliva@cygnus.com>
2386 * config/mn10300/mn10300.c (fp_regs_to_save): New function.
2387 (can_use_return_insn, initial_offset): Add fp_regs_to_save.
2388 (expand_prologue, expand_epilogue): Save and restore FP regs.
2389 2000-05-20 Alexandre Oliva <aoliva@cygnus.com>
2390 * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
2391 2000-05-13 Alexandre Oliva <aoliva@cygnus.com>
2392 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
2393 subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
2394 Do not clobber cc0.
2395 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
2396 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
2397 Discourage the two-argument, longer opcodes.
2398 (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
2399 ones.
2400 * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
2401 (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
2402 * config/mn10300/mn10300.md (cmpsf): New pattern.
2403 (branch): Test mdep.fpCC and output fbCC.
2404 * config/mn10300/mn10300.c (print_operand): Output conditions.
2405 (notice_cc_update): Recognize fcmp and set mdep.fpCC.
2406 2000-05-10 Alexandre Oliva <aoliva@cygnus.com>
2407 * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
2408 mulsf3, divsf3): Use the `F' constraint for FP values.
2409 * config/mn10300/mn10300.c (const_1f_operand): New function.
2410 * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
2411 * config/mn10300/mn10300.md (sqrtsf2): New expand.
2412 (rsqrtsf2): New insn.
2413 2000-05-09 Alexandre Oliva <aoliva@cygnus.com>
2414 * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
2415 previous check-in.
2416 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
2417 * config/mn10300/mn10300.md (abssf2, negdf2): On
2418 TARGET_AM33_2, expand to...
2419 (abssf2_am33_2, negdf2_am33_2): New insns.
2420 (addsf3, subsf3, mulsf3, divsf3): Likewise.
2421 (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
2422 * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
2423 movdi, movdf): Added FP regs.
2424 * invoke.texi (-mam33-2, -mno-am33-2): Document.
2425 2000-04-29 Alexandre Oliva <aoliva@cygnus.com>
2426 * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
2427 New macros.
2428 (REGNO_AM33_2_FP_P): Renamed to...
2429 (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
2430 (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
2431 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
2432 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
2433 regs from GENERAL_REGS.
2434 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
2435 * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
2436 * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
2437 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
2438 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
2439 * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
2440 as FP_REGS.
2441 2000-04-21 Alexandre Oliva <aoliva@cygnus.com>
2442 * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
2443 (EXTRA_CONSTRAINT): Added OK_FOR_Q.
2444 * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
2445 * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
2446 * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
2447 (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
2448 AM33/2.0 floating-point registers.
2449 (CONDITIONAL_REGISTER_USAGE): Adjust.
2450 (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
2451 (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
2452 (REG_CLASS_FROM_LETTER): Added `f' and `A'.
2453 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
2454 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
2455 (MULTILIB_DIRNAMES): Likewise.
2456 * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
2457 `__AM33_2__' when `-mam33-2' is given.
2458 (TARGET_AM33_2): Define.
2459 (TARGET_SWITCHES): Adjust.
2460 * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
2461 when appropriate.
2462
2ff16718
MK
24632003-07-09 Matt Kraai <kraai@alumni.cmu.edu>
2464
2465 * doc/install.texi: Add missing @.
2466
a7bda3d5
BW
24672003-07-09 Bob Wilson <bob.wilson@acm.org>
2468
2469 * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
2470
bb498ea3
AH
24712003-07-09 Aldy Hernandez <aldyh@redhat.com>
2472
2473 PR/11144
2474 * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
2475
a401fd60
NN
24762003-07-09 Nathanael Nerode <neroden@gcc.gnu.org>
2477
21f3dbfc 2478 PR bootstrap/11043
6b88314c 2479 * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
21f3dbfc
NN
2480 "x-crtfini.o" with "crtinit.o", "crtfini.o".
2481
15e4ea18
NN
2482 * fixinc/inclhack.def (limits_ifndefs): Add select test.
2483 * fixinc/fixincl.x: Rebuild.
2484
a401fd60
NN
2485 * fixinc/inclhack.def (math_exception): Improve bypass and comment.
2486 * fixinc/fixincl.x: Rebuild.
2487
c2f82a84
HPN
24882003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
2489
2490 * doc/install.texi (Configuration): Document the valgrind option
2491 to --enable-checking.
2492
1f66e2a0
JH
2493Wed Jul 9 16:16:30 CEST 2003 Jan Hubicka <jh@suse.cz>
2494
2495 * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
2496
d0974745
RO
24972003-07-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2498
2499 * c-lex.c (cb_ident): Cast cstr.text to const char *.
2500
160e2e4f
NS
25012003-07-09 Nathan Sidwell <nathan@codesourcery.com>
2502
2503 * gcov-io.h: Update documentation.
2504 (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
2505 GCOV_NOTE_MAGIC.
2506 (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
2507 (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
2508 (struct gcov_var): Change buffer's type. Add endian flag.
2509 (gcov_open): Remove mode in libgcov.
2510 (gcov_magic): Prototype.
2511 * gcov-io.c (from_file): New.
2512 (gcov_open): Clear endian flag.
2513 (gcov_magic): New.
2514 (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
2515 pointers.
2516 (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
2517 gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
2518 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
2519 * gcov-iov.c (main): Correct cast.
2520 * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
2521 conversion.
2522 (gcov_begin_output): Use GCOV_NOTE_MAGIC.
2523 (coverage_init): Use GCOV_NOTE_SUFFIX.
2524 * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
2525 Rename to gcov_version, and return flag.
2526 (gcov_exit): Use gcov_version.
2527 (__gcov_init): Use gcov_version.
2528 * Makefile.in (coverageexts): Update.
2529 * gcov.c (print_version): Remove endianness conversion.
2530 (create_file_names): Use GCOV_NOTE_SUFFIX.
2531 (read_graph_file): Use gcov_magic.
2532 (read_count_file): Likewise.
2533 * gcov-dump.c (dump_file): Remove endianness conversion, use
2534 gcov_magic.
2535
83599948
NS
25362003-07-09 Nathan Sidwell <nathan@codesourcery.com>
2537
2538 * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
2539 coverage is on.
2540 * configure: Regenerated.
2541 * Makefile.in (ALL_CFLAGS): Correct its comment.
2542
d17811fd
MM
25432003-07-08 Mark Mitchell <mark@codesourcery.com>
2544
2545 * fold-const.c (make_range): Do not access operand 1 for a
2546 zero-operand operator.
2547
28786366
NB
25482003-07-09 Neil Booth <neil@daikokuya.co.uk>
2549
2550 * toplev.c (warn_dummy, W_options): Die.
2551 (display_help): Don't print W_options.
2552 * common.opt: Add W_options help from toplev.c.
2553
fbdb0453
AJ
25542003-07-09 Andreas Jaeger <aj@suse.de>
2555
2556 * opts.c (wrap_help): Only pass int arguments as arguments to
2557 printf's '*' modifier. Change argument of function.
2558
c80e4c17
MK
25592003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
2560
2561 * doc/invoke.texi: Fix misspelling of "@item".
2562
2c5a64c6
KH
25632003-07-08 Kazu Hirata <kazu@cs.umass.edu>
2564
2565 * config/i386/i386.md: Remove an old comment about
2566 NOTICE_UPDATE_CC.
2567
a194aa56
JH
2568Wed Jul 9 03:00:10 CEST 2003 Jan Hubicka <jh@suse.cz>
2569
2570 * cgraph.c (cgraph_node_name): New function.
2571 (dump_cgraph): Use it.
2572 * cgraph.h (cgraph_dump_file): Declare.
2573 (cgraph_node_name): Declare.
2574 * cgraphunit.c: Include timevar.h
2575 (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
2576 (cgraph_optimize_function): Use TV_INTEGRATION.
2577 (cgraph_mark_local_functions): reorganize dumps.
2578 (cgraph_mark_functions_to_inline_once): Likewise.
2579 (cgraph_optimize): Likewise; use timevar.
2580 * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
2581 * toplev.c (dump_file_index): Add DFI_cgraph.
2582 (dump_file_info): Likewise.
2583 (cgraph_dump_file): New global variable.
2584 (do_compile): Open and close cgraph dump.
2585 * invoke.texi (-d): Document new flag; renumber.
2586
8af61113
RS
25872003-07-08 Roger Sayle <roger@eyesopen.com>
2588
2589 PR c/11370
2590 * calls.c (emit_call_1): Don't bother popping the arguments off of
2591 the stack after a noreturn function call; The adjustment is dead.
2592 (expand_call): Likewise.
2593
436bcda1
GK
25942003-07-08 Geoffrey Keating <geoffk@apple.com>
2595
2596 * expr.c (MOVE_MAX_PIECES): Move from here...
2597 * defaults.h (MOVE_MAX_PIECES): ... to here.
2598
6f3fcc0b
MK
25992003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
2600
2601 * Makefile.in (stage1-start): Handle an empty SUBDIRS.
2602
ec049fdb
KG
26032003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2604
2605 * genattr.c (internal_dfa_insn_code): Don't prototype.
2606 * genattrtab.c (attr_desc): Add `static_p' field.
2607 (expand_units): Make blockage range and ready cost functions
2608 static.
2609 (write_attr_get): Don't add extern prototypes in C file. Mark
2610 static functions as appropriate.
2611 (find_attr, make_internal_attr): Initialize static_p.
2612 * genattrtab.h (ATTR_STATIC): New macro.
2613 * genautomata.c (output_internal_reset_func): Mark output function
2614 as inline.
2615 (make_internal_dfa_insn_code_attr): Mark output function as static.
2616
11597bc9
KG
26172003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2618
2619 * genattrtab.h: Add new macros for attr `special' flags.
2620 * genattrtab.c (attr_desc): Reorder/resize fields better.
2621 Use attr `special' macros in all calls to make_internal_attr.
2622 * genautomata.c: Likewise.
2623
084c1779
JH
2624Wed Jul 9 02:25:39 CEST 2003 Jan Hubicka <jh@suse.cz>
2625
2626 * c-common.c (c_estimate_num_insns_1): New static function.
2627 (c_estimate_num_insns): New global function.
2628 * c-common.h (DECL_NUM_STMTS): Rename to...
2629 (DECL_ESTIMATED_INSNS): ... this.
2630 (c_estimate_num_insns): Declare.
2631 * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
2632 * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
2633 * c-semantics.c (add_stmt): Do not account statements.
2634 * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
2635 New.
2636 * langhooks.h (lang_hooks_for_tree_inlining): Add
2637 estimate_num_insns
2638 * params.def (max-inline-insns-auto, max-inline-insns-auto): set
2639 to 100.
2640 (max-inline-insns): set to 300.
2641 (min-inline-insns): set to 10.
2642 * tree-inline.c (struct inline_data): Rename inlined_stmts to
2643 inlined-insns.
2644 (INSNS_PER_STMT): Kill.
2645 (inlinable_function_p): Compute and store body size.
2646 (expand_call_inline): Likewise.
2647 (optimize_inline_calls): Likewise.
2648
1b1838b6
JW
26492003-07-08 James E Wilson <wilson@tuliptree.org>
2650
2651 PR target/10021
2652 * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
2653 loop over new variable t2 instead of t.
2654
81a6341d
DS
26552003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
2656
2657 PR bootstrap/11455
2658 * config/i386/winnt.c: Replace use of error(), warning() with
2659 error_with_decl(), warning_with_decl(), throughout.
2660
21789816
NB
26612003-07-08 Neil Booth <neil@daikokuya.co.uk>
2662
2663 * opts.c (wrap_help): Use unsigned int, not size_t.
2664
f6423302
SC
26652003-07-08 Stephane Carrez <stcarrez@nerim.fr>
2666
2667 * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
2668 as .file/.loc directives are incompatible with linker relaxation.
2669
ab747408
ZW
26702003-07-08 Zack Weinberg <zack@codesourcery.com>
2671
2672 * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
2673 * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
2674 * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
2675 * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
2676 * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
2677 * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
2678 Escape { and } characters which are not part of range expressions.
2679 * fixinc/fixincl.x: Regenerate.
a27531fb 2680 * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
ab747408 2681
51657442
SB
26822003-07-08 Steven Bosscher <steven@gcc.gnu.org>
2683
2684 PR c/1687
2685 * tree-inline.c (find_alloca_call): Use
2686 walk_tree_without_duplicates, instead of walk_tree.
2687 (find_builtin_longjmp_call): Likewise.
2688 * c-objc-common.c (c_cannot_inline_fn): Likewise.
2689 * c-semantics.c (find_reachable_label): Likewise.
2690
7e6dc358
JJ
26912003-07-08 Jakub Jelinek <jakub@redhat.com>
2692
2693 PR c/11420
2694 * config/i386/i386.c (ix86_check_movabs): New function.
2695 * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
2696 * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
2697 (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
2698
318b7749
CD
26992003-07-08 Chris Demetriou <cgd@broadcom.com>
2700
2701 * Makefile.in (install-po): Cope with empty CATALOGS.
2702
b8898790
RS
27032003-07-08 Richard Sandiford <rsandifo@redhat.com>
2704
2705 * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
2706 (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
2707 (SECTION_FUNCTION_TEMPLATE): Delete.
2708 * config/mips/elf.h: As for elf64.h.
2709 (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
2710 * config/mips/linux.h: As for elf.h
2711 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
2712 * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
2713 (EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
2714 of in_sdata from current_section_name and current_section_flags.
2715 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
2716 * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
2717 (MASK_GP_OPT, TARGET_GP_OPT): Delete.
2718 (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
2719 (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
2720 (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
2721 * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
2722 (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
2723 (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
2724 (override_options): Remove setting of MASK_GPOPT.
2725 (mips_output_external): Use mips_in_small_data_p to check whether a
2726 symbol needs an .extern directive. Don't emit such directives for
2727 TARGET_EXPLICIT_RELOCS.
2728 (mips_declare_object): Update accordingly.
2729 (mips_select_rtx_section): Call named_section rather than
2730 SMALL_DATA_SECTION.
2731 (mips_select_section): Use default_elf_section_section for everything
2732 except .text string constants.
2733 (mips_in_small_data_p): New function.
2734 (mips_encode_section_info): Remove small data handling.
2735 (mips_unique_section): Delete.
2736 (iris6_section_type_flags): New function.
2737 * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
2738
f5d1c3de
JDA
27392003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2740
2741 PR Target/11453
2742 * pa.md: Disparage all mtsar constraints.
2743 (extzv, extv, insv): Don't fail on length of {32|64}.
2744
ce1bb65b
ZW
27452003-07-08 Zack Weinberg <zack@codesourcery.com>
2746
2747 * system.h: Poison MAP_CHARACTER.
2748 * config/i370/i370-protos.h (mvs_map_char): Delete.
2749 * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
2750 * config/i370/i370.h (MAP_CHARACTER): Delete definition.
2751 (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
2752
c163ddca
DS
27532003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
2754
2755 * toplev.c (randomize): Correct call to time().
2756
8df63efa
JJ
27572003-07-08 Jakub Jelinek <jakub@redhat.com>
2758
2759 * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
2760 REG_EQUIV notes as well.
2761
4b5cc2b3
KH
27622003-07-08 Kazu Hirata <kazu@cs.umass.edu>
2763
2764 * doc/md.texi: Fix the description of addmodecc.
2765
56694dd9
ZW
27662003-07-07 Zack Weinberg <zack@codesourcery.com>
2767
2768 * Makefile.in (top_builddir): Set to "..", not ".".
2769 (INTLLIBS, INTLDEPS): Delete.
2770 (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
2771 (LIBDEPS): Add $(LIBICONV_DEP).
2772 (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
2773 (INCLUDES): Replace -I../intl with @INCINTL@.
2774 ($(top_builddir)/intl/libintl.a): Delete rule.
2775 (stage2-start, stage3-start, stage4-start, stageprofile-start,
2776 stagefeedback-start): Use $$ for variable to be evaluated by
2777 shell, not make.
2778 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
2779 HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
2780 * aclocal.m4: sinclude ../config/progtest.m4. Add
2781 contents of lcmessage.m4 from gettext distro.
2782 * configure.in: Check for wchar.h and setlocale. Set
2783 LIBICONV_DEP to the empty string and substitute it.
2784 Call AM_LC_MESSAGES. Delete AC_ARG_ENABLE for --enable-nls;
2785 this is handled elsewhere. Use ZW_GNU_GETTEXT_SISTER_DIR,
2786 not CY_GNU_GETTEXT. Clear $LIBICONV if its text is included
2787 in $LIBINTL, to avoid linking it twice.
2788 * configure, config.in: Regenerate.
2789
a294c4cf
NN
27902003-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
2791
2792 * fixinc/mkfixinc.sh: Remove winnt support.
2793 * fixinc/fixinc.winnt: Delete with extreme prejudice.
2794
979312a4
NB
27952003-07-08 Neil Booth <neil@daikokuya.co.uk>
2796
2797 * Makefile.in: Update.
2798 * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
2799 * c.opt: Update documentation.
2800 * common.opt: Add some help text.
2801 * opts.c: Include intl.h.
2802 (wrap_help, print_help): New.
2803 (find_opt, handle_option, common_handle_option): opt_text now
2804 contains the '-'. Use print_help to output help.
2805 * opts.h (struct cl_option): New member "help".
2806 * opts.sh: Update to handle help text output and to prepend
2807 options with '-'.
2808 * toplev.c (display_help): Remove some help text.
2809
2c4a9cff
DE
28102003-07-07 David Edelsohn <edelsohn@gnu.org>
2811 Fariborz Jahanian <fjahanian@apple.com>
2812
2813 * configure.in: Test for PowerPC mfcr field support in assembler.
2814 * config.in, configure: Regenderated.
2815
2816 * config/rs6000/power4.md: Add mfcrf reservation.
2817 * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
2818 * config/rs6000/rs6000.c (mfcr_operation): Define.
2819 (print_operand): Add 'Q' case for mfcrf.
2820 * config/rs6000/rs6000.h (TARGET_MFCRF): New.
2821 * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
2822 (movcc_internal1): Emit optional field operand for mfcr and set
2823 "type" attribute appropriately.
2824 (mfcr SCC): Likewise.
2825 (movesi_from_cr_one): New.
2826
923c4cf2
RS
28272003-07-07 Roger Sayle <roger@eyesopen.com>
2828
2829 * config/i386/i386.md: Correct check-in of incorrect version.
2830
75b6f3fd
KG
28312003-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2832
2833 * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
2834 adjacent stdio calls.
2835 * c-decl.c (c_print_identifier): Likewise.
2836 * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
2837 * print-rtl.c (print_rtx): Likewise.
2838 * print-tree.c (print_node_brief, print_node): Likewise.
2839 * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
56694dd9 2840
75b6f3fd
KG
2841 * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
2842 * config.in, configure: Regenerated.
2843
afeeac3f
RS
28442003-07-07 Roger Sayle <roger@eyesopen.com>
2845
2846 PR target/10979
2847 * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
2848 Changed to define_expand patterns that copy operand[1] to prevent
2849 it from being clobbered before emitting an atan2?f3_1 insn.
2850 (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
2851 patterns that actually specify the behaviour of x87's FPATAN.
2852
eeff9307
JJ
28532003-07-07 Jakub Jelinek <jakub@redhat.com>
2854
2855 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
2856 clearing of SYMBOL_FLAG_LOCAL bit.
2857 If vcall_offset fits into signed 16-bit immediate, use
2858 one instruction for both addition and load.
2859
0fcd5dda
NB
28602003-07-07 Neil Booth <neil@daikokuya.co.uk>
2861
2862 * opts.c (common_handle_option): Correct handling of the
2863 -falign- switches that do and don't take an argument.
2864
b275810a
KH
28652003-07-07 Kazu Hirata <kazu@cs.umass.edu>
2866
2867 * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
2868 today.
2869 (pushhi1_h8300hs): Likewise.
2870
5671bf27
AJ
28712003-07-07 Andreas Jaeger <aj@suse.de>
2872
2873 * genextract.c: Convert remaining prototypes to ISO C90.
2874
2875 * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
2876 * fold-const.c (fold_single_bit_test): Likewise.
2877 * diagnostic.c (default_diagnostic_finalizer): Likewise.
2878 * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
2879
2880 * gengtype.c (write_array): Generate ISO C90 prototypes.
2881
2882 * genflags.c (gen_proto): Generate ISO C90 prototypes.
2883
2c430630
RS
28842003-07-07 Roger Sayle <roger@eyesopen.com>
2885
2886 PR optimization/11059
2887 * expr.c (can_store_by_pieces): Return true if length is zero.
2888 (store_by_pieces): If length is zero and endp is two, abort,
2889 othwerise, if length is zero and endp is not two, return "to".
2890 (clear_by_pieces): Do nothing if length is zero.
2891 (clear_storage): Do nothing if length is zero.
2892 (store_constructor): Simplify code when size is zero, or the
2893 target has already been cleared. This avoids emitting a
2894 blockage instruction when initializing empty structures.
2895
cf633f5b
AJ
28962003-07-07 Andreas Jaeger <aj@suse.de>
2897
2898 * mips-tfile.c: Convert prototypes to ISO C90.
2899 * mips-tdump.c: Convert prototypes to ISO C90.
2900
0cea056b
NS
29012003-07-07 Nathan Sidwell <nathan@codesourcery.com>
2902
2903 * rtl.h (emit_line_note): Take a location_t.
2904 (emit_line_note_force): Remove.
2905 (set_file_and_line_for_statement): Take a location_t.
2906 * tree.g (emit_line_note): Take a location_t.
2907 * emit-rtl.c (emit_line_note): Take a location_t.
2908 (emit_line_note_force): Remove.
2909 * function.c (init_function_start): Adjust emit_line_note call.
2910 (expand_function_end): Use force_next_line_note, not
2911 emit_line_note_force.
2912 * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
2913 * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
2914 genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
2915 genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
2916 genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
2917 genrtl_continue_stmt, genrtl_switch_stmt,
2918 genrtl_asm_stmt): Likewise.
2919 * expr.c (expand_expr): Likewise.
2920 * integrate.c (expand_inline_function): Likewise.
2921 * stmt.c (set_file_and_line_for_stmt): Take a location_t.
2922 (expand_decl_init): Adjust emit_line_note call.
2923
8eb910fc
DJ
29242003-07-07 Dale Johannesen <dalej@apple.com>
2925
56694dd9 2926 * config/rs6000/darwin-tramp.asm: Fix trampolines. PR 10900.
8eb910fc 2927
b96a374d
AJ
29282003-07-07 Andreas Jaeger <aj@suse.de>
2929
2930 * config/i386/i386-protos.h: Convert prototypes to ISO C90.
2931 * config/i386/i386.c: Likewise.
2932
273fc01e
KH
29332003-07-07 Kazu Hirata <kazu@cs.umass.edu>
2934
2935 * config/h8300/h8300.md: Use gen_int_mode instead of
2936 GEN_INT (trunc_int_for_mode (...)).
2937
fb7d7712
KH
29382003-07-07 Kazu Hirata <kazu@cs.umass.edu>
2939
2940 * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
2941 2 bytes and then subtract 2 from the stack pointer.
2942 (pushhi1_h8300hs): Likewise.
2943
e61a2eb7
NS
29442003-07-07 Nathan Sidwell <nathan@codesourcery.com>
2945
2946 * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
2947 -frandom-seed.
2948 * configure: Regenerated.
2949 * Makefile.in: Remove extraneous comment.
2950 * toplev.c (randomize): Protect against potential multiple calls.
2951 * doc/invoke.texi (-frandom-seed): Document use for in coverage
2952 files.
2953
82d610ec 29542003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
56694dd9 2955 Eric Botcazou <ebotcazou@libertysurf.fr>
82d610ec
RK
2956
2957 PR optimization/11198
2958 * alias.c (objects_must_conflict_p): Return 1 if the types have
2959 the same alias set, not if the alias sets only conflict.
2960
5beadb33
AP
29612003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
2962
2963 * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
2964 (convert_cset): Change inbuf to type ICONV_CONST char.
2965 * Makefile.in (LIBS): Add LIBICONV.
2966
9bb34f3c
AJ
2967 * doc/invoke.texi (-falign-functions): Document that
2968 when n is zero then a machine-dependent default is used.
2969 (-falign-labels): Document that when n is zero then a
2970 machine-dependent default is used and that -falign-labels =1
2971 is equivalent to -fno-align-labels.
2972 (-falign-loops): Likewise.
2973 (-falign-jumps): Likewise.
2974
1dbb6ce8
AH
29752003-07-06 Art Haas <ahaas@airmail.net>
2976
2977 * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
2978 initializer syntax.
2979
8338d44d
JW
29802003-07-06 James E Wilson <wilson@tuliptree.org>
2981
2982 PR optimization/9812
2983 * rtl.h (mem_for_const_double): Delete prototype.
2984 * varasm.c (mem_for_const_double): Delete function.
2985 * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
2986 config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
2987 (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
2988 * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
2989 (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
2990 * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add
2991 comment about confused support for XFmode constants.
2992
9efd34a5
JH
2993Mon Jul 7 02:03:56 CEST 2003 Jan Hubicka <jh@suse.cz>
2994
2995 * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
2996
2a43945f
KH
29972003-07-06 Kazu Hirata <kazu@cs.umass.edu>
2998
2999 * config/h8300/h8300.c: Fix comment typos.
3000 * config/h8300/h8300.md: Likewise.
3001 * config/i386/athlon.md: Likewise.
3002 * config/i386/i386.c: Likewise.
3003 * config/i386/pentium.md: Likewise.
3004 * config/ia64/ia64.c: Likewise.
3005 * config/ia64/itanium1.md: Likewise.
3006 * config/ia64/itanium2.md: Likewise.
3007 * config/m32r/m32r.md: Likewise.
3008 * config/m68hc11/m68hc11.c: Likewise.
3009 * config/mcore/mcore.c: Likewise.
3010 * config/mips/sr71k.md: Likewise.
3011 * config/mips/t-iris5-as: Likewise.
3012 * config/mmix/mmix.h: Likewise.
3013 * config/ns32k/ns32k.h: Likewise.
3014 * config/ns32k/NOTES: Fix a typo.
3015
ceee09f7
AJ
30162003-07-06 Andreas Jaeger <aj@suse.de>
3017
7e51717c
AJ
3018 * stmt.c: Convert remaining prototypes to ISO C90.
3019 * cfglayout.c: Likewise.
3020 * dbxout.c: Likewise.
3021 * gcc.c: Likewise.
3022 * genemit.c: Likewise.
3023
ceee09f7
AJ
3024 * basic-block.h: Convert prototypes to ISO C90.
3025 * c-parse.in: Likewise.
3026 * c-pragma.h: Likewise.
3027 * c-typeck.c: Likewise.
3028 * cfghooks.h: Likewise.
3029 * cfgloopanal.c: Likewise.
3030 * dbxout.h: Likewise.
3031 * debug.h: Likewise.
3032 * dwarf2asm.h: Likewise.
3033 * gcov.c: Likewise.
3034 * gengtype-lex.l: Likewise.
3035 * sched-int.h: Likewise.
3036 * timevar.c: Likewise.
3037
cb66e385
NB
30382003-07-06 Neil Booth <neil@daikokuya.co.uk>
3039
3040 * c-common.h (c_comon_handle_filename,
3041 c_common_missing_arguement): New.
3042 * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
3043 LANG_HOOKS_MISSING_ARGUMENT): New.
3044 * c-opts.c (missing_arg): Rename c_common_missing_argument,
3045 update to be an appropriate langhook.
3046 (c_common_handle_option): Don't handle filenames.
3047 (c_common_handle_filename): New.
3048 * hooks.c (hook_void_constcharptr,
3049 hook_bool_constcharptr_size_t_false): New.
3050 * hooks.h (hook_void_constcharptr,
3051 hook_bool_constcharptr_size_t_false): New.
3052 * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
3053 LANG_HOOKS_MISSING_ARGUMENT): New.
3054 (LANG_HOOKS_INITIALIZER): Update.
3055 * langhooks.h (struct lang_hooks): Add handle_filename and
3056 missing_argument.
3057 * opts.c (handle_option): Don't handle filenames here, but ...
3058 (handle_options): ... here.
3059 (common_handle_option): Don't handle missing arguments here.
3060 * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
3061 LANG_HOOKS_MISSING_ARGUMENT): New.
3062
ade4289c
NB
30632003-07-06 Neil Booth <neil@daikokuya.co.uk>
3064
3065 * Makfile.in: Remove traces of mbchar.
3066 * c-parse.in (MULTIBYTE_CHARS): Remove.
3067 * config.in (MULTIBYTE_CHARS): Remove.
3068 * configure: Remove --enable-mbchar.
3069 * configure.in: Remove --enable-mbchar.
3070 * mbchar.c, mbchar.h: Remove.
3071 * system.h: Poison MULTIBYTE_CHARS.
3072 * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
3073 * config/linux.h (MULTIBYTE_CHARS): Remove.
3074 * config/svr4.h (MULTIBYTE_CHARS): Remove.
3075 * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
3076
2e1eedd6
AJ
30772003-07-06 Andreas Jaeger <aj@suse.de>
3078
11dc5cc6
AJ
3079 * varray.c (varray_check_failed): Fix typo.
3080
3081 * unroll.c: Convert prototypes to ISO C90.
2e1eedd6
AJ
3082 * varasm.c: Likewise.
3083 * varray.c: Likewise.
3084 * varray.h: Likewise.
3085 * vmsdbgout.c: Likewise.
3086 * xcoffout.c: Likewise.
3087 * xcoffout.h: Likewise.
3088
dd486eb2
NS
30892003-07-06 Nathan Sidwell <nathan@codesourcery.com>
3090
3091 * gcov-io.h: Add a local time stamp.
3092 (struct gcov_info): Add stamp field.
3093 (gcov_truncate): New.
3094 * coverage.c (read_counts_file): Skip the stamp.
3095 (coverage_begin_output): Write the stamp.
3096 (build_gcov_info): Declare and init the stamp.
3097 (coverage_finish): Only unlink data file, if stamp is zero.
3098 * gcov-dump.c (dump_file): Dump the stamp.
3099 * gcov.c (bbg_stamp): New.
3100 (release_structures): Clear bbg_stamp.
3101 (read_graph_file): Read stamp.
3102 (read_count_file): Check stamp.
3103 * libgcov.c (gcov_exit): Check stamp and truncate if needed.
3104
c07e5477
NS
31052003-07-06 Nathan Sidwell <nathan@codesourcery.com>
3106
3107 * tree.h (default_flag_random_seed): Remove.
3108 * toplev.h (local_tick): Declare.
3109 * tree.c (flag_random_seed, default_flag_random_seed): Move to
3110 toplev.c.
3111 (append_random_chars): Don't call default_flag_random_seed.
3112 * toplev.c (flag_random_seed): Define here. Set local_tick.
3113 (local_tick): Define.
3114 (randomize): New, moved from tree.c.
3115 (print_switch_values): Adjust.
3116 (toplev_main): Call randomize.
3117
2aab7ceb
NS
31182003-07-06 Nathan Sidwell <nathan@codesourcery.com>
3119
3120 * tree.h (crc32_string): Declare.
3121 * tree.c (append_random_chars): Remove.
3122 (crc32_string): New.
3123 (get_file_function_name_long): Use crc32_string here.
3124
1d088dee
AJ
31252003-07-06 Andreas Jaeger <aj@suse.de>
3126
3127 * gcc.c: Convert prototypes to ISO C90.
3128 * gcc.h: Likewise.
3129 * gcov-dump.c: Likewise.
3130 * gcov-iov.c: Likewise.
3131 * gcse.c: Likewise.
3132 * genattrtab.h: Likewise.
3133 * ggc.h: Likewise.
3134 * global.c: Likewise.
3135 * graph.c: Likewise.
3136 * graph.h: Likewise.
3137 * hosthooks.h: Likewise.
3138 * hooks.h: Likewise.
3139 * hooks.c: Likewise.
3140 * hashtable.h: Likewise.
3141 * hashtable.c: Likewise.
3142 * haifa-sched.c: Likewise.
3143 * integrate.h: Likewise.
3144 * integrate.c: Likewise.
3145 * input.h: Likewise.
3146 * ifcvt.c: Likewise.
f8ec47c7 3147 * jump.c: Likewise.
0c20a65f
AJ
3148 * langhooks-def.h: Likewise. Add extern to prototypes.
3149 * langhooks.c: Likewise.
3150 * langhooks.h: Likewise.
3151 * lcm.c: Likewise.
3152 * local-alloc.c: Likewise.
3153 * loop-init.c: Likewise.
3154 * loop-unroll.c: Likewise.
3155 * loop-unswitch.c: Likewise.
3156 * loop.c: Likewise.
3157 * loop.h: Likewise. Add extern to prototypes.
3158 * machmode.h: Likewise.
3159 * main.c: Likewise.
3160 * mbchar.c: Likewise.
3161 * mbchar.h: Likewise.
3162 * mkdeps.c: Likewise.
3163 * mkdeps.h: Likewise.
3164 * optabs.c: Likewise.
3165 * optabs.h: Likewise.
3166 * output.h: Likewise.
3167 * gccspec.c: Likwise.
3168 * postreload.c: Likewise.
3169 * prefix.c: Likewise.
3170 * prefix.h: Likewise.
3171 * print-rtl.c: Likewise.
3172 * print-tree.c: Likewise.
3173 * profile.c: Likewise.
3174 * read-rtl.c: Likewise.
3175 * real.c: Likewise.
3176 * real.h: Likewise.
3177 * recog.c: Likewise.
3178 * recog.h: Likewise.
3179 * reg-stack.c: Likewise.
3180 * regclass.c: Likewise.
3181 * regmove.c: Likewise.
3182 * regrename.c: Likewise.
3183 * regs.h: Likewise.
3184 * reload.c: Likewise.
3185 * reload.h: Likewise.
3186 * reload1.c: Likewise.
3187 * reorg.c: Likewise.
3188 * resource.c: Likewise.
3189 * resource.h: Likewise.
3190 * rtl-error.c: Likewise.
3191 * rtl.c: Likewise.
3192 * rtl.h: Likewise.
3193 * rtlanal.c: Likewise.
46c5ad27
AJ
3194 * sbitmap.c: Likewise.
3195 * sbitmap.h: Likewise.
3196 * scan-decls.c: Likewise.
3197 * scan.c: Likewise.
3198 * sched-deps.c: Likewise.
3199 * sched-ebb.c: Likewise.
3200 * sched-int.h: Likewise.
3201 * sched-rgn.c: Likewise.
3202 * sched-vis.c: Likewise.
3203 * sibcall.c: Likewise.
3204 * simplify-rtx.c: Likewise.
3205 * sreal.c: Likewise.
3206 * sreal.h: Likewise.
3207 * ssa-ccp.c: Likewise.
3208 * ssa-dce.c: Likewise.
3209 * ssa.c: Likewise.
3210 * ssa.h: Likewise.
3211 * stack.h: Likewise.
3212 * stmt.c: Likewise.
3213 * stor-layout.c: Likewise.
3214 * stringpool.c: Likewise.
3215 * target.h: Likewise.
3216 * timevar.c: Likewise.
3217 * timevar.h: Likewise.
3218 * tlink.c: Likewise.
3219 * tracer.c: Likewise.
3220 * tree-inline.c: Likewise.
3221 * tree-inline.h: Likewise.
3222 * tree.c: Likewise.
3223 * tree.h: Likewise.
1d088dee 3224
4f649bc1
KH
32252003-07-05 Kazu Hirata <kazu@cs.umass.edu>
3226
3227 * combine.c (nonzero_bits1): Fix a warning.
3228
32292003-07-05 Kazu Hirata <kazu@cs.umass.edu>
2c4a71b3
KH
3230
3231 * config/h8300/h8300.c (compute_mov_length): Correct the
3232 length of loading CONST0_RTX (SFmode).
3233
f5924ac1
NS
32342003-07-05 Nathan Sidwell <nathan@codesourcery.com>
3235
3236 * toplev.c (output_clean_symbol_name): Remove.
3237 * toplev.h (output_clean_symbol_name): Remove.
3238 * config/alpha/alpha.c (unicosmk_output_module_name): Use
3239 lbasename & clean_symbol_name.
3240
39e3f58c
KH
32412003-07-05 Kazu Hirata <kazu@cs.umass.edu>
3242
3243 * ggc.h: Follow spelling conventions.
3244 * config/i386/i386.c: Likewise.
3245 * config/i386/winnt.c: Likewise.
3246 * config/rs6000/rs6000.c: Likewise.
3247
4d6922ee
KH
32482003-07-05 Kazu Hirata <kazu@cs.umass.edu>
3249
3250 * bt-load.c: Fix comment typos.
3251 * c-incpath.c: Likewise.
3252 * cfg.c: Likewise.
3253 * cfgcleanup.c: Likewise.
3254 * cfgloop.h: Likewise.
3255 * cfgloopmanip.c: Likewise.
3256 * cfgrtl.c: Likewise.
3257 * diagnostic.h: Likewise.
3258 * dwarfout.c: Likewise.
3259 * emit-rtl.c: Likewise.
3260 * et-forest.c: Likewise.
3261 * et-forest.h: Likewise.
3262 * expr.c: Likewise.
3263 * gcse.c: Likewise.
3264 * genattr.c: Likewise.
3265 * jump.c: Likewise.
3266 * langhooks.h: Likewise.
3267 * local-alloc.c: Likewise.
3268 * loop-unroll.c: Likewise.
3269 * loop-unswitch.c: Likewise.
3270 * ra-build.c: Likewise.
3271 * regclass.c: Likewise.
3272 * regmove.c: Likewise.
3273 * rtl.def: Likewise.
3274 * rtlanal.c: Likewise.
3275 * sched-ebb.c: Likewise.
3276 * sched-rgn.c: Likewise.
3277 * simplify-rtx.c: Likewise.
3278 * ssa.c: Likewise.
3279 * tracer.c: Likewise.
3280 * tree.c: Likewise.
3281
f1c4bc4f
ZW
32822003-07-05 Zack Weinberg <zack@codesourcery.com>
3283
3284 * cppcharset.c: Use the correct return type for the fallback iconv
3285 macro.
3286
65c6f1b4
ZD
3287Sat Jul 5 16:18:53 CEST 2003 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3288
3289 Blame to Jan Hubicka <jh@suse.cz>
3290 * cfglayout.c (record_effective_endpoints): Split insns before
3291 first basic block correctly.
3292
a8f3bf52
RK
32932003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3294
f1c4bc4f 3295 * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
a8f3bf52
RK
3296 bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
3297 if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
3298
0641776c
AJ
32992003-07-05 Andreas Jaeger <aj@suse.de>
3300
3301 * genattrtab.c (write_attr_get): Revert part of last patch to
3302 always write out a prototype.
3303
3304 * genemit.c (gen_split): Readd lost unused attributes in last
3305 patch.
3306
977129f6
ZD
33072003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3308
3309 * cfgloopmanip.c (force_single_succ_latches): Force latch to be
3310 different from header.
3311
5ee084df
AS
33122003-07-05 Andreas Schwab <schwab@suse.de>
3313
3314 * config/m68k/m68k.c: Remove code protected by CRDS.
3315 * config/m68k/m68k.md: Likewise.
3316
33de9573
NB
33172003-07-05 Neil Booth <neil@daikokuya.co.uk>
3318
3319 PR driver/11417
3320 * c-opts.c (permit_fortran_options): New.
3321 (c_common_init_options): Accept fortran front end options if
3322 it looks like we might be preprocessing Fortran.
3323 (c_common_handle_option): Don't reject switch if permit_fotran_options.
3324
6906ba40
KG
33252003-07-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3326
3327 * genattr.c (internal_dfa_insn_code): Output prototype.
3328 * genattrtab.c: Don't output unnecessary decls, output in ISO C.
3329 * genautomata.c: Likewise.
3330 * genconditions.c: Likewise.
3331 * genemit.c: Likewise.
3332 * genextract.c: Likewise.
3333 * gengenrtl.c: Likewise.
3334 * gengtype.c: Likewise.
3335 * genopinit.c: Likewise.
3336 * genoutput.c: Likewise.
3337 * genpeep.c: Likewise.
3338 * genrecog.c: Likewise.
3339
e6cc3a24
ZW
33402003-07-04 Zack Weinberg <zack@codesourcery.com>
3341
3342 * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
3343 (struct cpp_options): Add narrow_charset, wide_charset,
3344 bytes_big_endian fields. Remove EBCDIC field.
3345 (cpp_init_iconv, cpp_interpret_string): New external interfaces.
3346
3347 * cpphash.h: Include <iconv.h> if we have it, otherwise
3348 provide a dummy definition of iconv_t.
3349 (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
3350 (_cpp_valid_ucn): Update prototype.
3351 (_cpp_destroy_iconv): New prototype.
3352
3353 * doc/cpp.texi: Document character set handling.
3354 * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
3355 * doc/extend.texi: Delete entire section on multiline strings.
3356 Rewrite section on __FUNCTION__ etc now that these are
3357 variables in C.
3358
3359 * cppucnid.tab, cppucnid.pl: New files.
3360 * cppucnid.h: New generated file.
3361 * cppcharset.c: Include cppucnid.h. Lots of commentary added.
3362 (iconv_open, iconv, iconv_close): Provide dummy definitions
3363 if !HAVE_ICONV.
3364 (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
3365 _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
3366 emit_numeric_escape, convert_hex, convert_oct, convert_escape,
3367 cpp_interpret_string, narrow_str_to_charconst,
3368 wide_str_to_charconst): New.
3369 (ucn_valid_in_identifier): Use a binary search through the
3370 ucnranges table defined in cppucnid.h, not a long chain of if
3371 statements.
3372 (_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
3373 character names are only valid in C++ and C99" to a warning.
3374 Issue the "meaning of \[uU] is different in traditional C"
3375 warning here. Take care not to let iconv see an invalid UCS
3376 value if we get a malformed UCN. Issue an error if we don't
3377 have iconv.
3378 (cpp_interpret_charconst): Moved here from cpplex.c. Use
3379 cpp_interpret_string to do the heavy lifting.
3380
3381 * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
3382 narrow_charset, wide_charset fields of options structure.
3383 (cpp_destroy): Call _cpp_destroy_iconv.
3384 * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
3385 (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
3386 (cpp_interpret_charconst): Moved to cppcharset.c.
3387 * cpplib.c (dequote_string): Delete.
3388 (interpret_string_notranslate): New.
3389 (do_line, do_linemarker): Use interpret_string_notranslate.
3390
3391 * Makefile.in (cppcharset.o): Depend on cppucnid.h.
3392
3393 * c-common.c (fname_string, combine_strings): Delete.
3394 * c-common.h (fname_string, combine_strings): Delete prototypes.
3395 * c-lex.c (ignore_escape_flag): Delete.
3396 (cb_ident): Use cpp_interpret_string, not lex_string.
3397 (get_nonpadding_token): New function.
3398 (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
3399 Adjust calls to lex_string. Don't write *value twice.
3400 (lex_string): Now handles string constant concatenation.
3401 Most of the work handed off to cpp_interpret_string.
3402 Call fix_string_type here.
3403 * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
3404 FUNC_NAME, throughout.
3405 (OBJC_STRING): New token type.
3406 (primary:STRING): No need to call fix_string_type here.
3407 (primary:objc_string): Make that OBJC_STRING.
3408 (objc_string nonterminal): Delete.
3409 (yylexname): Delete code to handle fake string constants.
3410 (yylexstring): Delete entirely.
3411 (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
3412 to handle CPP_ATSIGN.
3413
3414 * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
3415 * c-opts.c (missing_arg, c_common_handle_option): Handle
3416 OPT_fexec_charset_ and OPT_fwide_exec_charset_.
3417 (c_common_init): Set cpp_opts->bytes_big_endian, not
3418 cpp_opts->EBCDIC. Call cpp_init_iconv.
3419 (print_help): Document -fexec-charset= and -fexec-wide-charset=.
3420 (TARGET_EBCDIC): Delete default definition.
3421
3422 * objc/objc-act.c (build_objc_string_object): No need to
3423 handle string constant concatenation.
3424
61aeb06f
KH
34252003-07-04 Kazu Hirata <kazu@cs.umass.edu>
3426
3427 * doc/install.texi: Fix typos.
3428 * doc/invoke.texi: Likewise.
3429 * doc/tm.texi: Likewise.
3430
c1207243
KH
34312003-07-04 Kazu Hirata <kazu@cs.umass.edu>
3432
3433 * config/pa/fptr.c: Fix comment typos.
3434 * config/pa/pa-64.h: Likewise.
3435 * config/pa/pa.c: Likewise.
3436 * config/pa/pa.h: Likewise.
3437 * config/rs6000/603.md: Likewise.
3438 * config/rs6000/7xx.md: Likewise.
3439 * config/rs6000/darwin.h: Likewise.
3440 * config/rs6000/freebsd.h: Likewise.
3441 * config/rs6000/rs6000.c: Likewise.
3442 * config/rs6000/rs6000.md: Likewise.
3443 * config/rs6000/spe.h: Likewise.
3444
58add37a
UW
34452003-07-04 Ulrich Weigand <uweigand@de.ibm.com>
3446
3447 * config/s390/2064.md: Change GNU CC to GCC.
3448 * config/s390/2084.md: Likewise.
3449 * config/s390/fixdfdi.h: Likewise.
3450 * config/s390/linux.h: Likewise.
3451 * config/s390/s390-modes.def: Likewise.
3452 * config/s390/s390-protos.h: Likewise.
3453 * config/s390/s390.c: Likewise.
3454 * config/s390/s390.h: Likewise.
3455 * config/s390/s390.md: Likewise.
3456 * config/s390/s390x.h: Likewise.
3457
60cd4dae
JL
34582003-07-04 Jeff Law <law@redhat.com>
3459
a38825d2 3460 PR c/11428
60cd4dae
JL
3461 * expr.c (do_store_flag): Pass in the correct result type
3462 when calling fold_single_bit_test.
3463 * fold-const.c (fold_single_bit_test): Use result_type for the
3464 result when folding a sign bit test.
3465
5e14ae7e
NB
34662003-07-04 Neil Booth <neil@daikokuya.co.uk>
3467
3468 * opts.c (common_handle_options): Negate sense of -falign- switches.
3469
8c90b13a
L
34702003-07-04 H.J. Lu <hongjiu.lu@intel.com>
3471
c3b3975a 3472 * Makefile.in: Replace PWD with PWD_COMMAND.
8c90b13a 3473
72d4a2ad
ZD
34742003-07-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3475
3476 * cfgloopanal.c (count_strange_loop_iterations): New static function.
3477 (constant_iterations, count_loop_iterations, simple_loop_exit_p):
3478 Handle strange loops.
3479
8e9a4a45
TM
34802003-07-04 Toon Moene <toon@moene.indiv.nluug.nl>
3481
3482 * install.texi: Even the g77 manpage is derived from
3483 the full g77 manual.
3484
6eb95e99
ZW
34852003-07-04 Zack Weinberg <zack@codesourcery.com>
3486
3487 * ABOUT-NLS: Delete.
3488 * intl: Delete entire directory.
3489 * aclocal.m4: Include ../config/gettext.m4. Delete
3490 AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
3491 AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
3492 * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
3493 Remove intl/Makefile from all_outputs.
3494 * configure, config.in: Regenerate.
3495 * Makefile.in: Expunge all references to intl subdirectory.
3496 Add -I../intl to INCLUDES.
3497 * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
3498
bcd5d841
RS
34992003-07-04 Roger Sayle <roger@eyesopen.com>
3500
3501 * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
3502 * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
3503
6b6cb52e
DS
35042003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
3505
3506 PR c++/5287, PR c++/7910, PR c++/11021
3507 * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
3508 dllimport attribute if function is defined at declaration, but
3509 report error instead. Likewise for dllimport'd variable
3510 definitions. Set implicit TREE_PUBLIC for dllimport'd variables
3511 declared within functions, Report error if dllimport or dllexport
3512 symbol is not global.
3513 (i386_pe_dllimport_p): Ignore dllimport attribute of functions
3514 if defined after declaration or if inlined. Don't allow definition
3515 of static data members of C++ classes. Don't dllimport virtual
3516 methods.
3517 (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
3518 (i386_pe_mark_dllimport): Remove unnecessary checks.
3519 (i386_pe_encode_section_info): Warn if the dllimport attribute
3520 and symbol prefix have been instantiated and then overridden.
3521
3522 * doc/extend.texi: Document dllimport and dllexport attributes.
3523
3524 * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
3525
cc2f5d34
US
35262003-07-03 Uwe Stieber <uwe@kaos-group.de>
3527
3528 * config/kaos.h (CPP_PREDEFINES): Delete.
3529 (TARGET_OS_CPP_BUILTINS): New.
3530
5f1989e6
KG
35312003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3532
3533 * c-aux-info.c: Include toplev.h after c-tree.h.
3534 * c-common.c: Likewise.
3535 (GCC_DIAG_STYLE): Undef.
3536 * c-semantics.c (GCC_DIAG_STYLE): Define.
3537 * c-tree.h (GCC_DIAG_STYLE): Likewise.
3538 * diagnostic.h (inform): Move prototype to toplev.h.
3539 * jump.c: Include diagnostic.h before toplev.h.
3540 * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
3541 (warning, error, fatal_error, pedwarn, sorry, inform,
3542 error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
3543
8d28e87d
ZD
35442003-07-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3545
3546 * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
3547 at all if edge is not specified.
3548 (can_copy_bbs_p, copy_bbs): New.
3549 * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
3550 * cfgloop.c (get_loop_body): Comment more precisely.
3551 * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
3552 (scale_bbs_frequencies): Fix comment typo.
3553 (can_duplicate_loop_p): Use can_copy_bbs_p.
3554 (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
3555
694abeb6
DP
35562003-07-03 Devang Patel <dpatel@apple.com>
3557
3558 * c-opts.c (c_common_parse_file): Remove extra
3559 debug_hooks->start_source_file call.
6eb95e99 3560
0a9530a9
RS
35612003-07-03 Roger Sayle <roger@eyesopen.com>
3562
3563 * real.c (real_trunc, real_floor, real_ceil): New functions
3564 to implement trunc, floor and ceil respectively.
3565 * real.h (real_trunc, real_floor, real_ceil): Prototype here.
3566 * builtins.c (integer_valued_real_p): New function to test if
3567 a floating point expression has an integer valued result.
3568 (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
3569 foo(x) where foo is an integer rounding function. Similarly,
3570 optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
3571 (double)(int)x when both foo and bar are integer rounding
3572 functions and we don't need to honor errno.
3573 (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
3574 New functions to fold trunc, floor and ceil.
3575 (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
3576 fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
3577 to fold BUILT_IN_CEIL*.
3578 * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
3579 the remaining integer rounding functions.
3580
c3427c7d
EB
35812003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
3582
3583 * config/sparc/sparc.c (function_arg_partial_nregs): Use
3584 SPARC_INT_ARG_MAX to determine where to split unnamed
3585 complex FP arguments.
3586
bc35512f
JH
3587Thu Jul 3 20:36:47 CEST 2003 Jan Hubicka <jh@suse.cz>
3588
3589 * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
3590 * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
3591 (merge_blocks_move_predecessor_nojumps,
3592 merge_blocks_move_successor_nojumps): Use merge_blocks.
3593 (try_optimize_cfg): Use merge_blocks_move.
3594 * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
3595 (merge_blocks_nomove): Rename to rtl_merge_blocks.
3596 (cfg_layout_create_basic_block): New.
3597 (rtl_can_merge_blocks): New.
3598 (cfg_layout_split_block): Do not alloc aux by hand.
3599 * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
3600 merge_blocks.
3601 (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
3602 * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
3603 * cfgloopmanip.c (loop_split_edge_with): Likewise.
3604 * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
3605
3606 * basic-block.h (basic_block_def): Add field 'rbi'.
3607 * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
3608 find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
3609 * cfg.c (entry_exit_blocks): Add new field.
3610 * cfglayout.c: Include alloc-pool.h;
3611 (cfg_layout_pool): New.
3612 (record_effective_endpoints, fixup_reorder_chain,
3613 fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
3614 of rbi.
3615 (cfg_layout_initialize_rbi): New function.
3616 (cfg_layout_initialize): Use it.
3617 (cfg_layout_finalize): Clear rbi fields.
3618 * cfglayout.h (RBI): Kill.
3619 (cfg_layout_initialize_rbi): Declare.
3620 * cfgloopmanip.c (copy_bbs): Use rbi.
3621 (record_exit_edges): Likewise.
3622 (duplicate_loop_to_header_edge): Likewise.
3623 * cfgrtl.c (cfg_layout_create_basic_block): Use
3624 cfg_layout_initialize_rbi.
3625 (cfg_layout_split_block): Use rbi.
3626 (cfg_layout_delete_block): Likewise.
3627 * loop-init.c (loop_optimizer_finalize): Likewise.
3628 * loop-unswitch.c (unswitch_loop): Likewise.
3629 * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
3630
3631 * cfgrtl.c: Update comments.
3632 (try_redirect_by_replacing_jump): New argument.
3633 (redirect_branch_edge): Break out from ...
3634 (rtl_redirect_edge_and_branch): ... this one.
3635 (update_cfg_after_block_merging): Break out from ...
3636 (rtl_merge_blocks): ... this one.
3637 (cfg_layout_split_edge): New.
3638 (cfg_layout_merge_blocks): New.
3639 (cfg_layout_can_merge_blocks_p): New.
3640 (cfg_layout_redirect_edge_and_branch): Reorganize.
3641 (cfg_layout_rtl_cfg_hooks): Fill in.
3642 (cfg_layout_delete_block): Kill barriers.
3643 * cfganal.c (can_fallthru): Deal with exit blocks
3644 * cfglayout.c (cfg_layout_function_header): New function
3645 (record_effective_endpoints): Record function header.
3646 (fixup_reorder_chain): Fixup dead jumptables; place header
3647
3648 * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
3649 * bb-reorder.c (cfg_layout_initialize): Update call.
3650 * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
3651 edges in cfglayout mode.
3652 * cfglayout.c (cleanup_unconditional_jumps): Kill.
3653 (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
3654 * cfglayout.h (cfg_layout_initialize): Update prototype.
3655 * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
3656 * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
3657 * flow.c (propagate_block): Do not crash when basic block ends
3658 by first insn in the chain.
3659 * loop-init.c (loop_optimizer_init): First enter cfglayout mode; later
3660 do loop discovery.
3661 * tracer.c (tracer): Update call of cfg_layout_initialize.
3662
dd220c49
KG
36632003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3664
3665 * Makefile.in: Use dependency variables in lieu of explicit
3666 files throughout.
3667
fa5b060f
SB
36682003-07-03 Steven Bosscher <steven@gcc.gnu.org>
3669
3670 * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
3671 * tree.h: ...to here.
3672
fae778eb
KH
36732003-07-03 Kazu Hirata <kazu@cs.umass.edu>
3674
3675 * config/s390/2064.md: Fix comment typos.
3676 * config/s390/2084.md: Likewise.
3677 * config/s390/s390.c: Likewise.
3678 * config/s390/s390.md: Likewise.
3679 * config/sh/sh.c: Likewise.
3680 * config/sh/sh.h: Likewise.
3681 * config/sh/sh.md: Likewise.
3682 * config/sparc/sparc.c: Likewise.
3683 * config/sparc/sparc.h: Likewise.
3684 * config/sparc/sparc.md: Likewise.
3685 * config/stormy16/stormy16.c: Likewise.
3686 * config/stormy16/stormy16.h: Likewise.
3687 * config/stormy16/stormy-abi: Fix a typo.
3688
58eabcb1
KC
36892003-07-03 Kelley Cook <kelleycook@wideopenwest.org>
3690
3691 * Makefile.in (ifcvt.o): Depend on OPTABS_H.
3692
af261903
KG
36932003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3694
3695 * config/mips/mips.h (save_argv): Delete.
3696
a11c61d2
RS
36972003-07-03 Roger Sayle <roger@eyesopen.com>
3698
3699 PR target/10700
3700 * fold-const.c (extract_muldiv_1): There's nothing that can be done
3701 if the expression is a SAVE_EXPR.
3702
dab66575
KH
37032003-07-03 Kazu Hirata <kazu@cs.umass.edu>
3704
3705 * config/m32r/m32r.c: Fix comment typos.
3706 * config/m68hc11/m68hc11.c: Likewise.
3707 * config/m68hc11/m68hc11.h: Likewise.
3708 * config/m68k/m68k.c: Likewise.
3709 * config/mcore/mcore.c: Likewise.
3710 * config/mcore/mcore.h: Likewise.
3711 * config/mcore/mcore.md: Likewise.
3712 * config/mips/mips.c: Likewise.
3713 * config/mips/mips.h: Likewise.
3714 * config/mips/mips.md: Likewise.
3715 * config/mips/netbsd.h: Likewise.
3716 * config/mn10300/mn10300.c: Likewise.
3717
8837d828
AS
37182003-07-03 Andreas Schwab <schwab@suse.de>
3719
3720 * dbxout.c (pending_bincls): Move decl down inside
3721 DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
3722
dd107e66
NS
37232003-07-02 Nathan Sidwell <nathan@codesourcery.com>
3724
3725 * rtl.h (NOTE_DATA): Refer to whole union.
3726 * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
3727
8821d091
EB
37282003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
3729
3730 PR optimization/11381
3731 * simplify-rtx.c (simplify_relational_operation): Check that
3732 two equal operands have no side-effects before simplifying
3733 the comparison.
3734
7960bf22
JL
37352003-07-02 Jeff Law <law@redhat.com>
3736
3737 * expr.c (do_store_flag): Remove special case folding for
3738 single bit tests. Instead call back into the commonized folder
3739 routine.
3740 * fold-const.c (fold_single_bit_test): New function, mostly
3741 extracted from do_store_flag, with an additional case extracted
3742 from fold.
3743 (fold): Call fold_single_bit_test appropriately.
3744 * tree.h (fold_single_bit_test): Prototype.
3745
3dce1408
ZW
37462003-07-02 Zack Weinberg <zack@codesourcery.com>
3747
3748 * system.h: Include filenames.h.
3749 (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
3750 (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
3751 define based on HAVE_DOS_BASED_FILE_SYSTEM.
3752 * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
3753 * config/i386/xm-mingw32.h: Don't define
3754 HAVE_DOS_BASED_FILE_SYSTEM,
3755 DIR_SEPARATOR, or DIR_SEPARATOR_2.
3756 * doc/hostconfig.texi: Update to match.
3757
3758 * cppfiles.c, gcc.c, gensupport.c, protoize.c,
3759 config/i386/cygwin.h:
3760 Use IS_ABSOLUTE_PATH throughout.
3761 * gcc.c (DIR_UP): Delete, unused.
3762 * protoize.c (IS_SAME_PATH): Define in terms of
3763 FILENAME_CMP.
3764 (is_abspath): Delete.
3765
c51e6d85
KH
37662003-07-02 Kazu Hirata <kazu@cs.umass.edu>
3767
3768 * config/i386/emmintrin.h: Fix comment typos.
3769 * config/i386/i386.c: Likewise.
3770 * config/i386/i386.h: Likewise.
3771 * config/i386/sco5.h: Likewise.
3772 * config/ia64/ia64.c: Likewise.
3773 * config/ia64/itanium2.md: Likewise.
3774
5ec3a5a7
L
37752003-07-02 H.J. Lu <hongjiu.lu@intel.com>
3776
3777 * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
3778 DBX_USE_BINCL.
3779 (emit_bincl_stab): Same.
3780 (emit_pending_bincls): Same.
3781
fad37371
KH
37822003-07-02 Kazu Hirata <kazu@cs.umass.edu>
3783
3784 * config/h8300/h8300.c (compute_mov_length): Fix the length of
3785 loading CONST0_RTX (SFmode).
3786 * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
3787 'G' to CONST0_RTX (SFmode).
3788 * config/h8300/h8300.md (movsf_h8300): Change the first
3789 constraint to 'G'.
3790 (movsf_h8300h): Likewise.
3791
b86f6cd9
NB
37922003-07-02 Neil Booth <neil@daikokuya.co.uk>
3793
3794 * c-common.h (c_common_init_options): New prototype.
3795 * c-opts.c (deferred_size): Remove.
3796 (defer_opt): Array is now pre-allocated.
3797 (c_common_init_options): Pre-allocate deferred_opts. Make
3798 lang_flags unsigned.
3799 (push_command_line_options): Free deferred_opts.
3800 * hooks.c (hook_uint_uint_constcharptrptr_0): New.
3801 * hooks.h (hook_uint_uint_constcharptrptr_0): New.
3802 * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
3803 * langhooks.h (struct lang_hooks): New prototype for init_options.
3804 * main.c (main): Cast argv.
3805 * opts.c (handle_option, handle_options): Update prototypes.
3806 (decode_options): save_argc, save_argv are not global. Constify.
3807 * opts.h (decode_options): New prototype.
3808 * toplev.c (general_init): New protoype.
3809 (save_argv): Make static.
3810 (save_argc): Remove.
3811 (print_switch_values, general_init): Constify.
3812 (toplev_main): Save argv.
3813 * toplev.h (toplev_main): Update prototype.
3814 (save_argc, save_argv): Remove.
3815
f23b9d52
DE
38162003-07-02 David Edelsohn <edelsohn@gnu.org>
3817
3818 * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
3819 (emit_bincl_stab): Same.
3820 (emit_pending_bincls): Same.
3821
300e89a2
NS
38222003-07-02 Nathan Sidwell <nathan@codesourcery.com>
3823
3824 PR c++/11072
3825 * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
3826
eaac6968
AS
38272003-07-02 Andreas Schwab <schwab@suse.de>
3828
3829 * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
3830
1a8c4ca6
EB
38312003-07-02 Eric Botcazou <ebotcazou@libertysurf.fr>
3832
3833 PR optimization/11210
3834 * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
3835 about the behaviour with regard to bitfields.
3836 * fold-const (decode_field_reference): Record outermost type in
3837 case the expression is a NOP. Strip all NOPs. Set the signedness
3838 to that of the outermost type (if any) when the bitsize is equal
3839 to the size of the type.
3840
23cdfcf7
RS
38412003-07-02 Richard Sandiford <rsandifo@redhat.com>
3842
3843 * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
3844 (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
3845 (adddi3_internal_3, addsi3_internal_2): Likewise.
3846
6f2993e5
RS
38472003-07-02 Richard Sandiford <rsandifo@redhat.com>
3848
3849 * config/mips/mips.c (machine_function): Add new fields:
3850 ignore_hazard_length_p and all_noreorder_p.
3851 (mips_flag_delayed_branch): New variable.
3852 (override_options): Treat '/' as an operand punctuation character.
3853 Set up mips_flag_delayed_branch.
3854 (print_operand): Handle '/'.
3855 (mips_output_function_prologue): Put the whole function in
3856 .set noreorder and .set nomacro if all_noreorder_p is true.
3857 (mips_output_function_epilogue): End the noreorder/nomacro sequence.
3858 (mips16_optimize_gp): Remove "first insn" parameter.
3859 (mips16_lay_out_constants): New function, split out from mips_reorg.
3860 (mips_avoid_hazard, mips_avoid_hazards): New functions.
3861 (mips_reorg): For mips16 code, call mips16_lay_out_constant
3862 and (optionally) mips16_optimize. If TARGET_EXPLICIT_RELOCS,
3863 do delayed-branch scheduling followed by hazard detection.
3864 (mips_adjust_insn_length): Only account for hazards if
3865 !ignore_hazard_length_p.
3866 (mips_output_load_label): Add a nop to the o32 sequence if
3867 the target suffers from load delays.
3868 (mips_output_conditional_branch): Add %/ to the end of branches.
3869 (mips_output_division): Fill the branch delay slot with %#.
3870 * config/mips/mips.md: Remove redundant '%*' from mips16 branch
3871 instructions. End all other %* branches with %/.
3872 (ffssi2, ffsdi2): Fix lengths.
3873 (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
3874 (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
3875 (fix_truncsfsi2_macro): Likewise.
3876 (mov_lwl): Set hazard to "none".
3877 (ashldi3_internal): Fill the branch delay slot with %#.
3878 (ashrdi3_internal, lshrdi3_internal): Likewise.
3879 (exception_receiver): Explicitly set $28.
3880 (hazard_nop): New pattern.
3881
0184bd46
JH
3882Wed Jul 2 08:12:36 CEST 2003 Jan Hubicka <jh@suse.cz>
3883
3884 * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
3885 before calling tree_inlinable_function_p.
3886
1a78e5a7
RO
38872003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3888
3889 * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
3890 <internal/stdio_core.h> too.
3891 (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
3892 <internal/wchar_core.h> too.
3893 Substitute va_list uses in inline definition.
3894 * fixinc/fixincl.x: Regenerate.
3895
4c82f12b
RO
38962003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3897
3898 * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
3899 Undef before redefinition.
3900 (LABEL_AFTER_LOC): Likewise.
3901 (DEFAULT_SIGNED_CHAR): Likewise.
3902 (ASM_OUTPUT_ASCII): Moved here from iris4.h.
3903 Fix IRIX spelling.
3dce1408 3904
4c82f12b
RO
3905 * config/mips/iris3.h: Remove, unused.
3906 * config/mips/iris4.h: Likewise.
3907
3908 * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
3909
3910 * config/mips/iris5.h (TARGET_DEFAULT): Move ...
3911 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
3912 target_cpu_default.
3913
3914 * config/mips/iris5.h: Move explicit includes ...
3915 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
3dce1408 3916
4c82f12b
RO
3917 * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
3918 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
3919 tm_defines.
3920
3921 * config/mips/iris6.h (TARGET_DEFAULT): Move ...
3922 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
3923 target_cpu_default.
3924
3925 * config/mips/iris6.h: Fix IRIX spelling.
3926 (MULTILIB_DEFAULTS): Undef before redefinition.
3dce1408 3927
4c82f12b
RO
3928 * config/mips/iris6.h: Move explicit includes ...
3929 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
3930
8bd87c4e
JH
3931Wed Jul 2 02:16:48 CEST 2003 Jan Hubicka <jh@suse.cz>
3932
3933 * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
3934 cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
3935 Use next_needed field instead of aux to maintain the queue.
3936 * cgraph.h (cgraph_node): Add next_needed.
3937 (cgraph_varpool_node): Add next_needed; remove aux.
3938 * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
3939
f6981e16
JH
3940Wed Jul 2 02:12:51 CEST 2003 Jan Hubicka <jh@suse.cz>
3941
3942 * cgraphunit.c (cgraph_finalize_function): Set finalized.
3943 (cgraph_finalize_function): Do not examine inlinablility.
3944 (cgraph_finalize_compilation_unit): Do it here.
3945 * cgraph.h (cgraph_local_info): Add finalized field.
3946
d1c60855
RO
39472003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3948
3949 * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
3950 (gt_pch_restore): Likewise.
3951
093354e0
KH
39522003-07-01 Kazu Hirata <kazu@cs.umass.edu>
3953
3954 * config/alpha/alpha.c: Fix comment typos.
3955 * config/alpha/elf.h: Likewise.
3956 * config/arm/arm.c: Likewise.
3957 * config/arm/arm.h: Likewise.
3958 * config/arm/arm.md: Likewise.
3959 * config/arm/t-arm-coff: Likewise.
3960 * config/arm/t-strongarm-pe: Likewise.
3961 * config/arm/xscale-elf.h: Likewise.
3962 * config/avr/avr.h: Likewise.
3963
ce47ca44
JL
39642003-07-01 Jeff Law <law@redhat.com>
3965
3966 * stmt.c (any_pending_cleanups): Remove another redundant test.
3967
43b68ce5
DE
39682003-07-01 David Edelsohn <edelsohn@gnu.org>
3969 J"orn Rennecke <joern.rennecke@superh.com>
3970
3971 * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
3972 for MEM case.
3973
33e9d2aa
DP
39742003-07-01 Devang Patel <dpatel@apple.com>
3975
3976 * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
3977 (binclstatus): New.
3dce1408 3978 (struct dbx_file): New members - bincl_status, pending_bincl_name and
33e9d2aa
DP
3979 prev.
3980 (pending_bincls): New.
3981 (dbxout_init): Initialize new dbx_file members.
3982 (dbxout_start_source_file): Same.
3983 (emit_bincl_stab): New function.
3984 (emit_pending_bincls): Same.
3985 (emit_pending_bincls_if_required): Same.
3dce1408 3986 (dbxout_end_source_file): Emit EINCL stab only if BINCL is already
33e9d2aa
DP
3987 processed.
3988 (dbxout_begin_block): Emit pending BINCL stabs.
3989 (dbxout_end_block): Same.
3990 (dbxout_function_decl): Same.
3991 (dbxout_continue): Same.
3992 (dbxout_type): Same.
3993 (dbxout_class_name_qualifiers): Same.
3994 (dbxout_symbol): Same.
3995 (dbxout_symbol_location): Same.
3996 (dbxout_parms): Same.
3dce1408 3997
0108ae51
KG
39982003-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3999
4000 * c-semantics.c (genrtl_case_label): Fix format specifier bug.
4001 * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
4002
54ced33d
AJ
40032003-07-01 Andreas Jaeger <aj@suse.de>
4004
4005 * fold-const.c: Convert prototypes to ISO C90.
4006 * function.c: Likewise.
4007 * function.h: Likewise.
4008
c0cbdbd9
KH
40092003-07-01 Kazu Hirata <kazu@cs.umass.edu>
4010
4011 * doc/contrib.texi: Fix typos.
4012 * doc/invoke.texi: Likewise.
4013 * doc/passes.texi: Likewise.
4014 * doc/sourcebuild.texi: Likewise.
4015 * doc/tm.texi: Likewise.
4016
e0bb17a8
KH
40172003-07-01 Kazu Hirata <kazu@cs.umass.edu>
4018
4019 * basic-block.h: Fix comment typos.
4020 * bb-reorder.c: Likewise.
4021 * c-format.c: Likewise.
4022 * cfgcleanup.c: Likewise.
4023 * cfghooks.h: Likewise.
4024 * cfgloop.c: Likewise.
4025 * cfgloopmanip.c: Likewise.
4026 * cfgrtl.c: Likewise.
4027 * cgraph.h: Likewise.
4028 * cgraphunit.c: Likewise.
4029 * combine.c: Likewise.
4030 * convert.c: Likewise.
4031 * dbxout.c: Likewise.
4032 * df.c: Likewise.
4033 * df.h: Likewise.
4034 * diagnostic.c: Likewise.
4035 * dwarf2out.c: Likewise.
4036 * et-forest.h: Likewise.
4037 * flow.c: Likewise.
4038 * fold-const.c: Likewise.
4039 * function.h: Likewise.
4040 * gcov-io.h: Likewise.
4041 * gcov.c: Likewise.
4042 * gcse.c: Likewise.
4043 * genautomata.c: Likewise.
4044 * ggc-common.c: Likewise.
4045 * ggc-page.c: Likewise.
4046 * loop-unroll.c: Likewise.
4047 * loop-unswitch.c: Likewise.
4048 * loop.c: Likewise.
4049 * mips-tfile.c: Likewise.
4050 * optabs.c: Likewise.
4051 * ra-build.c: Likewise.
4052 * ra-colorize.c: Likewise.
4053 * ra-rewrite.c: Likewise.
4054 * ra.h: Likewise.
4055 * regmove.c: Likewise.
4056 * reload.c: Likewise.
4057 * rtlanal.c: Likewise.
4058 * sched-ebb.c: Likewise.
4059 * sched-int.h: Likewise.
4060 * sched-vis.c: Likewise.
4061 * sreal.c: Likewise.
4062 * ssa-ccp.c: Likewise.
4063 * ssa.c: Likewise.
4064 * toplev.c: Likewise.
4065 * tree-inline.c: Likewise.
4066 * value-prof.c: Likewise.
4067 * value-prof.h: Likewise.
4068
5f2fc772
NS
40692003-07-01 Nathan Sidwell <nathan@codesourcery.com>
4070
4071 * rtl.h (emit_line_note_after): Remove.
4072 (emit_note_copy_after, emit_note_copy): New.
4073 * emit-rtl.c (reorder_insns_with_line_notes): Replace
4074 emit_line_note_after with emit_note_copy_after.
4075 (emit_insn_after_with_line_notes): Likewise.
4076 (emit_line_note_after): Kill.
4077 (emit_note_copy_after): New.
4078 (emit_note_copy): New.
4079 * function.c (emit_return_into_block): Use emit_note_copy_after.
4080 (thread_prologue_and_epilogue_insns): Likewise.
4081 * integrate.c (expand_inline_function): Use emit_note_copy.
4082 (copy_insn_list): Likewise.
4083 * unroll.c (copy_loop_body): Likewise.
4084 * cfglayout.c (duplicate_insn_chain): Likewise.
4085
5b030314
NS
40862003-07-01 Nathan Sidwell <nathan@codesourcery.com>
4087
4088 * c-tree.h (define_label): Replace filename and lineno arguments
4089 with a location_t.
4090 * c-decl.c (poplevel): Adjust define_label call.
4091 (pop_label_level): Likewise.
4092 (define_label): Replace filename and lineno arguments with a
4093 location_t.
4094 (store_parm_decls): Use DECL_SOURCE_LOCATION.
4095 * c-parse.in (label): Adjust define_label call.
4096
04df6730
NB
40972003-07-01 Neil Booth <neil@daikokuya.co.uk>
4098
4099 * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
4100 config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
4101 config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
4102 config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
4103 config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
4104
6cf9ac28
AJ
41052003-07-01 Andreas Jaeger <aj@suse.de>
4106
4107 * final.c: Convert prototypes to ISO C90.
4108 * flow.c: Likewise.
4109 * flags.h: Likewise.
4110 * gcov-io.c: Likewise.
4111 * gcov-io.h: Likewise.
4112
2a868fac 4113See ChangeLog.9 for earlier changes.
This page took 0.747816 seconds and 5 git commands to generate.