]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
function.c (assign_parms_initialize_all): Add unused attribute to fntype.
[gcc.git] / gcc / ChangeLog
CommitLineData
fc2f1f53
SE
12010-04-12 Steve Ellcey <sje@cup.hp.com>
2
3 * function.c (assign_parms_initialize_all): Add unused attribute
4 to fntype.
5
d086d311
RG
62010-04-12 Richard Guenther <rguenther@suse.de>
7
8 * gsstruct.def (GSS_CALL): New.
9 * gimple.def (GIMPLE_CALL): Change to GSS_CALL.
10 * gimple.h: Include tree-ssa-alias.h.
11 (struct gimple_statement_call): New.
12 (union gimple_statement_struct_d): Add gimple_call member.
13 (gimple_call_reset_alias_info): Declare.
14 (gimple_call_use_set): New function.
15 (gimple_call_clobber_set): Likewise.
16 * Makefile.in (GIMPLE_H): Add tree-ssa-alias.h.
17 * gimple.c (gimple_call_reset_alias_info): New function.
18 (gimple_build_call_1): Call it.
19 * lto-streamer-in.c (input_gimple_stmt): Likewise.
20 * tree-inline.c (remap_gimple_stmt): Likewise.
21 (expand_call_inline): Remove callused handling.
22 * cfgexpand.c (update_alias_info_with_stack_vars): Likewise.
23 * tree-dfa.c (dump_variable): Likewise.
24 * tree-parloops.c (parallelize_loops): Likewise.
25 * tree-ssa.c (init_tree_ssa): Likewise.
26 (delete_tree_ssa): Likewise.
27 * tree-flow-inline.h (is_call_used): Remove.
28 * tree-flow.h (struct gimple_df): Remove callused member.
29 * tree-nrv.c (dest_safe_for_nrv_p): Adjust predicate.
30 * tree-ssa-alias.c (dump_alias_info): Remove callused handling.
31 (ref_maybe_used_by_call_p_1): Simplify.
32 (call_may_clobber_ref_p_1): Likewise.
33 * tree-ssa-structalias.c (compute_points_to_sets): Set
34 the call stmt used and clobbered sets.
35 * tree-tailcall.c (suitable_for_tail_opt_p): Adjust predicate.
36 (find_tail_calls): Verify the tail call.
37
af961c7f
RG
382010-04-12 Richard Guenther <rguenther@suse.de>
39
40 * ipa.c (cgraph_postorder): Adjust postorder to guarantee
41 single-iteration always-inline inlining.
42 * ipa-inline.c (cgraph_mark_inline): Do not return anything.
43 (cgraph_decide_inlining): Do not handle always-inline
44 specially.
45 (try_inline): Remove always-inline cycle detection special case.
46 Do not recurse on always-inlines.
47 (cgraph_early_inlining): Do not iterate if not optimizing.
48 (cgraph_gate_early_inlining): remove.
49 (pass_early_inline): Run unconditionally.
50 (gate_cgraph_decide_inlining): New function.
51 (pass_ipa_inline): Use it. Do not run the IPA inliner if
52 not inlining or optimizing.
53 (cgraph_decide_inlining_of_small_functions): Also consider
54 always-inline functions.
55 (cgraph_default_inline_p): Return true for nodes which should
56 disregard inline limits.
57 (estimate_function_body_sizes): Assume zero size and time for
58 nodes which are marked as disregarding inline limits.
59 (cgraph_decide_recursive_inlining): Do not perform recursive
60 inlining on always-inline nodes.
61
fa8351f8
JJ
622010-04-12 Jakub Jelinek <jakub@redhat.com>
63
64 PR bootstrap/43699
65 * c-typeck.c (c_process_expr_stmt): Call mark_exp_read even
66 for exprs satisfying handled_component_p.
67
675c873b
EB
682010-04-12 Eric Botcazou <ebotcazou@adacore.com>
69
70 * expr.c (categorize_ctor_elements_1): Properly count sub-elements of
71 non-constant aggregate elements.
72
73 * gimplify.c (gimplify_init_constructor): Do not pre-evaluate if this
74 is a real initialization.
75
c4712597
SZ
762010-04-12 Shujing Zhao <pearly.zhao@oracle.com>
77
78 PR c/36774
79 * c-decl.c (start_function): Move forward check for nested function.
80
6f50eb9c
KK
812010-04-11 Kaz Kojima <kkojima@gcc.gnu.org>
82
83 * config/sh/sh-protos.h (sh_legitimize_reload_address): Declare.
84 * config/sh/sh.c: Include reload.h.
85 (sh_legitimize_reload_address): New.
86 * config/sh/sh.h (LEGITIMIZE_RELOAD_ADDRESS): Use
87 sh_legitimize_reload_address.
88
c11c09f9
KP
892010-04-11 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
90
91 * config/sh/sh.md (*movqi_pop): New insn pattern.
92 * config/sh/predicates.md (sh_no_delay_pop_operand): New predicate.
93
d72ebc16
UB
942010-04-11 Uros Bizjak <ubizjak@gmail.com>
95
96 * config/i386/i386.md (any_shiftrt): New code iterator.
97 (shiftrt_insn): New code attribute.
98 (shiftrt): Ditto.
99 (<shiftrt_insn><mode>3): Macroize expander from ashr<mode>3 and
100 lshr<mode>3 using any_shiftrt code iterator.
101 (*<shiftrt_insn><mode>3_doubleword): Macroize insn_and_split from
102 *ashr<mode>3_doubleword and *lshr<mode>3_doubleword using
103 any_shiftrt code iterator.
104 (*<shiftrt_insn><mode>3_doubleword peephole2): Macroize peephole2
105 pattern from corresponding peephole2 patterns.
106 (*<shiftrt_insn><mode>3_1): Macroize insn from *ashr<mode>3_1
107 and *lshr<mode>3_1 using any_shiftrt code iterator.
108 (*<shiftrt_insn>si3_1_zext): Ditto from *ashrsi3_1_zext
109 and *lshrsi3_1_zext.
110 (*<shiftrt_insn>qi3_1_slp): Ditto from *ashrqi3_1_slp
111 and *lshrqi3_1_slp.
112 (*<shiftrt_insn><mode>3_cmp): Ditto from *ashr<mode>3_cmp
113 and *lshr<mode>3_cmp.
114 (*<shiftrt_insn><mode>3_cmp_zext): Ditto from *ashr<mode>3_cmp_zext
115 and *lshr<mode>3_cmp_zext.
116 (*<shiftrt_insn><mode>3_cconly): Ditto from *ashr<mode>3_cconly
117 and *lshr<mode>3_cconly.
118
59caab22
UB
1192010-04-11 Uros Bizjak <ubizjak@gmail.com>
120
121 * config/i386/i386.md (*ashr<mode>3_cconly): Fix wrong mode of
122 scratch register.
123 (*lshr<mode>3_cconly): Ditto.
124
9200ac72
UB
1252010-04-11 Uros Bizjak <ubizjak@gmail.com>
126
127 * config/i386/i386.md (lshr<mode>3): Macroize expander from
128 lshr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator.
129 (*lshr<mode>3_doubleword): New insn_and_split_pattern. Macroize
130 pattern from *lshr{di,ti}3_1 and corresponding splitters using
131 DWI mode iterator.
132 (*lshr<mode>3_doubleword peephole2): Macroize peephole2 pattern
133 from corresponding peephole2 patterns.
134 (*lshr<mode>3_1): Merge with *lshr{qi,hi,si}3_1_one_bit and
135 *lshrdi3_1_one_bit_rex64. Macroize insn from *lshr{qi,hi,si}3_cmp
136 and *lshrdi3_cmp_rex64 using SWI mode iterator.
d72ebc16 137 (*lshrsi3_1_zext): Merge with *lshrsi3_1_one_bit_zext.
9200ac72
UB
138 (*lshrqi3_1_slp): Merge with *lshrqi3_1_one_bit_slp.
139 (*lshr<mode>3_cmp): Merge with *lshr{qi,hi,si}3_one_bit_cmp and
140 *lshrdi3_one_bit_cmp_rex64. Macroize insn from *lshr{qi,hi,si}3_cmp
141 and *lshrdi3_cmp_rex64 using SWI mode iterator.
142 (*lshrsi3_cmp_zext): Merge with *lshrsi3_cmp_one_bit_zext.
143 (*lshr<mode>3_cconly): Merge with *lshr{qi,hi,si}3_one_bit_cconly and
144 *lshrdi3_one_bit_cconly_rex64. Macroize insn from
145 *lshr{qi,hi,si}3_cconly and *lshrdi3_cconly_rex64 using
146 SWI mode iterator.
147
27431d88
UB
1482010-04-10 Uros Bizjak <ubizjak@gmail.com>
149
150 * config/i386/i386.md (ashr<mode>3): Macroize expander from
151 ashr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator.
152 (*ashr<mode>3_doubleword): New insn_and_split_pattern. Macroize
153 pattern from *ashr{di,ti}3_1 and corresponding splitters using
154 DWI mode iterator.
155 (*ashr<mode>3_doubleword peephole2): Macroize peephole2 pattern
156 from corresponding peephole2 patterns.
157 (ashrdi3_cvt): Rename from ashrdi3_63_rex64.
158 (ashrsi3_cvt): Rename from ashrsi3_31.
159 (*ashrsi3_cvt_zext): Rename from *ashrsi3_31_zext.
160 (x86_shift<mode>_adj_3): Macroize expander from x86_shift_adj_3
161 and x86_64_shift_adj_3 using SWI48 mode iterator.
162 (*ashr<mode>3_1): Merge with *ashr{qi,hi,si}3_1_one_bit and
163 *ashrdi3_1_one_bit_rex64. Macroize insn from *ashr{qi,hi,si}3_cmp
164 and *ashrdi3_cmp_rex64 using SWI mode iterator.
d72ebc16 165 (*ashrsi3_1_zext): Merge with *ashrsi3_1_one_bit_zext.
27431d88
UB
166 (*ashrqi3_1_slp): Merge with *ashrqi3_1_one_bit_slp.
167 (*ashr<mode>3_cmp): Merge with *ashr{qi,hi,si}3_one_bit_cmp and
168 *ashrdi3_one_bit_cmp_rex64. Macroize insn from *ashr{qi,hi,si}3_cmp
169 and *ashrdi3_cmp_rex64 using SWI mode iterator.
170 (*ashrsi3_cmp_zext): Merge with *ashrsi3_cmp_one_bit_zext.
171 (*ashr<mode>3_cconly): Merge with *ashr{qi,hi,si}3_one_bit_cconly and
172 *ashrdi3_one_bit_cconly_rex64. Macroize insn from
173 *ashr{qi,hi,si}3_cconly and *ashrdi3_cconly_rex64 using
174 SWI mode iterator.
59caab22 175 (sign_extend splitters): Update for renamed ashr{di,si}3_cvt patterns.
27431d88 176 * config/i386/i386.c (ix86_split_ashr): Update for renamed
9200ac72 177 x86_shift<mode>_adj_3 expanders.
27431d88 178
85c9bcd4
WG
1792010-04-10 Wei Guozhi <carrot@google.com>
180
181 PR target/42601
182 * config/arm/arm.c (arm_pic_static_addr): New function.
183 (legitimize_pic_address): Call arm_pic_static_addr when it detects
184 a static symbol.
185 (arm_output_addr_const_extra): Output expression for new pattern.
186 * config/arm/arm.md (UNSPEC_SYMBOL_OFFSET): New unspec symbol.
187
979740a0
BS
1882010-04-10 Bernd Schmidt <bernd.schmidt@codesourcery.com>
189
190 * ira-costs.c (record_reg_classes): Ignore alternatives that are
191 not enabled.
4143fd36
BS
192
193 * Makefile.in (web.o): Depend on insn-config.h and $(RECOG_H).
194 * web.c: Include "insn-config.h" and "recog.h".
195 (union_match_dups): New function.
196 (web_main): Call it.
197 (union_defs): Don't try to recognize match_dups.
198
52c1d580
BS
199 * reload1.c (eliminate_regs_in_insn): Don't restore an operand
200 if doing so would replace the entire pattern.
201
ef0f4a03
UB
2022010-04-09 Uros Bizjak <ubizjak@gmail.com>
203
204 PR target/43707
205 PR target/43709
206 * config/i386/i386.md (*ashl<mode>3_doubleword): Split to insn
207 and splitter pattern. Change splitter operand 1 predicate to
208 nonmemory_operand.
209
add5d998
MJ
2102010-04-09 Martin Jambor <mjambor@suse.cz>
211
212 * ipa-cp.c (ipcp_lats_are_equal): Return true also if the two
213 lattices are addresses of CONST_DECLs with the same initial value.
214 (ipcp_print_all_lattices): Print values of CONST_DECLs.
215 * ipa-prop.c (ipa_print_node_jump_functions): Likewise.
216
43ba743c 2172010-04-09 Eric Botcazou <ebotcazou@adacore.com>
ef0f4a03 218 Bernd Schmidt <bernd.schmidt@codesourcery.com>
43ba743c
EB
219
220 * loop-invariant.c (replace_uses): New static function.
221 (move_invariant_reg): Use it to ensure we can replace the uses.
222
2232010-04-09 Hariharan Sandanagobalane <hariharan@picochip.com>
c3fd7b4d 224
27431d88
UB
225 * config/picochip/picochip.c (picochip_rtx_costs): Use correct
226 function template.
43ba743c 227 (picochip_override_options): Enable section anchors only above -O1.
c3fd7b4d
HS
228 (picochip_reorg): Fixed a couple of build warnings.
229
fcf52686
RO
2302010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
231
232 * configure.ac (plugin -rdynamic test): Log result.
233 * configure: Regenerate.
234 * config/sol2.h (LINK_SPEC): Handle -rdynamic.
235 (RDYNAMIC_SPEC): Define.
236 * config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
237
55c4f715
RO
2382010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
239
240 * configure.ac: Determine Sun ld version numbers.
241 (comdat_group): Restrict GNU ld version checks to gld.
242 (comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
243 (enable_comdat): Support --enable-comdat.
244 * configure: Regenerate.
245 * doc/install.texi (Configuration): Document --enable-comdat.
246
62e08523
RO
2472010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
248
ef0f4a03 249 * config/sparc/sol2-gld.h: Remove SPARC reference. Rename ...
62e08523
RO
250 * config/sol2-gld.h: ... here.
251 * config.gcc (sparc*-*-solaris2*): Reflect this.
252 (i[34567]86-*-solaris2*): Use it.
253
034288ef
SE
2542010-04-09 Steve Ellcey <sje@cup.hp.com>
255
256 * config/ia64/ia64.c (ia64_dfa_new_cycle): Remove unused variable
257 setup_clocks_p.
258 (final_emit_insn_group_barriers): Remove unused variable prev_insn.
259
d0b8780d
MLI
2602010-04-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
261
262 PR 42965
263 * diagnostic.c (diagnostic_initialize): Initialize
264 some_warnings_are_errors.
265 (diagnostic_finish): New.
266 (diagnostic_action_after_output): Call it before exiting.
267 (diagnostic_report_diagnostic): Do not print message here. Set
268 some_warnings_are_errors.
269 * diagnostic.h (diagnostic_context): Delete
270 issue_warnings_are_errors_message. Add some_warnings_are_errors.
271 (diagnostic_finish): Declare.
272 * toplev.c (toplev_main): Call it before exit.
273
93e9807a
JM
2742010-04-09 Jason Merrill <jason@redhat.com>
275
cb6addf4
JM
276 PR c++/42623
277 * c-common.c (c_sizeof_or_alignof_type): Return error_mark_node
278 for incomplete type.
279
93e9807a
JM
280 PR c++/41788
281 * stor-layout.c (finalize_record_size): Don't change TYPE_PACKED
282 based on a warning flag.
283
74367220
RG
2842010-04-09 Richard Guenther <rguenther@suse.de>
285
43ba743c 286 * tree-pretty-print.c (dump_generic_node): Dump TYPE_VECTOR_SUBPARTS.
74367220 287
8351bca7
IS
2882010-04-09 Iain Sandoe <iains@gcc.gnu.org>
289
290 PR bootstrap/43684
ef0f4a03 291 * varasm.c (default_assemble_visibility): Wrap vars that are
8351bca7 292 set, but unused, by targets without GAS.
ef0f4a03 293 * config/rs6000/rs6000.c: (paired_emit_vector_compare):
8351bca7
IS
294 Remove set, but unused, vars.
295 (rs6000_legitimize_tls_address): Likewise.
296 (altivec_expand_dst_builtin): Likewise.
297 * config/darwin.c (machopic_classify_symbol): Likewise.
298 (machopic_indirection_name): Likewise.
ef0f4a03 299
014753cc
UB
3002010-04-09 Uros Bizjak <ubizjak@gmail.com>
301
302 * config/i386/i386.md (DWI): New mode iterator.
303 (S): New mode attribute.
304 (shift_operand): Ditto.
305 (shift_immediate_operand): Ditto.
306 (ashl_input_operand): Ditto.
307 (ashl<mode>3): Macroize expander from ashl{qi,hi,si,di,ti}3_1
308 using SDWIM mode iterator.
309 (*ashl<mode>3_doubleword): New insn_and_split_pattern. Macroize
310 pattern from *ashl{di,ti}3_1 and corresponding splitters using
311 DWI mode iterator.
312 (*ashl<mode>3_doubleword peephole2): Macroize peephole2 pattern
313 from corresponding peephole2 patterns.
314 (x86_shift<mode>_adj_1): Macroize expander from x86_shift_adj_1
315 and x86_64_shift_adj_1 using SWI48 mode iterator.
316 (x86_shift<mode>_adj_2): Ditto.
317 (*ashldi3_1_rex64): Split TYPE_LEA pattern.
318 (*ashl<mode>3_1): Macroize insn from *ashlsi3_1 and *ashldi3_1_rex64
319 using SWI48 mode iterator.
320 (*ashl<mode>3_cmp): Macroize insn from *ashl{qi,hi,si}3_cmp and
321 *ashldi3_cmp_rex64 using SWI mode iterator.
322 (*ashl<mode>3_cconly): Macroize insn from *ashl{qi,hi,si}3_cconly and
323 *ashldi3_cconly_rex64 using SWI mode iterator.
324 * config/i386/i386.c (ix86_split_ashl): Update for renamed
325 x86_shift<mode>_adj_{1,2}.
326 (ix86_split_ashr): Ditto.
327 (ix86_split_lshr): Ditto.
328
88dd7150
RG
3292010-04-09 Richard Guenther <rguenther@suse.de>
330
331 * target.h (builtin_conversion): Pass in input and output types.
332 * targhooks.c (default_builtin_vectorized_conversion): Adjust.
333 * targhooks.h (default_builtin_vectorized_conversion): Likewise.
334 * tree-vect-stmts.c (vectorizable_conversion): Adjust.
335 * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Adjust.
336
337 * config/i386/i386.c (ix86_vectorize_builtin_conversion): Adjust.
338 Handle AVX modes.
339 * config/rs6000/rs6000.c (rs6000_builtin_conversion): Adjust.
340
3f2060fd
RG
3412010-04-09 Richard Guenther <rguenther@suse.de>
342
343 PR target/43152
344 * config/i386/sse.md (vcond<mode>): Handle AVX modes as well.
345
b690cc0f
RG
3462010-04-09 Richard Guenther <rguenther@suse.de>
347
348 * tree-vectorizer.h (struct _stmt_vec_info): Document
349 that vectype is the type of the LHS.
59caab22 350 (supportable_widening_operation, supportable_narrowing_operation):
b690cc0f
RG
351 Get both input and output vector types as arguments.
352 (vect_is_simple_use_1): Declare.
353 (get_same_sized_vectype): Likewise.
354 * tree-vect-loop.c (vect_determine_vectorization_factor):
355 Set STMT_VINFO_VECTYPE to the vector type of the def.
356 (vectorizable_reduction): Adjust.
357 * tree-vect-patterns.c (vect_recog_widen_mult_pattern):
358 Adjust. Specify the output vector type.
359 (vect_pattern_recog_1): Adjust.
360 * tree-vect-stmts.c (get_same_sized_vectype): New function.
361 (vectorizable_call): Adjust.
362 (vectorizable_conversion): Likewise.
363 (vectorizable_operation): Likewise.
364 (vectorizable_type_demotion): Likewise.
365 (vectorizable_type_promotion): Likewise.
366 (vect_analyze_stmt): Set STMT_VINFO_VECTYPE to the vector type of
367 the def.
368 (vect_is_simple_use_1): New function.
369 (supportable_widening_operation): Get both input and output
370 vector types.
371 (supportable_narrowing_operation): Likewise.
372 * tree-vect-slp.c (vect_schedule_slp_instance): Adjust.
373
3e65f251
KT
3742010-04-09 Kai Tietz <kai.tietz@onevision.com>
375
376 * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Add
377 __thiscall and _thiscall as predefined macros.
378 * config/i386/i386.c (ix86_handle_cconv_attribute): Add
379 thiscall attribute handling.
380 (ix86_comp_type_attributes): Likewise.
381 (ix86_function_regparm): Likewise.
382 (ix86_return_pops_args): Likewise.
383 (init_cumulative_args): Likewise.
384 (find_drap_reg): Likewise.
385 (ix86_static_chain): Likewise.
386 (x86_this_parameter): Likewise.
387 (x86_output_mi_thunk): Likewise.
388 (ix86_attribute_table): Add description for thiscall attribute.
014753cc 389 * config/i386/i386.h (ix86_args): Adjust comment for member fastcall.
3e65f251 390 * doc/extend.texi: Add documentation for thiscall.
27431d88 391
dc8d2739
MLI
3922010-04-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
393
394 PR c++/28584
395 * c.opt (Wint-to-pointer-cast): Available in C++.
396 * doc/invoke.texi (Wint-to-pointer-cast): Available in C++.
397
d47d0a8d
EB
3982010-04-08 Eric Botcazou <ebotcazou@adacore.com>
399
400 * tree.h (TREE_ADDRESSABLE): Document its effect for function types.
401 * calls.c (expand_call): Pass the function type to aggregate_value_p.
402 * function.c (aggregate_value_p): Do not honor DECL_BY_REFERENCE on
403 the target function of a CALL_EXPR. Honor TREE_ADDRESSABLE on the
404 function type instead. Reorder and simplify checks.
405
406 * gimplify.c (gimplify_modify_expr_rhs) <WITH_SIZE_EXPR>: New case.
407
dc5ee869
JY
4082010-04-08 Jing Yu <jingyu@google.com>
409 Zdenek Dvorak <ook@ucw.cz>
410
411 PR tree-optimization/42720
412 * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Move one-time
014753cc
UB
413 loop unswitch conditions here from ...
414 (tree_unswitch_single_loop): ... here.
dc5ee869 415
98c07c54
SP
4162010-04-08 Sebastian Pop <sebastian.pop@amd.com>
417
418 * tree-if-conv.c: Fix comments and simplify logic.
419
6cbcfa9d
SP
4202010-04-08 Sebastian Pop <sebastian.pop@amd.com>
421
422 * tree-if-conv.c (if_convertible_loop_p): Remove unused parameter.
423 (tree_if_conversion): Same. Update call to if_convertible_loop_p.
424 (main_tree_if_conversion): Update call to tree_if_conversion.
425
1401cf37
MLI
4262010-04-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
427
428 PR 42485
429 * doc/invoke.texi (-b,-V): Delete.
430 * doc/tm.texi: Do not mention -b.
431 * gcc.c (display_help): Delete -b and -V.
432 (process_command): Delete -b and -V.
433 * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Delete -b and -V.
6cbcfa9d 434
40ac4f73 4352010-04-08 Christian Borntraeger <borntraeger@de.ibm.com>
27431d88 436 Wolfgang Gellerich <gellerich@de.ibm.com>
40ac4f73 437
014753cc
UB
438 Implement target hook for loop unrolling
439 * target.h (loop_unroll_adjust): Add a new target hook function.
440 * target-def.h (TARGET_LOOP_UNROLL_ADJUST): Likewise.
441 * doc/tm.texi (TARGET_LOOP_UNROLL_ADJUST): Document it.
442 * config/s390/s390.c (TARGET_LOOP_UNROLL_ADJUST): Define it.
443 (s390_loop_unroll_adjust): Implement the new target hook for s390.
444 * loop-unroll.c (decide_unroll_runtime_iterations): Call loop unroll
445 target hook.
446 (decide_unroll_stupid): Likewise.
40ac4f73 447
07c60ef7
RO
4482010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
449
450 PR target/43643
451 * config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
452
dd178909
RO
4532010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
454
455 * doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
456 (Specific, *-*-solaris2*): Likewise.
457 Don't prefer Sun as over GNU as.
458
cc6ae6a1
WG
4592010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
460
461 * config/s390/s390.c (override_options): Adjust the z10
014753cc
UB
462 defaults for max-unroll-times, max-completely-peeled-insns
463 and max-completely-peel-times.
cc6ae6a1 464
adfa3cd3
AK
4652010-04-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
466
467 * config/s390/s390.c (s390_expand_movmem): Issue prefetch
468 instructions for z10.
469 (s390_expand_setmem): Likewise.
470 (s390_expand_cmpmem): Likewise.
471
84ae6d7b
RG
4722010-04-08 Richard Guenther <rguenther@suse.de>
473
474 PR tree-optimization/43679
475 * tree-ssa-pre.c (eliminate): Only propagate copies.
476
5a905a2b
JJ
4772010-04-08 Jakub Jelinek <jakub@redhat.com>
478
479 PR bootstrap/43681
480 * expr.c (block_move_libcall_safe_for_call_parm): Avoid
481 set but not used variable warning.
482
7548c1be
WG
4832010-04-08 Wei Guozhi <carrot@google.com>
484
485 PR target/41653
486 * config/arm/arm.c (thumb1_size_rtx_costs): New function.
487 (arm_size_rtx_costs): Call the new function when optimized for size.
488
aa847cc8
JJ
4892010-04-08 Jakub Jelinek <jakub@redhat.com>
490
491 PR debug/43670
492 * cfgexpand.c (expand_debug_expr): If for non-NULL offset
493 op0 is not a MEM, just return NULL instead of assertion
494 failure.
495 (discover_nonconstant_array_refs): Don't walk debug stmts.
496
1dcc82c2
DK
4972010-04-08 Doug Kwan <dougkwan@google.com>
498
499 * configure.ac: Recognize gold and do not use its version number
500 to test ld features.
501 * configure: Regenerate.
502
b0aef8a8
MK
5032010-04-08 Maxim Kuvyrkov <maxim@codesourcery.com>
504
505 PR middle-end/40815
506 * tree-ssa-reassoc.c (broken_up_substracts): Rename to plus_negates.
507 (negate_value): Move code to push elements to broken_up_substracts ...
508 (eliminate_plus_minus_pair): ... here. Push operands that have no
509 negative pair to plus_negates.
510 (repropagate_negates, init_reassoc, fini_reassoc): Update.
511
7a50adb7
RW
5122010-04-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
513
2d413304
RW
514 * doc/install.texi (Configuration): Move description of
515 --enable-lto, --with-libelf*, --enable-gold from Java section to
516 general section.
517
7a50adb7
RW
518 * doc/generic.texi (Working with declarations)
519 (Function Properties, C and C++ Trees): Fix typos.
520 * doc/sourcebuild.texi (Top Level): Likewise.
521
60d3aec4
JJ
5222010-04-07 Jakub Jelinek <jakub@redhat.com>
523
ebfbbdc5
JJ
524 PR c/18624
525 * tree.h (DECL_READ_P): Define.
526 (struct tree_decl_common): Add decl_read_flag.
527 * c-decl.c (pop_scope): If TREE_USED but !DECL_READ_P, issue
528 a set but not used warning.
529 (merge_decls): Merge DECL_READ_P flag.
530 (finish_decl, build_compound_literal): Set DECL_READ_P flag.
531 (finish_function): Issue -Wunused-but-set-parameter diagnostics.
532 * c-common.c (handle_used_attribute, handle_unused_attribute):
533 Likewise.
534 * c-tree.h (default_function_array_read_conversion, mark_exp_read):
535 New prototypes.
536 * c-typeck.c (default_function_array_read_conversion, mark_exp_read):
537 New functions.
538 (default_conversion, c_process_expr_stmt): Call mark_exp_read.
539 * c-parser.c (c_parser_initializer, c_parser_expr_no_commas,
540 c_parser_binary_expression, c_parser_cast_expression,
541 c_parser_expr_list, c_parser_omp_atomic, c_parser_omp_for_loop):
542 Call default_function_array_read_conversion instead of
543 default_function_array_conversion where needed.
544 (c_parser_unary_expression, c_parser_conditional_expression,
545 c_parser_postfix_expression_after_primary, c_parser_initelt):
546 Likewise. Call mark_exp_read where needed.
547 (c_parser_statement_after_labels, c_parser_asm_operands,
548 c_parser_typeof_specifier, c_parser_sizeof_expression,
549 c_parser_alignof_expression, c_parser_initval): Call mark_exp_read
550 where needed.
551 * common.opt (Wunused-but-set-variable, Wunused-but-set-parameter):
552 New.
553 * toplev.c (warn_unused_but_set_variable): Default to warn_unused.
554 (warn_unused_but_set_parameter): Default to warn_unused
555 && extra_warnings.
556 * doc/invoke.texi: Document -Wunused-but-set-variable and
557 -Wunused-but-set-parameter.
558
60d3aec4
JJ
559 * tree-ssa-pre.c (my_rev_post_order_compute): Remove set but not
560 used count variable.
561 * genemit.c (gen_expand, gen_split): Avoid set but not used warnings
562 when operandN variables aren't used in the body of the expander
563 or splitter.
564 * tree-outof-ssa.c (FOR_EACH_ELIM_GRAPH_SUCC,
565 FOR_EACH_ELIM_GRAPH_PRED): Avoid set but not used warnings.
566 * tree-ssa-operands.h (FOR_EACH_SSA_TREE_OPERAND): Likewise.
567 * tree-flow.h (FOR_EACH_IMM_USE_FAST, FOR_EACH_IMM_USE_STMT,
568 FOR_EACH_IMM_USE_ON_STMT): Likewise.
569 * tree.h (FOR_EACH_CONSTRUCTOR_ELT): Likewise.
570 * tree.c (PROCESS_ARG): Likewise.
571
87cf0651
SB
5722010-04-07 Simon Baldwin <simonb@google.com>
573
574 * diagnostic.h (diagnostic_override_option_index): New macro to
575 set a diagnostic's option_index.
576 * c-tree.h (c_cpp_error): Add warning reason argument.
577 * opts.c (_warning_as_error_callback): New.
578 (register_warning_as_error_callback): Store callback for
579 warnings enabled via enable_warning_as_error.
580 (enable_warning_as_error): Call callback, minor code tidy.
581 * opts.h (register_warning_as_error_callback): Declare.
582 * c-opts.c (warning_as_error_callback): New, set cpp_opts flag in
583 response to -Werror=.
584 (c_common_init_options): Register warning_as_error_callback in opts.c.
585 * common.opt: Add -Wno-cpp option.
586 * c-common.c (struct reason_option_codes_t): Map cpp warning
587 reason codes to gcc option indexes.
588 * (c_option_controlling_cpp_error): New function, lookup the gcc
589 option index for a cpp warning reason code.
590 * (c_cpp_error): Add warning reason argument, call
591 c_option_controlling_cpp_error for diagnostic_override_option_index.
592 * doc/invoke.texi: Document -Wno-cpp.
593
2ea9dc64
RG
5942010-04-07 Richard Guenther <rguenther@suse.de>
595
596 * ipa-reference.c (mark_load): Use get_base_address.
597 (mark_store): Likewise.
598
599 * tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Avoid
600 inserting GIMPLE_NOPs into the IL.
601 * tree-ssa-structalias.c (get_constraint_for_component_ref):
602 Explicitly strip handled components and indirect references.
59caab22 603
2ea9dc64
RG
604 * fold-const.c (fold_unary_loc): Do not strip qualifiers when
605 folding address expressions.
606 * gimple.c (gimple_ior_addresses_taken_1): Use get_base_address.
607 * tree-ssa-alias.c (decl_refs_may_alias_p): Do not use
608 operand_equal_p to compare decls.
609 (ptr_deref_may_alias_decl_p): Likewise.
610 * tree-ssa-operands.c (get_asm_expr_operands): Simplify
611 * tree-ssa-forwprop.c (forward_propagate_into_gimple_cond):
612 Handle reversed comparison ops.
613 * tree-sra.c (asm_visit_addr): Use get_base_address.
014753cc 614 * ipa-prop.c (visit_store_addr_for_mod_analysis): Use get_base_address.
2ea9dc64
RG
615 * ipa-reference.c (mark_address): Use get_base_address.
616
95d938ee
RG
6172010-04-07 Richard Guenther <rguenther@suse.de>
618
619 * tree-ssa-forwprop.c (forward_propagate_addr_expr):
620 Propagate constants everywhere.
621
1a299ae4
JJ
6222010-04-07 Jakub Jelinek <jakub@redhat.com>
623
624 PR debug/43516
625 * tree.c (MAX_INT_CACHED_PREC): Define.
626 (nonstandard_integer_type_cache): New array.
627 (build_nonstandard_integer_type): Cache results for precision
628 <= MAX_INT_CACHED_PREC.
629
0d3c82d6
RG
6302010-04-07 Richard Guenther <rguenther@suse.de>
631
632 * doc/invoke.texi (-fargument-alias, -fargument-noalias,
633 -fargument-noalias-global, -fargument-noalias-anything): Remove.
634 * common.opt: Likewise.
014753cc
UB
635 * tree-ssa-structalias.c (intra_create_variable_infos): Adjust comment.
636 * alias.c (base_alias_check): Remove flag_argument_noalias handling.
0d3c82d6
RG
637 (nonoverlapping_memrefs_p): Likewise.
638 * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
639 * opts.c (common_handle_option): Handle OPT_fargument_alias,
640 OPT_fargument_noalias, OPT_fargument_noalias_anything and
641 OPT_fargument_noalias_global for backward compatibility.
642
12bd5a1e
RG
6432010-04-07 Richard Guenther <rguenther@suse.de>
644
645 PR tree-optimization/43270
014753cc 646 * tree-vrp.c (check_array_ref): Fix flexible array member detection.
12bd5a1e
RG
647 * tree-ssa-sccvn.h (fully_constant_vn_reference_p): Declare.
648 * tree-ssa-pre.c (phi_translate_1): Adjust.
649 (fully_constant_expression): Split out vn_reference handling to ...
650 * tree-ssa-sccvn.c (fully_constant_vn_reference_p): ... here.
651 Fold reads from constant strings.
652 (vn_reference_lookup): Handle fully constant references.
653 (vn_reference_lookup_pieces): Likewise.
654 * Makefile.in (expmed.o-warn): Add -Wno-error.
655
a7752396
MJ
6562010-04-07 Martin Jambor <mjambor@suse.cz>
657
658 * tree-sra.c (find_param_candidates): Allow scalar va_list types.
659
6392bea6
IS
6602010-04-07 Iain Sandoe <iains@gcc.gnu.org>
661
662 PR driver/41594
663 * gcc.c: Add -static-libstdc++ to list of recognized options.
664
9af27220
RO
6652010-04-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
666
014753cc 667 * config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to generic.
9af27220 668
83a416b0
RG
6692010-04-07 Richard Guenther <rguenther@suse.de>
670
671 PR middle-end/42617
014753cc
UB
672 * expr.c (expand_expr_real_1): For TARGET_MEM_REFs with pointer
673 bases build simple mem attributes to retain points-to information.
83a416b0 674
366f945f
RG
6752010-04-07 Richard Guenther <rguenther@suse.de>
676
677 PR middle-end/42617
678 * alias.c (ao_ref_from_mem): Without MEM_OFFSET or MEM_SIZE
679 preserve points-to related information.
680
56c47f22
RG
6812010-04-07 Richard Guenther <rguenther@suse.de>
682
683 PR middle-end/42617
684 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not
685 discard plain indirect references.
014753cc 686 * fold-const.c (operand_equal_p): Guard against NULL_TREE type.
56c47f22
RG
687 * tree.c (tree_nop_conversion): Likewise.
688
a42f1217
DS
6892010-04-07 Dodji Seketeli <dodji@redhat.com>
690
691 PR debug/43628
692 * dwarf2out.c (modified_type_die): Ignore artificial typedefs.
693
b97b2634
KT
6942010-04-06 Kai Tietz <kai.tietz@onevision.com>
695
696 * config/i386/i386.c (ix86_handle_cconv_attribute): Ignore
697 calling convention attributes on METHOD_TYPEs for w64 ABI, too.
698
62ef2431
SP
6992010-04-07 Sebastian Pop <sebastian.pop@amd.com>
700
701 * tree-if-conv.c: Fix indentation and comments.
702
baaa8e96
SP
7032010-04-07 Sebastian Pop <sebastian.pop@amd.com>
704
705 * tree-if-conv.c: Sort static functions in topological order.
706
b6779d81
SP
7072010-04-07 Sebastian Pop <sebastian.pop@amd.com>
708
709 * tree-if-conv.c: Fix indentation and comments.
710
9310a3e2
SP
7112010-04-06 Sebastian Pop <sebastian.pop@amd.com>
712
713 PR middle-end/43519
714 * graphite-clast-to-gimple.c (max_signed_precision_type): Use
014753cc
UB
715 lang_hooks.types.type_for_size instead of
716 build_nonstandard_integer_type.
9310a3e2
SP
717 When converting an unsigned type to signed, double its precision.
718 (gcc_type_for_interval): Use lang_hooks.types.type_for_size.
719 (gcc_type_for_iv_of_clast_loop): Call max_signed_precision_type.
014753cc
UB
720 (graphite_create_new_loop_guard): When ub + 1 wraps around,
721 use lb <= ub.
9310a3e2
SP
722
7232010-04-06 Sebastian Pop <sebastian.pop@amd.com>
724
725 PR middle-end/43519
726 * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
727 POINTER_PLUS_EXPR for pointer types.
728
7292010-04-06 Sebastian Pop <sebastian.pop@amd.com>
730
731 PR middle-end/43519
732 * Makefile.in (graphite-clast-to-gimple.o): Depends on langhooks.h.
733 * graphite-clast-to-gimple.c: Include langhooks.h.
734 (max_signed_precision_type): New.
735 (max_precision_type): Takes two types as arguments.
736 (precision_for_value): New.
737 (precision_for_interval): New.
738 (gcc_type_for_interval): New.
739 (gcc_type_for_value): New.
740 (gcc_type_for_clast_term): New.
741 (gcc_type_for_clast_red): New.
742 (gcc_type_for_clast_bin): New.
743 (gcc_type_for_clast_expr): Split up into several functions.
744 (gcc_type_for_clast_eq): Rewritten.
745 (compute_bounds_for_level): New.
746 (compute_type_for_level_1): New.
747 (compute_type_for_level): New.
748 (gcc_type_for_cloog_iv): Removed.
749 (gcc_type_for_iv_of_clast_loop): Rewritten.
750 (graphite_create_new_loop): Compute the lower and upper bound types
751 with gcc_type_for_clast_expr.
752 (graphite_create_new_loop_guard): Same.
753 (find_cloog_iv_in_expr): Removed.
754 (compute_cloog_iv_types_1): Removed.
755 (compute_cloog_iv_types): Removed.
756 (gloog): Do not call compute_cloog_iv_types.
757 * graphite-sese-to-poly.c (new_gimple_bb): Do not initialize
758 GBB_CLOOG_IV_TYPES.
759 (free_data_refs_aux): Do not free GBB_CLOOG_IV_TYPES.
760 * sese.h (struct gimple_bb): Removed field cloog_iv_types.
761 (GBB_CLOOG_IV_TYPES): Removed.
762
7632010-04-06 Sebastian Pop <sebastian.pop@amd.com>
764
765 * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Assert that
766 gimple_phi_num_args of the loop close SSA phi node is equal to 1.
767 (detect_commutative_reduction): Same.
768
a3b9e73c
SP
7692010-04-06 Sebastian Pop <sebastian.pop@amd.com>
770
771 * graphite-clast-to-gimple.c (graphite_verify): Remove redundant
772 call to verify_ssa. Invoke verify_loop_closed_ssa with an extra
773 argument.
774 * graphite-scop-detection.c (canonicalize_loop_closed_ssa_form): Same.
775 * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Same.
776 (rewrite_commutative_reductions_out_of_ssa): Same.
777 * passes.c (execute_function_todo): Call verify_ssa for every pass
778 in the LNO. Invoke verify_loop_closed_ssa with an extra argument.
779 * tree-flow.h (verify_loop_closed_ssa): Update declaration.
780 * tree-parloops.c (parallelize_loops): Invoke verify_loop_closed_ssa
781 with an extra argument.
782 * tree-ssa-loop-manip.c (check_loop_closed_ssa_stmt): Same. Call
783 verify_ssa only when the extra argument is true.
784 (gimple_duplicate_loop_to_header_edge): Invoke verify_loop_closed_ssa
785 with an extra argument.
786 (tree_transform_and_unroll_loop): Same.
787
98b6e9dd
SP
7882010-04-06 Sebastian Pop <sebastian.pop@amd.com>
789
790 * passes.c (execute_function_todo): Call verify_loop_closed_ssa
791 for all the passes of the LNO having LOOP_CLOSED_SSA.
792 * tree-if-conv.c (pass_if_conversion): Remove TODO_verify_loops.
793 * tree-loop-distribution.c (pass_loop_distribution): Same.
794 * tree-pass.h (TODO_verify_loops): Removed.
795 * tree-ssa-loop.c (pass_tree_loop_init): Same.
796 (pass_lim): Same.
797 (pass_tree_unswitch): Same.
798 (pass_predcom): Same.
799 (pass_vectorize): Same.
800 (pass_linear_transform): Same.
801 (pass_graphite_transforms): Same.
802 (pass_iv_canon): Same.
803 (pass_complete_unroll): Same.
804 (pass_complete_unrolli): Same.
805 (pass_parallelize_loops): Same.
806 (pass_loop_prefetch): Same.
807 (pass_iv_optimize): Same.
808
c86a3947
CF
8092010-04-06 Changpeng Fang <changpeng.fang@amd.com>
810
811 PR middle-end/32824
812 * passes.c (init_optimization_passes): Move pass_lim before
813 pass_copy_prop and pass_dce_loop.
814
37794981
JJ
8152010-04-06 Jakub Jelinek <jakub@redhat.com>
816
817 PR target/43667
818 * config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
819 instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
820 (ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
821 MULTI_* defines for 4 argument vpermil2p* builtins.
822
d079b87f
UB
8232010-04-06 Uros Bizjak <ubizjak@gmail.com>
824
825 * config/i386/i386-protos.h (x86_maybe_negate_const_int): Declare.
826 * config/i386/i386.c (x86_maybe_negate_const_int): New.
827 (x86_output_mi_thunk): Use x86_maybe_negate_const_int.
828 * config/i386/i386.md (*add<mode>_1, *addsi_1_zext, *addhi_1,
829 *addhi_1_lea, *addqi_1, *addqi_1_lea, *addqi_1_slp, *add<mode>_2,
830 *addsi_2_zext, *addhi_2, *addqi_2, *add<mode>_3, *addsi_3_zext,
831 *addhi_3, *addqi_3,*add<mode>_5, *addhi_5, *addqi_5):
832 Use x86_maybe_negate_const_int to output insn mnemonic.
833 (*adddi_4, *addsi_4, *addhi_4, *addqi_4): Ditto. Remove overflow
834 check from instruction predicate. Update comments.
835 * config/i386/sync.md (sync_add<mode>): Use
836 x86_maybe_negate_const_int to output insn mnemonic.
b1a0b3b4 837
d079b87f
UB
8382010-04-06 Jan Hubicka <jh@suse.cz>
839
840 PR tree-optimization/42906
841 * tree-ssa-dce.c (mark_control_dependent_edges_necessary): Add
842 IGNORE_SELF argument. Set visited_control_parents for fully
843 processed BBs.
b1a0b3b4
JH
844 (find_obviously_necessary_stmts): Update call of
845 mark_control_dependent_edges_necessary.
d079b87f 846 (propagate_necessity): Likewise. Handle PHI edges more curefully.
b1a0b3b4 847
6593d123
UB
8482010-04-06 Uros Bizjak <ubizjak@gmail.com>
849
850 * config/i386/i386.md: Remove comment about 'e' and 'E'
851 operand modifier.
852
56186ac2
RG
8532010-04-06 Richard Guenther <rguenther@suse.de>
854
855 PR tree-optimization/43627
856 * tree-vrp.c (extract_range_from_unary_expr): Widenings
857 of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
858 not varying.
859
7d11d368
JJ
8602010-04-06 Jakub Jelinek <jakub@redhat.com>
861
d3bccded
JJ
862 * BASE-VER: Change to 4.6.0.
863
7d11d368
JJ
864 PR target/43638
865 * config/i386/i386.c (print_operand): Remove 'e' and 'E' code
866 handling.
867
eb12d0ae
RG
8682010-04-06 Richard Guenther <rguenther@suse.de>
869
870 PR middle-end/43661
871 * fold-const.c (fold_comparison): Handle X * 0 CMP 0.
872
53b79425
RW
8732010-04-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
874
875 * doc/invoke.texi (Optimize Options): Document that LTO
876 won't remove object access purely due to incompatible
877 declarations.
878
7e0ec110
MK
8792010-04-04 Matthias Klose <doko@ubuntu.com>
880
881 * graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
882 Initialize variable.
883
2b22e382
RG
8842010-04-03 Richard Guenther <rguenther@suse.de>
885
886 PR middle-end/42509
887 * alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
888 require a non-NULL MEM_OFFSET.
889
c75c517d
SB
8902010-04-02 Steven Bosscher <steven@gcc.gnu.org>
891
d079b87f 892 * ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
c75c517d
SB
893 basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
894 collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
895 config/alpha/predicates.md, config/arm/arm.md,
896 config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
897 config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
898 config/darwin9.h, config/darwin.c, config/darwin.h,
899 config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
900 config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
901 config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
902 config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
903 config/mips/mips.md, config/mn10300/mn10300.c,
904 config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
905 config/rs6000/aix.h, config/rs6000/dfp.md,
906 config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
907 config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
908 config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
909 config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
910 config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
911 config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
912 c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
913 diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
914 doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
915 doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
916 fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
917 gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
918 graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
919 graphite-dependences.c, graphite-poly.c, graphite-poly.h,
920 graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
921 graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
922 intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
923 ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
924 ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
925 loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
926 objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
927 opt-functions.awk, opth-gen.awk, params.def, passes.c,
928 postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
929 rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
930 store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
931 tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
932 tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
933 tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
934 tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
935 tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
936 tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
937 tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
938 tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
939 tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
940 tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
941 unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
942
4d9e8446
RW
9432010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
944
945 PR other/43620
946 * doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
947 * aclocal.m4: Regenerate.
948
1cdaa211
RG
9492010-04-02 Richard Guenther <rguenther@suse.de>
950
951 PR tree-optimization/43629
952 * tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
953 if we have seen a constant value.
954
d33da5cd
JM
9552010-04-02 Joseph Myers <joseph@codesourcery.com>
956
014753cc 957 * read-rtl.c (read_rtx_1): Give an error for EOF while looking for ']'.
d33da5cd 958
2e5505a4
RE
9592010-04-02 Richard Earnshaw <rearnsha@arm.com>
960
961 PR target/43469
d079b87f 962 * arm.c (legitimize_tls_address): Adjust call to
2e5505a4
RE
963 gen_tls_load_dot_plus_four.
964 (arm_note_pic_base): New function.
965 (arm_cannot_copy_insn_p): Use it.
966 * thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
967 constraint.
968
bdfbd9df
RW
9692010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
970
971 PR bootstrap/43531
972
973 Revert:
974 2009-09-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
975
976 * Makefile.in ($(out_object_file)): Depend on
977 gt-$(basename $(notdir $(out_file))).h.
978
2bc40daa
RC
9792010-04-01 Ralf Corsépius <ralf.corsepius@rtems.org>
980
014753cc 981 * config.gcc (lm32-*-rtems*): Add t-lm32.
2bc40daa
RC
982
9832010-04-01 Joel Sherrill <joel.sherrill@oarcorp.com>
984
014753cc
UB
985 * config.gcc: Add lm32-*-rtems*.
986 * config/lm32/rtems.h: New file.
2bc40daa 987
abfb38d7
DK
9882010-04-01 Dave Korn <dave.korn.cygwin@gmail.com>
989
990 PR target/42609
991 * config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
992
2f43d500
JJ
9932010-04-01 Jakub Jelinek <jakub@redhat.com>
994
995 * dwarf2out.c (output_compilation_unit_header): For
996 -gdwarf-4 use version 4 instead of version 3.
997 (output_line_info): For version 4 and above emit additional
998 maximum ops per insn header field.
999 (DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
1000
1001 * dwarf2out.c (is_c_family, is_java): Remove.
1002 (lower_bound_default): New function.
1003 (add_bound_info, gen_descr_array_type_die): Use it.
1004
777351a5
DS
10052010-04-01 Dodji Seketeli <dodji@redhat.com>
1006
1007 PR debug/43325
1008 * dwarf2out.c (gen_variable_die): Allow debug info for variable
1009 re-declaration when it happens in a function.
1010
6544865a
AH
10112010-04-01 Aldy Hernandez <aldyh@redhat.com>
1012
1013 * cgraph.c (cgraph_add_function_insertion_hook): Update comment.
1014 (cgraph_remove_function_insertion_hook): Same.
1015 (cgraph_call_function_insertion_hooks): Same.
1016
5e9fb3db
RG
10172010-04-01 Richard Guenther <rguenther@suse.de>
1018
1019 PR middle-end/43614
1020 * tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
1021 and TREE_THIS_VOLATILE.
1022 (copy_ref_info): Likewise.
1023 * tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
1024 * tree.c (build6_stat): Ignore side-effects of all but arg5
1025 for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
1026 TARGET_MEM_REF.
1027
eb258d7f
RG
10282010-04-01 Richard Guenther <rguenther@suse.de>
1029
1030 PR tree-optimization/43607
1031 * ipa-type-escape.c (check_call): Do not access non-existing
1032 arguments.
1033
aa8bfcad
RG
10342010-04-01 Richard Guenther <rguenther@suse.de>
1035
1036 PR middle-end/43602
1037 Revert
1038 2010-03-30 Seongbae Park <seongbae.park@gmail.com>
014753cc 1039 Jack Howarth <howarth@bromo.med.uc.edu>
aa8bfcad
RG
1040
1041 * tree-profile.c (tree_init_ic_make_global_vars): Make static
1042 variables TLS.
1043
8c5cfa89
RO
10442010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1045
1046 * doc/install.texi (Prerequisites): Document libelf usability on
1047 IRIX 5/6 and Solaris 2.
1048 (Specific, i?86-*-solaris2.10): No 64-bit default configuration.
1049 Update GNU as, GNU ld requirements.
1050 (Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
1051 Document Sun Studio compiler download.
1052 Update and simplify as, ld recommendations.
1053 (Specific, *-*-solaris2.7): Note obsoletion, removal.
1054
ddcc3550
RO
10552010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1056
9af27220 1057 * config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
ddcc3550
RO
1058 with_tune_32 to pentium4.
1059
93234e58
UB
10602010-04-01 Uros Bizjak <ubizjak@gmail.com>
1061
1062 * config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
1063
ef369ad8
RO
10642010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1065
1066 * doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
1067 obsoletion, removal.
1068 Update IDO URL.
1069 Document GNU as requirement.
1070 Update configure requirements.
014753cc 1071 (Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion, removal.
ef369ad8
RO
1072 Recomment IRIX 6.5.18+.
1073 Document IDF/IDL requirement.
1074 Document GNU as requirement.
1075 Document GNU ld bootstrap failure.
1076 Remove freeware.sgi.com reference.
1077
92d80770
RO
10782010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1079
1080 * doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
1081 UNIX V4.0, V5.0 obsoletion, removal.
1082 Remove --with-gc=simple reference.
1083 Update VM requirements during bootstrap.
1084 Remove -oldas bootstrap description.
1085 Update binutils reference.
1086 Remove comparison failure note.
1087
25d635d9
SP
10882010-03-31 Richard Guenther <rguenther@suse.de>
1089 Zdenek Dvorak <ook@ucw.cz>
1090 Sebastian Pop <sebastian.pop@amd.com>
1091
1092 PR middle-end/43464
1093 * tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
1094 with multiple arguments.
1095 (execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
1096
10972010-03-31 Sebastian Pop <sebastian.pop@amd.com>
1098
1099 * graphite-dependences.c (print_pddr): Call print_pdr with an
1100 extra argument.
1101 * graphite-poly.c (debug_pdr): Add an extra argument for the
1102 verbosity level.
1103 (print_pdr): Same.
1104 (print_pbb_domain): Same.
1105 (print_pbb): Same.
1106 (print_scop_context): Same.
1107 (print_scop): Same.
1108 (print_cloog): Same.
1109 (debug_pbb_domain): Same.
1110 (debug_pbb): Same.
1111 (print_pdrs): Same.
1112 (debug_pdrs): Same.
1113 (debug_scop_context): Same.
1114 (debug_scop): Same.
1115 (debug_cloog): Same.
1116 (print_scop_params): Same.
1117 (debug_scop_params): Same.
1118 (print_iteration_domain): Same.
1119 (print_iteration_domains): Same.
1120 (debug_iteration_domain): Same.
1121 (debug_iteration_domains): Same.
1122 (print_scattering_function): Same.
1123 (print_scattering_functions): Same.
1124 (debug_scattering_function): Same.
1125 (debug_scattering_functions): Same.
1126 * graphite-poly.h (debug_pdr): Update declaration.
1127 (print_pdr): Same.
1128 (print_pbb_domain): Same.
1129 (print_pbb): Same.
1130 (print_scop_context): Same.
1131 (print_scop): Same.
1132 (print_cloog): Same.
1133 (debug_pbb_domain): Same.
1134 (debug_pbb): Same.
1135 (print_pdrs): Same.
1136 (debug_pdrs): Same.
1137 (debug_scop_context): Same.
1138 (debug_scop): Same.
1139 (debug_cloog): Same.
1140 (print_scop_params): Same.
1141 (debug_scop_params): Same.
1142 (print_iteration_domain): Same.
1143 (print_iteration_domains): Same.
1144 (debug_iteration_domain): Same.
1145 (debug_iteration_domains): Same.
1146 (print_scattering_function): Same.
1147 (print_scattering_functions): Same.
1148 (debug_scattering_function): Same.
1149 (debug_scattering_functions): Same.
1150
11512010-03-31 Sebastian Pop <sebastian.pop@amd.com>
1152
1153 * graphite-poly.c (print_scattering_function_1): New.
1154 (print_scattering_function): Call it.
1155 (print_scop_params): Remove spaces at the end of lines.
1156 (print_cloog): New.
1157 (debug_cloog): New.
1158 * graphite-poly.h (print_cloog): Declared.
1159 (debug_cloog): Declared.
1160
11612010-03-31 Sebastian Pop <sebastian.pop@amd.com>
1162
1163 * graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
1164 in loop->header.
1165 * tree-flow.h (canonicalize_loop_ivs): Updated declaration.
1166 * tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
1167 * tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
1168 to switch between adding the IV bump in loop->latch or in loop->header.
1169
11702010-03-31 Sebastian Pop <sebastian.pop@amd.com>
1171
1172 * graphite-poly.c (print_scattering_function): Pretty print following
1173 the scoplib format.
1174 (print_pdr): Same.
1175 (print_pbb_domain): Same.
1176 (dump_gbb_cases): Same.
1177 (dump_gbb_conditions): Same.
1178 (print_pdrs): Same.
1179 (print_pbb): Same.
1180 (print_scop_params): Same.
1181 (print_scop_context): Same.
1182 (print_scop): Same.
1183 (print_pbb_body): New.
1184 (lst_indent_to): New.
1185 (print_lst): Start new lines with a #.
1186 * graphite-poly.h (pbb_bb): New.
1187 (pbb_index): Use pbb_bb.
1188 * graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
1189 disjuncts.
1190 * tree-data-ref.c (dump_data_reference): Start new lines with a #.
1191
2080bd29
JJ
11922010-03-31 Jakub Jelinek <jakub@redhat.com>
1193
290d8971
JJ
1194 * dwarf2out.c (size_of_die): For -gdwarf-4 use
1195 uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
1196 and 0 instead of 1 for dw_val_class_flag.
1197 (value_format): For -gdwarf-4 use DW_FORM_sec_offset for
1198 dw_val_class_range_list, dw_val_class_loc_list,
1199 dw_val_class_lineptr and dw_val_class_macptr, use
1200 DW_FORM_flag_present for dw_val_class_flag and
1201 DW_FORM_exprloc for dw_val_class_loc.
1202 (output_die): For -gdwarf-4 print dw_val_class_loc
1203 size as uleb128 instead of 1 or 2 bytes and don't print
1204 anything for dw_val_class_flag.
1205
109f4af3
JJ
1206 * var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
1207 instead of cselib_lookup following by tweaking locs->setting_insn.
1208
2080bd29
JJ
1209 PR bootstrap/43596
1210 * cselib.c (cselib_process_insn): Clear cselib_current_insn
1211 even before returning from label, setjmp call or volatile asm
1212 handling.
1213
33283dad
RG
12142010-03-31 Richard Guenther <rguenther@suse.de>
1215
1216 PR middle-end/43600
1217 * cgraphunit.c (cgraph_output_in_order): Do not allocate
1218 temporary data on stack.
1219
a0c21029
RO
12202010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1221
1222 * config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
1223 (PUSHSECTION_ASM_OP): Remove.
1224 (POPSECTION_ASM_OP): Remove.
1225 (PUSHSECTION_FORMAT): Remove.
1226 * config/sol2.h (PUSHSECTION_FORMAT): Define.
1227 * config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
1228 * config/sol2.c (solaris_output_init_fini): Use it.
1229
a3f410a2
JZ
12302010-03-31 Jie Zhang <jie@codesourcery.com>
1231
1232 PR 43574
1233 * opt-functions.awk (var_type_struct): Use signed char type
1234 for simple variables.
1235
f0c01ffd
RO
12362010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1237
1238 * config/sol2.c: Include output.h.
1239 (solaris_assemble_visibility): New function.
1240 * config/t-sol2 (sol2.o): Add output.h dependency.
1241 * config/sol2-protos.h (solaris_assemble_visibility): Declare.
1242 * config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
1243 Redefine.
1244
132b4e82
JJ
12452010-03-31 Jakub Jelinek <jakub@redhat.com>
1246
d8d55ac0
JJ
1247 PR target/43580
1248 * config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
1249 V2SImode or XFmode on PRE_DEC.
1250
132b4e82
JJ
1251 PR debug/43557
1252 * cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
1253 BLKmode.
1254
dc12b70e
JZ
12552010-03-31 Jie Zhang <jie@codesourcery.com>
1256
1257 PR 43562
1258 * reload.h (caller_save_initialized_p): Declare.
1259 * toplev.c (backend_init_target): Don't call
93234e58 1260 init_caller_save but set caller_save_initialized_p to false.
dc12b70e
JZ
1261 * caller-save.c (caller_save_initialized_p): Define.
1262 (init_caller_save): Check caller_save_initialized_p.
1263 * ira.c (ira): Call init_caller_save if flag_caller_saves.
1264
4a2f22ff
RO
12652010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1266
1267 PR target/39048
1268 * config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
1269 and soft-fp/t-softfp to tmake_file.
1270 * config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
1271 (LIBGCC2_TF_CEXT): Define.
1272 (TF_SIZE): Define.
1273
5847e8da
AO
12742010-03-30 Alexandre Oliva <aoliva@redhat.com>
1275
1276 PR debug/42977
1277 * cselib.c (n_useless_values): Document handling of debug locs.
1278 (n_useless_debug_values, n_debug_values): New variables.
1279 (new_elt_loc_list): Don't add to debug values, keep count.
1280 (promote_debug_loc): New.
1281 (cselib_reset_table): Zero new variables.
1282 (entry_and_rtx_equal_p): Promote debug locs.
1283 (discard_useless_locs): Increment n_useless_debug_values for
1284 debug values.
1285 (remove_useless_values): Adjust n_useless_values and n_debug_values
1286 with n_useless_debug_values.
1287 (add_mem_for_addr): Promote debug locs.
1288 (cselib_lookup_mem): Likewise.
1289 (cselib_lookup_addr): Renamed to...
93234e58 1290 (cselib_lookup_addr_1): ... this. Promote debug locs. Don't call...
5847e8da
AO
1291 (cselib_log_lookup): ... this. Turn into...
1292 (cselib_lookup_addr): ... new wrapper.
1293 (cselib_lookup_from_insn): New.
1294 (cselib_invalidate_regno): Increment n_useless_debug_values for
1295 debug values.
1296 (cselib_invalidate_mem): Likewise.
1297 (cselib_process_insn): Take n_deleted and n_debug_values into
1298 account to guard remove_useless_value call.
1299 (cselib_finish): Zero n_useless_debug_values.
1300 * cselib.h (cselib_lookup_from_insn): Declare.
1301 * sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
1302 (sched_analyze_2): Likewise.
1303
03a5f060
JJ
13042010-03-30 Jakub Jelinek <jakub@redhat.com>
1305
e9e00885
JJ
1306 * var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
1307 functions.
1308 (adjust_mems): Replace narrowing SUBREG of expression containing
1309 just PLUS, MINUS, MULT and ASHIFT of registers and constants
1310 with operations in the narrower mode.
1311
03a5f060 1312 PR debug/43593
93234e58
UB
1313 * var-tracking.c (dataflow_set_clear_at_call): Invalidate just
1314 regs_invalidated_by_call instead all call_used_reg_set registers.
03a5f060 1315
8533c9d8
SP
13162010-03-30 Sebastian Pop <sebastian.pop@amd.com>
1317
1318 PR middle-end/43430
1319 * tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
1320 pointer comparisons with types_compatible_p.
1321 * tree-vect-stmts.c (vectorizable_call): Same.
1322 (vectorizable_condition): Same.
1323
a3e7e012
AK
13242010-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1325
1326 * config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
1327 stack check if the mask would be zero.
1328
40ae6799
SP
13292010-03-30 Seongbae Park <seongbae.park@gmail.com>
1330 Jack Howarth <howarth@bromo.med.uc.edu>
1331
1332 * tree-profile.c (tree_init_ic_make_global_vars): Make static
1333 variables TLS.
1334
2bcba94b
JM
13352010-03-30 Joseph Myers <joseph@codesourcery.com>
1336
1337 PR other/25232
1338 * libgcc-std.ver (GCC_4.5.0): Define version. Include __unordxf2
1339 and __unordtf2.
1340 * config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
1341 Include ___unordxf2 and ___unordtf2.
1342 * config/i386/libgcc-glibc.ver: Do not define inheritance from
1343 GCC_4.4.0 here.
1344
15baf7f8
TG
13452010-03-30 Tarik Graba <tarik.graba@telecom-paristech.fr>
1346
1347 * config/lm32/t-lm32: New file.
1348 * config.gcc: Use the above file when targetting lm32.
1349
fba48836
DS
13502010-03-28 Duncan Sands <baldrick@free.fr>
1351
93234e58 1352 * Makefile.in (PLUGIN_HEADERS): Add except.h.
fba48836 1353
49a71bc8
SP
13542010-03-29 Sebastian Pop <sebastian.pop@amd.com>
1355
1356 PR middle-end/43431
1357 * tree-vect-loop.c (vect_estimate_min_profitable_iters):
1358 Improve vectorization cost model diagnostic.
1359
22a8be9e
SP
13602010-03-29 Sebastian Pop <sebastian.pop@amd.com>
1361
1362 PR middle-end/43436
1363 * tree-vect-data-refs.c (vect_analyze_data_refs): When
1364 compute_data_dependences_for_loop returns false, early exit
1365 and output an extra diagnostic for the failed data reference
1366 analysis.
1367
58adb739
RG
13682010-03-29 Richard Guenther <rguenther@suse.de>
1369
1370 PR tree-optimization/43560
93234e58
UB
1371 * tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
1372 (can_sm_ref_p): Treat stores to readonly locations as trapping.
58adb739 1373
3b34d92c
JZ
13742010-03-29 Jie Zhang <jie@codesourcery.com>
1375
1376 PR 43564
1377 * toplev.c (process_options): Set optimization_default_node
1378 and optimization_current_node.
1379 * opts.c (decode_options): Don't set optimization_default_node
1380 and optimization_current_node.
1381
090f6087
RC
13822010-03-29 Ralf Corsépius <ralf.corsepius@rtems.org>
1383
1384 * config/rtems.h: Abandon -qrtems_debug.
1385
88cc1e04
JH
13862010-03-28 Jan Hubicka <jh@suse.cz>
1387
1388 PR tree-optimization/43505
1389 * cgraph.c (cgraph_clone_node): When clonning a clone, replacement
1390 map should not be copied.
1391
b932b8b1
JDA
13922010-03-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1393
1394 PR middle-end/41674
1395 * cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
1396 cdtors, set DECL_PRESERVE_P.
1397 * ipa.c (cgraph_externally_visible_p): Return true if declaration
1398 should be preseved.
1399
fb6807b8
UB
14002010-03-27 Uros Bizjak <ubizjak@gmail.com>
1401
1402 PR tree-optimization/43528
1403 * stor-layout.c (place_field): Check that constant fits into
1404 unsigned HWI when skipping calculation of MS bitfield layout.
1405
a9deb256
JH
14062010-03-27 Jan Hubicka <jh@suse.cz>
1407
1408 PR middle-end/43391
1409 * varasm.c (make_decl_rtl): Deal with COMMON flag to make
1410 notice_global_symbol work.
1411
5a9c8a1b
JJ
14122010-03-27 Jakub Jelinek <jakub@redhat.com>
1413
1414 * dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
1415 instead of dwarf2out_decl.
1416 (struct var_loc_node): Remove section_label field.
1417 (dwarf2out_function_decl): New function.
1418 (dwarf2out_var_location): Don't set section_label field.
1419 (dwarf2out_begin_function): Don't empty decl_loc_table here.
1420
62f7fd21
MM
14212010-03-26 Michael Meissner <meissner@linux.vnet.ibm.com>
1422
1423 PR tree-optimization/43544
1424 * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
1425 First argument for builtin vectorized function hook is now a
1426 tree to be able to distinguish between machine specific and
1427 standard builtins.
1428 * targhooks.c (default_builtin_vectorized_function): Ditto.
1429 * targhooks.h (default_builtin_vectorized_function): Ditto.
1430 * target.h (struct gcc_target): Ditto.
1431 * tree-vect-stmts.c (vectorizable_function): Ditto.
1432 * config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
1433 * config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
1434 Ditto.
1435
10e76c1a
JM
14362010-03-26 Joseph Myers <joseph@codesourcery.com>
1437
1438 PR c/43381
1439 * c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
1440 nested binding iff it is a FUNCTION_DECL.
1441 (store_parm_decls_newstyle): Pass nested=true to bind for
1442 FUNCTION_DECLs amongst parameters.
1443
89245ef2
JJ
14442010-03-26 Jakub Jelinek <jakub@redhat.com>
1445
2155f963
JJ
1446 * var-tracking.c (vt_expand_loc_callback): Don't run
1447 cselib_expand_value_rtx_cb in dummy mode if
1448 cselib_dummy_expand_value_rtx_cb returned false.
1449
e80691a0
JJ
1450 * var-tracking.c (emit_note_insn_var_location): For one part
1451 notes with offset 0, don't add EXPR_LIST around the location.
1452 * dwarf2out.c (loc_descriptor, dw_loc_list_1,
1453 add_location_or_const_value_attribute): Adjust for that change.
1454
89245ef2
JJ
1455 PR debug/43540
1456 * dwarf2out.c (reg_save): For DW_CFA_expression put regnum
1457 into first operand and location into second.
1458 (dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
1459 dw_cfi_oprnd_loc for DW_CFA_expression.
1460 (dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
1461 (output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
1462 assume first argument is regnum and second argument is location.
1463
c5e43cc4
UB
14642010-03-26 Uros Bizjak <ubizjak@gmail.com>
1465
1466 PR target/42113
1467 * config/alpha/alpha.md (*cmp_sadd_si): Change mode
1468 of scratch register to DImode. Split to DImode comparison operator.
1469 Use SImode subreg of scratch register in the multiplication.
1470 (*cmp_sadd_sidi): Ditto.
1471 (*cmp_ssub_si): Ditto.
1472 (*cmp_ssub_sidi): Ditto.
1473
fb04bb84
UB
14742010-03-26 Uros Bizjak <ubizjak@gmail.com>
1475
1476 PR target/43524
1477 * config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
1478 Remove invalid assert and wrong comment.
1479
6ca5d1f6
JJ
14802010-03-26 Jakub Jelinek <jakub@redhat.com>
1481
1482 PR debug/43516
1483 * flags.h (final_insns_dump_p): New extern.
1484 * final.c (final_insns_dump_p): New variable.
1485 (rest_of_clean_state): Set it before -fdump-final-insns=
1486 dumping, clear afterwards.
1487 * print-rtl.c (print_rtx): If final_insns_dump_p don't dump
1488 MEM_ALIAS_SET on MEMs.
1489
46bc665f
DM
14902010-03-26 David S. Miller <davem@davemloft.net>
1491
1492 * configure.ac: Fix sparc GOTDATA_OP bug check.
1493 * configure: Rebuild.
1494
9fa195b8
AM
14952010-03-26 Alan Modra <amodra@gmail.com>
1496
1497 * config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
1498
9b7e6950
RO
14992010-03-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1500
1501 * doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
1502 TLS_SECTION_ASM_FLAG.
1503
d53c73e0
JJ
15042010-03-25 Jakub Jelinek <jakub@redhat.com>
1505
935ec2c9
JJ
1506 PR bootstrap/43511
1507 * config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
1508 Clear first_function_block_is_cold.
1509
d53c73e0
JJ
1510 PR c/43385
1511 * gimplify.c (gimple_boolify): Only recurse on __builtin_expect
1512 argument if the argument is truth_value_p.
1513
871c9abb
MM
15142010-03-24 Michael Meissner <meissner@linux.vnet.ibm.com>
1515
fb04bb84 1516 * config/rs6000/constraints.md: Update copyright year for my changes.
94ad7adc 1517
871c9abb
MM
1518 PR target/43484
1519 * config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
1520 used in reg+reg addressing, swap registers.
1521
81ef7e24
JJ
15222010-03-24 Jakub Jelinek <jakub@redhat.com>
1523
6d217c32
JJ
1524 PR debug/43293
1525 * target.h (struct gcc_target): Add code_end hook.
1526 * target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
1527 if not yet defined.
1528 (TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
1529 * toplev.c (compile_file): Call targetm.asm_out.code_end
1530 hook before unwind info/debug info output.
1531 * config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
1532 * config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
1533 (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
1534 * config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
1535 (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
1536 * config/i386/i386.c (ix86_file_end): Renamed to...
1537 (ix86_code_end): ... this. Make static. Don't call
1538 file_end_indicate_exec_stack. Emit unwind info using
1539 final_start_function/final_end_function.
1540 (darwin_x86_file_end): Remove.
1541 (TARGET_ASM_CODE_END): Define.
1542 * config/i386/i386.h (TARGET_ASM_FILE_END,
1543 NEED_INDICATE_EXEC_STACK): Don't define.
1544 * config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
1545 (TARGET_ASM_FILE_END): Define to darwin_file_end.
1546 * config/i386/i386-protos.h (ix86_file_end): Remove prototype.
1547 * doc/tm.texi (TARGET_ASM_CODE_END): Document.
1548
81ef7e24
JJ
1549 PR target/43498
1550 * config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
1551 at the beginning and final_end_function at the end.
1552 * config/s390/s390.c (s390_output_mi_thunk): Likewise.
1553
f1c26cad
RO
15542010-03-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1555
1556 * configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
1557 and Sun as TLS syntax.
1558 (TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
1559 * configure: Regenerate.
1560 * config.in: Regenerate.
1561 * varasm.c (TLS_SECTION_ASM_FLAG): Define default.
1562 (default_elf_asm_named_section): Use it.
1563 * config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
1564 (i386_output_dwarf_dtprel): Likewise.
1565 (output_addr_const_extra): Likewise.
1566 (output_pic_addr_const): Lowercase @GOTTPOFF.
1567 (output_addr_const_extra): Likewise.
1568 (output_pic_addr_const): Lowercase @GOTNTPOFF.
1569 (output_addr_const_extra): Likewise.
1570 (output_pic_addr_const): Lowercase @INDNTPOFF.
1571 (output_addr_const_extra): Likewise.
1572 (output_pic_addr_const): Lowercase @NTPOFF.
1573 (output_addr_const_extra): Likewise.
1574 (output_pic_addr_const): Lowercase @TPOFF.
1575 (output_addr_const_extra): Likewise.
fb04bb84 1576 * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
f1c26cad
RO
1577 (*tls_global_dynamic_64): Likewise.
1578 (*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
1579 (*tls_local_dynamic_base_64): Lowercase @TLSLD.
1580
1581 * defaults.h (TLS_COMMON_ASM_OP): Provide default.
1582 (ASM_OUTPUT_TLS_COMMON): Use it.
1583 * config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
1584
1585 PR target/38118
fb04bb84 1586 * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
f1c26cad
RO
1587 * config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
1588 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
1589 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
1590 * config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
1591 (ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
1592
d2af65b9
RO
15932010-03-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1594
1595 * config/i386/i386.c (override_options): Don't accept
1596 -mtls-dialect=sun any longer.
1597 * config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
1598 * config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
1599 (*tls_local_dynamic_base_32_sun): Likewise.
1600 * config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
1601
d0ed412a
JJ
16022010-03-24 Jakub Jelinek <jakub@redhat.com>
1603
1db0ea00
JJ
1604 PR debug/43508
1605 * dwarf2out.c (mem_loc_descriptor): Don't ICE on
1606 VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
1607
3a6191b1
JJ
1608 PR debug/43479
1609 * ira.c (adjust_cleared_regs): New function.
1610 (update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
1611
d0ed412a
JJ
1612 PR debug/19192
1613 PR debug/43479
1614 * cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
1615 from gimple_block.
1616 * expr.c (expand_expr_real): Restore previous
1617 curr_insn_source_location and curr_insn_block after
1618 expand_expr_real_1 call.
1619 (expand_expr_real_1) <case SSA_NAME>: Call expand_expr_real
1620 instead of expand_expr_real_1.
1621
478ab26d
VM
16222010-03-23 Vladimir Makarov <vmakarov@redhat.com>
1623
1624 PR rtl-optimization/43413
1625 * ira-color.c (setup_allocno_available_regs_num): Count prohibited
1626 hard regs too.
1627
67b476d1
JW
16282010-03-22 James E. Wilson <wilson@codesourcery.com>
1629
1630 PR target/43348
1631 * ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
fb04bb84 1632 call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
67b476d1 1633
99eaa2e7
L
16342010-03-22 H.J. Lu <hongjiu.lu@intel.com>
1635
fb04bb84
UB
1636 * config/i386/i386.c (ix86_target_string): Add -mfma.
1637 Fix a typo in comment.
99eaa2e7 1638
212066e6
MS
16392010-03-22 Mike Stump <mikestump@comcast.net>
1640
1641 PR target/23071
1642 * config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
1643 Don't overly align based upon packed packed fields.
1644
ce30e6fd
JM
16452010-03-22 Jason Merrill <jason@redhat.com>
1646
1647 * c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
1648 Use () rather than [], and move before the element type.
1649
3a1ef68a
RO
16502010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1651
1652 * doc/configfiles.texi (Configuration Files): Removed
1653 fixinc/Makefile*, intl/Makefile.*.
fb04bb84
UB
1654 * doc/makefile.texi: Fixed markup. Abstract from version
1655 control system used.
3a1ef68a
RO
1656 (Makefile): Removed obsolete gcc/java/parse.y example.
1657 * doc/sourcebuild.texi: Likewise.
1658 (Top Level): Added config, gnattools, libdecnumber, libgcc,
fb04bb84 1659 libgomp, libssp. Removed fastjar.
3a1ef68a
RO
1660 (Miscellaneous Docs): Clarify location.
1661 Added COPYING3, COPYING3.LIB.
fb04bb84 1662 (Front End Directory): Moved Make-lang.in entry to new subsubsection.
3a1ef68a 1663
7f5441df
RO
16642010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1665
1666 PR target/38085
1667 * config/i386/i386.c (x86_function_profiler)
1668 [!NO_PROFILE_COUNTERS]: Fix typo.
1669 * config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
1670 instead of callq.
1671
d4f3924a
JJ
16722010-03-22 Janis Johnson <janis187@us.ibm.com>
1673 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1674
1675 * doc/sourcebuild.texi (Test Directives): Split into six
1676 subsections, with most of the current text in new subsections
1677 Directives, Selectors, and Final Actions.
1678 (Directives): Split list of test directives into multiple
1679 subsubsections.
1680 (Selectors): Describe use and syntax of selectors.
1681 (Effective-Target Keywords): Describe all existing keywords.
1682 (Add Options): Describe features for dg-add-options.
1683 (Require Support): Describe variants of dg-require-support.
1684 (Final Actions): Describe commands to use in dg-final.
1685
047550e9
MM
16862010-03-22 Michael Matz <matz@suse.de>
1687
1688 PR middle-end/43475
1689 * recog.c (validate_replace_rtx_group): Replace also in
1690 REG_EQUAL and REG_EQUIV notes.
1691
6d7971b8
RG
16922010-03-22 Richard Guenther <rguenther@suse.de>
1693
1694 PR tree-optimization/43390
1695 * tree-vect-stmts.c (get_vectype_for_scalar_type): Make
1696 sure vector extracts are type correct.
1697
6af84c85
RG
16982010-03-22 Richard Guenther <rguenther@suse.de>
1699
1700 PR middle-end/40106
1701 * builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
1702 x * sqrt (x) even when optimizing for size if the target
1703 has native support for sqrt.
1704
539eb459
JJ
17052010-03-22 Jakub Jelinek <jakub@redhat.com>
1706
be36dd85
JJ
1707 * varasm.c (make_decl_rtl_for_debug): Also clear
1708 flag_mudflap for the duration of make_decl_rtl call.
1709
539eb459
JJ
1710 PR debug/43443
1711 * var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
1712 locs from preserved VALUEs.
1713
19c1be39
JDA
17142010-03-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1715
1716 PR middle-end/42718
1717 * pa.md (movmemsi): Set align to one if zero.
1718 (movmemdi): Likewise.
1719
f8b68ed3
RE
17202010-03-21 Richard Earnshaw <rearnsha@arm.com>
1721
1722 PR target/42321
1723 * arm.c (arm_output_epilogue): Correctly match VFP pop instructions
1724 with their corresponding prologue pushes.
1725
941ce52b
AP
17262010-03-20 Andrew Pinski <pinskia@gmail.com>
1727
1728 PR target/43156
1729 * config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
1730 at the begining or end.
1731 (spu_expand_epilogue): Likewise.
1732
d491d2af
RG
17332010-03-20 Richard Guenther <rguenther@suse.de>
1734
1735 PR rtl-optimization/43438
1736 * combine.c (make_extraction): Properly zero-/sign-extend an
1737 extraction of the low part of a CONST_INT. Also handle
1738 CONST_DOUBLE.
1739
4dd9ee92
MS
17402010-03-19 Mike Stump <mikestump@comcast.net>
1741
1742 * config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
1743 * config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
1744 (override_options): Use SUBTARGET32_DEFAULT_CPU.
1745
e49a760f
AP
17462010-03-19 Andrew Pinski <andrew_pinski@caviumnetworks.com>
1747
6644642e 1748 PR c/43211
fb04bb84
UB
1749 * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
1750 an error.
e49a760f 1751
002b2dee
BS
17522010-03-19 Bernd Schmidt <bernd.schmidt@codesourcery.com>
1753
1754 PR rtl-optimization/42258
1755 * ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
1756 use that may match DEF.
1757
c99102b8
BS
1758 PR target/40697
1759 * optabs.c (avoid_expensive_constant): Use rtx_cost to find out
1760 the cost of loading the constant rather than assuming
1761 COSTS_N_INSNS (1).
1762 * config/arm/arm.c (thumb1_rtx_costs) <case CONST_INT>: If the
1763 outer code is AND, do the same tests as the andsi3 expander and
1764 return COSTS_N_INSNS (1) if and is cheap.
fdb2c684
BS
1765
1766 * optabs.c (avoid_expensive_constant): Fix formatting.
1767
f9ceed32
MM
17682010-03-19 Michael Matz <matz@suse.de>
1769
1770 PR c++/43116
1771 * attribs.c (decl_attributes): When rebuilding a function pointer
1772 type use the same qualifiers as the original pointer type.
1773
3795eae6
MJ
17742010-03-19 Martin Jambor <mjambor@suse.cz>
1775
1776 * doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
1777 and is_gimple_ip_invariant_address.
1778
ae0bef88
RR
17792010-03-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1780
1781 Revert
1782 2009-10-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1783
1784 * config/arm/arm.c (arm_override_options): Turn off
1785 flag_dwarf2_cfi_asm for AAPCS variants.
1786
9abf5d7b
RR
17872010-03-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1788
1789 PR target/43399
1790 * config/arm/arm.c (emit_multi_reg_push): Update comments.
1791 Use PRE_MODIFY instead of PRE_DEC.
1792 (emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
1793 (vfp_emit_fstmd): Likewise.
1794
8a0b1aa4
MM
17952010-03-19 Michael Matz <matz@suse.de>
1796
1797 PR target/43305
1798 * builtins.c (expand_builtin_interclass_mathfn,
1799 expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
1800 if that fails.
1801
3e999e7b
RG
18022010-03-19 Richard Guenther <rguenther@suse.de>
1803
1804 PR tree-optimization/43415
1805 * tree-ssa-pre.c (phi_translate): Split out worker to ...
1806 (phi_translate_1): ... this.
1807 (phi_translate): Move all caching here. Cache all NARY
1808 and REFERENCE translations.
1809
9fd52c6c
DM
18102010-03-19 David S. Miller <davem@davemloft.net>
1811
1812 With help from Eric Botcazou.
1813 * config/sparc/sparc.c: Include dwarf2out.h.
1814 (emit_pic_helper): Delete.
1815 (pic_helper_symbol_name): Delete.
1816 (pic_helper_emitted_p): Delete.
1817 (pic_helper_needed): New.
1818 (USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
1819 (get_pc_thunk_name): New.
1820 (load_pic_register): Remove 'delay_pic_helper' arg. Use
1821 get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
1822 Set pic_helper_needed to true. Don't call emit_pic_helper.
1823 (sparc_expand_prologue): Update load_pic_register call.
1824 (sparc_output_mi_thunk): Likewise.
1825 (sparc_file_end): Emit a hidden comdat symbol for the PIC
1826 thunk if possible. Output CFI information as needed.
1827
a29d9e20 18282010-03-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
b6010cab
FXC
1829 Jack Howarth <howarth@bromo.med.uc.edu>
1830
1831 PR target/36399
48019e3d 1832 * config/i386/i386.h: Fix ABI on darwin x86-32.
b6010cab 1833
b1aa0655
AH
18342010-03-18 Aldy Hernandez <aldyh@redhat.com>
1835
1836 * tree.h: Declare make_decl_rtl_for_debug.
1837 * varasm.c (make_decl_rtl_for_debug): New.
1838 * dwarf2out.c (rtl_for_decl_location): Call it.
1839 * cfgexpand.c (expand_debug_expr): Call it.
1840
f0c12fcc
JJ
18412010-03-18 Jakub Jelinek <jakub@redhat.com>
1842
9a05b749
JJ
1843 PR bootstrap/43399
1844 * var-tracking.c (adjust_mems) <case POST_MODIFY>: Allow BLKmode
1845 mem_mode.
1846
f0c12fcc
JJ
1847 PR bootstrap/43403
1848 * var-tracking.c (vt_init_cfa_base): Do nothing if
fb04bb84 1849 cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
f0c12fcc 1850
e999b0c9
AO
18512010-03-18 Alexandre Oliva <aoliva@redhat.com>
1852
1853 PR debug/42873
1854 * var-tracking.c (canonicalize_vars_star): New.
1855 (dataflow_post_merge_adjust): Use it.
1856
5644a3d0
JJ
18572010-03-18 Jakub Jelinek <jakub@redhat.com>
1858
1859 PR debug/43058
1860 * var-tracking.c (non_suitable_const): New function.
1861 (add_uses): For DEBUG_INSNs with constants, don't record any
1862 value, instead just the constant value itself.
1863 (compute_bb_dataflow) <case MO_VAL_LOC>: If PAT_VAR_LOCATION_LOC
1864 is not VAR_LOC_UNKNOWN_P, set var to the constant.
1865 (emit_notes_in_bb): Likewise.
1866 (emit_note_insn_var_location): For onepart variables if
1867 cur_loc is a VOIDmode constant, use DECL_MODE.
1868
8132a837
MJ
18692010-03-18 Martin Jambor <mjambor@suse.cz>
1870
1871 PR middle-end/42450
1872 * cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
1873 * cgraphunit.c (cgraph_materialize_all_clones): Update calls in
1874 all non-clones. Moved call redirection...
fb04bb84 1875 (cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
8132a837
MJ
1876 (cgraph_materialize_all_clones): Dispose of all
1877 combined_args_to_skip bitmaps.
1878 (verify_cgraph_node): Do not check for edges pointing to wrong
1879 nodes in inline clones.
1880 * tree-inline.c (copy_bb): Call
1881 cgraph_redirect_edge_call_stmt_to_callee.
1882 * ipa.c (cgraph_remove_unreachable_nodes): Call
1883 cgraph_node_remove_callees even when there are used clones.
1884
7893d7ac
L
18852010-03-18 H.J. Lu <hongjiu.lu@intel.com>
1886
1887 * config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
1888
cdfedab1
L
18892010-03-18 H.J. Lu <hongjiu.lu@intel.com>
1890
1891 PR target/43383
1892 * config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
1893 for 32bit.
1894
c21372c4
MM
18952010-03-18 Michael Matz <matz@suse.de>
1896
1897 PR middle-end/43419
1898 * builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
1899 into sqrt(x) if we need to preserve signed zeros.
1900
82fa5f8a
L
19012010-03-18 Steven Bosscher <steven@gcc.gnu.org>
1902 Eric Botcazou <ebotcazou@adacore.com>
1903
1904 PR rtl-optimization/43360
1905 * loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
1906 note if we don't know its invariant status.
1907
eb45755f
MM
19082010-03-18 Michael Matz <matz@suse.de>
1909
1910 PR tree-optimization/43402
1911 * tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
1912 PHI chains of ssa names registered for update.
1913
60936b22
PB
19142010-03-17 Peter Bergner <bergner@vnet.ibm.com>
1915
1916 PR target/42427
1917 * config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
1918 non-offsettable and pre_modify update addressing.
1919 * config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
1920 and "2" alternatives "#".
1921 (*movdd_softfloat32): Make all alternatives "#";
1922 * config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
1923 (*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
1924 (*movdf_softfloat32): Make all alternatives "#";
1925 (movdi): Use the new DIFD mode iterator to create a common splitter
1926 for movdi, movdf and movdd patterns.
1927
316fc112
SZ
19282010-03-18 Shujing Zhao <pearly.zhao@oracle.com>
1929
1930 * common.opt (dumpdir): Remove redundant tab.
1931
ec24771f
MJ
19322010-03-17 Martin Jambor <mjambor@suse.cz>
1933
1934 PR tree-optimization/43347
1935 * tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
1936 original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
1937
e33c42db
BS
19382010-03-17 Bernd Schmidt <bernd.schmidt@analog.com>
1939
1940 PR rtl-optimization/42216
1941 * regrename.c (create_new_chain): New function, broken out from...
1942 (scan_rtx_reg): ... here. Call it. Handle the case where we are
1943 appending a use to an empty chain.
1944 (build_def_use): Remove previous changes that convert OP_INOUT to
1945 OP_OUT operands; instead detect the case where an OP_INOUT operand
fb04bb84 1946 uses a previously untracked register and create an empty chain for it.
e33c42db 1947
4c4177dc
RW
19482010-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1949
1950 * doc/extend.texi (Function Attributes): Rewrite unfinished
1951 sentence in ms_abi documentation.
1952
60ac9511
AM
19532010-03-17 Alan Modra <amodra@gmail.com>
1954
1955 * config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
1956 * config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
1957 (SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
1958 * config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
1959
e19d1f06
RH
19602010-03-16 Richard Henderson <rth@redhat.com>
1961
1962 PR middle-end/43365
1963 * tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
1964 (lower_try_finally): Save and restore eh_seq around the expansion
1965 of the try-finally.
1966
c36fed0c
AH
19672010-03-16 Aldy Hernandez <aldyh@redhat.com>
1968
1969 * graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
1970 statements before splitting block.
1971
17a7cb4e
RO
19722010-03-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1973
1974 * doc/sourcebuild.texi (Testsuites): Fix markup.
1975 Use pathnames relative to gcc/testsuite.
1976 (Test Directives): Move description of how timeout is determined.
1977 (Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
1978 (C Tests): Correct gcc.misc-tests directory.
1979 Framework tests now live in gcc.test-framework.
1980
7686fb74
RG
19812010-03-16 Richard Guenther <rguenther@suse.de>
1982
1983 PR middle-end/43379
fb04bb84
UB
1984 * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
1985 operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
7686fb74 1986
7a181764
AH
19872010-03-16 Aldy Hernandez <aldyh@redhat.com>
1988 Alexandre Oliva <aoliva@redhat.com>
1989
1990 PR tree-optimization/42917
1991 * lambda-code.c (remove_iv): Skip debug statements.
1992 (lambda_loopnest_to_gcc_loopnest): Likewise.
1993 (not_interesting_stmt): Debug statements are not interesting.
1994
457eeaae
JJ
19952010-03-16 Jakub Jelinek <jakub@redhat.com>
1996
1997 PR debug/43051
1998 PR debug/43092
1999 * cselib.c (cselib_preserve_constants,
2000 cfa_base_preserved_val): New static variables.
2001 (preserve_only_constants): New function.
2002 (cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
fb04bb84 2003 clear its REG_VALUES. If cselib_preserve_constants, don't
457eeaae
JJ
2004 empty the whole hash table, but preserve there VALUEs with constants,
2005 cfa_base_preserved_val and cfa_base_preserved_val plus constant.
2006 (cselib_preserve_cfa_base_value): New function.
2007 (cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
2008 (cselib_init): Change argument to int bitfield. Set
2009 cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
2010 is in it.
2011 (cselib_finish): Clear cselib_preserve_constants and
2012 cfa_base_preserved_val.
2013 * cselib.h (enum cselib_record_what): New enum.
2014 (cselib_init): Change argument to int.
2015 (cselib_preserve_cfa_base_value): New prototype.
2016 * postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
2017 * dse.c (dse_step1): Likewise.
2018 * cfgcleanup.c (thread_jump): Likewise.
2019 * sched-deps.c (sched_analyze): Likewise.
2020 * gcse.c (local_cprop_pass): Likewise.
2021 * simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
2022 If FN is non-NULL, call the callback always and whenever it returns
2023 non-NULL just return that. Only do rtx_equal_p if FN is NULL.
2024 * rtl.h (simplify_replace_fn_rtx): Add argument to callback.
2025 * combine.c (propagate_for_debug_subst): Add old_rtx argument,
2026 compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
2027 * Makefile.in (var-tracking.o): Depend on $(RECOG_H).
2028 * var-tracking.c: Include recog.h.
2029 (bb_stack_adjust_offset): Remove.
2030 (vt_stack_adjustments): Don't call it, instead just gather the
2031 adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
2032 (adjust_stack_reference): Remove.
2033 (compute_cfa_pointer): New function.
2034 (hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
2035 (struct adjust_mem_data): New type.
2036 (adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
2037 functions.
2038 (get_address_mode): New function.
2039 (replace_expr_with_values): Use it.
2040 (use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
2041 Use get_address_mode. For cfa_base_rtx return MO_CLOBBER.
2042 (adjust_sets): Remove.
2043 (add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
2044 Use get_address_mode.
2045 (get_adjusted_src): Remove.
2046 (add_stores): Don't call it. Never reuse expr SET. Don't add extra
2047 MO_VAL_USE for cfa_base_rtx plus constant. Use get_address_mode.
2048 (add_with_sets): Don't call adjust_sets.
2049 (fp_setter, vt_init_cfa_base): New functions.
2050 (vt_initialize): Change return type to bool. Move most of pool etc.
2051 initialization to the beginning of the function from end. Pass
2052 CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
2053 If !frame_pointer_needed, call vt_stack_adjustment before mos
2054 vector is filled, call vt_init_cfa_base if argp/framep has been
2055 eliminated to sp. If frame_pointer_needed and argp/framep has
2056 been eliminated to hard frame pointer, set
2057 hard_frame_pointer_adjustment and call vt_init_cfa_base after
2058 encountering fp setter in the prologue. For MO_ADJUST, call
2059 log_op_type before pusing the op into mos vector, not afterwards.
2060 Call adjust_insn before cselib_process_insn/add_with_sets,
2061 call cancel_changes (0) afterwards.
2062 (variable_tracking_main_1): Adjust for vt_initialize calling
2063 vt_stack_adjustments and returning whether it succeeded or not.
2064
7dee65d8
AH
20652010-03-15 Aldy Hernandez <aldyh@redhat.com>
2066
2067 * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
2068 debug statements.
2069
6019a098
JJ
20702010-03-15 Jakub Jelinek <jakub@redhat.com>
2071
2072 * dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
2073 has been set.
2074 (based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
2075 drap_reg has not been set.
2076
c2172338
MM
20772010-03-15 Michael Matz <matz@suse.de>
2078
2079 PR middle-end/43300
2080 * tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
2081 use it to expand block copies.
2082 (insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
2083 insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
2084 (insert_value_copy_on_edge): Use store_expr for BLKmode values.
2085
610b64e2
RG
20862010-03-15 Richard Guenther <rguenther@suse.de>
2087
2088 PR tree-optimization/43367
2089 * tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
2090 elimination check.
2091
610de68d
RB
20922010-03-15 Richard Guenther <rguenther@suse.de>
2093
2094 PR tree-optimization/43317
2095 * ipa-struct-reorg.c (create_new_general_access): Update stmt.
2096
932e2e64
MJ
20972010-03-15 Martin Jambor <mjambor@suse.cz>
2098
610de68d 2099 PR tree-optimization/43141
932e2e64
MJ
2100 * tree-sra.c (create_abstract_origin): New function.
2101 (modify_function): Call create_abstract_origin.
2102
c8c520dd
CD
21032010-03-15 Chris Demetriou <cgd@google.com>
2104
2105 * Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
2106 wasn't copied.
2107
7f931500
SP
21082010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2109
2110 PR middle-end/43354
2111 * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
2112 call insert_out_of_ssa_copy for default definitions.
2113
21142010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2115
2116 * graphite-clast-to-gimple.c (my_long_long): Defined.
2117 (gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
2118 * graphite-sese-to-poly.c (my_long_long): Defined.
2119 (scop_ivs_can_be_represented): Use it.
2120
21212010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2122
2123 * doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
2124 graphite-max-bbs-per-function, and loop-block-tile-size.
2125 * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
2126 with "maximum".
2127 (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
2128
21292010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2130
2131 * graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
2132 forward declaration.
2133 * graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
2134 (add_upper_bounds_from_estimated_nit): New.
2135 (build_loop_iteration_domains): Use it.
2136
21372010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2138
2139 * doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
2140
21412010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2142
2143 PR middle-end/43306
2144 * tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
2145 should be an INTEGER_CST. Also handle CASE_CONVERT.
2146
21472010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2148
2149 * graphite.c (graphite_initialize): To bound the number of bbs per
2150 function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
2151 * params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
2152 * doc/invoke.texi: Document it.
2153
21542010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2155
2156 * graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
2157 * graphite-sese-to-poly.h (build_poly_scop): Same.
2158
21592010-03-13 Sebastian Pop <sebastian.pop@amd.com>
2160
2161 * graphite-sese-to-poly.c (build_poly_scop): Limit scops following
2162 the number of parameters in the scop. Use as an upper bound
2163 PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
2164 * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
2165 * doc/invoke.texi: Document it.
2166
929769f4
JQ
21672010-03-13 Jerry Quinn <jlquinn@optonline.net>
2168
2169 * Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
2170 * doc/c-tree.texi: Remove.
2171 * doc/generic.texi: Merge c-tree.texi here.
2172 * doc/gccint.texi (Trees): Remove menu entry.
2173 (c-tree.texi): Remove @include.
2174 * doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
2175 * doc/languages.texi (Reading RTL): Ditto.
2176
9c8cab44
SE
21772010-03-12 Steve Ellcey <sje@cup.hp.com>
2178
2179 PR target/42869
2180 * config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
2181
08f9d725
MM
21822010-03-12 Michael Meissner <meissner@linux.vnet.ibm.com>
2183
2184 PR middle-end/42431
2185 * gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
2186 code added to work around reload clobbering CONST insns.
2187
70235ab9
JJ
21882010-03-12 Jakub Jelinek <jakub@redhat.com>
2189
0de3e43f
JJ
2190 * cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
2191 (cselib_preserve_definitely, cselib_clear_preserve): Remove.
2192 (cselib_preserve_only_values): Remove retain argument, don't
2193 traverse hash table with cselib_{preserve_definitely,clear_preserve}.
2194 * cselib.h (cselib_preserve_only_values): Remove retain argument.
2195 * var-tracking.c (micro_operation): Move insn field before union.
2196 Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
2197 (struct variable_tracking_info_def): Remove n_mos field, change
2198 mos into a vector of micro_operations.
2199 (count_uses, count_uses_1, count_stores, count_with_sets): Remove.
2200 (bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
2201 compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
2202 changing into a vector.
2203 (add_with_sets): Likewise. Ensure MO_VAL_USE uops from add_stores
2204 come before all other uops generated by add_stores.
2205 (vt_add_function_parameters): Adjust for cselib_preserve_only_values
2206 argument removal.
2207 (vt_initialize): Likewise. Adjust for VTI (bb)->mos changing into
2208 a vector. Run just one pass over the bbs instead of separate counting
2209 and computation phase.
2210 (vt_finalize): Free VTI (bb)->mos vector instead of array.
2211
70235ab9
JJ
2212 PR debug/43329
2213 * tree-inline.c (remap_decls): Put old_var rather than origin_var
2214 into *nonlocalized_list vector.
2215 * dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
2216 even if origin is non-NULL.
2217 (gen_variable_die): Likewise.
2218 (process_scope_var): Don't change origin.
2219 (gen_decl_die): Likewise.
2220 * tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
2221 before adding new edges instead of after it, fix moving over
2222 debug stmts.
2223
7ac22e17
DM
22242010-03-11 David S. Miller <davem@davemloft.net>
2225
77514c73
UB
2226 * configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
2227 of four.
7ac22e17
DM
2228 * configure: Rebuild.
2229
0e0a1359
MJ
22302010-03-11 Martin Jambor <mjambor@suse.cz>
2231
2232 PR tree-optimization/43257
2233 * tree.c (assign_assembler_name_if_neeeded): New function.
2234 (free_lang_data_in_cgraph): Assembler name assignment moved to the
2235 above new function.
2236 * tree.h (assign_assembler_name_if_neeeded): Declare.
2237 * cgraphunit.c (cgraph_analyze_function): Create an assembler name for
2238 the function if needed.
2239
1d9edd01
CD
22402010-03-11 Chris Demetriou <cgd@google.com>
2241
2242 * Makefile.in (stmp-int-hdrs): Make include/unwind.h,
2243 include/stdint-gcc.h, and include/stdint.h world-readable.
2244
ff0a0c1d
RG
22452010-03-11 Richard Guenther <rguenther@suse.de>
2246
2247 PR tree-optimization/43255
2248 * tree-vrp.c (process_assert_insertions_for): Do not insert
2249 asserts for trivial conditions.
2250
b509e1fc
AK
22512010-03-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2252
2253 PR tree-optimization/43280
77514c73
UB
2254 * tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
2255 generation. Move calculation of size out of the if branch.
b509e1fc
AK
2256 (find_bswap): Modify compare number generation.
2257
108ba00b
RG
22582010-03-11 Richard Guenther <rguenther@suse.de>
2259
2260 PR lto/43200
2261 * lto-streamer-in.c (maybe_fixup_decls): Simplify.
2262 (input_gimple_stmt): Fixup handled component types during
2263 operand read. Also fix up decls in ADDR_EXPRs.
2264
f37f5bb9
EB
22652010-03-10 Eric Botcazou <ebotcazou@adacore.com>
2266
2267 * config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
2268 * config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
2269
e9fecf0e
JH
22702010-03-10 Jan Hubicka <jh@suse.cz>
2271
2272 PR c/43288
2273 * ipa.c (function_and_variable_visibility) Normalize COMMON bits.
2274 * varasm.c (get_variable_section): Don't do that here...
2275 (make_decl_rtl): ... and here.
2276 (do_assemble_alias): Produce decl RTL.
2277 (assemble_alias): Likewise.
2278
23f39b37
JJ
22792010-03-10 Jakub Jelinek <jakub@redhat.com>
2280
2281 PR debug/43290
2282 * reg-notes.def (REG_CFA_SET_VDRAP): New note.
2283 * dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
2284 of fde->vdrap_reg.
2285 (dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
2286 (based_loc_descr): Only express drap or vdrap regno based expressions
2287 using DW_OP_fbreg when not optimizing.
2288 * config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
2289 make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
2290 REG_CFA_SET_VDRAP note.
2291
6edd8198
AM
22922010-03-10 Alexander Monakov <amonakov@ispras.ru>
2293
2294 PR tree-optimization/43236
2295 * tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
2296 error in calculation of base address in reverse iteration case.
2297 (generate_builtin): Take number of latch executions if the statement
2298 is in the latch.
2299
9f698956
AB
23002010-03-10 Andrey Belevantsev <abel@ispras.ru>
2301
2302 PR middle-end/42859
2303 * tree-eh.c: Include pointer-set.h.
2304 (lower_eh_dispatch): Filter out duplicate case labels and
2305 remove the unneeded edge when the label is unused. Return
2306 true when some edges are removed.
2307 (execute_lower_eh_dispatch): When any lowering resulted in
2308 removing an edge, also delete unreachable blocks.
2309
ff4f03c3
JJ
23102010-03-10 Jakub Jelinek <jakub@redhat.com>
2311
2312 PR bootstrap/43287
2313 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
2314 UNSPEC_MACHOPIC_OFFSET.
2315
7b0f476d
AS
23162010-03-09 Andreas Schwab <schwab@linux-m68k.org>
2317
2318 PR target/43294
2319 * config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
2320 (m68k_delegitimize_address): New function.
2321
3b7998ea
JJ
23222010-03-09 Jakub Jelinek <jakub@redhat.com>
2323
eb1fcdaa
JJ
2324 PR debug/43299
2325 * dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
2326
69b89883
JJ
2327 PR debug/43299
2328 * var-tracking.c (adjust_sets): New function.
2329 (count_with_sets, add_with_sets): Use it.
2330 (get_adjusted_src): New inline function.
2331 (add_stores): Use it.
2332
3b7998ea
JJ
2333 PR debug/43304
2334 * var-tracking.c (vt_expand_loc_callback) <case SUBREG>: If dummy,
2335 call cselib_dummy_expand_value_rtx_cb instead of
2336 cselib_expand_value_rtx_cb.
bded9b70
JJ
2337
2338 PR debug/43293
2339 * config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
2340 * config/i386/i386.c: Include debug.h and dwarf2out.h.
2341 (ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
2342 and .cfi_endproc around the pic thunks.
2343 (output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
2344 all queued unwind info register saves are saved before the call.
2345 For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
2346 considered as sp-=4 for unwind info and the pop as sp+=4 which
2347 also clobbers dest, but doesn't actually restore it.
4398467a
JJ
2348
2349 PR debug/43290
2350 * config/i386/i386.c (ix86_get_drap_rtx): Don't set
2351 RTX_FRAME_RELATED_P.
2352
81ad4ac0
JZ
23532010-03-09 Jie Zhang <jie@codesourcery.com>
2354
2355 * config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
2356 whitespaces in output template.
2357
dc344e87
JZ
23582010-03-09 Jie Zhang <jie@codesourcery.com>
2359
2360 * ira-lives.c (check_and_make_def_use_conflict): Don't fall
2361 out array boundary.
2362
ff12d3a6
JJ
23632010-03-08 Jakub Jelinek <jakub@redhat.com>
2364
2365 * Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
2366 builtins.exp in a separate job.
2367
b58543c3
SP
23682010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2369
2370 * graphite-sese-to-poly.c (add_param_constraints): Use
2371 lower_bound_in_type and upper_bound_in_type.
2372
23732010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2374
2375 * graphite-sese-to-poly.c (add_param_constraints): Use sizetype
2376 instead of unsigned_type_node.
2377
23782010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2379 Reza Yazdani <reza.yazdani@amd.com>
2380
2381 PR middle-end/43065
2382 * graphite-sese-to-poly.c (add_param_constraints): Insert bounds
2383 on pointer type parameters.
2384
23852010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
2386
2387 PR middle-end/42644
2388 PR middle-end/42130
2389 * graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
2390 handle conversions from pointer to integers.
2391 (gcc_type_for_cloog_iv): Choose the smalles signed integer as an
77514c73 2392 induction variable, to be able to work with code generated by CLooG.
b58543c3
SP
2393 * graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
2394 (build_poly_scop): Bail out if we cannot codegen a loop.
2395
23962010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
2397
2398 * graphite-clast-to-gimple.c (translate_clast): Do not short-cut
2399 code generation with gloog_error.
2400
24012010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2402
2403 * sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
2404 Call fold_convert on all the returned values.
77514c73
UB
2405 (expand_scalar_variables_expr): Pass to
2406 expand_scalar_variables_ssa_name the type of the resulting expression.
b58543c3
SP
2407
24082010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2409
2410 * graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
77514c73
UB
2411 ppl_min_for_le_pointset.
2412 Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
b58543c3
SP
2413 * graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
2414
24152010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2416
2417 * graphite-dependences.c (map_into_dep_poly): Removed.
2418 (dependence_polyhedron_1): Use combine_context_id_scat.
2419
24202010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2421
2422 * graphite-poly.h (struct poly_scattering): Add layout documentation.
2423 (struct poly_bb): Same.
2424 (combine_context_id_scat): New.
2425
24262010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2427
2428 PR middle-end/42326
2429 * sese.c (name_defined_in_loop_p): Return false for default
2430 definitions.
2431
24322010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2433
2434 * graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
2435 and clean up the logic.
2436
24372010-03-08 Sebastian Pop <sebastian.pop@amd.com>
2438
2439 * graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
2440 early return.
2441
1feb8238
JJ
24422010-03-08 Jakub Jelinek <jakub@redhat.com>
2443
2444 * var-tracking.c (remove_cselib_value_chains): Define only for
2445 ENABLE_CHECKING.
2446 (dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
2447 delete_slot_part, emit_notes_for_differences_1): Don't call
2448 remove_cselib_value_chains here.
2449 (set_slot_part, emit_notes_for_differences_2): Don't call
2450 add_cselib_value_chains here.
2451 (preserved_values): New vector.
2452 (preserve_value): New function.
2453 (add_uses, add_stores, vt_add_function_parameters): Use it
2454 instead of cselib_preserve_value.
2455 (changed_values_stack): New vector.
2456 (check_changed_vars_0): New function.
2457 (check_changed_vars_1, check_changed_vars_2): Use it.
2458 (emit_notes_for_changes): Call set_dv_changed (*, false) on all
2459 changed_values_stack VALUEs.
2460 (vt_emit_notes): For all preserved_values call
2461 add_cselib_value_chains. If ENABLE_CHECKING call
2462 remove_cselib_value_chains before verifying value_chains is empty.
2463 Initialize and free changed_values_stack.
2464 (vt_initialize): Initialize preserved_values.
2465 (vt_finalize): Free preserved_values.
2466
cc788fcc
RG
24672010-03-08 Richard Guenther <rguenther@suse.de>
2468
2469 PR tree-optimization/43269
2470 * tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
2471 region detection.
2472
69c103c7
MJ
24732010-03-08 Martin Jambor <mjambor@suse.cz>
2474
2475 * ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
2476 (ipa_is_param_called): Removed.
2477 * ipa-prop.c (ipa_note_param_call): Do not set the called flag.
2478 (ipa_print_node_params): Do not print the called flag.
2479 (ipa_write_node_info): Do not stream the called flag.
2480 (ipa_read_node_info): Likewise.
2481
864ddef7
JJ
24822010-03-07 Jakub Jelinek <jakub@redhat.com>
2483
2484 PR debug/43176
2485 * Makefile.in (var-tracking.o): Depend on pointer-set.h.
2486 * cselib.c (struct expand_value_data): Add dummy field.
2487 (cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
2488 dummy to false.
2489 (cselib_dummy_expand_value_rtx_cb): New function.
2490 (cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
2491 any rtl.
2492 * cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
2493 * var-tracking.c: Include pointer-set.h.
2494 (variable): Change n_var_parts to char from int. Add
2495 cur_loc_changed and in_changed_variables fields.
2496 (variable_canonicalize): Remove.
2497 (shared_var_p): New inline function.
2498 (unshare_variable): Maintain cur_loc_changed and
2499 in_changed_variables fields. If var was in changed_variables,
2500 replace it there with new_var. Just copy cur_loc instead of
2501 resetting it to something else.
2502 (variable_union): Don't recompute cur_loc. Use shared_var_p.
2503 (dataflow_set_union): Don't call variable_canonicalize.
2504 (loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
2505 of their DEBUG_EXPR_TREE_DECLs.
2506 (canonicalize_loc_order_check): Verify that cur_loc is NULL
2507 and in_changed_variables and cur_loc_changed is false.
2508 (variable_merge_over_cur): Clear cur_loc, in_changed_variables
2509 and cur_loc_changed. Don't update cur_loc here.
2510 (variable_merge_over_src): Don't call variable_canonicalize.
2511 (dataflow_set_preserve_mem_locs): Use shared_var_p. When
2512 removing loc that is equal to cur_loc, clear cur_loc,
2513 set cur_loc_changed and ensure variable_was_changed is called.
2514 (dataflow_set_remove_mem_locs): Use shared_var_p. Only
2515 compare pointers in cur_loc check, if it is equal to loc,
2516 clear cur_loc and set cur_loc_changed. Don't recompute cur_loc here.
2517 (variable_different_p): Remove compare_current_location argument,
2518 don't compare cur_loc.
2519 (dataflow_set_different_1): Adjust variable_different_p caller.
2520 (variable_was_changed): If dv had some var in changed_variables
2521 already, reset in_changed_variables flag for it and propagate
2522 cur_loc_changed over to the new variable. On empty var
2523 always set cur_loc_changed. Set in_changed_variables on whatever
2524 var is added to changed_variables.
2525 (set_slot_part): Clear cur_loc_changed and in_changed_variables.
2526 Use shared_var_p. When removing loc that is equal to cur_loc,
2527 clear cur_loc and set cur_loc_changed. If cur_loc is NULL at the
2528 end, don't set it to something else, just call variable_was_changed.
2529 (delete_slot_part): Use shared_var_p. When cur_loc equals to
2530 loc being removed, clear cur_loc and set cur_loc_changed.
2531 Set cur_loc_changed if all locations have been removed.
2532 (struct expand_loc_callback_data): New type.
2533 (vt_expand_loc_callback): Add dummy mode in which no rtxes are
2534 allocated. Always create SUBREGs if simplify_subreg failed.
2535 Prefer to use cur_loc, when that fails and still in
2536 changed_variables (and seen first time) recompute it. Set
2537 cur_loc_changed of variables which had to change cur_loc and
2538 compute elcd->cur_loc_changed if any of the subexpressions used
2539 had to change cur_loc.
2540 (vt_expand_loc): Adjust to pass arguments in
2541 expand_loc_callback_data structure.
2542 (vt_expand_loc_dummy): New function.
2543 (emitted_notes): New variable.
2544 (emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
2545 that weren't used for any other decl in current
2546 emit_notes_for_changes call call vt_expand_loc_dummy to update
2547 cur_loc. For -fno-var-tracking-assignments, set cur_loc to
2548 first loc_chain location if NULL before. Always use just
2549 cur_loc instead of first loc_chain location. When cur_loc_changed
2550 is false, when not --enable-checking=rtl just don't emit any note.
2551 When rtl checking, compute the note and assert it is the same
2552 as previous note. Clear cur_loc_changed and in_changed_variables
2553 at the end before removing from changed_variables.
2554 (check_changed_vars_3): New function.
2555 (emit_notes_for_changes): Traverse changed_vars to call
2556 check_changed_vars_3 on each changed var.
2557 (emit_notes_for_differences_1): Clear cur_loc_changed and
2558 in_changed_variables. Recompute cur_loc of new_var.
77514c73 2559 (emit_notes_for_differences_2): Clear cur_loc if new variable appears.
864ddef7
JJ
2560 (vt_emit_notes): Initialize and destroy emitted_notes.
2561
c4137918
BS
25622010-03-07 Bernd Schmidt <bernd.schmidt@analog.com>
2563
2564 PR rtl-optimization/42220
2565 * regrename.c (scan_rtx) <case STRICT_LOW_PART, ZERO_EXTRACT>:
2566 Use verify_reg_tracked to determine if we should use OP_OUT rather
2567 than OP_INOUT.
2568 (build_def_use): If we see an in-out operand for a register that we
2569 know nothing about, treat is an output if possible, fail the block if
2570 not.
2571
cd6549e8
AO
25722010-03-06 Alexandre Oliva <aoliva@redhat.com>
2573
2574 PR debug/42897
2575 * gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
2576 permanently.
2577
aba09491
AO
25782010-03-06 Alexandre Oliva <aoliva@redhat.com>
2579
2580 PR debug/42897
2581 * tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
2582 uses of relevant DEFs that are dead outside the loop too.
2583
60d7a09b
AO
25842010-03-06 Alexandre Oliva <aoliva@redhat.com>
2585
2586 * var-tracking.c (dataflow_set_merge): Swap src and src2.
2587 Reverted:
2588 2010-01-13 Jakub Jelinek <jakub@redhat.com>
2589 PR debug/41371
2590 * var-tracking.c (values_to_unmark): New variable.
2591 (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
2592 values_to_unmark vector. Moved body to...
2593 (find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
2594 instead queue it into values_to_unmark vector.
2595 (vt_find_locations): Free values_to_unmark vector.
2596
eeb971c9
EB
25972010-03-05 Eric Botcazou <ebotcazou@adacore.com>
2598
2599 * Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
2600 (site.exp): Export them when plugins are enabled.
2601
ccc5b640
SP
26022010-03-05 Sebastian Pop <sebastian.pop@amd.com>
2603
2604 PR middle-end/42326
2605 * tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
2606 that contain scevs.
2607 (chrec_fold_multiply): Same.
2608
3e23fb2e
AP
26092010-03-04 Andrew Pinski <andrew_pinski@caviumnetworks.com>
2610
2611 PR c/43248
2612 * c-decl.c (build_compound_literal): Return early if init is
2613 an error_mark_node.
2614
76f76cd0
MJ
26152010-03-04 Martin Jambor <mjambor@suse.cz>
2616
2617 PR tree-optimization/43164
2618 PR tree-optimization/43191
2619 * tree-sra.c (type_consists_of_records_p): Reject records with
2620 zero-size bit-fields at the end.
2621
b2d244d1
MS
26222010-03-04 Mike Stump <mikestump@comcast.net>
2623
2624 * Makefile.in (TAGS): Remove *.y.
2625
9ca87236
RB
26262010-03-04 Richard Guenther <rguenther@suse.de>
2627
2628 PR tree-optimization/40761
2629 * tree-ssa-pre.c (compute_antic): Walk reverse postorder
2630 in reverse order.
2631 (my_rev_post_order_compute): New function.
2632 (init_pre): Call it.
2633
572ae476
CF
26342010-03-04 Changpeng Fang <changpeng.fang@amd.com>
2635
8c0386a4 2636 PR middle-end/43209
9ca87236
RB
2637 * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
2638 decrease the cost of an IV candidate when the cost is infinite.
572ae476 2639
f8723eb6
RW
26402010-03-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2641
2642 * doc/extend.texi (Vector Extensions, X86 Built-in Functions):
2643 Use '3DNow!' for the extension of that name, ensure normal space
2644 after the string.
2645 * doc/invoke.texi (i386 and x86-64 Options): Likewise.
2646
d8a60d24
JL
26472010-03-03 Jeff Law <law@redhat.com>
2648
2649 * PR middle-end/32693
2650 * expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
2651 than gen_rtx_SUBREG.
2652 (extract_bit_field_1): Likewise.
2653
8ec49cff
JJ
26542010-03-03 Janis Johnson <janis187@us.ibm.com>
2655
2656 * doc/sourcebuild.texi (Test directives): Document that arguments
2657 include-opts and exclude-opts are now optional for dg-skip-if,
2658 dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
2659
2c71ac78
JM
26602010-03-03 Jason Merrill <jason@redhat.com>
2661
2662 PR c++/12909
2663 * cgraph.h (varpool_node): Add extra_name field.
2664 * varpool.c (varpool_extra_name_alias): New.
2665 (varpool_assemble_decl): Emit extra name aliases.
2666 (varpool_mark_needed_node): Look past an extra name alias.
1d5053d6
JM
2667 * lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
2668 * lto-streamer-in.c (lto_input_tree): Read it.
2669 * lto-streamer-out.c (output_unreferenced_globals): Write it.
2c71ac78 2670
2587aa3b
EB
26712010-03-03 Eric Botcazou <ebotcazou@adacore.com>
2672
2673 * config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
2674 (sparc*-*-solaris2*): ...this.
2675
db51bb34
JJ
26762010-03-03 Jakub Jelinek <jakub@redhat.com>
2677
7ece48b1
JJ
2678 PR debug/43229
2679 * cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
2680 WIDEN_MULT_EXPR and WIDEN_SUM_EXPR. Return NULL without
2681 ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
2682 FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
2683
0508bed7
JJ
2684 PR debug/43237
2685 * dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
2686 fallthrough to default handling, just with want_address 0 instead of 2.
2687 For single element lists, add_AT_loc directly, otherwise create an
2688 artificial variable DIE and stick location list to it.
2689
db51bb34
JJ
2690 PR debug/43177
2691 * var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
2692 (VAL_EXPR_HAS_REVERSE): Define.
2693 (reverse_op): New function.
2694 (add_stores): For reversible operations add an extra MO_VAL_USE.
2695
7428bc26
JM
26962010-03-02 Jason Merrill <jason@redhat.com>
2697
2698 * c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
2699
d1ced155
EB
27002010-03-02 Eric Botcazou <ebotcazou@adacore.com>
2701
2702 * config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
2703 (sparc64-*-linux*): Likewise.
2704 (sparc64-*-solaris2*): Include assembler files before linker ones.
2705 (sparc-*-solaris2*): Simplify and reorder to match previous case.
2706 * config/sparc/gas.h: Delete.
2707 * config/sparc/sol2-64.h: Add copyright notice.
2708 * config/sparc/sol2-gas-bi.h: Likewise.
2709 * config/sparc/sol2-gld.h: Likewise.
2710 * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
2711 * config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
2712 * config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
2713 * config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
2714 (sparc_elf_asm_named_section): Rename into...
2715 (sparc_solaris_elf_asm_named_section): ...this. Always define.
2716
02d43000
UB
27172010-03-02 Uros Bizjak <ubizjak@gmail.com>
2718
2719 * config/alpha/alpha.c (override_options): Fix -mtune error message.
2720
f6c86fab
JL
27212010-03-02 Jeff Law <law@redhat.com>
2722
4e222e63 2723 PR middle-end/42431
f6c86fab
JL
2724 * reload1.c (rtx_p, substitute_stack): Declare.
2725 (substitute): Record addresses of changed rtxs.
2726 (gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
2727 Restore the original rtx when complete.
2728 (reload): Free subsitute_stack when complete.
2729
500cdcb0
JJ
27302010-03-02 Janis Johnson <janis187@us.ibm.com>
2731
2732 * doc/gccint.texi (menu): Add Testsuites as a chapter.
2733 * doc/sourcebuild.texi (Testsuites): Move up a level to be a
2734 new chapter.
2735 (Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
2736 LTO Testing, gcov Testing, profopt Testing, compat Testing,
2737 Torture Tests): Change from subsection to section.
2738
d9a6979d
JJ
27392010-03-02 Jakub Jelinek <jakub@redhat.com>
2740 Steven Bosscher <steven@gcc.gnu.org>
2741
02d43000
UB
2742 * var-tracking.c (vt_initialize): Scan insns in ebb chunks
2743 instead of bb.
d9a6979d 2744
61226dc8
SP
27452010-03-02 Reza Yazdani <reza.yazdani@amd.com>
2746
2747 PR middle-end/42640
2748 * tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
2749 the assignment from the new induction variable to the assignment
2750 of the value from the original loop PHI function.
2751
15e7a617
JJ
27522010-03-01 Janis Johnson <janis187@us.ibm.com>
2753 Daniel Jacobowitz <dan@codesourcery.com>
2754
2755 * doc/sourcebuild.texi (Test directives): Clarify options to
2756 dg-skip-if.
2757
eb2573ee
RO
27582010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2759
2760 * configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
2761 Disable cfi directives unless GCC and gas agree on using read-only
2762 .eh_frame sections for 64-bit.
2763 * configure: Regenerate.
2764
12f9ddbc
RG
27652010-03-01 Richard Guenther <rguenther@suse.de>
2766
2767 PR tree-optimization/43220
2768 * tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
2769 BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
2770
f0c10f0f 27712010-03-01 Richard Guenther <rguenther@suse.de>
02d43000 2772 Martin Jambor <mjambor@suse.cz>
f0c10f0f
RG
2773
2774 PR middle-end/41250
2775 * gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
2776 gimplified parameters.
2777
c40b5400
CB
27782010-03-01 Christian Bruel <christian.bruel@st.com>
2779
2780 * except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
61226dc8 2781
3c775d2d
L
27822010-03-01 H.J. Lu <hongjiu.lu@intel.com>
2783
2784 * config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
2785
434c8f4b
RG
27862010-03-01 Richard Guenther <rguenther@suse.de>
2787
2788 PR middle-end/43213
2789 * expr.c (expand_assignment): Use the alias-oracle to tell
2790 if the rhs aliases the result decl.
2791
291c0a12
RO
27922010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2793
2794 PR pch/14940
2795 * config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
2796 to sol_gt_pch_get_address.
2797 (TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
2798 64-bit, SPARC and x86.
2799 (sol_gt_pch_get_address): New function.
2800
61226dc8 28012010-03-01 Marco Poletti <poletti.marco@gmail.com>
894e2652
SZ
2802
2803 * toplev.h (inform_n, error_n): Declare.
2804 * diagnostic.c (inform_n, error_n): New function.
2805
6c6366f6
JJ
28062010-03-01 Jakub Jelinek <jakub@redhat.com>
2807
2808 * cfgexpand.c (expand_used_vars): If an artificial non-ignored var
2809 has no rtl yet when processing local_decls, queue it and recheck
2810 if deferred stack allocation hasn't assigned it rtl.
2811
826159e5
KK
28122010-02-28 Kaz Kojima <kkojima@gcc.gnu.org>
2813
2814 * config/sh/sh.c (unspec_bbr_uid): New.
2815 (gen_block_redirect): Use it instead of INSN_UID.
2816 (gen_far_branch): Likewise.
2817
746ecbcd
L
28182010-02-28 H.J. Lu <hongjiu.lu@intel.com>
2819
2820 * config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
2821 it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
2822
02a9370c
RW
28232010-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2824
2825 * doc/invoke.texi (Warning Options, RX Options): Fix typos.
2826 (Warning Options): -Wno-conversion-null is valid for
2827 Objective-C++ as well.
2828 * doc/tm.texi (Named Address Spaces): Likewise.
2829 * doc/plugins.texi (Plugins): Replace TABs with spaces.
2830 * doc/tree-ssa.texi (Tree SSA): Likewise.
2831
91ad7e13
L
28322010-02-27 H.J. Lu <hongjiu.lu@intel.com>
2833
2834 PR bootstrap/43202
2835 * config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
2836 by default. Don't set the default arch for
2837 i[34567]86-*-darwin*|x86_64-*-darwin*.
2838
55c4eeaa
L
28392010-02-27 H.J. Lu <hongjiu.lu@intel.com>
2840
2841 PR bootstrap/43202
2842 * config.gcc: Enable SSE math for i[34567]86-*-darwin* by
2843 default. Set the default 32bit/64bit archs with $with_arch
2844 instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
2845
30bc1dca
RG
28462010-02-27 Richard Guenther <rguenther@suse.de>
2847
2848 PR tree-optimization/43186
2849 * params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
2850 * doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
2851 * tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
2852 unroller iterations.
2853
c6b9174f
L
28542010-02-27 H.J. Lu <hongjiu.lu@intel.com>
2855
2856 * config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
2857 required and i[34567]86-*-* targets don't support 64bit ISA.
2858
2743db69
EB
28592010-02-26 Eric Botcazou <ebotcazou@adacore.com>
2860
2861 PR ada/43096
2862 * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
2863 the same alias set.
2864
4d16c0dc
L
28652010-02-26 H.J. Lu <hongjiu.lu@intel.com>
2866
2867 * config.gcc: Set the default arch at least to Prescott for
2868 i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
2869 if SSE math is enabled.
2870
0e94b750
MLI
28712010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2872
2873 * diagnostic.c (diagnostic_initialize): Update.
2874 (diagnostic_report_diagnostic): Test inhibit_notes_p for
2875 informative notes.
2876 * diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
2877 (diagnostic_inhibit_notes): New.
2878 * toplev.c (process_options): inhibit notes with -fcompare-debug.
2879
7e1542b9
MLI
28802010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2881
2882 PR c/20631
2883 * doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
2884 * doc/standards.texi: Likewise.
2885 * doc/extend.texi: Likewise.
2886 * doc/trouble.texi: Likewise.
61226dc8 2887 * doc/cppopts.texi: Likewise.
7e1542b9
MLI
2888 * doc/install.texi: Likewise.
2889 * c.opt (std=c90,std=gnu90): New options.
2890 * c-opts.c (c_common_handle_option): Handle them.
2891
0b901e4c
MLI
28922010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
2893
2894 PR c/24577
2895 * c-decl.c (undeclared_variable): Use an informative note.
2896
37530014
RG
28972010-02-26 Richard Guenther <rguenther@suse.de>
2898
2899 PR tree-optimization/43186
2900 * gimple.h (gimple_fold): Remove.
2901 * gimple.c (gimple_fold): Remove. Inline into single user ...
2902 * tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
2903 Try harder for conditions.
2904
095c7b3c
JJ
29052010-02-26 Jakub Jelinek <jakub@redhat.com>
2906
2907 PR debug/43190
2908 * function.c (used_types_insert): Don't skip through named pointer
2909 types. Don't use TYPE_MAIN_VARIANT if the original type has a name
2910 and it is different from the main variant's type.
2911
a1e205cf
NC
29122010-02-26 Nick Clifton <nickc@redhat.com>
2913
2914 * config/rx/rx.md (sminsi3): Remove bogus alternative.
2915
a3af5e26
L
29162010-02-26 H.J. Lu <hongjiu.lu@intel.com>
2917
2918 * config.gcc: Support --with-fpmath=sse for x86.
2919
2920 * config/i386/ssemath.h: New.
2921
2922 * doc/install.texi (--with-fpmath=sse): Documented.
2923
2f816591
RG
29242010-02-26 Richard Guenther <rguenther@suse.de>
2925
2926 PR tree-optimization/43188
2927 * tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
2928 vector types of over-aligned element type.
2929
7ce321b3
L
29302010-02-26 Uros Bizjak <ubizjak@gmail.com>
2931
2932 PR target/43175
2933 * config/i386/i386.c (expand_vec_perm_blend): Use correct
02d43000 2934 operands in V8HImode subregs. Fix operand order in VEC_MERGE rtx.
7ce321b3 2935
b55b184a
JK
29362010-02-26 Jan Kratochvil <jan.kratochvil@redhat.com>
2937
2938 * doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
2939
e7140c8d
JJ
29402010-02-26 Jakub Jelinek <jakub@redhat.com>
2941
6764d92c
JJ
2942 * Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
2943 * var-tracking.c: Include diagnostic.h.
2944 (debug_dv): New function.
2945 (dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
2946
5a309965
JJ
2947 PR debug/43160
2948 * var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
2949 (add_value_chain, add_value_chains, remove_value_chain,
2950 remove_value_chains): Handle DEBUG_EXPRs.
2951 (check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
2952
e7140c8d
JJ
2953 PR debug/43161
2954 * regcprop.c (struct queued_debug_insn_change): New type.
2955 (struct value_data_entry): Add debug_insn_changes field.
2956 (struct value_data): Add n_debug_insn_changes field.
2957 (debug_insn_changes_pool): New variable.
2958 (free_debug_insn_changes, apply_debug_insn_changes,
2959 cprop_find_used_regs_1, cprop_find_used_regs): New functions.
2960 (kill_value_one_regno): Call free_debug_insn_changes if needed.
2961 (init_value_data): Clear debug_insn_changes and n_debug_insn_changes
2962 fields.
2963 (replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
2964 changes for them.
2965 (copyprop_hardreg_forward_1): Don't call apply_change_group for
2966 DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN
2967 changes, call cprop_find_used_regs via note_stores.
2968 (copyprop_hardreg_forward): When copying vd from predecessor
2969 which has any queued DEBUG_INSN changes, make sure the pointers are
2970 cleared. At the end call df_analyze and then if there are any
2971 DEBUG_INSN changes queued at the end of some basic block for still
2972 live registers, apply them.
2973 (pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
2974
894b386f
UB
29752010-02-25 Uros Bizjak <ubizjak@gmail.com>
2976
2977 * config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
2978 (arm*-*-*): Ditto.
2979
3fd77630
L
29802010-02-25 H.J. Lu <hongjiu.lu@intel.com>
2981
2982 * config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
2983 targets. Set the default with_cpu/with_arch from arch/cpu.
2984 Allow x86-64 and native for with_cpu/with_arch.
2985
4b9c6075
NB
29862010-02-25 Nicolas Benoit <nbenoit@tuxfamily.org>
2987
2988 * ebitmap.c: Change calls to verify_popcount with calls to
2989 sbitmap_verify_popcount.
2990 (ebitmap_clear_bit): Fixed map->cacheindex test and
2991 map>cache update when bit clearing results in an empty
2992 element.
2993
2fcd8e02
MM
29942010-02-25 Michael Meissner <meissner@linux.vnet.ibm.com>
2995
2996 PR target/43154
2997 * config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
2998 (vec_interleave_high<mode>): Rename from vec_interleave_highv2df
2999 and support both V2DF and V2DI modes.
3000 (vec_interleave_low<mode>): Rename from vec_interleave_lowv2df and
3001 support both V2DF and V2DI modes.
3002 (general): Delete trailing whitespace from a few patterns.
3003
3004 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
3005 V2DF/V2DI interleave high/low builtins.
3006
3007 * config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
3008 new VSX builtins.
3009
3010 * config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
3011 interleave high/low functions.
3012
f61ae065
GP
30132010-02-25 Gerald Pfeifer <gerald@pfeifer.com>
3014
3015 * doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
3016 #pragma extern_prefix.
3017
7d5d39bb
JJ
30182010-02-25 Jakub Jelinek <jakub@redhat.com>
3019
06796564
JJ
3020 PR debug/43166
3021 * cfgexpand.c (expand_debug_expr) <case VAR_DECL>: If mode is
3022 BLKmode, assert op0 is a MEM and just adjust its mode.
3023
7d5d39bb
JJ
3024 PR debug/43165
3025 * cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
3026 if bitpos isn't multiple of mode's bitsize.
3027
124e0d27
MLI
30282010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
3029
3030 * c.opt (-ftemplate-depth=): New.
3031 (-ftemplate-depth-): Deprecate.
3032 * optc-gen.awk: Handle -ftemplate-depth=.
3033 * opth-gen.awk: Likewise.
3034 * c-opts.c (c_common_handle_option): Likewise.
02d43000 3035 * doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
124e0d27 3036
0e7750a0
JM
30372010-02-24 Jason Merrill <jason@redhat.com>
3038
3039 * doc/invoke.texi: Improve -Wabi and -fabi-version docs.
3040
c26238f4
RO
30412010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3042
3043 * cfg.c (alloc_aux_for_block): Remove inline.
3044 (alloc_aux_for_edge): Likewise.
3045
bef64e0f
RO
30462010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3047
3048 * config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
3049
68ba2afe
RO
30502010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3051
3052 * config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
3053 * config/i386/sol2-gas.h: New file.
3054 * config.gcc (i[34567]86-*-solaris2*): Use it.
3055
2d2e923f
MLI
30562010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
3057
3058 PR c/43128
3059 * c-typeck.c (ep_convert_and_check): New.
3060 (build_conditional_expr): Use it.
3061 (build_binary_op): Likewise.
3062
2e957792
JJ
30632010-02-24 Jakub Jelinek <jakub@redhat.com>
3064
a46368b2
JJ
3065 * regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
3066
2e957792
JJ
3067 PR debug/43150
3068 * gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
3069 bounds even for -O+.
3070 * var-tracking.c (track_expr_p): If !need_rtl, don't mandate
3071 expr needs to have DECL_NAME set.
3072
12a54f54
NC
30732010-02-24 Nick Clifton <nickc@redhat.com>
3074
3075 * config/mep/mep.c: Include gimple.h.
3076 (mep_function_uses_sp): Delete unused function.
3077 (mep_gimplify_va_arg_expr): Change types of pre_p and post_p
3078 parameters. Use unsigned integers to count args. Return a
3079 NULL_RTX instead of an error_mark_node. Toidy up formatting.
3080
8f40ad50
JJ
30812010-02-23 Jakub Jelinek <jakub@redhat.com>
3082
3083 PR target/43107
3084 * config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
3085 greater or equal to nelt instead of 2 * nelt.
3086 (expand_vec_perm_1): When op0 and op1 are equal, mask indexes
3087 with nelt - 1.
3088
a3b20e90
JM
30892010-02-23 Jason Merrill <jason@redhat.com>
3090
3adcf52c
JM
3091 PR debug/42800
3092 * cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
3093 in cfun->local_decls even if they have register types.
3094
a3b20e90
JM
3095 PR c++/42837
3096 * stor-layout.c (place_field): Don't warn about unnecessary
3097 DECL_PACKED if the type is packed.
3098
5ead99fa
JJ
30992010-02-23 Jakub Jelinek <jakub@redhat.com>
3100
3101 PR target/43139
3102 * config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
3103 GOTOFF relocs, even when the base reg isn't pic pointer.
3104
2a8e30fb
MM
31052010-02-23 Michael Matz <matz@suse.de>
3106
3107 PR debug/43077
3108 * cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
3109 (expand_gimple_basic_block): Generate and use debug temps if there
3110 are debug uses left after the last real use of TERed ssa names.
3111 Unlink debug immediate uses when they are expanded.
3112
38170f34
MLI
31132010-02-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
3114
3115 PR 43123
3116 * config/i386/i386.c (override_options): Reorganise to provide
3117 better error messages.
3118
0f9c8f56
SP
31192010-02-22 Sebastian Pop <sebastian.pop@amd.com>
3120
3121 PR middle-end/43083
3122 * graphite-scop-detection.c (create_single_exit_edge): Move
3123 the call to find_single_exit_edge to....
3124 (create_sese_edges): ...here. Don't handle multiple edges
3125 exiting the function.
3126 (build_graphite_scops): Don't handle multiple edges
3127 exiting the function.
3128
31292010-02-22 Sebastian Pop <sebastian.pop@amd.com>
3130
3131 PR middle-end/43097
3132 * sese.c (get_rename): Assert that old_name is an SSA_NAME.
3133 (rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
3134
31352010-02-22 Sebastian Pop <sebastian.pop@amd.com>
3136
3137 PR middle-end/43026
3138 * sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
3139
a98c2819
MLI
31402010-02-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
3141
3142 PR c++/43126
3143 * c-typeck.c (convert_arguments): Print declaration location.
3144 * c-common.c (validate_nargs): Rename as
3145 builtin_function_validate_nargs.
3146 (check_builtin_function_arguments): Update.
3147
ea2edf88
RG
31482010-02-22 Richard Guenther <rguenther@suse.de>
3149
3150 PR lto/43045
3151 * tree-inline.c (declare_return_variable): Use the type of
3152 the call stmt lhs if available.
3153
669887fc
DS
31542010-02-22 Duncan Sands <baldrick@free.fr>
3155
3156 * passes.c (register_pass): Always consider all pass lists when
3157 ref_pass_instance_number is zero.
3158
9efc83f4
RG
31592010-02-22 Richard Guenther <rguenther@suse.de>
3160
3161 PR tree-optimization/42749
3162 * tree-tailcall.c (adjust_return_value_with_ops): Drop update
3163 parameter. Do arithmetic in the original type.
3164 (update_accumulator_with_ops): Likewise.
3165 (adjust_accumulator_values): Adjust.
3166
0a88561f
AK
31672010-02-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
3168
3169 * config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
3170 (QI to BLKmode splitter): New splitter.
3171
5c91eb02
L
31722010-02-22 H.J. Lu <hongjiu.lu@intel.com>
3173
3174 * config/i386/i386.c (initial_ix86_tune_features): Turn on
3175 X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
3176
69e3b47f
RG
31772010-02-22 Richard Guenther <rguenther@suse.de>
3178
3179 * tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
5c91eb02 3180
45df0e43
HPN
31812010-02-22 Hans-Peter Nilsson <hp@bitrange.com>
3182
3183 Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
3184 * config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
3185 ($(T)crti.o, $(T)crtn.o): Remove rules.
3186
72bd130e
TB
31872010-02-21 Tobias Burnus <burnus@net-b.de>
3188
3189 PR fortran/35259
3190 * doc/invoke.texi (-fassociative-math): Document that this
3191 option is automatically enabled for Fortran.
3192
878ee0ab
DM
31932010-02-20 David S. Miller <davem@davemloft.net>
3194
3195 * configure.ac: Test if linker and assembler properly support
3196 GOTDATA_OP relocations.
3197 * configure: Rebuild.
3198 * config.in: Likewise.
3199 * config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
3200 (movsi_lo_sum_pic): Use %gdop_*() relocs if available.
3201 (movsi_high_pic): Likewise.
3202 (movdi_lo_sum_pic): Likewise.
3203 (movdi_high_pic): Likewise.
3204 (movsi_pic_gotdata_op): New pattern.
3205 (movdi_pic_gotdata_op): Likewise.
3206 * config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
3207 emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
02d43000 3208
78c201a4
UB
32092010-02-20 Uros Bizjak <ubizjak@gmail.com>
3210
3211 PR target/43067
3212 * config/i386/sse.md (xop_mulv2div2di3_low): Change type
3213 attribute to ssemul.
3214 (xop_mulv2div2di3_high): Ditto.
3215
17251338
MLI
32162010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
3217
3218 PR c++/35669
3219 * c.opt (Wconversion-null): New option.
3220 * doc/invoke.texi (Wconversion-null): Document.
3221
e7a84854
MLI
32222010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
3223
3224 * common.opt (Wlarger-than-): Add Undocumented.
78c201a4 3225
f233f7ed
MS
32262010-02-19 Mike Stump <mikestump@comcast.net>
3227
3228 * config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
3229
d88900d7
JM
32302010-02-19 Jason Merrill <jason@redhat.com>
3231
3232 PR target/40332
3233 * configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
3234 * configure: Likewise.
3235
715a4e08
AM
32362010-02-20 Alan Modra <amodra@gmail.com>
3237
3238 PR middle-end/42344
3239 * cgraph.h (cgraph_make_decl_local): Declare.
3240 * cgraph.c (cgraph_make_decl_local): New function.
3241 (cgraph_make_node_local): Use it.
3242 * cgraphunit.c (cgraph_function_versioning): Likewise.
3243 * ipa.c (function_and_variable_visibility): Likewise.
3244
ad3b056c
JJ
32452010-02-19 Jakub Jelinek <jakub@redhat.com>
3246
3247 PR bootstrap/43121
3248 * except.c (sjlj_emit_function_enter): Don't call
3249 add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
3250 directly.
3251 * rtl.h (add_reg_br_prob_note): Remove prototype.
3252
58076e21
MLI
32532010-02-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
3254
3255 PR 41779
3256 * c-common.c (conversion_warning): Remove widening conversions
3257 before checking the conversion of integers to reals.
3258
b42186f1
MS
32592010-02-19 Mike Stump <mikestump@comcast.net>
3260
c387e067
MS
3261 PR middle-end/43125
3262 * c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
3263
b42186f1
MS
3264 PR objc/43061
3265 * cgraphunit.c (process_function_and_variable_attributes): Check
3266 DECL_PRESERVE_P instead of looking up attribute "used".
3267 * ipa-pure-const.c (check_decl): Likewise.
3268 * ipa-reference.c (has_proper_scope_for_analysis): Likewise.
3269 * ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
3270 * config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
3271 instead of attribute "used".
3272 * config/sol2-c.c (solaris_pragma_init): Likewise.
3273 (solaris_pragma_fini): Likewise.
3274
8ac074e8
JJ
32752010-02-19 Jakub Jelinek <jakub@redhat.com>
3276
25c0cad4
JJ
3277 * ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
3278 Use XCNEW instead of xcalloc.
3279 (add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
3280 XNEW instead of xmalloc.
3281 (get_fields): Use XNEWVEC instead of xmalloc.
3282
e19bcb67
JJ
3283 PR debug/43084
3284 * ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
3285 populate vars array.
3286 (create_new_general_access): For debug stmts just reset value.
3287 (get_stmt_accesses): For accesses within debug stmts just record them
3288 using add_access_to_acc_sites instead of preventing the peeling or
3289 counting them as accesses.
3290
8ac074e8
JJ
3291 PR middle-end/42233
3292 * dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
3293
c7da0354
RG
32942010-02-19 Richard Guenther <rguenther@suse.de>
3295
3296 PR tree-optimization/42916
3297 * tree-vect-slp.c (vect_slp_analyze_bb): Count only real
3298 instructions.
3299
e5dfb95f
AS
33002010-02-19 Andreas Schwab <schwab@linux-m68k.org>
3301
3302 * configure.ac: Replace all uses of changequote in macro arguments
3303 with proper quoting.
3304
2bdd49f4
JJ
33052010-02-19 Jakub Jelinek <jakub@redhat.com>
3306
3307 PR middle-end/42233
3308 * loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
3309
604d0dbc
RG
33102010-02-19 Richard Guenther <rguenther@suse.de>
3311
3312 PR tree-optimization/42944
3313 * tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
3314 test for aliasing with errno.
3315
554cf330
JJ
33162010-02-19 Jakub Jelinek <jakub@redhat.com>
3317
40e90eac
JJ
3318 PR middle-end/42233
3319 * expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
3320 do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
3321 * dojump.c: Include output.h.
3322 (inv): New inline function.
3323 (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
3324 do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
3325 do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
3326 do_jump_by_parts_equality, do_compare_and_jump): Add PROB
3327 argument, pass it down to other calls.
3328 (do_compare_rtx_and_jump): Likewise. If PROB is not -1,
3329 add REG_BR_PROB note to the conditional jump.
3330 * cfgexpand.c (add_reg_br_prob_note): Removed.
3331 (expand_gimple_cond): Don't call it, add the probability
3332 as last argument to jumpif_1/jumpifnot_1.
3333 * Makefile.in (dojump.o): Depend on output.h.
3334 * builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
3335 callers.
3336 * expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
3337 * stmt.c (do_jump_if_equal): Likewise.
3338 * cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
3339 * loop-unswitch.c (compare_and_jump_seq): Likewise.
3340 * config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
3341 Likewise.
3342 * optabs.c (expand_doubleword_shift, expand_abs): Likewise.
3343 * expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
3344 jumpifnot_1 callers.
3345 (expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
3346 callers.
3347 (store_expr): Adjust jumpifnot caller.
3348 (store_constructor): Adjust jumpif caller.
3349
554cf330
JJ
3350 PR middle-end/42233
3351 * gimplify.c (gimple_boolify): For __builtin_expect call
3352 gimple_boolify also on its first argument.
3353
1a242e3c
UB
33542010-02-18 Uros Bizjak <ubizjak@gmail.com>
3355
3356 * configure.ac (gnu-unique-object): Wrap regexps using [] in
3357 changequote block.
3358 (__stack_chk_fail): Ditto. Remove quadrigraphs.
3359 * configure: Regenerated.
3360
86866b28
UW
33612010-02-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3362
3363 * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
3364 lang_hooks.types_compatible_p instead of comptypes.
3365
8168ccc0
SH
33662010-02-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
3367
3368 * config/arm/lib1funcs.asm (__prefer_thumb__): New define.
3369 (udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
3370 if __prefer_thumb__ is defined.
3371
746e119f
MJ
33722010-02-18 Martin Jambor <mjambor@suse.cz>
3373
3374 PR tree-optimization/43066
3375 * tree-sra.c (build_ref_for_offset_1): Return false on encountering an
3376 array with zero-sized element type.
3377
82cf0c8c
JJ
33782010-02-18 Jakub Jelinek <jakub@redhat.com>
3379
3380 * dwarf2out.c (add_var_loc_to_decl): Change last argument to
3381 rtx, allocate struct var_loc_node here and return it to the
3382 caller, and only if it is actually needed.
3383 (dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
3384 move it earlier and return immediately if it returns NULL.
3385
ccb265d6
MP
33862010-02-17 Mikael Pettersson <mikpe@it.uu.se>
3387
3388 * config/sparc/gas.h: New file. Restore
3389 TARGET_ASM_NAMED_SECTION to its ELF default.
3390 * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
3391 check !HAVE_GNU_AS.
3392 * config/sparc/sparc.c (sparc_elf_asm_named_section):
3393 Likewise. Add ATTRIBUTE_UNUSED to prototype.
3394 * config.gcc (sparc*-*-linux*): Include sparc/gas.h
3395 after sparc/sysv4.h.
3396
a30f3def
DK
33972010-02-17 Dave Korn <dave.korn.cygwin@gmail.com>
3398
3399 * config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
3400
2f6c5b27
SB
34012010-02-17 Steven Bosscher <steven@gcc.gnu.org>
3402
3403 * gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
3404 patterns from predicated pattern.
3405
b5e33e04
UB
34062010-02-17 Uros Bizjak <ubizjak@gmail.com>
3407
3408 PR target/43103
3409 * config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
3410 for insn mnemonic suffix.
3411
a95740b3
RG
34122010-02-17 Richard Guenther <rguenther@suse.de>
3413
3414 * tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
3415 to loop PHI nodes.
3416
169e464e
JJ
34172010-02-17 Jakub Jelinek <jakub@redhat.com>
3418
3419 PR debug/42918
3420 * caller-save.c (save_call_clobbered_regs): If BB ends with
3421 a DEBUG_INSN, move any notes in between last real insn and the last
3422 DEBUG_INSN after the last DEBUG_INSN.
3423
5498b6d2
JR
34242010-02-16 Joern Rennecke <joern.rennecke@embecosm.com>
3425
3426 * tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
3427 Fix return type. Fix argument type. Explain meaning of return value.
3428
b09bae68
RG
34292010-02-16 Richard Guenther <rguenther@suse.de>
3430
3431 PR tree-optimization/41043
b5e33e04 3432 * tree-vrp.c (vrp_var_may_overflow): Only ask SCEV for real loops.
b09bae68
RG
3433 (vrp_visit_assignment_or_call): Do not ask SCEV for regular
3434 statements ...
3435 (vrp_visit_phi_node): ... but only for loop PHI nodes.
3436
99f51320
IR
34372010-02-16 Ira Rosen <irar@il.ibm.com>
3438
3439 PR tree-optimization/43074
3440 * tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
3441 * tree-vect-loop.c (vect_analyze_loop_operations): Add
3442 vectorizable cycles in hybrid SLP check.
3443 * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
3444
f47e08d9
RG
34452010-02-16 Richard Guenther <rguenther@suse.de>
3446
b5e33e04 3447 * alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
f47e08d9
RG
3448 (true_dependence): If memrefs_conflict_p computes must-alias
3449 trust it. Move TBAA check after offset-based disambiguation.
3450 (canon_true_dependence): Likewise.
3451
ec8c3978
JJ
34522010-02-16 Alexandre Oliva <aoliva@redhat.com>
3453
3454 * params.def (PARAM_MAX_VARTRACK_SIZE): New.
3455 * doc/invoke.texi: Document it.
3456 * var-tracking.c: Include toplev.h and params.h.
3457 (vt_find_locations): Return bool indicating success. Compute
3458 hash sizes unconditionally. Check new parameter, report.
3459 (variable_tracking_main_1): Check vt_find_locations results and
3460 retry. Renamed from...
3461 (variable_tracking_main): ... this. New wrapper to preserve
3462 flag_var_tracking_assignments.
3463 * Makefile.in (var-tracking.o): Adjust dependencies.
3464
3bf6b403 34652010-02-16 Jack Howarth <howarth@bromo.med.uc.edu>
b5e33e04 3466 Jakub Jelinek <jakub@redhat.com>
3bf6b403
JH
3467
3468 PR target/42854
3469 * config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
3470 if weak_import attribute is present.
3471 * config/darwin.c (machopic_select_section): Likewise.
3472
a934eb2d
JR
34732010-02-15 Joern Rennecke <joern.rennecke@embecosm.com>
3474
3475 * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
3476 (TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
3477 (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
3478 (TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
3479
3480 * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
3481
3482 * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
3483 Fix argument types.
3484
3485 * doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
3486 Rewrite text to refer to the names.
3487
02edd2f6
SP
34882010-02-15 Sebastian Pop <sebastian.pop@amd.com>
3489
3490 * config/i386/i386-builtin-types.def
3491 (V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
3492 (V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
3493 (V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
3494 (V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
3495 * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
3496 IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
3497 IX86_BUILTIN_VPERMIL2PS256.
3498 (MULTI_ARG_4_DF2_DI_I): Defined.
3499 (MULTI_ARG_4_DF2_DI_I1): Defined.
3500 (MULTI_ARG_4_SF2_SI_I): Defined.
3501 (MULTI_ARG_4_SF2_SI_I1): Defined.
3502 (bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
3503 __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
3504 __builtin_ia32_vpermil2ps256.
3505 (ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
3506 MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
3507 MULTI_ARG_4_SF2_SI_I1. Handle builtins with 4 arguments.
3508 (ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
3509 MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
3510 MULTI_ARG_4_SF2_SI_I1. Handle CODE_FOR_xop_vpermil2v2df3,
3511 CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
3512 CODE_FOR_xop_vpermil2v8sf3.
3513 * config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
3514 * config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern.
3515 * config/i386/xopintrin.h (_mm_permute2_pd): New.
3516 (_mm256_permute2_pd): New.
3517 (_mm_permute2_ps): New.
3518 (_mm256_permute2_ps): New.
3519
ac447f25
NC
35202010-02-15 Nick Clifton <nickc@redhat.com>
3521
d079b87f 3522 * config/h8300/h8300.c (h8300_push_pop): Use bool type for
ac447f25
NC
3523 boolean parameters. Use emit_jump_insn when emitting a pop
3524 instruction containing a return insn.
b5e33e04
UB
3525 (push): Use 'true' rather than '1' as second parameter to F.
3526 (h8300_expand_prologue): Likewise.
3527 Use 'true' and 'false' for boolean parameters to h8300_push_pop.
3528 (h8300_expand_epilogue): Likewise.
ac447f25 3529
313333a6
RG
35302010-02-15 Richard Guenther <rguenther@suse.de>
3531
3532 PR middle-end/43068
3533 * cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
3534 if that is zero.
3535
653958e8
NC
35362010-02-15 Nick Clifton <nickc@redhat.com>
3537
3538 * config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
3539 delta.
3540
0f667308
MP
35412010-02-14 Marco Poletti <poletti.marco@gmail.com>
3542
3543 * intl.c (fake_ngettext): New function.
3544 * intl.h (fake_ngettext): Declare.
3545 (ngettext): Define macro.
3546 * collect2.c (notice_translated): New function.
3547 (main): Use notice_translated and ngettext.
3548 * collect2.h (notice_translated): Declare.
3549
912eb5a4
SB
35502010-02-14 Steven Bosscher <steven@gcc.gnu.org>
3551
3552 * reorg.c (delete_computation): Comment fixes.
3553 * caller-save.c (setup_save_areas): Idem.
3554 * sel-sched-dump.c (dump_lv_set): Idem.
3555 * rtl.def: Idem.
3556
244e6c5c
AK
35572010-02-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
3558
3559 * config/s390/s390.c (s390_sched_init): New function.
3560 (TARGET_SCHED_INIT): Target hook defined.
3561
9ab99933
DK
35622010-02-12 Dave Korn <dave.korn.cygwin@gmail.com>
3563 Jack Howarth <howarth@bromo.med.uc.edu>
3564 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
3565
3566 PR target/42982
3567 Partial revert of unintended change in fix for PR41605.
3568 * config/darwin.h: Fix typo.
3569 * config/darwin9.h: Same.
3570
ed5bdeb6
JJ
35712010-02-11 Jakub Jelinek <jakub@redhat.com>
3572
3573 * c-pch.c (pch_init): Clear v.
3574
f432760f
SP
35752010-02-11 Sebastian Pop <sebastian.pop@amd.com>
3576
3577 PR middle-end/42930
3578 * graphite-scop-detection.c (graphite_can_represent_scev): Call
3579 graphite_can_represent_init for MULT_EXPR.
3580
35812010-02-11 Sebastian Pop <sebastian.pop@amd.com>
3582
3583 PR middle-end/42914
3584 PR middle-end/42530
3585 * graphite-sese-to-poly.c (remove_phi): New.
3586 (translate_scalar_reduction_to_array): Call remove_phi.
3587
35882010-02-11 Sebastian Pop <sebastian.pop@amd.com>
3589
3590 PR middle-end/42771
3591 * graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
3592 * graphite-clast-to-gimple.h (gloog): Update declaration.
3593 * graphite-poly.c (new_scop): Clear POLY_SCOP_P.
3594 * graphite-poly.h (struct poly_bb): Add missing comments.
3595 (struct scop): Add poly_scop_p field.
3596 (POLY_SCOP_P): New.
3597 * graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
3598 * graphite.c (graphite_transform_loops): Build the polyhedral
3599 representation for each scop before code generation.
3600 * sese.c (rename_variables_in_operand): Removed.
3601 (rename_variables_in_expr): Return the renamed expression.
3602 (rename_sese_parameters): New.
3603 * sese.h (rename_sese_parameters): Declared.
3604
6d892147
RG
36052010-02-11 Richard Guenther <rguenther@suse.de>
3606
3607 PR tree-optimization/42998
3608 * tree-ssa-pre.c (create_expression_by_pieces): Treat
3609 POINTER_PLUS_EXPR properly.
3610
04eadb13
SP
36112010-02-11 Sebastian Pop <sebastian.pop@amd.com>
3612 Changpeng Fang <changpeng.fang@amd.com>
3613
3614 PR middle-end/40886
3615 * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
3616 the cost of an IV candidate when the IV is used in a test against zero.
3617
3618 * gcc.dg/tree-ssa/ivopts-3.c: New.
3619
91753e21
RG
36202010-02-11 Richard Guenther <rguenther@suse.de>
3621
3622 PR lto/41664
3623 * tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
3624 pointer-vs-decl case by swapping refs. Handle some cases
3625 of pointer-vs-decl disambiguations more conservatively.
3626 * cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
3627 to false after expanding.
3628
f68df07c
RG
36292010-02-11 Richard Guenther <rguenther@suse.de>
3630
3631 PR driver/43021
3632 * gcc.c (process_command): Handle LTO file@offset case more
3633 appropriately.
3634
d2d36740
JJ
36352010-02-11 Jakub Jelinek <jakub@redhat.com>
3636
8f6aedba
JJ
3637 * reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
3638 modifications outside of the DEBUG_INSN. Accept CLOBBERs inside
3639 of DEBUG_INSNs.
3640 (eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
3641
d2d36740
JJ
3642 * dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
3643 if MEM's mode size isn't DWARF2_ADDR_SIZE.
3644 (mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
3645 Optimize eq/ne comparisons when both arguments are known to be
3646 zero-extended.
3647 (mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
3648 Don't mask operands unnecessarily if they are known to be already
3649 zero-extended.
3650
56592e03
VM
36512010-02-10 Vladimir Makarov <vmakarov@redhat.com>
3652
3653 * ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
3654 instead of loop.
3655
5418fe84
RG
36562010-02-10 Richard Guenther <rguenther@suse.de>
3657
3658 PR tree-optimization/43017
3659 * tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
3660 for wrapping signed arithmetic.
3661
92e8e53a
JJ
36622010-02-10 Jakub Jelinek <jakub@redhat.com>
3663
3664 PR debug/43010
3665 * dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
3666 if no debug info should be emitted for it.
3667
bd55b817
KK
36682010-02-10 Kaz Kojima <kkojima@gcc.gnu.org>
3669
3670 * config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
3671 note when flag_exceptions is set.
3672
2ab43a52
DS
36732010-02-10 Duncan Sands <baldrick@free.fr>
3674
3675 * Makefile.in (PLUGIN_HEADERS): Add debug.h.
3676
d977cb9c
RG
36772010-02-10 Richard Guenther <rguenther@suse.de>
3678
3679 PR c/43007
3680 * tree.c (get_unwidened): Handle constants.
3681 * convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
3682
563cb662
MJ
36832010-02-10 Martin Jambor <mjambor@suse.cz>
3684
3685 PR lto/42985
3686 * ipa-prop.c (ipa_update_after_lto_read): Count parameters and
3687 check for variable argument counts independently.
3688
9e3c399e
CB
36892010-02-10 Christian Bruel <christian.bruel@st.com>
3690
3691 PR target/42841
3692 * config/sh/sh.c (find_barrier): Increase length for non delayed
3693 conditional branches.
01305d24 3694
e938feb4
CB
36952010-02-10 Christian Bruel <christian.bruel@st.com>
3696
3697 * config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
01305d24 3698
cbb1ab10
JJ
36992010-02-10 Jakub Jelinek <jakub@redhat.com>
3700
3701 * builtins.c (set_builtin_user_assembler_name): Also handle
3702 ffs if int is smaller than word.
3703
b09495c1
VM
37042010-02-09 Vladimir Makarov <vmakarov@redhat.com>
3705
3706 PR middle-end/42973
3707 * ira-conflicts.c (get_dup): Remove.
3708 (process_reg_shuffles): Add new parameter. Use it as an
3709 additional guard for copy generation.
3710 (add_insn_allocno_copies): Rewrite.
3711
57257f0d
AM
37122010-02-09 Alexander Monakov <amonakov@ispras.ru>
3713
3714 * common.opt (fsched2-use-traces): Preserved for backward
3715 compatibility.
3716 * doc/invoke.texi: Remove the documentation about option
3717 -fsched2-use-traces.
3718 * sched-rgn.c (rest_of_handle_sched2): Remove usage of
3719 flag_sched2_use_traces.
3720 * opts.c (common_handle_option): Add OPT_fsched2_use_traces to
3721 the backward compatibility flag section.
3722
72d182d3
RG
37232010-02-09 Richard Guenther <rguenther@suse.de>
3724
3725 PR tree-optimization/43008
3726 * tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
3727 make HEAP variables initialized from global memory if they
3728 are not known builtin functions.
3729 (find_func_aliases): Adjust.
3730
9605a606
RG
37312010-02-09 Richard Guenther <rguenther@suse.de>
3732
3733 PR tree-optimization/43000
3734 * tree-vrp.c (vrp_int_const_binop): Only handle unsigned
3735 arithmetic manually.
3736
8d9eca14
JJ
37372010-02-08 Jakub Jelinek <jakub@redhat.com>
3738
3739 PR tree-optimization/42931
3740 * tree-loop-linear.c (try_interchange_loops): Don't call
3741 double_int_mul if estimated_loop_iterations failed.
3742
d3545524
MJ
37432010-02-08 Martin Jambor <mjambor@suse.cz>
3744
3745 PR middle-end/42898
3746 * tree-sra.c (build_accesses_from_assign): Do not mark in
3747 should_scalarize_away_bitmap if stmt has volatile ops.
3748 (sra_modify_assign): Do not process assigns piecemeal if if stmt
3749 has volatile ops.
3750
8a9a2486
JR
37512010-02-08 Joern Rennecke <joern.rennecke@embecosm.com>
3752
3753 * doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
3754
7bf25dd6
AN
37552010-02-07 Adam Nemet <adambnmet@gmail.com>
3756
3757 * config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
3758 before the pattern.
3759
a46edbff
AP
37602010-02-07 Andrew Pinski <pinskia@gmail.com>
3761
3762 PR middle-end/42946
3763 * df-core.c (df_finish_pass): Change type of saved_flags to int.
3764
86da963e
SP
37652010-02-07 Sebastian Pop <sebastian.pop@amd.com>
3766
3767 PR middle-end/42988
3768 * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
3769 to unknown_dependence.
3770 (graphite_legal_transform_dr): Handle the unknown_dependence.
3771 (graphite_carried_dependence_level_k): Same.
3772
37732010-02-07 Sebastian Pop <sebastian.pop@amd.com>
3774
3775 * ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
3776
997ac87b
RG
37772010-02-07 Richard Guenther <rguenther@suse.de>
3778
3779 PR middle-end/42991
3780 * expr.c (get_inner_reference): Always initialize *pbitsize.
3781
cb6b911a
RG
37822010-02-07 Richard Guenther <rguenther@suse.de>
3783
3784 PR middle-end/42956
3785 * gimplify.c (gimple_fold_indirect_ref): Avoid generating
3786 new ARRAY_REFs on variable size element or minimal index arrays.
3787 Complete.
3788 * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
3789 gimple_fold_indirect_ref.
3790
b761dbe6
RE
37912010-02-06 Richard Earnshaw <rearnsha@arm.com>
3792
3793 PR target/42957
3794 * arm.c (arm_override_options): Just return if the user has specified
3795 an invalid fpu name.
3796
b2469a9b
JM
37972010-02-03 Jason Merrill <jason@redhat.com>
3798
3799 PR c++/42870
3800 * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
3801 i386_pe_maybe_record_exported_symbol.
3802
1f65437d
SE
38032010-02-05 Steve Ellcey <sje@cup.hp.com>
3804
3805 PR target/42924
3806 * config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
3807 (pa_delegitimize_address): New function.
3808
126edba2
OS
38092010-02-05 Ozkan Sezer <sezeroz@gmail.com>
3810
3811 * config/i386/msformat-c.c (ms_printf_length_specs): Set the
3812 scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
3813
532df904
RG
38142010-02-05 Richard Guenther <rguenther@suse.de>
3815
3816 PR lto/42762
3817 * lto-streamer-in.c (get_resolution): Deal with references
3818 to undefined functions.
3819
5c95f07b
RG
38202010-02-05 Richard Guenther <rguenther@suse.de>
3821
b5e33e04 3822 * tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
5c95f07b
RG
3823 (fold_const_aggregate_ref): Likewise.
3824 (ccp_fold_stmt): Substitute loads.
3825 (maybe_fold_reference): Verify types before substituting.
3826 Unshare properly.
3827 (fold_gimple_assign): Unshare properly.
b5e33e04 3828 (fold_stmt_1): Insert conversion if necessary before replacing the RHS.
5c95f07b 3829
64aa00b1
NF
38302010-02-05 Nathan Froyd <froydnj@codesourcery.com>
3831
3832 * config/rs6000/rs6000.c (rs6000_override_options): Invert check
3833 for rs6000_gen_cell_microcode.
3834
b0f19292
RG
38352010-02-04 Richard Guenther <rguenther@suse.de>
3836
3837 PR rtl-optimization/42952
3838 * dse.c (const_or_frame_p): Remove MEM handling.
3839
f7eb48b5
NC
38402010-02-04 Nick Clifton <nickc@redhat.com>
3841
3842 * config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
3843 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
3844 (function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
3845 (mn10300_asm_output_mi_thunk): New function.
3846 (mn10300_can_output_mu_thunk): New function.
3847 * config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
3848 (FUNCTION_ARG_REGNO_P): Fix comment. Accept d0 and d1.
3849 (FUNCTION_ARG): Delete incorrect comment.
3850
2aac1924
JM
38512010-02-03 Jason Merrill <jason@redhat.com>
3852
3853 PR c++/40138
3854 * fold-const.c (operand_equal_p): Handle erroneous types.
3855
3e5f930f 38562010-02-03 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
07738b87
KP
3857
3858 * config/h8300/h8300.md (can_delay): Fix attibute condition.
3859
a7f3e500
VM
38602010-02-03 Vladimir Makarov <vmakarov@redhat.com>
3861
3e5f930f 3862 PR rtl-optimization/42941
a7f3e500
VM
3863 * sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
3864 of xmalloc.
3865
59d49708
JM
38662010-02-03 Jason Merrill <jason@redhat.com>
3867
3868 PR c++/35652
3869 * builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
3870
5440c0e7
AO
38712010-02-03 Alexandre Oliva <aoliva@redhat.com>
3872
3873 PR debug/42896
02d43000 3874 * cselib.h (struct cselib_val_struct): Add uid. Rename value to hash.
5440c0e7
AO
3875 (cselib_reset_table): Renamed from...
3876 (cselib_reset_table_with_next_value): ... this.
3877 (cselib_get_next_uid): Renamed from...
3878 (cselib_get_next_unknown_value): ... this.
3879 * cselib.c (next_uid): Renamed from...
3880 (next_unknown_value): ... this.
3881 (cselib_clear_table): Adjust.
3882 (cselib_reset_table): Adjust. Renamed from...
3883 (cselib_reset_table_with_next_value): ... this.
3884 (cselib_get_next_uid): Adjust. Renamed from...
3885 (cselib_get_next_unknown_value): ... this.
3886 (get_value_hash): Use hash.
3887 (cselib_hash_rtx): Likewise.
3888 (new_cselib_val): Adjust. Set and dump uid.
3889 (cselib_lookup_mem): Pass next_uid as hash.
3890 (cselib_subst_to_values): Likewise.
3891 (cselib_log_lookup): Dump uid.
3892 (cselib_lookup): Pass next_uid as hash. Adjust.
3893 (cselib_process_insn): Adjust.
3894 (cselib_init): Initialize next_uid.
3895 (cselib_finish): Adjust.
3896 (dump_cselib_table): Likewise.
3897 * dse.c (canon_address): Dump value uid.
3898 * print-rtl.c (print_rtx): Print value uid.
3899 * var-tracking.c (VARIABLE_HASH_VAL): Dropped.
3900 (dvuid): New type.
3901 (dv_uid): New function, sort of renamed from...
3902 (dv_htab_hash): ... this, reimplemented in terms of it and...
3903 (dv_uid2hash): ... this. New.
3904 (variable_htab_eq): Drop excess assertions.
3905 (tie_break_pointers): Removed.
3906 (canon_value_cmp): Compare uids.
3907 (variable_post_merge_New_vals): Print uids.
3908 (vt_add_function_parameters): Adjust.
3909 (vt_initialize): Reset table. Adjust.
3910
e3c70387
RG
39112010-02-03 Richard Guenther <rguenther@suse.de>
3912
3913 PR tree-optimization/42944
b5e33e04 3914 * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
e3c70387
RG
3915 (call_may_clobber_ref_p_1): Likewise. Properly handle
3916 malloc and calloc clobbering errno.
3917
4cad6dba
SB
39182010-02-03 Steven Bosscher <steven@gcc.gnu.org>
3919
3920 * doc/invoke.texi: Fix name of sched1 dump.
3921
3922 * opts.c (decode_options): Set flag_tree_switch_conversion
3923 only conditionally on optimize >= 2.
3924
3925 * gcse.c: Assorted comment fixes in pass description.
3926
693ee8cf
AG
39272010-02-03 Anthony Green <green@moxielogic.com>
3928
3929 * config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
3930 nop padding in order to maintain alignment of storage location of
3931 target function address.
3932 (moxie_trampoline_init): Store target function address at newly
3933 aligned location.
3934 * config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
3935 to 32.
3936 (TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
3937
bf8e3b77
RG
39382010-02-03 Richard Guenther <rguenther@suse.de>
3939
3940 PR middle-end/42927
3941 * tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
3942
bde17fdc
RO
39432010-02-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3944
3945 * config.gcc: Reenable check for obsolete targets.
3946 Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
3947 mips-sgi-irix6.[0-4]*.
3948
c9c27b72
NC
39492010-02-02 Nick Clifton <nickc@redhat.com>
3950
3951 * config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
3952 constant size of 4 as being the same as 0.
3953 * doc/invoke.texi (RX Options): Document that -mmax-constant-size
3954 can take values in the range 0..4.
3955
fc15bd03
JH
39562010-02-02 Jack Howarth <howarth@bromo.med.uc.edu>
3957
3958 PR java/41991
3959 * unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
3960 as _darwin10_Unwind_FindEnclosingFunction().
3961 * libgcc-libsystem.ver: New.
3962
6eeea7a7
VM
39632010-02-01 Vladimir Makarov <vmakarov@redhat.com>
3964
3965 PR target/41399
3966 * sched-deps.c (sched_analyze_insn): Ignore fixed registers for
3967 implicitly set registers.
3968
87d05b44
RE
39692010-02-01 Richard Earnshaw <rearnsha@arm.com>
3970
3971 * arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
3972 (arm_override_options): Allow automatic selection of the thread
3973 pointer register if thumb2.
3974 (legitimize_pic_address): Improve code sequences for Thumb2.
3975 (arm_call_tls_get_addr): Likewise.
3976 (legitimize_tls_address): Likewise.
3977 * arm.md (pic_load_addr_arm): Delete. Replace with ...
3978 (pic_load_addr_32bit): ... this. New named pattern.
3979 * thumb2.md (pic_load_addr_thumb2): Delete.
3980 (pic_load_dot_plus_four): Delete.
3981 (tls_load_dot_plus_four): New named pattern.
3982
cb717ac4
RO
39832010-02-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3984
3985 PR libgomp/29986
3986 * doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
3987 Document fix for TLS bug.
3988
44f89620
RG
39892010-01-31 Richard Guenther <rguenther@suse.de>
3990
3991 * tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
3992 conservatively correct.
3993
747b0aed
JDA
39942010-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3995
3996 PR target/42850
3997 Revert:
3998 2010-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3999
4000 * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
4001
362c6d2f
KG
40022010-01-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4003
4004 * doc/install.texi: Update recommended GMP/MPFR/MPC versions.
4005
8370a62a
KT
40062010-01-31 Kai Tietz <kai.tietz@onevision.com>
4007
4008 * config.gcc: Adjust order of makefile fragments for mingw targets.
4009
61c7cbf8
RG
40102010-01-31 Richard Guenther <rguenther@suse.de>
4011
4012 PR middle-end/42898
4013 * gimplify.c (gimplify_init_constructor): For volatile LHS
4014 initialize a temporary.
4015
b0a69d20
MK
40162010-01-31 Matthias Klose <doko@ubuntu.com>
4017
4018 * configure.ac: Fix __stack_chk_fail check for cross builds configured
4019 --with-headers
4020 * configure: Regenerate.
4021
55eb4dab
EB
40222010-01-29 Eric Botcazou <ebotcazou@adacore.com>
4023
4024 * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
4025 the same alias set and their sizes different constantness.
4026 (aliasing_component_refs_p): Revert 2009-10-24 change.
4027
f9e06dbc
RO
40282010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4029
4030 * config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
4031 unused.
4032
eb6b98c7
RG
40332010-01-29 Richard Guenther <rguenther@suse.de>
4034
4035 * tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
4036 Assert we successfully updated the call.
4037
c23cd1d6
JJ
40382010-01-29 Jakub Jelinek <jakub@redhat.com>
4039
4040 PR rtl-optimization/42889
4041 * df.h (df_set_bb_dirty_nonlr): New prototype.
4042 * df-core.c (df_set_bb_dirty_nonlr): New function.
4043 * df-scan.c (df_insn_rescan): Call it instead of
4044 df_set_bb_dirty for DEBUG_INSNs.
4045
38bc76da
RG
40462010-01-29 Richard Guenther <rguenther@suse.de>
4047
4048 PR middle-end/37448
4049 * ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
4050 quadratic behavior in most cases.
4051
d819472d
UB
40522010-01-28 Uros Bizjak <ubizjak@gmail.com>
4053
4054 PR target/42891
4055 * config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
4056 in the call to gen_x86_movsicc_0_m1.
4057
3ed7d068
RG
40582010-01-28 Richard Guenther <rguenther@suse.de>
4059
4060 PR tree-optimization/42871
01305d24 4061 * tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
3ed7d068 4062
830bc550
RG
40632010-01-28 Richard Guenther <rguenther@suse.de>
4064
4065 * tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
4066 into call arguments.
4067
28e5ca15
RB
40682010-01-28 Richard Guenther <rguenther@suse.de>
4069
4070 PR middle-end/42883
4071 * tree-cfgcleanup.c (remove_forwarder_block): Do not remove
4072 the forwarder if the destination is an EH landing pad.
4073
40742010-01-28 Razya Ladelsky <razya@il.ibm.com>
8adfe01d 4075
d819472d 4076 * tree-parloops.c (transform_to_exit_first_loop): Update the basic
8adfe01d
RL
4077 block list passed to gimple_duplicate_sese_tail.
4078 (parallelize_loops): Avoid parallelization when the function
4079 has_nonlocal_label.
4080 Avoid parallelization when the preheader is IRREDUCIBLE.
4081 Try to optimize when estimated_loop_iterations_int is unresolved.
4082 Add the loop's location to the dump file.
28e5ca15 4083 * tree-cfg.c (add_phi_args_after_redirect): Remove.
8adfe01d
RL
4084 (gimple_duplicate_sese_tail): Remove the check for the latch.
4085 Redirect nexits to the exit block.
4086 Remove handling of the incoming edges to the latch.
4087 Redirect the backedge from the copied latch to the exit bb.
4088
3d952fb7
MM
40892010-01-28 Michael Matz <matz@suse.de>
4090
4091 PR target/42881
4092 * config/i386/i386.c (ix86_expand_vector_init_duplicate):
4093 Wrap force_reg into a sequence, emit it before user.
4094
4fc2b1aa
ST
40952010-01-28 Stephen Thomas <stephen.thomas@arm.com>
4096
4097 * config/arm/arm.md (bswapsi2): Add support for bswapsi2.
4098 (arm_rev): New.
4099 (arm_legacy_rev): Likewise.
4100 (thumb_legacy_rev): Likewise.
4101
0f277ad4
JJ
41022010-01-27 Jakub Jelinek <jakub@redhat.com>
4103
4104 * dwarf2out.c (mem_loc_descriptor): Remove special casing of
4105 CONSTANT_POOL_ADDRESS_P SYMBOL_REFs. If for MEM recursive call
4106 on MEM's address failed, try avoid_constant_pool_reference and
4107 recurse if it returned something different.
4108 (loc_descriptor): If for MEM mem_loc_descriptor failed on the
4109 address, try avoid_constant_pool_reference and recurse if it
4110 returned something different.
4111 (dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
4112 address and avoid_constant_pool_reference returned something
4113 different, don't set have_address.
4114
fb4cbb9f
AO
41152010-01-27 Alexandre Oliva <aoliva@redhat.com>
4116
4117 PR debug/42861
4118 * var-tracking.c (val_store): Add modified argument, obey it.
4119 Adjust callers.
4120 (count_uses): Move down logging of main.
4121 (compute_bb_dataflow): Use val_store for MO_VAL_USEs that
4122 don't need resolution.
4123 (emit_notes_in_bb): Likewise.
4124
e87da263
RG
41252010-01-27 Richard Guenther <rguenther@suse.de>
4126
4127 PR middle-end/42878
4128 * tree-inline.c (remap_decl): Delay remapping of SSA name
4129 default definitions until we need them.
4130
c6d99cad
JJ
41312010-01-27 Jakub Jelinek <jakub@redhat.com>
4132
9a78eb71
JJ
4133 * config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
4134 (rs6000_delegitimize_address): New function.
4135
e8d8f497
JJ
4136 * config/s390/s390.c (s390_delegitimize_address): Call
4137 delegitimize_mem_from_attrs.
4138
c6d99cad
JJ
4139 PR middle-end/42874
4140 * tree-inline.c (cannot_copy_type_1): Removed.
4141 (copy_forbidden): Don't forbid copying of functions containing
4142 records/unions with variable length fields.
4143
4f6fee0f
CB
41442010-01-27 Christian Bruel <christian.bruel@st.com>
4145
4146 Revert:
4147 PR target/42841
4148 * config/sh/sh.c (find_barrier): Increase length for non delayed
4149 conditional branches.
d819472d 4150
cdf6bfb7
MK
41512010-01-27 Matthias Klose <doko@ubuntu.com>
4152
4153 * configure.ac (gnu-unique-object): Fix ldd version check.
4154 * configure: Regenerate.
4155
31b21739
RO
41562010-01-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4157
4158 * config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
4159 HAVE_GNU_AS value.
4160 * config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
4161 Test for HAVE_GNU_AS value.
4162
dc4f0670
RO
41632010-01-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4164
4165 * config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
4166 * config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
4167 INT64_TYPE): Define.
4168 (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
4169 (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
4170 INT_LEAST64_TYPE): Define.
4171 (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
4172 UINT_LEAST64_TYPE): Define.
4173 (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
4174 INT_FAST64_TYPE): Define.
4175 (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
4176 UINT_FAST64_TYPE): Define.
4177 (INTMAX_TYPE, UINTMAX_TYPE): Define.
4178 (INTPTR_TYPE, UINTPTR_TYPE): Define.
4179 (SIG_ATOMIC_TYPE): Define.
4180
a099f7d4
RG
41812010-01-26 Richard Guenther <rguenther@suse.de>
4182
4183 * df-scan.c (df_scan_set_bb_info): Remove assert.
4184 (df_insn_rescan_debug_internal): Merge asserts.
4185 (df_install_ref): Likewise.
4186 (df_mark_reg): Use bitmap_set_range.
4187 (df_hard_reg_used_p): Remove assert.
4188 (df_hard_reg_used_count): Likewise.
4189
0d9b0371
RG
41902010-01-26 Richard Guenther <rguenther@suse.de>
4191
4192 PR rtl-optimization/42685
4193 * web.c (web_main): Ignore DEBUG_INSNs.
4194
7a241624
JR
41952010-01-26 Joern Rennecke <amylaar@spamcop.net>
4196
4197 * doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
4198
4199 (TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
4200 Fix types of fndecl and arglist parameters.
4201
3333cd50
RG
42022010-01-26 Richard Guenther <rguenther@suse.de>
4203
4204 PR middle-end/42806
4205 * tree-eh.c (unsplit_eh): Skip debug insns.
4206
7f657dde
RG
42072010-01-26 Richard Guenther <rguenther@suse.de>
4208
4209 PR tree-optimization/42250
4210 * ipa-type-escape.c (type_escape_execute): Do not analyze clones.
4211
057dd91d
JJ
42122010-01-26 Jakub Jelinek <jakub@redhat.com>
4213
4214 PR fortran/42866
4215 * omp-low.c (expand_omp_sections): Only use single_pred if
4216 l2_bb is single_pred_p.
4217
69b18163
CB
42182010-01-25 Christian Bruel <christian.bruel@st.com>
4219
4220 PR target/42841
4221 * config/sh/sh.c (find_barrier): Increase length for non delayed
4222 conditional branches.
4223 (sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
4224
00f88f07
DM
42252010-01-24 David S. Miller <davem@davemloft.net>
4226
31b21739 4227 * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
00f88f07 4228 define if not using GAS.
31b21739 4229 * config/sparc/sparc.c (sparc_elf_asm_named_section):
00f88f07
DM
4230 Likewise. Delete SECTION_MERGE code, which is only applicable
4231 when using GAS.
4232
d147cbd9
MM
42332010-01-24 Mark Mitchell <mark@codesourcery.com>
4234
4235 PR c++/42748
4236 * config/arm/arm.c (arm_mangle_type): Do not warn about changes to
4237 mangling of va_list in system headers.
4238
a90352a0
TM
42392010-01-23 Toon Moene <toon@moene.org>
4240
4241 * tree-predcom.c (combine_chains): Return NULL, not false.
4242
e96d7dd7
JR
42432010-01-23 Joern Rennecke <amylaar@spamcop.net>
4244
4245 * tree-loop-distribution.c (distribute_loop): Fix declaration and
4246 initialization of variable res to agree with return type.
4247
65c0a517
SE
42482010-01-22 Steve Ellcey <sje@cup.hp.com>
4249
4250 * Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
4251 * tree-sra.c: Add include of expr.h.
4252
c47987fa
JJ
42532010-01-22 Jakub Jelinek <jakub@redhat.com>
4254
4255 * tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
4256 insert the debug stmt on the single non-EH edge from the stmt.
4257
002cda0a
RH
42582010-01-22 Richard Henderson <rth@redhat.com>
4259
4260 PR tree-opt/42833
4261 * tree-sra.c (sra_modify_assign): Delay re-gimplification of
4262 the RHS until after generate_subtree_copies has insertted its
4263 code before the current statement.
4264
728d406c
JR
42652010-01-22 Joern Rennecke <amylaar@spamcop.net>
4266
4267 * doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
4268
45bbb86d
JR
4269 * gcc-plugin.h (plugin_init): Use "C" likage for c++.
4270
7744b697
MJ
42712010-01-21 Martin Jambor <mjambor@suse.cz>
4272
4273 PR tree-optimization/42585
4274 * tree-sra.c (struct access): New field grp_total_scalarization.
4275 (dump_access): Dump the new field.
4276 (should_scalarize_away_bitmap): New variable.
4277 (cannot_scalarize_away_bitmap): Likewise.
4278 (sra_initialize): Allocate new bitmaps.
4279 (sra_deinitialize): Free new bitmaps.
4280 (create_access_1): New function.
4281 (create_access): Parts moved to create_access_1.
4282 (type_consists_of_records_p): New function.
4283 (completely_scalarize_record): Likewise.
4284 (build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
4285 (build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
4286 (sort_and_splice_var_accesses): Hint groups with a total_scalarization
4287 access.
4288 (analyze_all_variable_accesses): Completely scalarize small eligible
4289 records.
4290
fff08961
MJ
42912010-01-21 Martin Jambor <mjambor@suse.cz>
4292
4293 * tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
4294
a288b143
AH
42952010-01-21 Andrew Haley <aph@redhat.com>
4296
d819472d
UB
4297 * gcc.c (process_command): Move lang_specific_driver before
4298 setting cc_libexec_prefix.
a288b143 4299
4e62a017
RG
43002010-01-21 Richard Guenther <rguenther@suse.de>
4301
4302 PR middle-end/19988
4303 * fold-const.c (negate_expr_p): Pretend only negative
4304 real constants are easily negatable.
4305
ebf0bf7f
JJ
43062010-01-20 Janis Johnson <janis187@us.ibm.com>
4307 Jason Merrill <jason@redhat.com>
4308
4309 * tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
4310 (TYPE_TRANSPARENT_AGGR): this, for union and record.
4311 * calls.c (initialize argument_information): Handle it.
4312 * c-common.c (handle_transparent_union_attribute): Use new name.
4313 * c-decl.c (finish_struct): Ditto.
4314 * c-typeck.c (type_lists_compatible_p): Ditto.
4315 (convert_for_assignment): Use new name and also handle record.
4316 * function.c (aggregate_value_p): Handle it.
4317 (pass_by_reference): Ditto.
4318 (assign_parm_data_types): Ditto.
4319 * print-tree.c (print_node): Ditto.
4320 * lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
4321 * lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
4322 * tree.c (first_field): New fn.
4323
907c6efd
DK
43242010-01-21 Dave Korn <dave.korn.cygwin@gmail.com>
4325
4326 PR target/42818
4327 * config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
4328 even when linking statically, for now.
4329
f827f659
AO
43302010-01-20 Alexandre Oliva <aoliva@redhat.com>
4331
4332 PR debug/42715
4333 * var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
4334 without a cselib val.
4335 (count_uses): Accept MO_VAL_SET with no val on stores.
4336 (add_stores): Likewise.
4337
a85caf9e
JJ
43382010-01-20 Jakub Jelinek <jakub@redhat.com>
4339
4340 * var-tracking.c (check_value_val): Add a compile time assertion.
4341 (dv_is_decl_p): Simplify.
4342 (dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
4343 gcc_assert if ENABLE_CHECKING.
4344
4a4d4c08
AO
43452010-01-20 Alexandre Oliva <aoliva@redhat.com>
4346
4347 PR debug/42782
4348 * var-tracking.c: Include tree-flow.h.
4349 (mem_dies_at_call): New.
4350 (dataflow_set_preserve_mem_locs): Use it.
4351 (dataflow_set_remove_mem_locs): Likewise.
4352 (dump_var): Renamed from dump_variable. Adjust all callers.
4353 (dump_var_slot): Renamed from dump_variable_slot. Likewise.
4354 * Makefile.in (var-tracking.o): Adjust deps.
4355
50e87e30
JR
43562010-01-20 Joern Rennecke <amylaar@spamcop.net>
4357
4358 * doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
4359
e9a8afaa
RG
43602010-01-20 Richard Guenther <rguenther@suse.de>
4361
4362 PR tree-optimization/42717
4363 * tree-ssa-dce.c (get_live_post_dom): Remove.
4364 (forward_edge_to_pdom): Take an arbitrary edge to copy
4365 degenerate PHI args from.
4366 (remove_dead_stmt): Use the first post-dominator even if it
4367 does not contain live statements as redirection destination.
4368
be2fd187
RG
43692010-01-20 Richard Guenther <rguenther@suse.de>
4370
4371 * tree-inline.c (estimate_num_insns): Handle EH builtins.
4372
1124098b
JJ
43732010-01-20 Jakub Jelinek <jakub@redhat.com>
4374
4375 * sel-sched.c (create_speculation_check): Remove set but not used
4376 variable twin.
4377 (try_transformation_cache): Remove set but not used variable ds.
4378 (calculate_privileged_insns): Remove set but not used variables
4379 cur_insn and min_spec_insn.
4380 (find_best_expr): Remove set but not used variable avail_n.
4381 * tree-predcom.c (base_names_in_chain_on): Remove set but not used
4382 variable e.
4383 * cgraphunit.c (assemble_thunk): Remove set but not used variable
4384 false_label.
4385 * haifa-sched.c (remove_notes): Remove set but not used variable prev.
4386 * graphite-clast-to-gimple.c (gloog): Remove set but not used variable
4387 new_scop_exit_edge.
4388
83a5ef25
FW
43892010-01-20 Felyza Wishbringer <fwishbringer@gmail.com>
4390
4391 PR bootstrap/42786
4392 * config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
4393 cpu types. Add support for *-sse3 cpu types.
4394 (x86_64-*-*): Ditto.
4395
b5c0899b
JJ
43962010-01-20 Jakub Jelinek <jakub@redhat.com>
4397
4398 PR middle-end/42803
4399 * varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
4400 argument, call initializer_constant_valid_p_1 instead of
4401 initializer_constant_valid_p, pass CACHE to it, return NULL
4402 immediately if first call returns NULL.
4403 (initializer_constant_valid_p_1): New function.
4404 (initializer_constant_valid_p): Use it.
4405
5f8f3f94
TQ
44062010-01-20 Thomas Quinot <quinot@adacore.com>
4407
4408 * tree.def (PLACEHOLDER_EXPR): Fix comment.
4409
80c35b40
JJ
44102010-01-20 Jakub Jelinek <jakub@redhat.com>
4411
4412 * dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
4413 of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
4414 (loc_list_from_tree): Don't handle unsigned division. Handle
4415 signed modulo using DW_OP_{over,over,div,mul,minus}.
4416 * unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
4417 modulo instead of signed.
4418
c72ea086
DD
44192010-01-20 DJ Delorie <dj@redhat.com>
4420
4421 * config/h8300/h8300.c (F): Add "in_epilogue" flag.
4422 (Fpa): Pass it
4423 (h8300_emit_stack_adjustment): Propogate it.
4424 (push): Pass it.
4425 (h8300_expand_prologue): Likewise.
4426 (h8300_expand_epilogue): Likewise.
4427
b61b1f17
MM
44282010-01-19 Michael Matz <matz@suse.de>
4429
4430 PR tree-optimization/41783
4431 * tree-data-ref.c (toplevel): Include flags.h.
4432 (dump_data_dependence_relation): Also dump the inputs if the
4433 result will be unknown.
4434 (split_constant_offset_1): Look through some conversions.
4435 * tree-predcom.c (determine_roots_comp): Restart a new chain if
4436 the offset from last element is too large.
4437 (ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
4438 (reassociate_to_the_same_stmt): Handle vector registers.
4439 * tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
4440 (e.g. conversions).
31b21739 4441 * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
b61b1f17
MM
4442 wide_prolog_niters argument, emit widening instructions.
4443 (vect_do_peeling_for_alignment): Adjust caller, use widened
4444 variant of the iteration cound.
4445 * Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
4446
b3d7e191
RR
44472010-01-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4448
b61b1f17
MM
4449 PR target/38697
4450 * config/arm/neon-testgen.m (emit_automatics): New parameter
b3d7e191
RR
4451 features. Adjust for Fixed_return_reg feature.
4452 (test_intrinsic): Call emit_automatics with new feature.
b61b1f17 4453 * config/arm/neon.ml: Update copyright years.
b3d7e191
RR
4454 (features): New Fixed_return_reg feature.
4455 (ops): Update feature for Vget_low.
4456
2178b0f9
JJ
44572010-01-19 Jakub Jelinek <jakub@redhat.com>
4458
d6600130
JJ
4459 PR tree-optimization/42719
4460 * tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
4461 stmt uses.
4462
2178b0f9
JJ
4463 PR debug/42728
4464 * fwprop.c (all_uses_available_at): Return false if def_set dest
4465 is a REG that is used in def_insn.
4466
ab7e224a
JR
44672010-01-19 Joern Rennecke <amylaar@spamcop.net>
4468
4469 * doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
4470
4471 (TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
4472 Add argument names.
4473
4474 (TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
4475
f7154d49
JR
4476 * target.h (struct gcc_target) <secondary_reload>: Change type
4477 of last argument to secondary_reload_info *.
4478
f249b405
UB
44792010-01-18 Uros Bizjak <ubizjak@gmail.com>
4480
4481 PR target/42774
4482 * config/alpha/predicates.md (aligned_memory_operand): Return 0 for
4483 memory references with unaligned offsets. Remove CQImode handling.
4484 (unaligned_memory_operand): Return 1 for memory references with
4485 unaligned offsets. Remove CQImode handling.
4486
e23817b3
RG
44872010-01-18 Richard Guenther <rguenther@suse.de>
4488
4489 PR middle-end/39954
4490 * cfgexpand.c (expand_call_stmt): TER pointer arguments in
4491 builtin calls.
4492
1cfd38be
RG
44932010-01-18 Richard Guenther <rguenther@suse.de>
4494
4495 PR tree-optimization/42781
4496 * tree-ssa-structalias.c (find_what_var_points_to): Skip
b5e33e04 4497 restrict processing only if the original variable was artificial.
1cfd38be 4498
72392b81
JR
44992010-01-18 Joern Rennecke <amylaar@spamcop.net>
4500
4501 * doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
4502 find number of popped argument bytes.
4503
4504 (TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
4505 Fix the text that describes the return value for invalid insns.
4506
4507 (TARGET_SCHED_NEEDS_BLOCK_P): Fix return type. Fix argument list.
4508
4509 (TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
4510 Clarify what 'cost of the -dependence' is. Fix quoting.
4511
0678ade0
JR
4512 * toplev.c (default_get_pch_validity): Rename argument to "sz".
4513 * doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
4514
e5165811
JJ
45152010-01-17 Jakub Jelinek <jakub@redhat.com>
4516
4517 * dwarf2out.c (mem_loc_descriptor): Don't ICE on
4518 {S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
4519
3b3f318a
RG
45202010-01-17 Richard Guenther <rguenther@suse.de>
4521
4522 PR middle-end/42248
4523 * function.c (split_complex_args): Take a VEC to modify.
4524 (assign_parms_augmented_arg_list): Build a VEC instead of
4525 a chain of PARM_DECLs.
4526 (assign_parms_unsplit_complex): Take a VEC of arguments.
4527 Do not fixup unmodified parms.
4528 (assign_parms): Deal with the VEC.
4529 (gimplify_parameters): Likewise.
4530
8eacd016
RG
45312010-01-17 Richard Guenther <rguenther@suse.de>
4532
4533 * tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
4534 node existence check.
4535 * tree-vect-loop.c (vect_analyze_loop_form): Likewise.
4536 * tree-cfgcleanup.c (merge_phi_nodes): Likewise.
4537 * tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
4538 * tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
4539 (gimple_execute_on_growing_pred): Likewise.
4540
9adf0570
RG
45412010-01-17 Richard Guenther <rguenther@suse.de>
4542
4543 PR tree-optimization/42773
4544 * tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
4545 (compute_antic_aux): Likewise.
4546 (compute_partial_antic_aux): Likewise.
4547
a90110c3
JZ
45482010-01-17 Jie Zhang <jie.zhang@analog.com>
4549
4550 PR debug/42767
4551 * dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
4552 and US_TRUNCATE.
4553
914d25dc
JR
45542010-01-17 Joern Rennecke <amylaar@spamcop.net>
4555
4556 * doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
4557 appearance.
4558
4559 (TARGET_LEGITIMATE_ADDRESS_P): Add return type.
4560 Fix markup for strict argument.
4561
4562 (TARGET_SCHED_REORDER2): Fix argument types.
4563
4564 (TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
4565 (TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
4566
4567 (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
4568 (TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
4569
4570 (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
4571 Add argument name.
4572
4573 (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
4574 (TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
4575 (TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
4576 (TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
4577 (TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
4578
4579 (TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
4580
4581 (TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
4582
4583 (TARGET_ASM_RELOC_RW_MASK): Add return type.
4584 (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
4585
4586 (TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
4587
4588 (TARGET_ASM_FILE_START): Put @findex before paragraph start.
4589 Use prototype.
4590
4591 (TARGET_ASM_NAMED_SECTION): Fix argument list.
4592
4593 (TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
4594 (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
4595
4596 (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
4597
4598 (TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
4599
4600 (TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
4601 referring to it. Fix language.
4602
4603 (TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
4604
4605 (TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
4606
4607 (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
4608
4609 (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
4610
4611 (TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
4612 '@var{stream}. Remove stray 'and'.
4613
4614 (TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
4615
4616 (TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
4617
4618 (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
4619
31b21739 4620 (TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
914d25dc
JR
4621 misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
4622
4623 (TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
4624 Fix description of return value.
4625 Rename argument "sz" to "len."
4626
4627 (TARGET_CXX_GUARD_MASK_BIT): Add missing article.
4628 Clarify meaning of 'true' return value.
4629
4630 (TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
4631
4632 (TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
4633 rep_mode versus mode_rep.
4634
4635 (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
4636
4637 (TARGET_BUILTIN_DECL): Fix name.
4638
4639 (TARGET_COMMUTATIVE_P): Fix type of first argument.
4640
4641 (TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
4642
4643 (TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
4644
4645 (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
4646
4647 (TARGET_RELAXED_ORDERING): Use @deftypevr.
4648
4649 (TARGET_GET_DRAP_RTX): Note that this is a hook.
4650 Clarify language.
4651
5eb7ce91
JR
4652 (TARGET_BUILTIN_RECIPROCAL): Fix argument types.
4653 Rename argument tm_fn to md_fn.
4654
d2143a2f
JR
4655 (TARGET_OPTION_PRINT): Fix argument list.
4656
8f7fd2da
HJ
46572010-01-16 Harsha Jagasia <harsha.jagasia@amd.com>
4658
4659 PR target/42664
4660 * config/i386/i386.c (ix86_fixup_binary_operands):
4661 Revert FMA4 fixup of operands.
4662
2fdb618d
RW
46632010-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4664
4665 PR gcc/42525
4666 * Makefile.in (write_entries_to_file, install-plugin):
4667 Use \012 instead of \n with tr.
4668
636cf8b1
RS
46692010-01-16 Richard Sandiford <r.sandiford@uk.ibm.com>
4670
4671 * configure.ac (HAVE_AS_REF): New C macro.
4672 * configure: Regenerate.
4673 * config.in: Likewise.
4674 * collect2.c (main): Only postpone SCAN_DWEH to the second pass
4675 if HAVE_AS_REF.
4676 * config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
4677 if HAVE_AS_REF.
4678
b6fd8800
JR
46792010-01-16 Joern Rennecke <amylaar@spamcop.net>
4680
4681 * doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
4682
4683 (TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
4684
4685 (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
4686
4687 (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
4688
4689 (TARGET_IN_SMALL_DATA_P): Fix argument type.
4690
4691 (TARGET_BINDS_LOCAL_P): Fix argument type.
4692
4693 (TARGET_ASM_FILE_END): Use prototype.
4694
4695 (TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
4696
4697 (TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
4698
4699 (TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
4700
4701 (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
4702
4703 (TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
4704 (TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
4705
4706 (TARGET_PCH_VALID_P): Put 'const char *' in braces.
4707 (TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
4708
4709 (TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
4710 (TARGET_ADDR_SPACE_SUBSET_P): Likewise.
4711 (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
4712 (TARGET_ADDR_SPACE_CONVERT): Likewise.
4713
4714 (TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
4715
4716 (TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
4717
4718 (TARGET_INIT_BUILTINS): Use prototype.
4719
4720 (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
4721 Put 'const char *' in braces. Fix parameter types.
4722 (TARGET_INVALID_CONVERSION): Fix parameter types.
4723 (TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
4724 (TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
4725
4726 (TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
4727 Fix argument type.
4728
4729 (TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
4730
4731 (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
4732
9ddb66ef
JR
47332010-01-15 Joern Rennecke <amylaar@spamcop.net>
4734
4735 * doc/tm.texi (TARGET_HELP): Fix return type.
4736
4737 (TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
4738 in braces. Fix argument types.
4739
4740 (TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
4741
4742 (TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
4743
4744 (TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
4745
4746 (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
4747 (TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
4748
4749 (TARGET_MANGLE_TYPE): Fix argument types.
4750
4751 (TARGET_IRA_COVER_CLASSES): Use prototype.
4752
4753 (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type. Use prototype.
4754
4755 (TARGET_CAN_ELIMINATE): Use identifiers for argument names.
4756
4757 (TARGET_PROMOTE_PROTOTYPES): Fix argument type.
4758
4759 (TARGET_MUST_PASS_IN_STACK): Fix argument type.
4760
4761 (TARGET_CALLEE_COPIES): Fix argument types.
4762
4763 (TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
4764
4765 (TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
4766
4767 (TARGET_FUNCTION_VALUE): Fix argument types.
4768
4769 (TARGET_RETURN_IN_MSB): Fix argument type.
4770
4771 (TARGET_RETURN_IN_MEMORY): Fix argument types.
4772
4773 (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
4774
4775 (TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
4776
4777 (TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
4778 agree with return type.
4779
4780 (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
4781
4a62494d
JY
47822010-01-15 Jing Yu <jingyu@google.com>
4783
4784 PR rtl-optimization/42691
4785 * combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
4786 a pseudo to a constant and are merged, and adjust comments.
4787
a1b5171b
EB
47882010-01-15 Eric Botcazou <ebotcazou@adacore.com>
4789
4790 * config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
4791
1197e789
RG
47922010-01-15 Richard Guenther <rguenther@suse.de>
4793
4794 PR middle-end/42739
4795 * tree-cfgcleanup.c (remove_forwarder_block): Move destination
4796 labels of computed or non-local gotos to the destination.
4797 * tree-cfg.c (gimple_verify_flow_info): Verify that a EH
4798 landing pad label is the first label.
4799
cbe80ff8
RG
48002010-01-15 Richard Guenther <rguenther@suse.de>
4801
4802 * tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
4803
c919858d
MM
48042010-01-14 Michael Meissner <meissner@linux.vnet.ibm.com>
4805
4806 PR target/42747
4807 * config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
4808 to allow generation of the xssqrtdp instruction on power7.
4809 (sqrtdf2_fpr): Ditto.
4810
5b1cbe14
JJ
48112010-01-14 Jakub Jelinek <jakub@redhat.com>
4812
ef5d1181
JJ
4813 PR middle-end/42674
4814 * c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
4815 functions with noreturn attribute.
4816
5b1cbe14
JJ
4817 PR c++/42608
4818 * varasm.c (declare_weak): Add weak attribute to decl if it
4819 doesn't have one already.
4820 (assemble_external): Only add decls to weak_decls if they also
4821 have weak attribute.
4822
7d2a8452
AO
48232010-01-14 Alexandre Oliva <aoliva@redhat.com>
4824
4825 * var-tracking.c (var_reg_delete): Don't delete the association
4826 between REGs and values or one-part variables if the register
4827 isn't clobbered.
4828
d17af147
JJ
48292010-01-14 Jakub Jelinek <jakub@redhat.com>
4830
4831 PR debug/42657
4832 * tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
4833 because its first operand is a non-localized variable.
4834
2f3cdcf5
MJ
48352010-01-14 Martin Jambor <mjambor@suse.cz>
4836
4837 PR tree-optimization/42706
4838 * tree-sra.c (encountered_recursive_call): New variable.
4839 (encountered_unchangable_recursive_call): Likewise.
4840 (sra_initialize): Initialize both new variables.
4841 (callsite_has_enough_arguments_p): New function.
4842 (scan_function): Call decl and flags check only for IPA-SRA, check
4843 whether there is a recursive call and whether it has enough arguments.
4844 (all_callers_have_enough_arguments_p): New function.
4845 (convert_callers): Look for recursive calls only when
4846 encountered_recursive_call is set.
4847 (ipa_early_sra): Bail out either if
4848 !all_callers_have_enough_arguments_p or
4849 encountered_unchangable_recursive_call.
4850
c02e2d5c
AM
48512010-01-14 Alexander Monakov <amonakov@ispras.ru>
4852
4853 * sel-sched.c: Add 2010 to copyright years.
4854 * sel-sched-ir.c: Likewise.
4855 * sel-sched-ir.h: Likewise.
4856
92e97cdd
MJ
48572010-01-14 Martin Jambor <mjambor@suse.cz>
4858
4859 PR tree-optimization/42714
4860 * tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
4861 constructors specially.
4862
a0463099
AK
48632010-01-14 Andi Kleen <ak@linux.intel.com>
4864
4865 * config/i386/drivers-i386.c (detect_caches_intel):
4866 Add l2sizekb parameter and fill in.
4867 (host_detect_local_cpu): Add l2sizekb, fill in.
4868 Add Atom small cache heuristic.
4869
48702010-01-14 Andi Kleen <ak@linux.intel.com>
4871
4872 * config/i386/drivers-i386.c (detect_caches_cpuid4):
4873 Add level3 parameter and fill in.
4874 (detect_caches_intel): Handle level3 cache.
4875
48762010-01-14 Andi Kleen <ak@linux.intel.com>
4877
4878 * config/i386/drivers-i386.c (host_detect_local_cpu):
4879 Fix core duo detection.
4880
48812010-01-14 Andi Kleen <ak@linux.intel.com>
4882
4883 * config/i386/drivers-i386.c (host_detect_local_cpu):
4884 Fix Atom detection.
4885
dd6739e3
AM
48862010-01-14 Alexander Monakov <amonakov@ispras.ru>
4887
4888 * config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
4889 (rs6000_variable_issue_1): this. Use...
4890 (rs6000_variable_issue): here. Reimplement. Print debug info.
4891
7898b93b
AM
48922010-01-14 Alexander Monakov <amonakov@ispras.ru>
4893
a0463099
AK
4894 * sel-sched-ir.c (sel_restore_other_notes): Rename to
4895 sel_restore_notes. Update all callers. Call reemit_notes
4896 for all insns.
7898b93b 4897
65b659ff
AB
48982010-01-14 Andrey Belevantsev <abel@ispras.ru>
4899
4900 PR rtl-optimization/42246
4901 * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
4902 loops.
4903
c6486552
AB
49042010-01-14 Andrey Belevantsev <abel@ispras.ru>
4905
4906 * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
4907 all successors is the same as number of successors in current region.
4908
f07013eb
AM
49092010-01-14 Alexander Monakov <amonakov@ispras.ru>
4910
4911 * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
4912 to rename is not separable. Otherwise check that its LHS is not NULL.
4913
a9ced68b
AM
49142010-01-14 Alexander Monakov <amonakov@ispras.ru>
4915
4916 * sel-sched.c (choose_best_reg_1): Loop over all regs for mode.
4917
0c94f956
AM
49182010-01-14 Alexander Monakov <amonakov@ispras.ru>
4919
4920 * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
4921 available registers when failed to discover LHS register class.
4922 Fix indentation. Update comment.
4923
136e01a3
AB
49242010-01-14 Andrey Belevantsev <abel@ispras.ru>
4925 Alexander Monakov <amonakov@ispras.ru>
4926
4927 PR rtl-optimization/42389
4928 * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
4929 to can_issue_more.
4930 (advance_state_on_fence): Likewise.
4931 (sel_target_adjust_priority): Print debug output only when
4932 sched_verbose >= 4, not 2.
4933 (get_expr_cost): Do not issue all unique insns on the next cycle.
4934 (fill_insns): Initialize can_issue_more from the value saved
4935 with the fence.
4936 * sel-sched-ir.c (flist_add): New parameter issue_more.
4937 Init FENCE_ISSUE_MORE with it.
4938 (merge_fences): Likewise.
4939 (init_fences): Update call to flist_add.
4940 (add_to_fences, add_clean_fence_to_fences)
4941 (add_dirty_fence_to_fences): Likewise.
4942 (move_fence_to_fences): Update call to merge_fences.
4943 (invoke_reorder_hooks): Do not reset can_issue_more on insns from
4944 sched groups.
4945 * sel-sched-ir.h (struct _fence): New field issue_more.
4946 (FENCE_ISSUE_MORE): New accessor macro.
4947
762bffba
AB
49482010-01-14 Andrey Belevantsev <abel@ispras.ru>
4949
4950 PR rtl-optimization/42388
4951 * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
4952 that have no predecessors nor successors. Do not call move_bb_info
4953 for empty blocks outside of current region.
4954
14f30b87
AM
49552010-01-14 Alexander Monakov <amonakov@ispras.ru>
4956
4957 PR rtl-optimization/42294
4958 * sel-sched-ir.h (struct _sel_insn_data): Update comment.
4959 * sel-sched.c (move_exprs_to_boundary): Transitively add all
4960 originators' originators.
4961
8ec4d0ad
AM
49622010-01-14 Alexander Monakov <amonakov@ispras.ru>
4963
4964 PR rtl-optimization/39453
4965 PR rtl-optimization/42246
4966 * sel-sched-ir.c (considered_for_pipelining_p): Do not test
4967 for pipelining_p.
4968 (sel_add_loop_preheaders): Add preheader to last_added_blocks.
4969
b59ab570
AM
49702010-01-14 Andrey Belevantsev <abel@ispras.ru>
4971 Alexander Monakov <amonakov@ispras.ru>
4972
4973 PR middle-end/42245
4974 * sel-sched-ir.c (sel_recompute_toporder): New. Use it...
4975 (maybe_tidy_empty_bb): ... here. Make static. Add new
4976 argument. Update all callers.
4977 (tidy_control_flow): ... and here. Recompute topological order
4978 of basic blocks in region if necessary.
4979 (sel_redirect_edge_and_branch): Change return type. Return true
4980 if topological order might have been invalidated.
4981 (purge_empty_blocks): Export and move from...
4982 * sel-sched.c (purge_empty_blocks): ... here.
4983 * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
c02e2d5c 4984 (maybe_tidy_empty_bb): Delete prototype.
b59ab570
AM
4985 (purge_empty_blocks): Declare.
4986
0666ff4e
AB
49872010-01-14 Andrey Belevantsev <abel@ispras.ru>
4988
b59ab570 4989 PR rtl-optimization/42249
0666ff4e
AB
4990 * sel-sched.c (try_replace_dest_reg): When chosen register
4991 and original register is the same, do not bail out early, but
4992 still check all original insns for validity of replacing destination
4993 register. Set EXPR_TARGET_AVAILABLE to 1 before leaving function
4994 in this case.
4995
5f8d5023
JJ
49962010-01-14 Jakub Jelinek <jakub@redhat.com>
4997
4998 PR c/42721
a0463099 4999 Port from no-undefined-overflow branch:
5f8d5023
JJ
5000 2009-03-09 Richard Guenther <rguenther@suse.de>
5001
a0463099 5002 * fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
5f8d5023 5003
429c98c9
RG
50042010-01-14 Richard Guenther <rguenther@suse.de>
5005
5006 PR lto/42665
b5e33e04 5007 * gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
429c98c9 5008
cd481d83
IR
50092010-01-14 Ira Rosen <irar@il.ibm.com>
5010
5011 PR tree-optimization/42709
5012 * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
5013 as scalar type in creation of constant vector operand.
5014
453897b4
RW
50152010-01-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5016
5017 PR testsuite/42414
5018 * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
5019 (check-parallel-%): Match `testsuite' directory component only
5020 at the end.
5021
5bc69b92
SZ
50222010-01-14 Shujing Zhao <pearly.zhao@oracle.com>
5023
5024 PR translation/39521
5025 * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
5026 strings with _().
5027
5db959b6
RG
50282010-01-13 Richard Guenther <rguenther@suse.de>
5029
5030 PR tree-optimization/42730
5031 * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
5032 offset zero.
5033
9540f5ef
SE
50342010-01-13 Steve Ellcey <sje@cup.hp.com>
5035
5036 PR target/pr42542
5037 * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
5038 for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
5039 them signed.
5040
84fb8ff5
BS
50412010-01-13 Bernd Schmidt <bernd.schmidt@analog.com>
5042
5043 * config/bfin/libgcc-bfin.ver: Regenerate based on current
5044 libgcc-std.ver. Add entries for ___smulsi3_highpart and
5045 ___umulsi3_highpart.
5046
6cca15ea
BS
5047 * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
5048 rather than schedule_insns if the pass is enabled.
5049
19656178
MJ
50502010-01-13 Martin Jambor <mjambor@suse.cz>
5051
5052 PR tree-optimization/42704
5053 * tree-sra.c (sra_modify_assign): Do not delete assignments to
5054 SSA_NAMEs.
5055
6dc93b16
MJ
50562010-01-13 Martin Jambor <mjambor@suse.cz>
5057
5058 PR tree-optimization/42703
5059 * tree-sra.c (analyze_access_subtree): Check that we can build a
5060 reference to the original data within the aggregate.
5061
1d21a8e5
RG
50622010-01-13 Richard Guenther <rguenther@suse.de>
5063
5064 PR tree-optimization/42705
b5e33e04 5065 * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
1d21a8e5 5066
48f30f62
RG
50672010-01-13 Richard Guenther <rguenther@suse.de>
5068
5069 PR middle-end/42716
5070 * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
5071
9e73c690
JJ
50722010-01-13 Jakub Jelinek <jakub@redhat.com>
5073
5074 PR debug/41371
5075 * var-tracking.c (values_to_unmark): New variable.
5076 (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
5077 values_to_unmark vector. Moved body to...
5078 (find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
5079 instead queue it into values_to_unmark vector.
5080 (vt_find_locations): Free values_to_unmark vector.
5081
dc2f28c5
WG
50822010-01-13 Wolfgang Gellerich <gellerich@de.ibm.com>
5083
5084 * config/s390/s390.c (override_options): Set
5085 default of max-pending-list-length to 256
5086
688a482d
RG
50872010-01-13 Richard Guenther <rguenther@suse.de>
5088
5089 PR lto/42678
5090 * tree-pass.h (PROP_gimple_lcx): New.
5091 * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
5092 * passes.c (init_optimization_passes): Move pass_lower_complex_O0
5093 before the final cleanup_eh.
5094 (dump_properties): Dump PROP_gimple_lcx.
5095 * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
5096 (tree_lower_complex_O0): Remove.
5097 (gate_no_optimization): Run if PROP_gimple_lcx is not set.
5098 (pass_lower_complex_O0): Provide PROP_gimple_lcx. Run
5099 tree_lower_complex, schedule TODO_update_ssa.
5100 * lto-streamer-out.c (output_function): Stream the functions
5101 properties.
5102 * lto-streamer-in.c (input_function): Likewise.
5103 (lto_read_body): Do not override them here.
5104
e616f54d
JM
51052010-01-12 Joseph Myers <joseph@codesourcery.com>
5106
5107 PR c/42708
5108 * c-typeck.c (build_c_cast): Fold value cast to union type before
5109 wrapping it in a CONSTRUCTOR.
5110
b4ab701f
JJ
51112010-01-12 Jakub Jelinek <jakub@redhat.com>
5112
5113 PR rtl-optimization/42699
5114 * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
5115 involved.
5116
4dde664f
RO
51172010-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5118
5119 * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
5120 SUBTARGET_WARN_UNUSED_SPEC): Move ...
5121 config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
5122 SUBTARGET_WARN_UNUSED_SPEC): ... here
5123 * config/mips/iris5.h (LIBGCC_SPEC): Define.
5124
24fe19c3
JB
51252010-01-12 Julian Brown <julian@codesourcery.com>
5126
a0463099 5127 * config/arm/neon-schedgen.ml (Utils): Don't try to
24fe19c3 5128 open missing module.
a0463099 5129 (find_with_result): New.
24fe19c3 5130
082ab5ff
JJ
51312010-01-12 Jakub Jelinek <jakub@redhat.com>
5132
4942b76b
JJ
5133 PR debug/42662
5134 * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
5135 sharing when canonicalizing ({lt,ge}u (plus a b) b).
5136
082ab5ff
JJ
5137 PR tree-optimization/42645
5138 * tree-inline.c (processing_debug_stmt): Move earlier. Make static.
5139 (remap_ssa_name): If processing_debug_stmt and name wasn't found in
5140 decl_map, set processing_debug_stmt to -1 and return name without
5141 any remapping.
5142
977f7997
DK
51432010-01-11 Dave Korn <dave.korn.cygwin@gmail.com>
5144
5145 * doc/install.texi (Specific#x-x-cygwin): Document minimum required
5146 binutils version, and reword target configuration description.
5147
2685baa1
AH
51482010-01-11 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
5149
a0463099 5150 * config/avr/avr.h (LINKER_NAME): Remove.
2685baa1 5151
3767f512
JJ
51522010-01-11 Janis Johnson <janis187@us.ibm.com>
5153
5154 PR target/42416
5155 * config/rs6000/rs6000.c (rs6000_override_options): On targets
5156 that support VSX, warn for -mno-altivec if vsx is not disabled,
5157 and disable vsx.
5158
f94e1d66
JM
51592010-01-11 Joseph Myers <joseph@codesourcery.com>
5160 Shujing Zhao <pearly.zhao@oracle.com>
a0463099 5161
f94e1d66
JM
5162 PR translation/42469
5163 * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
5164 fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
5165 character between option name and help text.
5166 * c.opt (imultilib): Likewise.
5167
06bfe1d0
RAE
51682010-01-10 Rafael Avila de Espindola <espindola@google.com>
5169
5170 * lto-streamer-out.c (output_unreferenced_globals): Output static
5171 variables.
5172
c21f33b6
SB
51732010-01-10 Steven Bosscher <steven@gcc.gnu.org>
5174
5175 PR rtl-optimization/42621
5176 * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
5177 optimizing for size.
5178 (duplicate_computed_gotos): Remove now-redundant check.
5179
30ce157e
SE
51802010-01-10 Steve Ellcey <sje@cup.hp.com>
5181
5182 PR target/37454
5183 * configure.ac: Save and restore LDFLAGS and LIBS
5184 * configure: Regenerate.
5185
ab996409
RG
51862010-01-10 Richard Guenther <rguenther@suse.de>
5187
5188 PR middle-end/42667
5189 * builtins.c (fold_builtin_strlen): Add type argument and
5190 convert the resulting length to it.
5191 (fold_builtin_1): Adjust.
5192
7234a615
JJ
51932010-01-09 Jakub Jelinek <jakub@redhat.com>
5194
5195 * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
5196 sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
5197 1 insn.
5198 (num_insns_constant_wide): Adjust for that change.
5199
994ae26c
AO
52002010-01-09 Alexandre Oliva <aoliva@redhat.com>
5201
5202 PR debug/42631
5203 * web.c (union_defs): Add used argument, to combine uses of
5204 uninitialized regs.
5205 (entry_register): Adjust type and tests of used argument.
5206 (web_main): Widen used for new use. Pass it to union_defs.
5207 * df.h (union_defs): Adjust prototype.
5208
60c48e4c
AO
52092010-01-09 Alexandre Oliva <aoliva@redhat.com>
5210
5211 PR debug/42630
5212 * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
5213 uses in new incoming argument. Free body.
5214 (reset_debug_uses_in_loop): New.
5215 (analyze_insn_to_expand_var): Call the latter if the former found
5216 anything. Fix whitespace. Reject invalid dest overlaps before
5217 going through all insns in the loop.
5218
bb956f3e
AO
52192010-01-09 Alexandre Oliva <aoliva@redhat.com>
5220
5221 PR debug/42629
5222 * haifa-sched.c (dying_use_p): Debug insns don't count.
5223
5de8da9b
AO
52242010-01-09 Alexandre Oliva <aoliva@redhat.com>
5225
5226 PR middle-end/42363
5227 * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
5228 * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
5229 (verify_gimple_call): Reject LHS in noreturn calls.
5230
684f25f4
AO
52312010-01-09 Alexandre Oliva <aoliva@redhat.com>
5232
5233 PR debug/42604
5234 PR debug/42395
5235 * tree-vect-loop-manip.c (adjust_info): New type.
5236 (adjust_vec): New pointer to vector.
5237 (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
5238 (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
5239 (slpeel_update_phis_for_duplicate_loop): Use them.
5240 (slpeel_update_phi_nodes_for_guard1): Likewise.
5241 (slpeel_update_phi_nodes_for_guard2): Likewise.
5242 (slpeel_tree_peel_loop_to_edge): Likewise.
5243 (vect_update_ivs_after_vectorizer): Likewise.
5244
0e00563c
AO
52452010-01-09 Alexandre Oliva <aoliva@redhat.com>
5246
5247 * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
5248 (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
5249
0ce659eb
AO
52502010-01-09 Alexandre Oliva <aoliva@redhat.com>
5251
5252 * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
5253 bogus uninitialized warning.
5254
73c865fa
RG
52552010-01-09 Richard Guenther <rguenther@suse.de>
5256
5257 PR middle-end/42512
5258 * tree-scalar-evolution.c (interpret_loop_phi): Make sure
5259 the evolution is compatible with the initial condition.
5260
bd5c3aa5
JJ
52612010-01-09 Jakub Jelinek <jakub@redhat.com>
5262
5263 * gcc.c (process_command): Update copyright notice dates.
5264 * gcov.c (print_version): Likewise.
5265 * gcov-dump.c (print_version): Likewise.
5266 * mips-tfile.c (main): Likewise.
5267 * mips-tdump.c (main): Likewise.
5268
58f0ea2f
AH
52692010-01-08 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
5270
5271 PR target/41885
2685baa1 5272 * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
58f0ea2f
AH
5273 (rotlhi3): Delete.
5274 (rotlhi3_8): Delete.
5275 (rotlsi3): Delete.
5276 (rotlsi3_8): Delete.
5277 (rotlsi3_16): Delete.
5278 (rotlsi3_24): Delete.
5279 (rotl<mode>3): New.
5280 (*rotw<mode>3): New.
5281 (*rotb<mode>3): New.
2685baa1 5282 * config/avr/avr.c (avr_rotate_bytes): New function.
a0463099 5283 * config/avr/avr-proto.h (avr_rotate_bytes): New function.
58f0ea2f 5284
601fc26e
SE
52852010-01-08 Steve Ellcey <sje@cup.hp.com>
5286
5287 PR target/37454
5288 * configure.ac: Modify -rdynamic check.
5289 * configure: Regenerate.
5290
6a62ca52
DD
52912010-01-08 DJ Delorie <dj@redhat.com>
5292
5293 * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
5294 register popping order.
5295
c59449fa
RG
52962010-01-08 Richard Guenther <rguenther@suse.de>
5297
5298 PR lto/42528
5299 * c.opt (fsigned-char): Also let LTO handle this option.
5300 (funsigned-char): Likewise.
5301
f68a75df
RG
53022010-01-07 Richard Guenther <rguenther@suse.de>
5303
5304 * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
5305 (gimple_op): Likewise.
5306 (gimple_op_ptr): Likewise.
5307 (gimple_assign_set_lhs): Remove gcc_assert.
5308 (gimple_assign_set_rhs1): Likewise.
5309 (gimple_assign_set_rhs2): Likewise.
5310 (gimple_call_set_lhs): Likewise.
5311 (gimple_call_set_fn): Likewise.
5312 (gimple_call_set_fndecl): Likewise.
5313 (gimple_call_fndecl): Likewise.
5314 (gimple_call_return_type): Likewise.
5315 (gimple_call_set_chain): Likewise.
5316 (gimple_call_num_args): Likewise.
5317 (gimple_call_set_arg): Likewise.
5318 (gimple_cond_set_code): Likewise.
5319 (gimple_cond_set_lhs): Likewise.
5320 (gimple_cond_set_rhs): Likewise.
5321 (gimple_cond_set_true_label): Likewise.
5322 (gimple_cond_set_false_label): Likewise.
5323 (gimple_label_set_label): Likewise.
5324 (gimple_goto_set_dest): Likewise.
5325 (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
5326 (gimple_debug_bind_get_value): Likewise.
5327 (gimple_debug_bind_get_value_ptr): Likewise.
5328 (gimple_debug_bind_set_var): Likewise.
5329 (gimple_debug_bind_set_value): Likewise.
5330 (gimple_debug_bind_reset_value): Likewise.
5331 (gimple_debug_bind_has_value_p): Likewise.
5332 (gimple_return_retval_ptr): Remove gcc_assert.
5333 (gimple_return_retval): Likewise.
5334 (gimple_return_set_retval): Likewise.
5335 * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
5336 (safe_referenced_var_iterator): Remove.
5337 (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
5338 * tree-flow-inline.h (gimple_nonlocal_all): Remove.
5339 (fill_referenced_var_vec): Remove.
5340 (first_readonly_imm_use): Remove redundant gcc_assert.
5341 (phi_arg_index_from_use): Combine gcc_asserts.
5342 (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
5343 (first_imm_use_stmt): Remove redundant gcc_assert.
5344 * tree-cfg.c (verify_gimple_call): Verify function and chain
5345 operands. Verify arguments.
5346 (verify_types_in_gimple_stmt): Verify condition code and labels.
5347
617531d9
RG
53482010-01-07 Richard Guenther <rguenther@suse.de>
5349
5350 PR tree-optimization/42641
5351 * sese.c (rename_map_elt_info): Use the SSA name version, do
5352 not hash pointers.
5353
4139c7ef
JJ
53542010-01-07 Jakub Jelinek <jakub@redhat.com>
5355
5356 PR tree-optimization/42625
5357 * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
b5e33e04 5358 TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
4139c7ef 5359
01094033
DS
53602010-01-07 Duncan Sands <baldrick@free.fr>
5361
5362 * Makefile.in (PLUGIN_HEADERS): Add version.h.
5363
4b9ed9aa
UB
53642010-01-07 Uros Bizjak <ubizjak@gmail.com>
5365
5366 PR target/42511
5367 * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
5368 note itself is not function_invariant_p.
5369
f50f5566
SB
53702009-01-07 Steven Bosscher <steven@gcc.gnu.org>
5371
5372 * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
5373 Do not add the DF_NOTE problem.
5374 * store-motion.c (execute_rtl_store_motion): Likewise.
5375
d05fe940
MJ
53762010-01-07 Martin Jambor <mjambor@suse.cz>
5377
5378 PR tree-optimization/42157
5379 * tree-sra.c (compare_access_positions): Stabilize sort if both
5380 accesses have integer types, return zero immediately if they are the
5381 same.
5382
e67271bd
RH
53832010-01-06 Richard Henderson <rth@redhat.com>
5384
5385 PR middle-end/41883
5386 * haifa-sched.c (add_to_note_list): Merge into ...
5387 (concat_note_lists): ... here, and ...
5388 (unlink_other_notes, rm_other_notes): Merge into...
5389 (remove_notes): ... here. Create REG_SAVE_NOTEs for
a0463099 5390 NOTE_INSN_EPILOGUE_BEG.
e67271bd 5391
6209a13e
RG
53922010-01-06 Richard Guenther <rguenther@suse.de>
5393
5394 * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
5395 not inline regular functions into always-inline functions.
5396
5f75e477
NC
53972010-01-06 Nick Clifton <nickc@redhat.com>
5398
5399 * config/rx/rx.h (enum rx_cpu_type): Add RX200.
5400 (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
5401 used together.
5402 (OVERRIDE_OPTIONS): Delete.
5403 (OPTIMIZATION_OPTIONS): Define.
5404 (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
5405 * config/rx/rx.c (rx_handle_option): Issue an error message if
5406 -mcpu=rx200 and -fpu are used together.
5407 (rx_set_optimization_options): New function. Issue an error
5408 message if an optimization attribute attempts to reset the FPU/
5409 math optimization pairing.
5410 * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
5411 * config/rx/rx.opt: Set the default to 32-bit doubles.
5412 * config/rx/t-rx: Add multilibs for -nofpu option.
5413 * doc/invoke.texi: Update documentation of RX options.
5414
13de9095
RG
54152010-01-06 Richard Guenther <rguenther@suse.de>
5416
5417 * tree-ssa-pre.c (name_to_id): New global.
5418 (alloc_expression_id): Simplify SSA name handling.
5419 (lookup_expression_id): Likewise.
5420 (init_pre): Zero name_to_id.
5421 (fini_pre): Free it.
5422
786c3fbc
UB
54232010-01-06 Uros Bizjak <ubizjak@gmail.com>
5424
5425 * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
5426
fa1a4144
L
54272010-01-05 H.J. Lu <hongjiu.lu@intel.com>
5428
5429 PR target/42542
5430 * config/i386/sse.md (smaxv2di3): New.
5431 (umaxv2di3): Likewise.
5432 (sminv2di3): Likewise.
5433 (uminv2di3): Likewise.
5434
208384fd
EB
54352010-01-05 Eric Botcazou <ebotcazou@adacore.com>
5436
5437 PR target/42564
5438 * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
5439 * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
5440 (legitimize_tls_address): Likewise.
5441 (sparc_tls_referenced_p): Likewise.
5442 * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
5443 and adjust calls to legitimize_pic_address.
5444 (legitimate_constant_p) Use sparc_tls_referenced_p.
5445 (legitimate_pic_operand_p): Likewise.
5446 (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
5447 (sparc_tls_symbol_ref_1): Delete.
5448 (sparc_tls_referenced_p): Make static, recognize specific patterns.
5449 (legitimize_tls_address): Make static, handle CONST patterns.
5450 (legitimize_pic_address): Make static, remove unused parameter and
5451 adjust recursive calls.
5452 (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
5453 and adjust call to legitimize_pic_address.
5454 (sparc_output_mi_thunk): Likewise.
5455
4b9ed9aa 54562010-01-05 Paolo Bonzini <bonzini@gnu.rg>
43d4b97d
L
5457 H.J. Lu <hongjiu.lu@intel.com>
5458
5459 PR target/42542
5460 * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
5461 for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
5462 operands to make them signed.
5463
931c6b3e
UB
5464 Revert:
5465 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
5466
5467 PR target/42542
5468 * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
5469 GTU to GT for V4SI and V2DI.
5470
5471 * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
5472 (umin<mode>3): Removed.
5473 (uminv8hi3): New.
43d4b97d
L
5474 (uminv4si3): Likewise.
5475
9bf4cdf5
MJ
54762010-01-05 Martin Jambor <mjambor@suse.cz>
5477
5478 PR tree-optimization/42462
5479 * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
5480 current_function_decl to helper functions and macros.
5481
6a4d4e8a
RO
54822010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5483
5484 PR bootstrap/41771
5485 * flags.h: Don't include real.h.
5486 (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
5487 HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
5488 * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
5489 HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
5490 * dominance.c: Update copyright.
5491 * gimple.c (walk_gimple_op): Remove inline.
5492 * tree-ssa-reassoc.c: Include real.h.
5493 * Makefile.in (FLAGS_H): Remove $(REAL_H).
5494 (tree-ssa-reassoc.o): Depend on $(REAL_H).
5495
105249d1
NC
54962010-01-05 Nick Clifton <nickc@redhat.com>
5497
5498 * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
5499 register to push into the stack frame when the accumulator has to
5500 be saved during interrupts.
5501
bc3c12a2
EF
55022010-01-05 Eric Fisher <joefoxreal@gmail.com>
5503
5504 * doc/invoke.texi: Remove the documentation about option
5505 -Wunreachable-code.
5506 * common.opt (Wunreachable-code): Preserved for backward
5507 compatibility.
5508 * tree-cfg.c: Remove the implementation of -Wunreachable-code.
5509 * opts.c (common_handle_option): Add OPT_Wunreachable_code to
5510 the backward compatibility flag section.
5511
1befacc8
RG
55122010-01-05 Richard Guenther <rguenther@suse.de>
5513
5514 * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
5515
566f27e4
JJ
55162010-01-05 Jakub Jelinek <jakub@redhat.com>
5517
7604eb4e
JJ
5518 PR other/42611
5519 * cfgexpand.c (expand_one_var): Diagnose too large variables.
5520
566f27e4
JJ
5521 PR tree-optimization/42508
5522 * tree-sra.c (convert_callers): Check for recursive call
5523 by comparing cgraph nodes instead of decls.
5524 (modify_function): Call ipa_modify_formal_parameters also
5525 on all same_body aliases.
5526
5527 * cgraphunit.c (cgraph_materialize_all_clones): Compare
5528 cgraph nodes when checking for same_body aliases.
5529
5f5126d6
RG
55302010-01-05 Richard Guenther <rguenther@suse.de>
5531
5532 * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
5533 allocation and lookup.
5534 (get_or_alloc_expr_for_constant): Likewise.
5535 (phi_translate): Sink allocation.
5536
a7d04a53
RG
55372010-01-04 Richard Guenther <rguenther@suse.de>
5538
5539 * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
5540 a new entry only if needed.
5541 * tree-ssa-dom.c (lookup_avail_expr): Likewise.
5542 * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
5543 hashtable lookup.
5544 * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
5545 the result array.
5546 (phi_translate): Handle CONSTANTs early.
5547
caee6ca1
MJ
55482010-01-04 Martin Jambor <mjambor@suse.cz>
5549
5550 PR tree-optimization/42398
5551 * tree-sra.c (struct access): Removed flag grp_different_types.
5552 (dump_access): Do not dump the removed flag.
5553 (sort_and_splice_var_accesses): Do not set the removed flag.
5554 (sra_modify_expr): Check for type compatibility directly.
5555
438789ff
MJ
55562010-01-04 Martin Jambor <mjambor@suse.cz>
5557
5558 PR tree-optimization/42366
5559 * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
5560 edges with variable number of parameters.
5561 * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
5562 flag instead of asserting it.
5563 (ipa_read_node_info): Read uses_analysis_done flag.
5564
9708c51d
RG
55652010-01-04 Richard Guenther <rguenther@suse.de>
5566
5567 * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
5568 iterative_hash_* as intended.
5569 (vn_reference_compute_hash): Likewise. Simplify hashing
5570 SSA names.
5571 (vn_reference_lookup_2): Likewise.
5572 (vn_nary_op_compute_hash): Likewise.
5573 (vn_phi_compute_hash): Likewise.
5574 (expressions_equal_p): Remove strange code.
5575 * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
5576 (pre_expr_hash): Likewise. Simplify hashing SSA names.
5577 (bitmap_insert_into_set_1): Take value-id as parameter.
5578 (add_to_value): Pass it.
5579 (bitmap_insert_into_set): Likewise.
5580 (bitmap_value_insert_into_set): Likewise. Remove redundant check.
5581
94b90527
JJ
55822010-01-04 Jakub Jelinek <jakub@redhat.com>
5583
5584 PR driver/42442
5585 * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
5586 (do_self_spec): For switches with SWITCH_IGNORE set set also
5587 SWITCH_IGNORE_PERMANENTLY.
5588 (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
5589 of SWITCH_IGNORE.
5590
785ca514
RAE
55912010-01-04 Rafael Avila de Espindola <espindola@google.com>
5592
5593 * lto-streamer-out.c (output_unreferenced_globals): Output the full
5594 tree of an unreferenced global var.
5595
22554cf9
L
55962010-01-04 H.J. Lu <hongjiu.lu@intel.com>
5597
5598 PR target/42542
5599 * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
5600 GTU to GT for V4SI and V2DI.
5601
5602 * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
5603 (umin<mode>3): Removed.
5604 (uminv8hi3): New.
5605 (uminv4si3): Likewise.
5606
7152f51e
L
56072010-01-04 H.J. Lu <hongjiu.lu@intel.com>
5608
5609 PR lto/42581
5610 * collect2.c (main): Turn on trace in collect2 if -v is passed
5611 to gcc with LTO.
5612
f4262155
JQ
56132010-01-03 Jerry Quinn <jlquinn@optonline.net>
5614
5615 * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR. Update
5616 description of expression operand.
5617
55bcd32b
AJ
56182010-01-03 Andrew Jenner <andrew@codesourcery.com>
5619
5620 * configure.ac: Add install-html to target_list for Make-hooks.
5621 * configure: Regenerate.
5622 * fortran/Make-lang.in (F95_HTMLFILES): New.
5623 (fortran.html): Use it.
5624 (fortran.install-html): New.
5625 * Makefile.in (install-html): Add lang.install-html.
5626 * java/Make-lang.in (JAVA_HTMLFILES): New.
5627 (java.html): Use it.
5628 (java.install-html): New.
5629 * objc/Make-lang.in (objc.install-html): New.
5630 * objcp/Make-lang.in (obj-c++.install-html): New.
5631 * cp/Make-lang.in (c++.install-html): New.
5632 * ada/gcc-interface/Make-lang.in (ada.install-html): New.
5633 * lto/Make-lang.in (lto.install-html): New.
5634
f0d61983
L
56352010-01-03 H.J. Lu <hongjiu.lu@intel.com>
5636
5637 PR lto/42520
5638 * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
5639
2ad1dda0
SB
56402009-01-03 Steven Bosscher <steven@gcc.gnu.org>
5641
5642 PR rtl-optimization/41862
5643 * store-motion.c (store_killed_in_insn, compute_store_table,
5644 remove_reachable_equiv_notes, replace_store_insn,
5645 build_store_vectors): Ignore all DEBUG_INSNs.
5646
d7fb0a6d
L
56472010-01-03 H.J. Lu <hongjiu.lu@intel.com>
5648
5649 PR lto/41564
5650 * common.opt: Add dumpdir.
5651
5652 * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
5653 isn't specified.
5654 (option_map): Add --dumpdir.
5655
5656 * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
5657
5658 * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
5659
5660 * opts.c (decode_options): Try dump_dir_name first if
5661 dump_base_name isn't an absolute path.
5662 (common_handle_option): Handle OPT_dumpdir.
5663
5664 * toplev.c (dump_dir_name): New.
5665 (print_switch_values): Also ignore -dumpdir.
5666
5667 * toplev.h (dump_dir_name): New.
5668
ba1ee228
RG
56692010-01-03 Richard Guenther <rguenther@suse.de>
5670
5671 PR tree-optimization/42589
5672 * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
5673 double-word expansion of bswap32.
5674
b0de17ef
SB
56752010-01-03 Steven Bosscher <steven@gcc.gnu.org>
5676
5677 * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
5678 with BLOCK_FOR_INSN.
5679 * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
5680 * ifcvt.c (noce_get_alt_condition, noce_try_abs,
5681 noce_process_if_block): Likewise.
5682 * gcse.c (compute_local_properties, insert_expr_in_table,
5683 insert_set_in_table, canon_list_insert, find_avail_set,
5684 pre_insert_copy_insn): Likewise.
5685
5686 * basic-block.h (BLOCK_NUM): Move from here...
5687 * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
5688
a19eb9d2
RG
56892010-01-03 Richard Guenther <rguenther@suse.de>
5690
5691 PR tree-optimization/42438
5692 * tree-ssa-pre.c (struct bb_bitmap_sets): Add
5693 contains_may_not_return_call flag.
5694 (BB_MAY_NOTRETURN): New.
5695 (valid_in_sets): Trapping nary operations are not valid
5696 in blocks that may not return.
b5e33e04 5697 (insert_into_preds_of_block): Remove check for trapping expressions.
a19eb9d2
RG
5698 (compute_avail): Compute also BB_MAY_NOTRETURN.
5699
c41b7b13
GP
57002010-01-03 Gerald Pfeifer <gerald@pfeifer.com>
5701
5702 * doc/invoke.texi: Add 2010 to copyright years.
5703
4900aa61
EB
57042010-01-03 Eric Botcazou <ebotcazou@adacore.com>
5705
5706 * config/sparc/sparc.c: Fix formatting nits.
5707
711a778c 57082010-01-02 Gerald Pfeifer <gerald@pfeifer.com>
77102854 5709 Alexander Monakov <amonakov@ispras.ru>
711a778c
GP
5710
5711 * doc/invoke.texi (Optimize Options): Reword introduction a bit.
5712
1d86f5e9
RG
57132010-01-02 Richard Guenther <rguenther@suse.de>
5714
5715 PR middle-end/42577
5716 * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
5717 (simplify_switch_using_ranges): Mark to be removed edges
5718 as non-executable.
5719
91e1a80a
JDA
57202010-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
5721
b86799ba
JDA
5722 * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
5723
91e1a80a
JDA
5724 * collect2.c (scan_libraries): Add missing argument in call to
5725 scan_prog_file.
5726
57272010-01-02 Uros Bizjak <ubizjak@gmail.com>
5728
5729 PR target/42448
5730 * config/alpha/predicates.md (aligned_memory_operand): Return false
5731 for CQImode.
5732 (unaligned_memory_operand): Return true for CQImode.
5733 * config/alpha/alpha.c (get_aligned_mem): Assert that location
5734 doesn not cross aligned SImode word boundary.
5735
57362010-01-02 Anatoly Sokolov <aesok@post.ru>
5737
5738 * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
5739 Remove.
5740 * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
5741 avr_change_section, avr_reg_class_from_letter) : Remove declaration.
5742
57432010-01-02 Richard Guenther <rguenther@suse.de>
5744
5745 PR lto/41597
5746 * toplev.c (compile_file): Emit LTO marker properly. Change
5747 it to __gnu_lto_v1.
5748 * collect2.c (scan_prog_file): Adjust for changed LTO marker.
5a013dc4 5749
aecd4d81
RG
57502010-01-01 Richard Guenther <rguenther@suse.de>
5751
5752 PR debug/42455
02143d0b 5753 * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
aecd4d81 5754
e4a95933
RG
57552010-01-01 Richard Guenther <rguenther@suse.de>
5756
5757 PR c/42570
5758 * c-decl.c (grokdeclarator): For zero-size arrays force
5759 structural equality checks as layout_type does.
5760
0bdf1263
L
57612010-01-01 H.J. Lu <hongjiu.lu@intel.com>
5762
5763 * builtins.c: Update copyright to 2010.
5764
91539475 57652010-01-01 H.J. Lu <hongjiu.lu@intel.com>
8589115b
DK
5766
5767 PR lto/42531
91539475 5768 * lto-streamer-out.c (produce_asm): Revert the last change.
8589115b
DK
5769 (copy_function): Likewise.
5770
91539475
L
5771 * lto-streamer.c (lto_get_section_name): Skip any leading
5772 asterisk in name.
20cdc2be 5773
91539475 57742010-01-01 Richard Guenther <rguenther@suse.de>
cf9eb565 5775
91539475
L
5776 PR middle-end/42559
5777 * builtins.c (get_object_alignment): Do not use DECL_ALIGN
5778 for LABEL_DECLs.
ad41bd84
JM
5779
5780\f
91539475 5781Copyright (C) 2010 Free Software Foundation, Inc.
ad41bd84
JM
5782
5783Copying and distribution of this file, with or without modification,
5784are permitted in any medium without royalty provided the copyright
5785notice and this notice are preserved.
This page took 1.631804 seconds and 5 git commands to generate.