ee83e98ffe00af7ea2a045c15eb868a9621aa246
[gcc.git] / gcc / ChangeLog
1 2004-01-13 Steven Bosscher <stevenb@suse.de>
2
3 PR c++/13376
4 * function.h (struct function): Kill `name' field.
5 (current_function_name): Make it an extern function.
6 * function.c (current_function_name): New function.
7 * graph.c: Update all uses of current_function_name.
8 * gcse.c: Likewise.
9 * config/alpha/alpha.c, config/avr/avr.c, config/c4x/c4x.c,
10 config/mips/mips.c, config/pdp11/pdp11.c: Likewise.
11 * config/ip2k/ip2k.c (function_prologue): Use MAIN_NAME_P
12 instead of a strcmp with "main".
13
14 2004-01-13 Jan Hubicka <jh@suse.cz>
15
16 * c-decl.c (diagnose_mismatched_decls): Fix warning calls.
17
18 * cgraphunit.c (cgraph_optimize_function): Always do
19 optimize_inline_calls when there is always_inline callee.
20 (cgraph_decide_inlining): Fix formating.
21 * tree-inline.c (inlinable_function_p): Do sorry for alwaysinline
22 functions.
23 (expand_call_inline): Likewise.
24 * toplev.h (sorry): Fix prototype.
25
26 2004-01-12 Roger Sayle <roger@eyesopen.com>
27
28 * builtins.c (expand_builtin_expect_jump): Simplify logic. Handle
29 conditional jumps that drop through to unconditional jumps or the
30 end of the sequence.
31
32 2004-01-13 Jan Hubicka <jh@suse.cz>
33
34 * alias.c (new_alias_set): Construct the alias_set varray.
35 (init_alias_once): Don't do it here.
36
37 2004-01-12 Marc Espie <espie@openbsd.org>
38
39 * system.h: handle YYBYACC like YYBISON.
40
41 2004-01-12 Jonathan Merriman <jonm@dualitymedia.com>
42
43 PR target/10847
44 * config.gcc: No longer includes conflicting header sparc/sol2.h when
45 building on sparc64-*-openbsd*.
46
47 2004-01-12 Andrew Pinski <pinskia@physics.uc.edu>
48
49 PR debug/13539
50 * dbxout.c (dbxout_type): Protected inheritance is not
51 private but protected.
52
53 2004-01-12 Richard Sandiford <rsandifo@redhat.com>
54
55 * config/mips/mips.c (mips_symbolic_constant_p): Revert last patch.
56
57 2004-01-12 Kazu Hirata <kazu@cs.umass.edu>
58
59 PR optimization/12508.
60 * combine.c (try_combine): Remove a dead set in a parallel
61 even if its destination is a subreg.
62
63 Revert:
64 2003-06-03 Kazu Hirata <kazu@cs.umass.edu>
65 * combine.c (simplify_set): Don't move a subreg in SET_SRC to
66 SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
67
68 2004-01-12 Geoffrey Keating <geoffk@apple.com>
69
70 * real.c: Update copyright date.
71 * emit-rtl.c: Likewise.
72 * rtl.h: Likewise.
73 * dwarf2out.c: Likewise.
74 * config/rs6000/darwin-ldouble.c: Likewise.
75 * config/rs6000/rs6000.md: Likewise.
76
77 2004-01-12 David Edelsohn <edelsohn@gnu.org>
78
79 * config/rs6000/rs6000.c (rs6000_init_libfuncs): Add AIX
80 TFmode to SImode libfuncs.
81
82 2004-01-12 Roger Sayle <roger@eyesopen.com>
83
84 PR middle-end/11397
85 * varasm.c (assemble_alias): Remove weak aliases from weak_decls.
86
87 2004-01-12 Jan Hubicka <jh@suse.cz>
88
89 PR opt/12826
90 * loop.c (insert_loop_mem): Preffer VOLATILE memory references to be
91 stored.
92
93 PR opt/12863
94 * cfgcleanup.c (label_is_jump_target_p): Move to...
95 * rtlanal.c (label_is_jump_target_p): ... here.
96 * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Fix redirecting of fallthru
97 edges unified with branch edges.
98
99 2004-01-12 Richard Earnshaw <rearnsha@arm.com>
100
101 * simplify-rtx.c (simplify_immed_subreg): Correctly extract the
102 high word of an integral CONST_DOUBLE.
103
104 2004-01-12 Paul Brook <paul@codesourcery.com>
105
106 * simplify-rtx.c (simplify_plus_minus): Always generate canonical form.
107
108 2004-01-12 J"orn Rennecke <joern.rennecke@superh.com>
109
110 PR target/13585
111 * sh-protos.h (check_use_sfunc_addr): Declare.
112 * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions.
113 * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate.
114
115 2004-01-12 Jan Hubicka <jh@suse.cz>
116
117 * alias.c: Invlude varray.h
118 (alias_sets): Turn into varray.
119 (get_alias_set_entry): Use VARRAY; mark inline.
120 (mems_in_disjoint_alias_sets_p): Mark inline.
121 (record_alias_subset): Use varray.
122 (init_alias_once): Initialize varray.
123 (new_alias_set): Grow array.
124 * varray.c: Make VARRAY_GENERIC_PTR non GTYized.
125
126 2004-01-12 Jan Hubicka <jh@suse.cz>
127
128 Partial fix for PR opt/10776 II
129 * cselib.c: Include params.h
130 (cselib_invalidate_mem): Limit amount of nonconflicting memory
131 locations.
132 * params.def (PARAM_MAX_CSELIB_MEMORY_LOCATIONS): New.
133 * Makefile.in (cselib.o): Depend on params.h
134
135 2004-01-12 Richard Sandiford <rsandifo@redhat.com>
136
137 * combine.c (combine_simplify_rtx): Don't pass VOIDmode to
138 simplify_unary_operation if the operand has a known mode.
139
140 2004-01-12 Hartmut Penner <hpenner@de.ibm.com>
141
142 PR target/13534
143 * gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New
144 predicate to handle 'ld' conform addresses.
145 * gcc/config/rs6000/rs6000.h (EXTRA_CONSTRAINT): New 'Y'
146 contraint.
147 (EXTRA_MEMORY_CONSTRAINT): Tell reload which constraint
148 are memory contraints.
149 * gcc/config/rs6000/rs6000-protos.h (word_offset_memref_operand):
150 New prototype.
151 * gcc/config/rs6000/rs6000.md (*movdf_hardfloat64):
152 Change 'o' to 'Y' constraint.
153 (*movdf_softfloat64): Ditto.
154
155 2004-01-12 Bernardo Innocenti <bernie@develer.com>
156
157 * gcc/config/m68k/m68k.md: Switch from the "*..." syntax to the
158 brace-enclosed syntax in all C output statements.
159
160 2004-01-12 David Edelsohn <edelsohn@gnu.org>
161
162 PR target/13401
163 * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
164 Objective-C language type value is 14.
165
166 2004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com>
167
168 PR c/12148
169 * config/m68k/fpgnulib.c: Fix `-mshort' bugs: Use `long' instead of
170 `int' in a number of places to make sure we always have a SImode
171 and not a HImode. Add a 'L' suffix to a number of constants.
172
173 2004-01-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
174
175 * pa.c: Don't include obstack.h.
176
177 * pa.md: Correct constraint in pattern for loading PIC label address.
178
179 2004-01-11 Kaz Kojima <kkojima@gcc.gnu.org>
180
181 * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Undefine
182 before defining.
183
184 2004-01-11 Steven Bosscher <stevenb@suse.de>
185
186 * toplev.c (rest_of_handle_inline): Also consider functions
187 for deferral if the language is GNU F77.
188
189 2004-01-11 Zack Weinberg <zack@codesourcery.com>
190
191 * c-decl.c (diagnose_arglist_conflict): Add missing space to
192 diagnostic messages.
193
194 2004-01-11 Jakub Jelinek <jakub@redhat.com>
195
196 PR middle-end/13392
197 * builtins.c (expand_builtin_expect_jump): Handle conditional jumps
198 to drop through label. Don't fall back to SCC even when conditional
199 jump has not been found.
200
201 2004-01-11 Jan Hubicka <jh@suse.cz>
202
203 * invoke.texi: Fix syntax error in previous patch.
204
205 Partial fix for PR opt/10776
206 * Makefile.in (reload.o): Include param.h
207 * params.def (PARAM_MAX_RELOAD_SEARCH_INSNS): New parameter.
208 * reload.c: Include params.h.
209 (find_equiv_reg): Work limiting check.
210 * invoke.texi: Document.
211
212 2004-01-11 Richard Sandiford <rsandifo@redhat.com>
213
214 * config/mips/mips.c (mips_symbolic_constant_p): Don't allow
215 out-of-bounds accesses to string constants. Simplify mips16
216 case accordingly.
217
218 2004-01-11 Richard Sandiford <rsandifo@redhat.com>
219
220 PR optimization/13469
221 * toplev.c (rest_of_compilation): Call purge_all_dead_edges after
222 reload_cse_regs (-fnon-call-exceptions only).
223
224 2004-01-11 Kazu Hirata <kazu@cs.umass.edu>
225
226 * config/mcore/lib1.asm: Fix comment formatting.
227 * config/mcore/mcore-elf.h: Likewise.
228 * config/mcore/mcore.c: Likewise.
229 * config/mcore/mcore.h: Likewise.
230 * config/mcore/mcore.md: Likewise.
231
232 2004-01-10 Zack Weinberg <zack@codesourcery.com>
233
234 * c-decl.c (duplicate_decls): Break apart into...
235 (diagnose_arglist_conflict, validate_proto_after_old_defn)
236 (locate_old_defn, diagnose_mismatched_decls, merge_decls):
237 ... these new functions. Restructure for comprehensibility.
238 Remove various archaic special cases. Always report the
239 location of the previous declaration when a diagnostic is issued.
240 (redeclaration_error_message): Fold into diagnose_mismatched_decls.
241 (match_builtin_function_types): Delete unnecessary forward declaration.
242
243 2004-01-10 Zack Weinberg <zack@codesourcery.com>
244
245 * genautomata.c (make_automaton, NDFA_to_DFA):
246 Print progress bars with '.' characters instead of '*'.
247 (build_automaton): Change notes to match.
248
249 2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
250
251 * config/m32r/m32r.md: Use define_constants for unspec and
252 unspec_volatile.
253
254 2004-01-10 Jan Hubicka <jh@suse.cz>
255
256 PR opt/11635
257 * expr.c (expand_expr_real): More curefully expand union casts.
258
259 2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
260
261 * config/m32r/m32r.md (flush_icache): Use 1 for
262 unspec_volatile.
263
264 2004-01-10 David Edelsohn <edelsohn@gnu.org>
265 James E Wilson <wilson@specifixinc.com>
266
267 PR debug/12860
268 * dbxout.c (dbxout_symbol): Remove initialization of
269 current_sym_code, current_sym_value, and current_sym_addr.
270 (dbxout_symbol_location): Same.
271 (dbxout_prepare_symbol): Zero current_sym_code,
272 current_sym_value, and current_sym_addr.
273
274 2004-01-10 Richard Sandiford <rsandifo@redhat.com>
275
276 * tree.c (get_unwidened): Reorder conditions so that the null pointer
277 check is done first.
278
279 2004-01-09 Eric Christopher <echristo@redhat.com>
280
281 * toplev.c (rest_of_handle_cfg): Add reg_scan pass
282 if we're running mark_constant_function.
283
284 2004-01-09 Jeff Bailey <jbailey@nisa.net>
285
286 PR target/12561
287 * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR.
288
289 2004-01-09 Andrew Pinski <pinskia@physics.uc.edu>
290
291 PR debug/11231
292 * dbxout.c (dbxout_type_fields): Return if any item is
293 error_mark_node or the type is error_mark_node.
294
295 2004-01-09 Geoffrey Keating <geoffk@apple.com>
296
297 * config/rs6000/darwin-ldouble.c: Add big comment explaining
298 exactly what is expected as a 'long double'.
299 (_xlqadd): When a value to be returned is representable as a
300 'double', just return it directly, do not construct it using a union.
301 Also, correct final fixup.
302 (_xlqmul): Likewise.
303 (_xlqdiv): Likewise.
304 * real.c (encode_ibm_extended): Make consistent with darwin-ldouble.c.
305
306 * config/rs6000/rs6000.md (fix_trunctfdi2): Delete.
307
308 2004-01-09 Richard Henderson <rth@redhat.com>
309
310 * recog.c (constrain_operands): Validate mem operands.
311
312 2004-01-09 James E Wilson <wilson@specifixinc.com>
313
314 * gcc.c (init_spec): Remove -lunwind from shared case.
315 * conifg/ia64/t-hpux (SHLIB_LINK): Add -lunwind.
316
317 2004-01-09 Steve Ellcey <sje@cup.hp.com>
318
319 * configure.ac: (gcc_cv_ld_hidden) Set to true for ia64*-*-hpux*.
320 * configure: Regenerate
321
322 2004-01-09 Joseph S. Myers <jsm@polyomino.org.uk>
323
324 PR c/11234
325 * c-typeck.c (build_c_cast): If pedantic, warn for conversions
326 between function and object pointers.
327 (digest_init): When comparing a pointer to function type to the
328 target type, only apply TREE_TYPE once to the pointer to function
329 type.
330 * except.c (for_each_eh_label_1): Treat data as a pointer to a
331 function pointer rather than casting it to a function pointer.
332 (for_each_eh_label): Update caller.
333 * recog.h (struct insn_data): Use a struct or union for output.
334 * genoutput.c (output_insn_data): Update.
335 * final.c (get_insn_template): Update.
336
337 2004-01-09 Mark Mitchell <mark@codesourcery.com>
338
339 * expr.h (expand_expr): Make it a macro, not a function.
340 (expand_expr_real): New function.
341 * expr.c (store_expr): Adjust logic for deciding whether or not to
342 copy the value returned by expand_expr.
343 (expand_expr): Rename to ...
344 (expand_expr_real): ... this. Add alt_rtl parameter. Adjust
345 calls to language hooks.
346 * c-common.h (c_expand_expr): Adjust prototype.
347 * c-common.c (c_expand_expr): Add alt_rtl parameter.
348 * langhooks-def.h (lhd_expand_expr): Change prototype.
349 * langhooks.c (lhd_expand_expr): Add all_rtl parameter.
350 * langhooks.h (lang_hooks): Change type of expand_expr.
351 * stmt.c (stmt_status): Add x_last_expr_alt_rtl.
352 (last_expr_alt_rtl): Likewise.
353 (expand_expr_stmt_value): Set last_expr_alt_rtl.
354 (clear_last_expr): Clear it.
355 (expand_end_stmt_expr): Set RTL_EXPR_ATL_RTL.
356 (expand_end_bindings): Save and restor last_expr_alt_rtl.
357 * tree.def (RTL_EXPR): Give it an additional operand.
358 * tree.h (RTL_EXPR_ALT_RTL): New macro.
359
360 2004-01-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
361
362 * config/m32r/m32r.h (TARGET_CPU_CPP_BUILTINS): Add __m32r__.
363 * config/m32r/m32r.c (call26_operand): Allow in PIC mode.
364
365 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
366
367 PR target/13380.
368 * config/m32r/m32r.md: Replace (reg:SI 17) with (reg:CC 17)
369 or (ne:SI (reg:CC 17) (const_int 0)).
370 Be specific about modes wherever possible.
371
372 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
373
374 * config/m32r/m32r.c (m32r_expand_block_move): Call
375 gen_movestrsi_internal with two more arguments.
376 (m32r_output_block_move): Adjust operand numbers.
377 Properly update the source and destination pointers.
378 * config/m32r/m32r.md (movstrsi_internal): Use 'r' instead of
379 'r+'. Change the set detinations to match_operand.
380
381 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
382
383 * final.c (FIRST_INSN_ADDRESS): Remove.
384 (shorten_branches): Don't use FIRST_INSN_ADDRESS.
385 * system.h (FIRST_INSN_ADDRESS): Poison.
386 * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
387 * config/m32r/m32r-protos.h: Remove the prototype for
388 m32r_first_insn_address.
389 * config/m32r/m32r.c (m32r_first_insn_address): Remove.
390 * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
391 * doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
392
393 2004-01-09 J. Brobecker <brobecker@gnat.com>
394
395 * dwarf2out.c (gen_enumeration_type_die): Return the DIE that
396 we just created.
397 (is_ada_subrange_type): DIEs for enumeration subtypes should be
398 emitted as subrange types too.
399 (subrange_type_die): Add handling of enumeration subtypes.
400
401 2004-01-08 Richard Henderson <rth@redhat.com>
402
403 PR opt/12441
404 Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz>
405 * i386.c (aligned_operand): Be prepared for SUBREGed registers.
406 (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
407 (ix86_address_cost): Be prepared for SUBREGed registers.
408 (legitimate_address_p): Accept SUBREGed registers.
409
410 2004-01-08 Kelley Cook <kcook@gcc.gnu.org>
411
412 * Makefile.in: Rename configure.in to configure.ac
413 * doc/sourcebuild.texi: Likewise.
414 * configure: Regenerate.
415 * config.in: Regenerate.
416
417 2004-01-08 Stuart Hastings <stuart@apple.com>
418
419 * config/i386/i386.md: Typos in MMX/SSE immediate shifts.
420
421 2004-01-08 Jan Hubicka <jh@suse.cz>
422
423 * cgraphunit.c (cgraph_decide_inlining): Fix typo.
424
425 2004-01-08 Geoffrey Keating <geoffk@apple.com>
426
427 * config/rs6000/rs6000.md (cmptf_internal1): Correct branch offset.
428 (UNSPEC_FIX_TRUNC_TF): New constant.
429 (movtf_internal): Make splitter active only when insn is active.
430 (extenddftf2): Rewrite to properly load zero into low part.
431 (extenddftf2_internal): New.
432 (extendsftf2): Rewrite.
433 (truncdftf2): Correct length.
434 (floatditf2): Delete.
435 (fix_trunc_helper): New.
436 (fix_trunctfdi2): Use fix_trunc_helper.
437 (fix_trunctfsi2): Likewise.fix_trunc
438 (fix_trunctfsi2_internal): New.
439
440 * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): lo_sum
441 addresses are legitimate on Darwin even when flag_pic.
442 (rs6000_legitimize_reload_address) [TARGET_MACHO]: Don't create
443 non-offsettable addresses for loads of TFmode constants.
444
445 2004-01-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
446
447 * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Actually emit
448 variables in the appropriate bss section.
449
450 2004-01-09 Alan Modra <amodra@bigpond.net.au>
451
452 * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Ensure
453 target_flags has MASK_POWERPC64 when -m64.
454 * config/rs6000/rs6000.c (processor_target_table): Add MASK_POWERPC64
455 to 620, 630, power3, power4 and rs64a entries.
456 * config/rs6000/rs6000.h (MASK_64BIT): Expand comment.
457
458 2004-01-08 Richard Sandiford <rsandifo@redhat.com>
459
460 * simplify-rtx.c (simplify_immed_subreg): Fix construction of
461 floating-point constants.
462
463 2004-01-08 J. Brobecker <brobecker@gnat.com>
464
465 * dwarf2out.c (subrange_type_die): Add context_die parameter.
466 Create the subrange_type DIE using the given context DIE.
467 (modified_type_die): Update call to subrange_type_die.
468
469 2004-01-08 Zack Weinberg <zack@codesourcery.com>
470
471 * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h:
472 Add multiple-include guard.
473
474 2004-01-08 Hartmut Penner <hpenner@de.ibm.com>
475
476 * gcc/config/rs6000/rs6000.c (easy_vector_constant): Accept
477 all vector constant loadable by vsplt*.
478 (output_vec_const_move): Likewise.
479
480 2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
481
482 PR c/6024
483 * c-typeck.c (comptypes): Only treat enumerated types in the same
484 translation unit as compatible with each other when they are the
485 same type.
486 * doc/extend.texi: Update.
487
488 2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
489
490 PR c/12165
491 * c-decl.c (grokdeclarator): Take type qualifiers of typedefed
492 array type from the array element type.
493
494 2004-01-07 Alan Modra <amodra@bigpond.net.au>
495
496 * config/rs6000/rs6000.c (rs6000_dbx_register_number): New function.
497 * config/rs6000/rs6000-protos.h (rs6000_dbx_register_number): Declare.
498 * config/rs6000/rs6000.h (DWARF_FRAME_REGNUM): Define.
499 (DWARF_REG_TO_UNWIND_COLUMN): Correct column adjustment and comment.
500 * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Define.
501
502 2004-01-06 Eric Christopher <echristo@redhat.com>
503
504 * config/mips/mips.h (MDEBUG_ASM_SPEC): Change for dwarf2 default.
505 (DWARF2_DEBUGGING_INFO): Define.
506 (PREFERRED_DEBUGGING_TYPE): Set to dwarf2.
507 * config/mips/openbsd.h (PREFERRED_DEBUGGING_TYPE): Remove.
508 * config/mips/iris6.h (SUBTARGET_ASM_DEBUGGING_SPEC): Only pass -g0
509 for irix as.
510 (SUBTARGET_ASM_OPTIMIZING_SPEC): Only pass O0 for irix as.
511 * config/mips/iris6gas.h (MDEBUG_ASM_SPEC): Remove.
512 * config/mips/iris5gas.h: Ditto.
513 (DBX_DEBUGGING_INFO): Remove.
514 (DWARF2_DEBUGGING_INFO): Ditto.
515 (MIPS_DEBUGGING_INFO): Ditto.
516 (PREFERRED_DEBUGGING_TYPE): Ditto.
517 * config/mips/elf.h (DWARF2_DEBUGGING_INFO): Remove.
518 (PREFERRED_DEBUGGING_TYPE): Ditto.
519 (SUBTARGET_ASM_DEBUGGING_SPEC): Ditto.
520 * config/mips/elf64.h: Ditto.
521
522 2004-01-06 Jan Hubicka <jh@suse.cz>
523
524 * Makefile.in (STAGEPROFILE_FLAGS_TO_PASS): Use -fprofile-generate.
525 (STAGEFEEDBACK_FLAGS_TO_PASS): Use -fprofile-use.
526
527 2004-01-06 Geoffrey Keating <geoffk@apple.com>
528
529 * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Compile darwin-ldouble.c.
530 (TARGET_LIBGCC2_CFLAGS): Use -mlong-double-128.
531 * config/rs6000/darwin-ldouble.c: New.
532
533 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
534 for constants.
535 (constant_subword): Delete.
536 * rtl.h (constant_subword): Delete prototype.
537 (immed_double_const): Is not in varasm.c.
538 * simplify-rtx.c (simplify_immed_subreg): New.
539 (simplify_subreg): Use simplify_immed_subreg.
540
541 * config/rs6000/rs6000.md (floatsitf2): Use expand_float rather
542 than trying to generate RTL directly.
543 (fix_trunctfsi2): Use expand_fix rather than trying to generate
544 RTL directly.
545
546 * dwarf2out.c (add_const_value_attribute): Remove incorrect comment.
547
548 2004-01-06 David Edelsohn <edelsohn@gnu.org>
549
550 * config/rs6000/xcoff.h (EXTRA_SECTION_FUNCTIONS): Split each
551 function into a separate macro.
552 (read_only_data_section): Add void argument.
553 (private_data_section): Same.
554 (read_only_private_data_section): Same.
555 (toc_section): Same.
556
557 2004-01-06 Jan Hubicka <jh@suse.cz>
558
559 * invoke.texi: Remove typo in last change.
560
561 PR target/10301
562 * config.gcc: Accept opteron and athlon-64 as variants
563 of k8.
564 * i386.c (override_options): Likewise.
565 * invoke.texi (i386 -mtune): Expand documentation.
566
567 2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
568
569 * alias.c: Fix comment typos.
570 * builtins.c: Likewise.
571 * cfg.c: Likewise.
572 * df.c: Likewise.
573 * dominance.c: Likewise.
574 * dwarf2out.c: Likewise.
575 * emit-rtl.c: Likewise.
576 * expr.c: Likewise.
577 * final.c: Likewise.
578 * fold-const.c: Likewise.
579 * gcse.c: Likewise.
580 * genattrtab.c: Likewise.
581 * genrecog.c: Likewise.
582 * gensupport.c: Likewise.
583 * ggc-zone.c: Likewise.
584 * integrate.c: Likewise.
585 * local-alloc.c: Likewise.
586 * loop.c: Likewise.
587 * recog.c: Likewise.
588 * regmove.c: Likewise.
589 * reg-stack.c: Likewise.
590 * reorg.c: Likewise.
591 * rtlanal.c: Likewise.
592 * rtl.h: Likewise.
593 * sched-ebb.c: Likewise.
594 * simplify-rtx.c: Likewise.
595 * toplev.c: Likewise.
596 * varasm.c: Likewise.
597
598 2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
599
600 * doc/install.texi: Fix typos.
601 * doc/invoke.texi: Likewise.
602 * doc/md.texi: Likewise.
603
604 2004-01-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
605
606 * config/m32r/m32r.h (TRAMPOLINE_LINE_SIZE): Changed
607
608 2004-01-06 Jan Hubicka <jh@suse.cz>
609
610 * i386.c (init_cumulative_args): Add handling of MMX_REGPARM.
611 (function_arg_advance): Do not pass aggregates in SSE; deal handling
612 of MMX_REGPARM.
613 (function_arg): Add new warnings about ABI changes; fix SSE_REGPARM;
614 add MMX_REGPARM.
615 * i386.h (ix86_args): Add mmx_words/mmx_regs/mmx_regno fields.
616 (SSE_REGPARM_MAX): Default to 3 on i386 -msse ABI.
617 (MMX_REGPARM_MAX): Similarly for -mmmx.
618
619 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
620
621 * config/sh/linux.h: Fix comment formatting.
622 * config/sh/netbsd-elf.h: Likewise.
623 * config/sh/sh.c: Likewise.
624 * config/sh/sh.h: Likewise.
625 * config/sh/vxworks.h: Likewise.
626
627 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
628
629 * system.h (ASM_OUTPUT_MAIN_SOURCE_FILENAME): Poison.
630 * toplev.c (output_file_directive): Don't use
631 ASM_OUTPUT_MAIN_SOURCE_FILENAME.
632
633 2004-01-05 Daniel Berlin <dberlin@dberlin.org>
634
635 * ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS
636 (USING_MMAP): We don't support non-mmap.
637 (struct alloc_chunk): Steal 1 bit from typecode, use it to mark
638 large objects.
639 (struct page_entry): Remove bytes_free.
640 (struct page_table_chain): Remove.
641 (struct globals): Remove page_table member.
642 (loookup_page_table_entry): Function deleted.
643 (set_page_table_entry): Ditto.
644 (ggc_allocated_p): No longer need page table lookups.
645 (ggc_marked_p): Ditto.
646 (alloc_small_page): Don't care about bytes_free anymore.
647 (alloc_large_page): Round up size.
648 (ggc_alloc_zone_1): Mark large objects as such, and calculate
649 their size the new way.
650 Remove page table lookups and setting.
651 (ggc_get_size): Calculate large object size the new way.
652 (sweep_pages): Redo to account for fact that we no longer have
653 bytes_free.
654 (ggc_collect): No longer need to reincrement bytes_free.
655 (ggc_pch_alloc_object): Handle new large objects properly.
656 (ggc_pch_read): Put PCH stuff into it's own uncollected zone.
657
658 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
659
660 * doc/invoke.texi: Remove a page break.
661
662 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
663
664 * config/avr/avr.c (avr_output_function_prologue): Remove an
665 extra pair of curly braces.
666
667 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
668
669 * config/mn10300/mn10300.c: Fix comment formatting.
670 * config/mn10300/mn10300.h: Likewise.
671
672 2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
673
674 * tree.h: Update documentation on nothrow_flag.
675 * print-tree.c (print_node): Print TREE_NOTHROW as "align-ok" for
676 types.
677
678 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
679
680 * doc/invoke.texi: Remove traces of dead ports.
681
682 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
683
684 * doc/invoke.texi: Add documentation for the MIPS -mexplicit-relocs
685 option.
686
687 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
688
689 PR target/12945
690 * coverage.c (coverage_counter_alloc): Set SYMBOL_FLAG_LOCAL for
691 counter labels.
692 * config/mips/mips.c (INTERNAL_SYMBOL_P): Delete.
693 (mips_classify_symbol): Always treat SYMBOL_REF_FLAG as indicating
694 string constants if TARGET_MIPS16. Use SYMBOL_REF_DECL to check
695 the binding of decl symbols, otherwise check SYMBOL_REF_LOCAL_P.
696 (mips_symbol_insns): Don't trust the local/global classification.
697 (m16_usym8_4, m16_usym5_4): Same mips16 change as mips_classify_symbol.
698 (override_options): Make -mabicalls -fno-unit-at-a-time imply
699 -mno-explicit-relocs.
700 (mips_encode_section_info): Don't use SYMBOL_REF_FLAG to distinguish
701 between local and global symbols.
702
703 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
704
705 * config/mips/mips-protos.h (mips_dangerous_for_la25_p): Declare.
706 (mips_preferred_reload_class): Declare.
707 * config/mips/mips.h (DANGEROUS_FOR_LA25_P): Replace with function.
708 (EXTRA_CONSTRAINT): Update accordingly.
709 (PREFERRED_RELOAD_CLASS): Use mips_preferred_reload_class.
710 * config/mips/mips.c (mips_dangerous_for_la25_p): New function.
711 (mips_preferred_reload_class): New function. Prefer LEA_REGS if
712 mips_dangerous_for_la25_p.
713 (mips_secondary_reload_class): Use LEA_REGS rather than GR_REGS
714 if mips_dangerous_for_la25_p.
715
716 2004-01-05 Bernardo Innocenti <bernie@develer.com>
717
718 * config/m68k/m68k.c (output_andsi3): Fix signed/unsigned comparison
719 warning.
720
721 2004-01-04 Nathanael Nerode <neroden@gcc.gnu.org>
722
723 * configure.ac: Use AC_PROG_CPP_WERROR.
724 * configure: Regenerate.
725
726 2004-01-04 Zack Weinberg <zack@codesourcery.com>
727
728 * .cvsignore: Add autom4te.cache.
729
730 2004-01-04 Richard Sandiford <rsandifo@redhat.com>
731
732 * doc/invoke.texi: Revamp documentation of MIPS options. Remove
733 -mabi=meabi, -mabi-fake-default, -mmips-as, -mgas, -mmips-tfile,
734 -m4650, -mfix7000 and -(m)no-crt0. Put endianness options first,
735 then architecture options, then ABI options. General rewording.
736
737 2004-01-04 Joseph S. Myers <jsm@polyomino.org.uk>
738
739 PR c/3414
740 * doc/extend.texi: Clarify definition of malloc attribute.
741
742 2004-01-04 Jan Hubicka <jh@suse.cz>
743
744 * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency.
745 * cgraph.c (create_edge, dump_cgraph): Update to use inline_failed
746 * cgraph.h (cgraph_edge): Replace inline_call by inline_failed
747 (cgraph_inline_p): Add extra argument reason.
748 * cgraphunit.c: Minor formating fixes.
749 cgraph_first_inlined_callee): New functions.
750 (record_call_1): Record builtins too.
751 (cgraph_analyze_function): Update inline_failed messages.
752 (cgraph_mark_functions_to_output, cgraph_expand_function, cgraph_inlined_into,
753 cgraph_inlined_callees, cgraph_estimate_growth): Update to use inline_failed.
754 (cgraph_check_inline_limits): Likewise; Add argument reason.
755 (cgraph_set_inline_failed): New static function.
756 (cgraph_decide_inlining_of_small_function, cgraph_decide_inlining): Set
757 reasons.
758 (cgraph_inline_p): Add new argument reason.
759 * tree-inline.c (expand_call_inline): Update warning.
760
761 2004-01-03 Nathanael Nerode <neroden@gcc.gnu.org>
762
763 * configure.ac: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
764 with modern equivalents.
765 * configure: Regenerate.
766
767 * configure.ac: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
768 * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
769 * configure: Regenerate.
770
771 * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
772
773 * configure.in: Rename to configure.ac.
774 * configure.ac: Renamed from configure.in; make minimum necessary
775 changes for autoconf 2.5x.
776 * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
777 * configure: Regenerate with autoconf 2.57.
778
779 2004-01-03 Kazu Hirata <kazu@cs.umass.edu>
780
781 * config/mips/linux.h: Fix comment formatting.
782 * config/mips/mips.c: Likewise.
783 * config/mips/mips.h: Likewise.
784 * config/mips/mips.md: Likewise.
785 * config/mips/netbsd.h: Likewise.
786 * config/mips/windiss.h: Likewise.
787
788 2004-01-02 Richard Henderson <rth@redhat.com>
789
790 * config/i386/i386.md (fp constant pool splitter): Reorg suppression
791 for sse and 387; add suppression for mmx.
792
793 2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
794
795 * loop.c (loop_optimize): Free all loops_info's mems.
796
797 * c-typeck.c (finish_init): Free spelling_base before
798 setting it again.
799
800 * cfgloop.c (flow_loops_find): Always free the sbitmap
801 headers.
802
803 * predict.c (estimate_probability): Free bbs after being
804 done with it.
805
806 2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
807
808 * config/mn10300/mn10300.h (PREDICATE_CODES): Add
809 const_8bit_operand and call_address_operand.
810
811 2004-01-02 Jan Hubicka <jh@suse.cz>
812
813 * cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls
814 when there is nothing to inline but warnings are requested.
815 (cgraph_decide_inlining): Fix memory leak.
816
817 2004-01-02 Jan Hubicka <jh@suse.cz>
818
819 * expr.c (store_constructor): Fix pasto in previous patch.
820
821 2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
822
823 * config/i386/cygming.h: Fix comment formatting.
824 * config/i386/djgpp.h: Likewise.
825 * config/i386/gthr-win32.c: Likewise.
826 * config/i386/i386-interix.h: Likewise.
827 * config/i386/i386.c: Likewise.
828 * config/i386/i386.h: Likewise.
829 * config/i386/openbsd.h: Likewise.
830 * config/i386/winnt.c: Likewise.
831 * config/i386/xm-mingw32.h: Likewise.
832
833 2004-01-02 Joseph S. Myers <jsm@polyomino.org.uk>
834
835 * doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update
836 copyright and last modification dates.
837
838 2004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de>
839
840 * doc/install.texi (Specific): Mention x86_64.
841
842 2004-01-01 Hans-Peter Nilsson <hp@bitrange.com>
843
844 * builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]:
845 Call force_operand on plus_constant result.
846
847 2004-01-01 Jan Hubicka <jh@suse.cz>
848
849 * expmed.c (store_bit_field, extract_bit_field): Use new named patterns
850 * expr.c (store_constructor): Use vec_init pattern.
851 * genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init.
852 * optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init
853 (vec_set_optab, vec_extract_optab, vec_init_optab): New.
854 * i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf):
855 New patterns.
856 (sse2_unpc?pd): Fix pattern.
857 (sse2_movlpd): Kill.
858 (sse2_movsd): Deal with movlpd too.
859 * i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd.
860 (ix86_expand_vector_init): New.
861 * emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions.
862 * md.texi (vec_set, vec_extract): Document
863
864 2003-12-31 Jan Hubicka <jh@suse.cz>
865
866 PR opt/13473
867 * recog.c (validate_replace_rtx_1): Take care for RTL sharing inside
868 ASM input operands
869
870 PR opt/12617
871 * toplev.c (dump_file_index): Reorder ce3 and bbro.
872 (dump_file): Likewise.
873 (rest_of_compilation): Likewise.
874
875 PR debug/13367
876 * cgraph.c (cgraph_function_possibly_inlined): Even with
877 flag_really_no_inline we inline always_inline functions.
878 * cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
879 for non-always_inline functions when there is flag_really_no_inline.
880 (cgraph_decide_inlining): Limit work done when not inlining.
881 (cgraph_decide_inlining_incrementally): Likewise.
882 (cgraph_optimize_function): Check whether something got inlined.
883 * c-objc-common.c (c_disregard_inline_limits): Do not always inline
884 extern inline functions when not inlining.
885
886 * opts.c (decode_options): Disable crossjumping at -O1
887 * invoke.texi (-O1): Document change.
888
889 See ChangeLog.10 for earlier changes.