]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
re PR tree-optimization/22360 (upper_bound_in_type and lower_bound_in_type are buggy)
[gcc.git] / gcc / ChangeLog
CommitLineData
ea9a5df4
KH
12005-07-08 Kazu Hirata <kazu@codesourcery.com>
2
3 PR tree-optimization/22360
4 * tree.c (upper_bound_in_type): Fix calculations for casting
5 to a non-wider signed type and casting a signed value to a
6 wider unsigned type.
7 (lower_bound_in_type): Fix calculations for casting to a
8 non-wider signed type.
9
d5c77941
AP
102005-07-08 Andrew Pinski <pinskia@physics.uc.edu>
11
12 PR tree-opt/22356
13 * tree-complex.c (expand_complex_libcall): Produce
14 REALPART_EXPR/IMAGPART_EXPR with the correct type.
15
08a3c5cd
KZ
162005-07-08 Kenneth Zadeck <zadeck@naturalbridge.com>
17
18 * bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
19 bitmap_and_compl_into, bitmap_xor, bitmap_xor_into): Removed "a !=
20 b" assert and inserted fastpath code for this case.
21 (bitmap_ior): Removed "a != b" assert.
22
29f9d52d
KI
232005-07-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
24
25 * config/m32r/linux.h (STARTFILE_SPEC): Support PIE.
26 (ENDFILE_SPEC): Likewise.
27 * config/m32r/m32r.h (ASM_SPEC): Likewise.
28
6a7b00ad
KI
29 * config/m32r/m32r.c (m32r_output_function_epilogue): Care for
30 a large stack frame at epilogue.
31
ce82daed
DB
322005-07-08 David Billinghurst <David.Billinghurst@riotinto.com>
33
34 * final.c: Include sdbout.h when required.
35
ed5b9f96
GK
362005-07-07 Geoffrey Keating <geoffk@apple.com>
37
38 * config.gcc (*-*-darwin*): Only one target-specific header file
39 for generic darwin.
40 (powerpc-*-darwin*): Add version-specific header files.
41 * configure.in (gcc_AC_CHECK_DECLS): Add strverscmp.
42 * config.in: Regenerate.
43 * configure: Regenerate.
44 * gcc.c: Include xregex.h.
45 (version_compare_spec_function): New.
46 (spec_function): Add version-compare.
47 (replace_outfile_spec_function): Reformat comment.
48 (compare_version_strings): New.
49 * config/darwin-c.c (version_as_macro): New.
50 (builtin_define): New.
51 (darwin_cpp_builtins): New.
52 * config/darwin-protos.h (darwin_cpp_builtins): New.
53 * config/darwin.h (CPP_SPEC): Don't define APPLE_CC here.
54 (LIB_SPEC): Make unconditional, update comment.
55 (TARGET_C99_FUNCTIONS): Define.
56 * config/darwin.opt: Sort.
57 (mmacosx-version-min=): New.
58 * config/darwin7.h: Delete.
59 * config/darwin8.h: Delete.
60 * config/i386/darwin.h (): Call darwin_cpp_builtins.
61 * config/rs6000/darwin.h (): Call darwin_cpp_builtins.
62 (TARGET_C99_FUNCTIONS): Define.
63 * config/rs6000/darwin7.h: New.
64 * config/rs6000/darwin8.h: New.
65 * doc/invoke.texi (Darwin Options): Add -mmacosx-version-min=
66 (-mmacosx-version-min): Document.
67
5f7d2979
ILT
682005-07-07 Ian Lance Taylor <ian@airs.com>
69
70 * config/mips/mips.md (abs<mode>2) [GPR]: Remove.
71
94bb1a2d
JDA
722005-07-07 John David Anglin <dave.anglin@nrc-crc.gc.ca>
73
74 PR middle-end/22239
75 * loop.c (loop_givs_rescan): Check that v->new_reg is a REG.
76
1a59548b
KR
772005-07-07 Khem Raj <kraj@mvista.com>
78
79 * config/arm/arm.c (thumb_output_function_prologue): Calculate offset
80 in bytes, not words.
81
5a29b385
PB
822005-07-07 Paul Brook <paul@codesourcery.com>
83
84 * config/arm/arm.c (arm_pad_arg_upward): Compare return value of
85 DEFAULT_FUNCTION_ARG_PADDING to upward.
86
c7e777b5
RH
872005-07-07 Richard Henderson <rth@redhat.com>
88
89 * function.c (locate_and_pad_parm): Record parameter alignment in
90 stack_alignment_needed.
91
b52110d4
DE
922005-07-07 David Edelsohn <edelsohn@gnu.org>
93
94 * config/rs6000/rs6000.md (UNSPEC_SYNC, UNSPEC_SYNC_OP,
95 UNSPEC_SYNC_SWAP, UNSPEC_LWSYNC, UNSPEC_ISYNC): Delete.
96 (UNSPECV_LL, UNSPECV_SC, UNSPECV_ATOMIC, UNSPECV_SYNC,
97 UNSPECV_SYNC_OP, UNSPECV_CMPXCHG, UNSPECV_LWSYNC, UNSPECV_ISYNC): New.
98 (define_attr "type"): Add isync, sync, load_l, store_c.
99 * config/rs6000/sync.md (memory_barrier): Change to define_expand.
100 Create scratch volatile MEM.
101 (sync_internal): New. POWER mnemonic is dcs, not ics. Attribute
102 sync.
103 (load_locked_<mode>): New.
104 (store_conditional_<mode>): New.
105 (sync_compare_and_swap<mode>): Replace with splitter.
106 (sync_lock_test_and_set<mode>): Replace with splitter.
107 (sync_<fetchop><mode>): Change to unspec_volatile UNSPECV_SYNC_OP
108 and UNSPECV_ISYNC.
109 (isync): Change to unspec_volatile UNSPECV_ISYNC. POWER mnemonic
110 is ics. Attribute isync.
111 (lwsync): Change to unspec_volatile UNSPECV_LWSYNC. Attribute
112 lwsync.
113 * config/rs6000/rs6000.c (rs6000_emit_sync): Use UNSPEC_VOLATILE
114 and UNSPECV_SYNC_OP.
115 (emit_unlikely_jump): New.
116 (emit_load_locked): New.
117 (emit_store_conditional): New.
118 (rs6000_split_compare_and_swap): New.
119 (rs6000_split_lock_test_and_set): New.
120 (is_dispatch_slot_restricted): Return 4 for TYPE_LOAD_L,
121 TYPE_STORE_C, TYPE_ISYNC, TYPE_SYNC.
122 * config/rs6000/rs6000-protos.h (rs6000_split_compare_and_swap,
123 rs6000_split_lock_test_and_set): Declare.
124 * config/rs6000/{40x.md,440.md,603.md,6xx.md,7450.md,7xx.md,8540.md,
125 mpc.md,power4.md,power5.md,rios1.md,rios2.md,rs64.md): Add load_l,
126 store_c, isync, sync.
127
2f035a33
KC
1282005-07-07 Kelley Cook <kcook@gcc.gnu.org>
129
130 * Makefile.in (echo_quoted_to_gtyp): New template for outputing
131 filenames to gtyp-gen.h.
132 (s-typ-gen): Use it in place of for loops.
133
8ddf681a
R
1342005-07-07 J"orn Rennecke <joern.rennecke@st.com>
135
136 * hooks.c (hook_bool_rtx_int_false): New function.
137 * hooks.h (hook_bool_rtx_int_false): Declare.
138 * target-def.h (TARGET_COMMUTATIVE_P): Define.
139 (TARGET_INITIALIZER): Add TARGET_COMMUTATIVE_P.
140 * target.h (struct gcc_target): Add commutative_p member.
141 * targhooks.c (hook_bool_rtx_commutative_p): New function.
142 * targhooks.h (hook_bool_rtx_commutative_p): Declare.
143 * pa.c (TARGET_COMMUTATIVE_P): Redefine.
144 (pa_commutative_p): New function.
145 * jump.c (target.h): Include.
146 (rtx_renumbered_equal_p): Use targetm.commutative_p.
147 * doc/tm.texi: Document TARGET_COMMUTATIVE_P.
148
6d057022
AS
1492005-07-07 Adrian Straetling <straetling@de.ibm.com>
150
151 * config/s390/s390-protos.h (s390_expand_clrmem): Delete.
152 (s390_expand_setmem): New.
153 * config/s390/s390.c: Likewise.
154 (print_shift_count_operand): Truncate to 12 bits instead of 6.
155 Adapt comments.
156 * config/s390/s390.md: ("setmem<mode>"): Accept character as
157 general_operand. Call new function "s390_expand_setmem".
158 ("clrmem_long", "*clrmem_long"): Rewrite to ...
159 ("setmem_long", "*setmem_long"): ... this.
160
8daf098e
AS
1612005-07-07 Adrian Straetling <straetling@de.ibm.com>
162
163 * config/s390/s390.c: (optimization_options): Enable
164 TARGET_MVCLE at -Os.
165 * doc/invoke.texi: Document changes in default behaviour.
166 * config/s390/s390.opt: ("mvcle"): Fix typo: is "mmvcle".
167
9ed92901
AS
1682005-07-07 Adrian Straetling <straetling@de.ibm.com>
169
170 * expr.c: (set_storage_via_setmem): Convert opchar to mode
171 defined by back-end.
172
41f12ed0
JJ
1732005-07-07 Jakub Jelinek <jakub@redhat.com>
174
175 * config/sparc/sparc.md (stack_protect_testsi): Put clobbers after
176 all sets in the pattern.
177 * config/rs6000/rs6000.md (stack_protect_testsi,
178 stack_protect_testdi): Likewise.
179
1a557723
JL
1802005-07-06 Jeff Law <law@redhat.com>
181
182 * tree-vrp.c (simplify_using_ranges): Kill.
183 (vrp_finalize): Remove call to simplify_using_ranges.
184 (simplify_stmt_using_ranges): New function extracted from
185 simplify_using_ranges.
186 (simplify_div_or_mod_using_ranges): Likewise.
187 (simplify_abs_using_ranges): Likewise.
188 (simplify_cond_using_ranges): New function.
189 * tree-flow.h (simplify_stmt_using_ranges): Prototype.
190 * tree-ssa-propagate.c (substitute_and_fold): Call
191 simplify_stmt_using_ranges if we have range information.
192
1ad159f9
JW
1932005-07-06 James E. Wilson <wilson@specifixinc.com>
194
ae4d3291
JW
195 * config/ia64/ia64.c (ia64_reorg): Check optimize before
196 ia64_flag_schedule_isns2.
197
198 * config/ia64/ia64.c (ia64_expand_movxf_movrf): Don't word swap when
199 reading/writing general registers.
200 (ia64_function_arg): Revert 2005-06-18 change.
1ad159f9 201
06ae7eb1
JDA
2022005-07-06 John David Anglin <dave.anglin@nrc-crnc.gc.ca>
203
204 * pa.c (legitimize_pic_address): Use gcc_assert instead of abort.
205 (legitimize_tls_address): Use gcc_unreachable instead of abort.
206
0b59e81e
KK
2072005-07-06 Kaz Kojima <kkojima@gcc.gnu.org>
208
209 * function.c (expand_function_end): Revert part of 2005-06-27
210 patch. Do sjlj_emit_function_exit_after after return_label.
211
ef0087a7
KH
2122005-07-06 Kazu Hirata <kazu@codesourcery.com>
213
214 * doc/install.texi (--disable-libssp): New.
215
1d8eeb63
FJ
2162005-07-06 Fariborz Jahanian <fjahanian@apple.com>
217
218 * doc/invoke.texi: Update -fforce-mem documentation.
219 * dojump.c (compare_from_rtx,do_compare_rtx_and_jump): Remove
220 code for -fforce-mem.
221 * expmed.c: (store_bit_field,store_fixed_bit_field,
222 extract_bit_field): Ditto.
223 * expr.c: (convert_move): Ditto.
224 * optabs.c: (expand_binop,expand_twoval_unop,expand_twoval_binop,
225 expand_unop,emit_unop_insn,prepare_cmp_insn,emit_conditional_move,
226 emit_conditional_add,expand_float,expand_fix): Ditto.
227 * opts.c: (decode_options): Remove setting of flag_force_mem flag.
228 (common_handle_option): Issue warning when -fforce-mem specified.
229
c42adccb
PB
2302005-07-06 Paul Brook <paul@codesourcery.com>
231
232 * aclocal.m4: Work around a bug in AC_PATH_PROGS when its last
233 argument is empty.
234 * configure: Regenerate.
235
4b7d2f07
R
2362005-07-06 J"orn Rennecke <joern.rennecke@st.com>
237
238 * sh.c (final_prescan_insn): Undo bogus change from 2005-05-09.
239
4e422b8b
DB
2402005-07-06 Daniel Berlin <dberlin@dberlin.org>
241
242 Fix PR tree-optimization/22319
243 Fix PR tree-optimization/22140
244 Fix PR tree-optimization/22310
245
246 * tree-ssa-structalias.c (do_structure_copy): Give up earlier on
247 variable sized types.
248 Use correct type for intermediate structure on *a = *b structure
249 copies.
250
5b667039
JJ
2512005-07-06 Jakub Jelinek <jakub@redhat.com>
252
253 * config/rs6000/rs6000.h (RS6000_VARARGS_AREA, RS6000_VARARGS_SIZE):
254 Remove.
255 (STARTING_FRAME_OFFSET): Don't add RS6000_VARARGS_AREA.
256 (machine_function): Move typedef to...
257 * config/rs6000/rs6000.c (machine_function): ... here. Add
258 varargs_save_offset field.
259 (rs6000_stack_t): Remove varargs_size field.
260 (setup_incoming_varargs): Allocate varargs save area using
261 assign_stack_local, try to make it as small as possible.
262 Save offset from virtual_stack_vars_rtx to the save area
263 in cfun->machine->varargs_save_offset. Use UNITS_PER_FP_WORD
264 instead of magic 8 when fp word byte size is used.
265 (rs6000_va_start): Use cfun->machine->varargs_save_offset
266 instead of -RS6000_VARARGS_SIZE.
267 (rs6000_stack_info, debug_stack_info,
268 rs6000_initial_elimination_offset): Remove all traces of
269 varargs_size.
270 * config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Remove.
271 * config/rs6000/darwin.h (STARTING_FRAME_OFFSET): Don't add
272 RS6000_VARARGS_AREA.
273
c456a94a
ZD
2742005-07-06 Zdenek Dvorak <dvorakz@suse.cz>
275
276 PR tree-optimization/21963
277 * tree-ssa-loop-ivopts.c (get_computation_aff): Use
278 constant_multiple_of in the same way get_computation_cost_at does.
279
8ec11fe9
JJ
2802005-07-06 Jakub Jelinek <jakub@redhat.com>
281
282 * config/sparc/sparc.h (sparc_compare_emitted): New extern.
283 * config/sparc/sparc.c (sparc_compare_emitted): New variable.
284 (gen_compare_reg): If sparc_compare_emitted is set, clear it
285 and return its previous value.
286 (emit_v9_brxx_insn): Assert sparc_compare_emitted is NULL.
287 * config/sparc/sparc.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New
288 constants.
289 (stack_protect_set, stack_protect_test): New expanders.
290 (stack_protect_setsi, stack_protect_setdi, stack_protect_testsi,
291 stack_protect_testdi): New insns.
292 * config/sparc/linux.h (TARGET_THREAD_SSP_OFFSET): Define.
293 * config/sparc/linux64.h (TARGET_THREAD_SSP_OFFSET): Define.
294
9da4058c
JL
2952005-07-06 Jeff Law <law@redhat.com>
296
297 * tree-ssa-dce.c (cfg_altered): New global.
298 (tree_dce_init): Initialize cfg_altered.
299 (remove_dead_stmt): If we remove an edge in the CFG, then set
300 CFG_ALTERED.
301 (perform_tree_ssa_dce): If we altered the CFG, then invalidate
302 the dominators.
303
1538fc3c
KH
3042005-07-06 Kazu Hirata <kazu@codesourcery.com>
305
306 * Makefile.in (stamp-collect-ld): Use
307 $(ORIGINAL_LD_FOR_TARGET) instead of $<. Don't remove
308 ./collect-ld if it already exists.
309 (stamp-nm): Use $(ORIGINAL_NM_FOR_TARGET) instead of $<.
310 Don't remove ./nm if it already exists.
311
00518cb1
DP
3122005-07-05 Devang Patel <dpatel@apple.com>
313
314 * tree-vectorizer.h (struct _loop_vec_info): Remove loop_line_number.
315 (LOOP_VINFO_LOC, LOOP_LOC): Remove.
316 * tree-vectorizer.c (vect_loop_location): New.
317 (vect_print_dump_info): Use vect_loop_location.
318 (new_loop_vec_info): Do not set LOOP_VINFO_LOC.
319 (vectorize_loops): Set vect_loop_location.
320 * tree-vect-analyze.c (vect_analyze_offset_expr,
321 vect_determin_vectorization_factor, vect_analyze_operations,
322 vect_analyze_scalar_cycles, vect_analyze_data_ref_dependence,
323 vect_analyze_data_ref_dependences, vect_compute_data_ref_alignment,
324 vect_analyze_data_refs_alignment, vect_analyze_data_ref_access,
325 vect_analyze_data_ref_accesses, vect_analyze_pointer_ref_access,
326 vect_object_analysis, vect_analyze_data_refs, vect_mark_relevant,
327 vect_stmt_relevant_p, vect_mark_stmts_to_be_vectorized,
328 vect_can_advance_ivs_p, vect_get_loop_niters, vect_analyze_loop_form,
329 vect_analyze_loop): Adjust vect_print_dump_info API.
330 * tree-vect-transform.c (vect_create_addr_base_for_vector_ref,
331 vect_create_data_ref_ptr, vect_init_vector, vect_get_vec_def_for_operand,
332 vect_finish_stmt_generation, vectorizable_assignment,
333 vectorizable_operation, vectorizable_store, vectorizable_load,
334 vectorizable_live_operation, vectorizable_condition, vect_transform_stmt,
335 vect_update_ivs_after_vectorizer, vect_do_peeling_for_loop_bound,
336 vect_gen_ninters_for_prolog_loop, vect_do_peeling_for_alignment,
337 vect_transform_loop): Same.
338 * tree-vectorizer.c (get_vectype_for_scalar_type, vect_is_simple_use,
339 vect_is_simple_reduction, vect_is_simple_iv_evolution, vectorize_loops):
340 Same.
341
51076f96
RC
3422005-07-05 Randolph Chung <tausq@debian.org>
343
344 * configure.ac (hppa*-*-linux*: Check for a TLS capable gas.
345 * configure: Regenerate.
346 * config/pa/pa-protos.h (tls_symbolic_operand): Declare.
347 (pa_tls_referenced_p): Declare.
348 * config/pa/pa.c (legitimize_pic_address): Reject TLS operands.
349 (gen_tls_tga, gen_tls_get_addr, hppa_tls_call): New.
350 (legitimize_tls_address): New.
351 (hppa_legitimize_address): Handle TLS addresses.
352 (pa_tls_symbol_ref_1, pa_tls_referenced_p): New.
353 (TARGET_CANNOT_FORCE_CONST_MEM): Define.
354 (emit_move_sequence): Handle TLS addresses.
355 (pa_encode_section_info): Call default handler to handle common
356 sections.
357 * config/pa/pa.h (PA_SYMBOL_REF_TLS_P): New.
358 (CONSTANT_ADDRESS_P): Reject TLS operands.
359 (TARGET_HAVE_TLS) [HAVE_AS_TLS]: Define.
360 * config/pa/pa.md (UNSPEC_TP, UNSPEC_TLSGD, UNSPEC_TLSLDM)
361 (UNSPEC_TLSLDO, UNSPEC_TLSLDBASE, UNSPEC_TLSIE)
362 (UNSPEC_TLSLE): Define new constants.
363 (tgd_load, tld_load, tld_offset_load, tp_load, tie_load, tle_load): New.
364 * config/pa/predicates.md (symbolic_operand): Reject TLS operands.
365 (tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand)
366 (tie_symbolic_operand, tle_symbolic_operand): New
367
f04f1d2c
KC
3682005-07-06 Kelley Cook <kcook@gcc.gnu.org>
369
370 * aclocal.m4: Update macros for autoconf 2.59 style.
371 * configure.ac: Likewise.
372
2a04824b
JDA
3732005-07-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
374
375 * pa.c (function_value): Handle small aggregates on 32-bit targets.
376 (function_arg): Pass small aggregates in general registers on 32-bit
377 targets.
378 * som.h (MEMBER_TYPE_FORCES_BLK): Delete define.
379
83522e18
AP
3802005-07-05 Andrew Pinski <pinskia@physics.uc.edu>
381
382 * Makefile.in (final.o): Fix dependencies.
383
73f397d4
JM
3842005-07-05 Joseph S. Myers <joseph@codesourcery.com>
385
386 PR c/22013
387 PR c/22098
388 * langhooks.h (struct lang_hooks): Add expr_to_decl.
389 * langhooks.c (lhd_expr_to_decl): New.
390 * langhooks-def.h (lhd_expr_to_decl, LANG_HOOKS_EXPR_TO_DECL):
391 New.
392 (LANG_HOOKS_INITIALIZER): Update.
393 * tree.c (recompute_tree_invarant_for_addr_expr): Call
394 expr_to_decl langhook.
395 * c-tree.h (c_expr_to_decl): Declare.
396 * c-typeck.c (c_expr_to_decl): New.
397 (build_unary_op): Do not handle ADDR_EXPR of COMPOUND_LITERAL_EXPR
398 specially.
399 * c-objc-common.h (LANG_HOOKS_EXPR_TO_DECL): Define.
400
692a7aa3
JM
4012005-07-05 Joseph S. Myers <joseph@codesourcery.com>
402
403 PR c/22308
404 * c-decl.c (finish_struct): Also copy C_TYPE_FIELDS_READONLY,
405 C_TYPE_FIELDS_VOLATILE and C_TYPE_VARIABLE_SIZE to type variants.
406
ef330312
PB
4072005-07-05 Paolo Bonzini <bonzini@gnu.org>
408
409 * Makefile.in: Adjust dependencies.
410 * tree-pass.h: Add new passes and passes formerly in tree-optimize.c.
411 * basic-block.h (duplicate_computed_gotos): Remove, it is now static.
412 * alias.c (rest_of_handle_cfg, pass_cfg): New.
413 * bb-reorder.c (duplicate_computed_gotos): Make it static.
414 * cfgexpand.c (tree_expand_cfg): Add code formerly at the beginning of
415 rest_of_compilation.
416
417 * bb-reorder.c (gate_duplicate_computed_gotos,
418 pass_duplicate_computed_gotos, gate_handle_reorder_blocks,
419 rest_of_handle_reorder_blocks, pass_reorder_blocks,
420 gate_handle_partition_blocks, rest_of_handle_partition_blocks,
421 pass_partition_blocks): New.
422 * bt-load.c (gate_handle_branch_target_load_optimize,
423 rest_of_handle_branch_target_load_optimize,
424 pass_branch_target_load_optimize): New.
425 * cfgcleanup.c (rest_of_handle_jump, pass_jump, rest_of_handle_jump2,
426 pass_jump2): New.
427 * cfglayout.c (pass_insn_locators_initialize): New.
428 * cfgrtl.c (pass_free_cfg): New.
429 * combine.c (gate_handle_combine, rest_of_handle_combine,
430 pass_combine): New.
431 * cse.c (gate_handle_cse, rest_of_handle_cse, pass_cse,
432 gate_handle_cse2, rest_of_handle_cse2, pass_cse2): New.
433 * emit-rtl.c (pass_unshare_all_rtl, pass_remove_unnecessary_notes): New.
434 * except.c (pass_set_nothrow_function_flags,
435 pass_convert_to_eh_region_ranges, gate_handle_eh, rest_of_handle_eh,
436 pass_rtl_eh): New.
437 * final.c (pass_compute_alignments, rest_of_handle_final, pass_final,
438 rest_of_handle_shorten_branches, pass_shorten_branches,
439 rest_of_clean_state, pass_clean_state): New.
440 * flow.c (pass_recompute_reg_usage, gate_remove_death_notes,
441 rest_of_handle_remove_death_notes, pass_remove_death_notes,
442 rest_of_handle_life, pass_life, rest_of_handle_flow2,
443 pass_flow2): New.
444 * function.c (pass_instantiate_virtual_regs, pass_init_function,
445 rest_of_handle_check_leaf_regs, pass_leaf_regs): New.
446 * gcse.c (gate_handle_jump_bypass, rest_of_handle_jump_bypass,
447 pass_jump_bypass, gate_handle_gcse, rest_of_handle_gcse,
448 pass_gcse): New.
449 * global.c (rest_of_handle_global_alloc, pass_global_alloc): New.
450 * ifcvt.c (gate_handle_if_conversion, rest_of_handle_if_conversion,
451 pass_rtl_ifcvt, gate_handle_if_after_combine,
452 rest_of_handle_if_after_combine, pass_if_after_combine,
453 gate_handle_if_after_reload, rest_of_handle_if_after_reload,
454 pass_if_after_reload): New.
455 * integrate.c (pass_initial_value_sets): New.
456 * jump.c (pass_cleanup_barriers, purge_line_number_notes,
457 pass_purge_lineno_notes): New.
458 * mode-switching.c (rest_of_handle_mode_switching,
459 pass_mode_switching): New.
460 * local-alloc.c (rest_of_handle_local_alloc, pass_local_alloc): New.
461 * loop-init.c (gate_handle_loop2, rest_of_handle_loop2,
462 pass_loop2): New.
463 * loop.c (gate_handle_loop_optimize, rest_of_handle_loop_optimize,
464 pass_loop_optimize): New.
465 * modulo-sched.c (gate_handle_sms, rest_of_handle_sms,
466 pass_sms): New.
467 * postreload-gcse.c (gate_handle_gcse2, rest_of_handle_gcse2,
468 pass_gcse2): New.
469 * postreload.c (gate_handle_postreload, rest_of_handle_postreload,
470 pass_postreload_cse): New.
471 * profile.c (gate_handle_profiling, pass_profiling,
472 rest_of_handle_branch_prob, pass_branch_prob): New.
473 * recog.c (pass pass_split_for_shorten_branches, gate_do_final_split,
474 pass_split_before_regstack, gate_handle_split_before_regstack,
475 gate_handle_peephole2, rest_of_handle_peephole2, pass_peephole2,
476 rest_of_handle_split_all_insns, pass_split_all_insns): New.
477 * reg-stack.c (gate_handle_stack_regs, rest_of_handle_stack_regs,
478 pass_stack_regs): New.
479 * regmove.c (gate_handle_regmove, rest_of_handle_regmove, pass_regmove,
480 gate_handle_stack_adjustments, rest_of_handle_stack_adjustments,
481 pass_stack_adjustments): New.
482 * regrename.c (gate_handle_regrename, rest_of_handle_regrename,
483 pass_regrename): New.
484 * reorg.c (gate_handle_delay_slots, rest_of_handle_delay_slots,
485 pass_delay_slots, gate_handle_machine_reorg,
486 rest_of_handle_machine_reorg, pass_machine_reorg): New.
487 * rtl.h (extern void purge_line_number_notes): New.
488 * sched-rgn.c (gate_handle_sched, rest_of_handle_sched,
489 gate_handle_sched2, rest_of_handle_sched2, pass_sched,
490 pass_sched2): New.
491 * tracer.c (gate_handle_tracer, rest_of_handle_tracer,
492 pass_tracer): New.
493 * value-prof.c (gate_handle_value_profile_transformations,
494 rest_of_handle_value_profile_transformations,
495 pass_value_profile_transformations): New.
496 * var-tracking.c (gate_handle_var_tracking,
497 pass_variable_tracking): New.
498 * web.c (gate_handle_web, rest_of_handle_web, pass_web): New.
499
500 * passes.c (open_dump_file, close_dump_file, rest_of_handle_final,
501 rest_of_handle_delay_slots, rest_of_handle_stack_regs,
502 rest_of_handle_variable_tracking, rest_of_handle_machine_reorg,
503 rest_of_handle_old_regalloc, rest_of_handle_regrename,
504 rest_of_handle_reorder_blocks, rest_of_handle_partition_blocks,
505 rest_of_handle_sms, rest_of_handle_sched, rest_of_handle_sched2,
506 rest_of_handle_gcse2, rest_of_handle_regmove,
507 rest_of_handle_tracer, rest_of_handle_if_conversion,
508 rest_of_handle_if_after_combine, rest_of_handle_if_after_reload,
509 rest_of_handle_web, rest_of_handle_branch_prob,
510 rest_of_handle_value_profile_transformations, rest_of_handle_cfg,
511 rest_of_handle_jump_bypass, rest_of_handle_combine,
512 rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2,
513 rest_of_handle_gcse, rest_of_handle_loop_optimize,
514 rest_of_handle_loop2, rest_of_handle_branch_target_load_optimize,
515 rest_of_handle_mode_switching, rest_of_handle_jump,
516 rest_of_handle_eh, rest_of_handle_stack_adjustments,
517 rest_of_handle_flow2, rest_of_handle_jump2,
518 rest_of_handle_peephole2, rest_of_handle_postreload,
519 rest_of_handle_shorten_branches, rest_of_clean_state,
520 rest_of_compilation): Remove.
521
522 * cgraphunit.c (ipa_passes): Moved from tree-optimize.c.
523 * passes.c (dump_flags, in_gimple_form, all_passes,
524 all_ipa_passes, all_lowering_passes, register_one_dump_file,
525 register_dump_files, next_pass_1, last_verified, execute_todo,
526 execute_one_pass, execute_pass_list, execute_ipa_pass_list): Moved
527 from tree-optimize.c.
528 (init_optimization_passes): Moved from tree-optimize.c,
529 adding the RTL optimizations.
530 * tree-dump.h (dump_info_p, dump_flag): Moved from tree.h.
531 * tree-optimize.c (dump_flags, in_gimple_form, all_passes,
532 all_ipa_passes, all_lowering_passes, register_one_dump_file,
533 register_dump_files, next_pass_1, last_verified, execute_todo,
534 execute_one_pass, execute_pass_list, execute_ipa_pass_list,
535 init_tree_optimization_passes, ipa_passes): Delete.
536 * tree-pass.h (enum tree_dump_index): Moved from tree.h, removing
537 the RTL dumps.
538 (TDF_*, get_dump_file_name, dump_enabled_p, dump_initialized_p,
539 dump_begin, dump_end, dump_node, dump_switch_p, dump_flag_name): Moved
540 from tree.h.
541 (ipa_passes): Remove.
542 (all_passes, all_ipa_passes, all_lowering_passes): Now extern.
543 * tree.h (enum tree_dump_index, TDF_*, get_dump_file_name,
544 dump_enabled_p, dump_initialized_p, dump_begin, dump_end, dump_node,
545 dump_switch_p, dump_flag_name): Moved to tree-pass.h.
546 (dump_info_p, dump_flag): Moved to tree-dump.h.
547
548 * Makefile.in: Adjust dependencies for tree-pretty-print.c,
549 cgraph.c, opts.c.
550 * passes.c (finish_optimization_passes): Use dump_begin
551 and dump_end, TDI_end.
552 (gate_rest_of_compilation): New.
553 (pass_rest_of_compilation): Use it.
554 (gate_postreload, pass_postreload): New.
555 * toplev.c (general_init): Rename init_tree_optimization_passes.
556 * toplev.h (init_tree_optimization_passes): Rename to
557 init_optimizations_passes.
558 * tree-dump.c (dump_flag): Make static.
559 (dump_files): Remove RTL dumps.
560 * tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
561 pass_cleanup_cfg, pass_free_cfg_annotations,
562 pass_cleanup_cfg_post_optimizing, pass_free_datastructures,
563 pass_init_datastructures, pass_fixup_cfg): Make non-static.
564 * tree-pretty-print.c: Include tree-pass.h.
565 * cgraph.c: Include tree-dump.h.
566
47bcb538
DB
5672005-07-04 Daniel Berlin <dberlin@dberlin.org>
568
569 * tree-ssa-structalias.c (get_constraint_exp_from_ssa_var):
570 Only fall back to saying it points to readonly memory if
571 we can't do better.
572
cdc9bfe6
KI
5732005-07-05 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
574
575 * config/m32r/m32r-protos.h: Remove m32r_finalize_pic.
576 * config/m32r/m32r.c (m32r_compute_frame_size,
577 m32r_expand_prologue): Take current_function_profile into
578 account whenever we reference
579 current_function_uses_pic_offset_table.
580 (m32r_finalize_pic): Remove.
581 * config/m32r/m32r.h (FINALIZE_PIC): Likewise.
582
96f52752 5832005-07-05 Kazu Hirata <kazu@codesourcery.com>
e21ba931
KH
584
585 * Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET)
586 instead of $<. Don't remove ./as if it already exists.
587
47971fa7
JDA
5882005-07-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
589
590 PR target/21723
591 * pa.md: Remove fcpy alternative from movhi and movqi patterns.
592 * pa32-regs.h (HARD_REGNO_NREGS): Return two floating point registers
593 for complex modes when generating code for PA 1.0.
594 (VALID_FP_MODE_P): New macro.
595 (HARD_REGNO_MODE_OK): Use VALID_FP_MODE_P. Use non-overlapping register
596 sets for all general and floating point modes. Align wide floating
597 point modes to even register boundaries to comply with architectural
598 requirements.
599 (CLASS_MAX_NREGS): Update to align with change to HARD_REGNO_NREGS.
600 * pa64-regs.h (HARD_REGNO_NREGS): Update comment and formatting.
601 (VALID_FP_MODE_P): New macro.
602 (HARD_REGNO_MODE_OK): Use VALID_FP_MODE_P. Use non-overlapping register
603 sets for all general and floating point modes. Align wide floating
604 point modes to even register boundaries to comply with architectural
605 requirements.
606
f94ac7b6
DN
6072005-07-04 Diego Novillo <dnovillo@redhat.com>
608
609 * tree-dump.c (dump_files): Initialize dump number for .cgraph
610 to 0.
611
4e89ef6b
DN
6122005-07-04 Diego Novillo <dnovillo@redhat.com>
613
614 * tree-ssa-structalias.c: Don't include expr.h.
615
00b847e3
DN
6162005-07-04 Diego Novillo <dnovillo@redhat.com>
617
618 * tree-iterator.h (TSI_NEW_STMT, TSI_SAME_STMT): Fix
619 comments.
620
2238c11d
DB
6212005-07-04 Daniel Berlin <dberlin@dberlin.org>
622
623 Fix PR tree-optimization/22279
624
625 * tree-ssa-structalias.c (offset_overlaps_with_access): Use
626 correct operator.
627
9fd0c419
R
6282005-07-04 J"orn Rennecke <joern.rennecke@st.com>
629
630 * sh.c (output_ieee_ccmpeq): Replace "\\;" with "\n\t".
631
ab532386
JM
6322005-07-03 Joseph S. Myers <joseph@codesourcery.com>
633
634 * bb-reorder.c, c-pch.c, c-pragma.c, c.opt, cfghooks.c, cfgloop.c,
635 cfgrtl.c, cgraphunit.c, config/c4x/c4x.c, config/cris/cris.c,
636 config/frv/frv.c, config/host-darwin.c, config/iq2000/iq2000.c,
637 config/lynx.h, config/m68k/m68k.c, config/pa/pa.c, config/sh/sh.h,
638 config/stormy16/stormy16.c, config/v850/v850.c,
639 config/vax/netbsd-elf.h, coverage.c, dwarf2out.c, emit-rtl.c,
640 except.c, gcc.c, tree-cfg.c, tree-eh.c, tree-ssa.c, xcoffout.c:
641 Avoid "." or "\n" at end of diagnostics and capital letters at
642 start of diagnostics.
643 * combine.c, cse.c: Don't translate dump file output.
644 * toplev.c (print_version): Only translate output if going to
645 stderr.
646
619519c8
KH
6472005-07-03 Kazu Hirata <kazu@codesourcery.com>
648
649 * c-decl.c, tree-object-size.c, tree-vectorizer.c,
650 config/arm/unwind-arm.c, config/arm/unwind-arm.h: Fix comment
651 typos.
652
419df6a2
JDA
6532005-07-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
654
655 * pa.c (fix_range): Fix typo in comment.
656
184afc23
KH
6572005-07-03 Kazu Hirata <kazu@codesourcery.com>
658
659 * tree-vrp.c (extract_range_from_assert): Replace
660 fold (build (...)) with fold_build2.
661
0ce0154c
KG
6622005-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
663
664 * c-format.c (gcc_gfc_format_type, gcc_gfc_flag_pairs,
665 gcc_gfc_char_table, init_dynamic_gfc_info): New.
666 (format_types_orig, handle_format_attribute): Add support for
667 format "gcc_gfc".
668
4c5bc6f8
GDR
6692005-07-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
670
671 * varasm.c (assemble_variable): Fix format specifier thinko.
672
7adaa46c
IR
6732005-07-03 Ira Rosen <irar@il.ibm.com>
674
675 PR tree-optimization/22029 (and 22135)
676 * tree-pretty-print.c (dump_generic_node): Check that the node is not
677 a phi node before calling dump_vops.
678
1966af04
GDR
6792005-07-02 Gabriel Dos Reis <gdr@integrable-solutions.net>
680
681 * tree-dump.h (dump_string_field): Declare.
682 * tree-dump.c: Use it instead of dump_string.
683 (dump_string_field): Make non-static.
684
384a8760
KK
6852005-07-03 Kaz Kojima <kkojima@gcc.gnu.org>
686
687 * config/sh/sh.c (sh_output_mi_thunk): Initialize and clean
688 up the minimal CFG stuff always when optimize > 0. Call
689 split_all_insns_noflow in PIC case if needed.
690
7f3b2bda
GDR
6912005-07-02 Gabriel Dos Reis <gdr@integrable-solutions.net>
692 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
693
694 PR c++/18279
695 * c-decl.c (c_write_global_declarations): Dump contents of
696 external scope to.
697 * tree-dump.c (dequeue_and_dump): Dump abstract origin of a decl.
698 <TRY_FINALLY_EXPR>, <RETURN_EXPR>, <CASE_LABEL_EXPR>, <LABEL_EXPR>,
699 <GOTO_EXPR>, <SWITCH_EXPR>: Add.
700 (dump_enabled_p): Return TRUE if PHASE is TDI_all and any dump
701 is enabled.
702
ea40ba9c
JM
7032005-07-03 Joseph S. Myers <joseph@codesourcery.com>
704
705 * c-common.h (GCC_DIAG_STYLE): Define.
706 * c-tree.h (GCC_DIAG_STYLE): Do not define. Change minimum GCC
707 version for format checking to 4.1.
708 * c-format.c: Include toplev.h after c-common.h.
709 (enum format_type): Add gcc_tdiag_format_type.
710 (gcc_tdiag_length_specs, gcc_tdiag_flag_pairs,
711 gcc_tdiag_flag_specs, gcc_tdiag_char_table): New.
712 (format_types_orig): Add gcc_tdiag.
713 (init_dynamic_diag_info): Support gcc_tdiag formats.
714 (handle_format_attribute): Likewise.
715 * toplev.h (NO_FRONT_END_DIAG, ATTRIBUTE_GCC_FE_DIAG): Remove.
716 (GCC_DIAG_STYLE): Default to __gcc_tdiag__. Change minimum GCC
717 version for format checking to 4.1.
718 (warning0, warning, error, pedwarn, sorry): Use
719 ATTRIBUTE_GCC_DIAG.
720 * config/rs6000/rs6000.c (altivec_expand_builtin), varasm.c
721 (finish_aliases_1): Do not use %qE.
722 * config/arm/arm.c, config/i386/i386.c, config/mmix/mmix.c,
723 config/pdp11/pdp11.c, stor-layout.c, tree-eh.c, tree-ssa.c:
724 Correct format bugs.
725 * config/v850/v850-protos.h (v850_output_aligned_bss): Change size
726 parameter to unsigned HOST_WIDE_INT.
727 * config/v850/v850.c (v850_output_aligned_bss): Likewise.
728
7a31c801
DE
7292005-07-02 David Edelsohn <edelsohn@gnu.org>
730
731 PR middle-end/21742
732 * expr.c (write_complex_part): Use adjust_address for MEM.
733 (read_complex_part): Same.
734
5f013fd0
DB
7352005-07-02 Daniel Berlin <dberlin@dberlin.org>
736
737 Fix PR tree-optimization/22280
738
739 * tree-sra.c (generate_element_init): Remove useless loop.
740
6cb718e4
RH
7412005-07-02 Richard Henderson <rth@redhat.com>
742
5b667039
JJ
743 * config/alpha/alpha.c (alpha_legitimize_address): Check for
744 TLS_MODEL_NONE.
745 (alpha_stdarg_optimize_hook): Use DECL_UID with va_list_vars.
6cb718e4 746
70a9e64b
AP
7472005-07-02 Andrew Pinski <pinskia@physics.uc.edu>
748
749 PR middle-end/14490
750 * fold-const.c (fold_binary): Handle the return value of
751 fold_to_nonsharp_ineq_using_bound if we get back the same operand back.
752 Implement "X +- C1 CMP C2" folding to "X CMP C2 -+ C1".
753
2d0dab7f
JL
7542005-07-02 Jeff Law <law@redhat.com>
755
756 * tree-ssa-dom.c (find_equivalent_equality_comparison): Do not
757 a eliminate type conversion which feeds an equality comparison
758 if the original type or either operand in the comparison is a
759 function pointer.
760
c85ce869
JM
7612005-07-02 Joseph S. Myers <joseph@codesourcery.com>
762
763 * c.opt, common.opt, config/bfin/bfin.opt, config/pa/pa.opt,
764 config/rs6000/rs6000.opt, params.def: Remove "." from end of help
765 texts.
766 * config/avr/avr.c: Do not use '`' as left quote.
767 * config/rs6000/rs6000.c, config/s390/s390.c, opts.c, tree.c:
768 Remove "." from end of diagnostics. Make diagnostics start with
769 lowercase letter.
770
dee15844
JM
7712005-07-02 Zack Weinberg <zack@codesourcery.com>
772 Joseph S. Myers <joseph@codesourcery.com>
773
774 * toplev.c (default_tree_printer): Handle setting location with
775 '+' flag.
776 * c-objc.common.c (c_tree_printer): Likewise.
777 * c-format.c (gcc_diag_flag_specs): Add '+'.
778 (gcc_cdiag_char_table): Allow '+' flag for tree formats.
779 (format_types_orig): Allow '+' flag for gcc_diag and gcc_cdiag
780 formats.
781 * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c,
782 config/arm/pe.c, config/i386/winnt.c, config/ia64/ia64.c,
783 config/mcore/mcore.c, config/sh/symbian.c, config/sol2.c,
784 config/v850/v850.c, function.c, stor-layout.c, toplev.c,
785 tree-inline.c, tree-optimize.c, tree.c, varasm.c: Use '+' flag
786 instead of %J or %H. Use 'q' flag for quoting. Avoid '.' at end
787 of diagnostics. Use %q+D not %s for a decl. Do not pass excess
788 format arguments where %J is used without %D.
789
77008252
JJ
7902005-07-02 Jakub Jelinek <jakub@redhat.com>
791
792 * gcc.c (LINK_SSP_SPEC): Define.
793 (link_ssp_spec): New variable.
794 (LINK_COMMAND_SPEC): Add %(link_ssp).
795 (static_specs): Add link_ssp_spec.
796 * configure.ac (TARGET_LIBC_PROVIDES_SSP): New test.
797 * configure: Rebuilt.
798 * config.in: Rebuilt.
799
800 * config/rs6000/linux.h (TARGET_THREAD_SSP_OFFSET): Define.
801 * config/rs6000/linux64.h (TARGET_THREAD_SSP_OFFSET): Likewise.
802 * config/i386/linux.h (TARGET_THREAD_SSP_OFFSET): Likewise.
803 * config/i386/linux64.h (TARGET_THREAD_SSP_OFFSET): Likewise.
804 * config/rs6000/rs6000.md (stack_protect_set, stack_protect_test):
805 If TARGET_THREAD_SSP_OFFSET is defined, use -0x7010(13) resp.
806 -0x7008(2) instead of reading __stack_chk_guard variable.
807 * config/i386/i386.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): Change
808 number.
809 (UNSPEC_SP_TLS_SET, UNSPEC_SP_TLS_TEST): New constants.
810 (stack_protect_set, stack_protect_test): Use *_tls* patterns
811 if TARGET_THREAD_SSP_OFFSET is defined.
812 (stack_tls_protect_set_si, stack_tls_protect_set_di,
813 stack_tls_protect_test_si, stack_tls_protect_test_di): New insns.
814
815 Revert:
816 2005-06-27 Richard Henderson <rth@redhat.com>
817 * libgcc-std.ver (GCC_4.1.0): New.
818 * libgcc.h (__stack_chk_guard): Declare.
819 (__stack_chk_fail, __stack_chk_fail_local): Declare.
820 * libgcc2.c (L_stack_chk, L_stack_chk_local): New.
821 * mklibgcc.in (lib2funcs): Add them.
822
606c33f1
RH
8232005-07-01 Richard Henderson <rth@redhat.com>
824
825 * config/i386/linux-unwind.h (x86_64_fallback_frame_state): Cast to
826 void * before struct sigcontext *.
827 (x86_fallback_frame_state): Likewise.
828
60d436c9
JW
8292005-07-01 James E. Wilson <wilson@specifixinc.com>
830
831 * doc/invoke.texi (-funit-at-a-time): Correct grammar in second bullet.
832
7898840f
AP
8332005-07-01 Andrew Pinski <pinskia@physics.uc.edu>
834
835 PR tree-opt/22269
836 * tree-ssa-reassoc.c (should_transpose): Fix which operand
837 we check for SSA_NAME for.
838
064be445 8392005-07-01 Daniel Berlin <dberlin@dberlin.org>
dd68d988
DB
840
841 Fix PR tree-optimization/22071
064be445 842
dd68d988
DB
843 * tree-ssa-structalias.c (offset_overlaps_with_access): New
844 function.
845 (get_constraint_for_component_ref): Use it.
846
c50367a2
AP
8472005-07-01 Andrew Pinski <pinskia@physics.uc.edu>
848
849 PR other/22264
850 * diagnostic.c (diagnostic_report_current_module): Use pp_newline to
851 print out the last new line.
852
f9968e3e
HPN
8532005-07-01 Hans-Peter Nilsson <hp@axis.se>
854
855 * config/cris/cris.md (CRIS_CC0_REGNUM): New constant.
856 Swap numbers for CRIS_AP_REGNUM and CRIS_MOF_REGNUM.
857 * config/cris/cris.c (cris_conditional_register_usage): Adjust
858 reg_names[CRIS_CC0_REGNUM] for early CRIS versions.
859 (cris_print_operand) <case REG>: Handle CRIS_CC0_REGNUM.
860 (cris_md_asm_clobbers): Clobber CRIS_CC0_REGNUM for all asms.
861 * config/cris/cris.h (CRIS_CANONICAL_CC0_REGNUM): New macro.
862 (enum reg_class): New member CC0_REGS.
863 (REG_CLASS_FROM_LETTER): Add 'c' for CC0_REGS.
864 (FIRST_PSEUDO_REGISTER, CALL_USED_REGISTERS, REG_ALLOC_ORDER)
865 (HARD_REGNO_MODE_OK, MODES_TIEABLE_P, REG_CLASS_NAMES)
866 (CRIS_SPECIAL_REGS_CONTENTS, REG_CLASS_CONTENTS, REGNO_REG_CLASS)
867 (PREFERRED_RELOAD_CLASS, REGISTER_NAMES, DBX_REGISTER_NUMBER):
868 Adjust for register now described.
869
4f856a3e
JJ
8702005-07-01 Jakub Jelinek <jakub@redhat.com>
871
872 PR target/22262
873 * config/i386/i386.md (stack_protect_test_si,
874 stack_protect_test_di): Add earlyclobber for scratch 3.
875 * config/rs6000/rs6000.md (stack_protect_testsi,
876 stack_protect_testdi): Add earlyclobber for scratch 3,
877 remove earlyclobber from scratch 4.
878
064be445 879Older entries for 2005 can be found in ChangeLog-2005.
This page took 0.158196 seconds and 5 git commands to generate.