]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
simplify-rtx.c (simplify_binary_operation_1): Handle (xor (and A B) C) case when...
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
54833ec0
CLT
12011-03-21 Chung-Lin Tang <cltang@codesourcery.com>
2
3 * simplify-rtx.c (simplify_binary_operation_1): Handle
4 (xor (and A B) C) case when B and C are both constants.
5
14a41392
MX
62011-03-21 Mingjie Xing <mingjie.xing@gmail.com>
7
8 * tree-dfa.c (add_referenced_var): Fix typo in comment.
9
806c3492
EB
102011-03-20 Eric Botcazou <ebotcazou@adacore.com>
11
12 PR bootstrap/48168
13 * config/sparc/sparc.c (sparc_delegitimize_address): Add new pattern.
14
65e0a0f3
JJ
152011-03-20 Jakub Jelinek <jakub@redhat.com>
16
17 PR rtl-optimization/48156
18 * df-core.c (df_get_bb_dirty): Use df_lr if df_live is NULL,
19 assume df and df_lr are not NULL.
20
b6a75dda
RR
212011-03-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
22
23 PR debug/48023
24 * config/arm/arm.c (create_fix_barrier): Do not emit a minipool
25 between a call and its CALL_ARG_LOCATION note.
26
5969b52d
KK
272011-03-19 Kaz Kojima <kkojima@gcc.gnu.org>
28
29 PR debug/48178
30 * config/sh/sh.c (find_barrier): Don't emit a constant pool
31 between a call and its corresponding CALL_ARG_LOCATION note.
32
f773c2bd
AS
332011-03-19 Anatoly Sokolov <aesok@post.ru>
34
35 * cfgcleanup.c (mark_effect): Use bitmap_set_range/bitmap_clear_range
36 instead of loop. Use HARD_REGISTER_NUM_P predicate.
37 * haifa-sched.c (setup_ref_regs): Ditto.
38 * caller-save.c (add_used_regs_1): Ditto.
39 * dse.c (look_for_hardregs): Ditto.
40 * df-problems.c (df_simulate_one_insn_forwards): Ditto.
41 * sched-rgn.c (check_live_1): Ditto.
42
8bf872f9
JM
432011-03-18 Joseph Myers <joseph@codesourcery.com>
44
45 * c-decl.c (diagnose_mismatched_decls): Give an error for
46 redefining a typedef with variably modified type.
47
ff8e2159
JM
482011-03-18 Joseph Myers <joseph@codesourcery.com>
49
50 * c-decl.c (grokfield): Don't allow typedefs for structures or
51 unions with no tag by default.
52 * doc/extend.texi (Unnamed Fields): Update.
53
16cc4440
UB
542011-03-18 Uros Bizjak <ubizjak@gmail.com>
55
56 * config/i386/i386.md (float<SSEMODEI24:mode><X87MODEF:mode>2):
57 Rewrite using indirect functions.
58 (lwp_slwpcb): Ditto.
59 * config/i386/sse.md (avx_vextractf128<mode>): Ditto.
60 (avx_vinsertf128<mode>): Ditto.
61
e101e12e
AK
622011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
63
64 * config/s390/s390.c (s390_delegitimize_address): Handle GOTOFF
65 unspecs.
66
4627c7fb
AK
672011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
68
69 * config/s390/s390.c (s390_chunkify_start): Prevent literal pool
70 splitting between a call and its corresponding CALL_ARG_LOCATION
71 note.
72
2d36b47f
MK
732011-03-18 Maxim Kuvyrkov <maxim@codesourcery.com>
74
75 PR rtl-optimization/48170
76 * gcse.c (hoist_code): Remove bogus asserts.
77
2a3d7659
JL
782011-03-18 Georg-Johann Lay <avr@gjlay.de>
79
80 * ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost
81 computation for prologue/epilogue.
82
34c3ef05
RO
832011-03-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
84
85 * Makefile.in (check-consistency): Remove.
86
81f2b976
JJ
872011-03-18 Jakub Jelinek <jakub@redhat.com>
88
89 PR debug/48176
90 * dwarf2out.c (dwarf2out_finish): Call output_aranges even when
91 arange_table_in_use is 0, but either text_section_used or
92 cold_text_section_used is true. Don't call it if
93 !info_section_emitted.
94
68fd7765
AS
952011-03-18 Anatoly Sokolov <aesok@post.ru>
96
97 * config/avr/avr.h (RET_REGISTER, LIBCALL_VALUE,
98 FUNCTION_VALUE_REGNO_P): Remove.
99 * config/avr/avr-protos.h (avr_ret_register, avr_libcall_value):
100 Remove.
101 * config/avr/avr.c (avr_ret_register): Make static inline.
102 (avr_function_value_regno_p): New function.
103 (avr_libcall_value): Make static. Add 'func' argument.
104 (avr_function_value): Make static. Rename 'func' argument to
105 'fn_decl_or_type', forward it to avr_libcall_value. Call
106 avr_ret_register function instead of RET_REGISTER macro.
107 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
108
b4ef8aac
JM
1092011-03-18 Jason Merrill <jason@redhat.com>
110
111 PR c++/23372
112 * gimplify.c (gimplify_arg): Strip redundant TARGET_EXPR.
113
09a52fc3
RG
1142011-03-18 Richard Guenther <rguenther@suse.de>
115
116 * doc/install.texi (--enable-gold): Remove.
117 (--with-plugin-ld): Document.
118 * doc/invoke.texi (-fuse-linker-plugin): Clarify.
119
2a3d7659 1202011-03-18 Andrew Pinski <pinskia@gmail.com>
3bf162a0
AP
121
122 PR middle-end/47790
123 * expr.c (optimize_bitfield_assignment_op): Revamp to work
124 again after expansion changes.
125
2abbb0fe
CLT
1262011-03-18 Chung-Lin Tang <cltang@codesourcery.com>
127
128 * combine.c (try_combine): Do simplification only call of
129 subst() on i2 even when i1 is present. Update comments.
130
2efd0aa6
KK
1312011-03-18 Kaz Kojima <kkojima@gcc.gnu.org>
132
133 * config/sh/sh.c (sh_delegitimize_address): Handle UNSPEC_SYMOFF
134 and UNSPEC_PCREL_SYMOFF.
135
30a49b23
AK
1362011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
137
138 * config/s390/s390.md: Use define_c_enum for the unspec constant
139 definitions.
140
419e1853
JJ
1412011-03-18 Richard Henderson <rth@redhat.com>
142 Jakub Jelinek <jakub@redhat.com>
143
144 PR bootstrap/48161
145 * expr.c (expand_expr_addr_expr_1): Use simplify_gen_binary
146 instead of gen_rtx_PLUS if EXPAND_SUM or EXPAND_INITIALIZER.
147
37875856
L
1482011-03-17 H.J. Lu <hongjiu.lu@intel.com>
149
150 PR middle-end/47725
151 * combine.c (cant_combine_insn_p): Don't check zero/sign
152 extended hard registers.
153
76069764
L
1542011-03-17 H.J. Lu <hongjiu.lu@intel.com>
155
156 PR middle-end/47725
157 * combine.c (cant_combine_insn_p): Check zero/sign extended
158 hard registers.
159
24da2019
AS
1602011-03-17 Anatoly Sokolov <aesok@post.ru>
161
162 * config/v850/v850.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
163 * config/v850/v850-protos.h (v850_output_addr_const_extra): Remove.
164 * config/v850/v850.c (v850_output_addr_const_extra): Make static.
165 Change return type to bool.
166 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
167
a82ff31f
JJ
1682011-03-17 Jakub Jelinek <jakub@redhat.com>
169
8b29c87a
JJ
170 PR debug/48163
171 * var-tracking.c (prepare_call_arguments): If CALL target
172 is a non-SYMBOL_REF CONSTANT_P, just add that into the list as
173 pc instead of looking it up using cselib_lookup and use
174 Pmode for it if x has VOIDmode.
175 * dwarf2out.c (gen_subprogram_die): If also both first and
176 second CONCAT arguments are VOIDmode, use mode of CONCAT itself.
177
a82ff31f
JJ
178 PR debug/48163
179 * function.c (assign_parms): For data.passed_pointer parms
180 use MEM of data.entry_parm instead of data.entry_parm itself
181 as DECL_INCOMING_RTL.
182 * dwarf2out.c (rtl_for_decl_location): Use DECL_INCOMING_RTL
183 also when passed and declared mode is the same, DECL_RTL
184 is a MEM with pseudo as address and DECL_INCOMING_RTL is
185 a MEM too.
186
82ce305c
JL
1872011-03-16 Jeff Law <law@redhat.com>
188
189 PR rtl-optimization/37273
190 * ira-costs.c (scan_one_insn): Detect constants living in memory and
191 handle them like argument loads from stack slots. Do not double
192 count memory for memory constants and argument loads from stack slots.
193
fe58e02b
L
1942011-03-17 H.J. Lu <hongjiu.lu@intel.com>
195
196 PR debug/48160
197 * var-tracking.c (prepare_call_arguments): Check SUBREG.
198
6fc4dbc7
L
1992011-03-17 H.J. Lu <hongjiu.lu@intel.com>
200
201 PR target/48171
202 * config/i386/i386.opt: Add Save to -mavx and -mfma.
203
db3ed0b3
JJ
2042011-03-17 Jakub Jelinek <jakub@redhat.com>
205
8054a389
JJ
206 PR bootstrap/48153
207 * dwarf2out.c (mem_loc_descriptor) <case ENTRY_VALUE>: Return NULL
208 if dwarf_strict.
209 (gen_subprogram_die): Don't add call_site DIEs if dwarf_strict.
210 Clear call_arg_locations and call_arg_loc_last always.
211
db3ed0b3
JJ
212 PR middle-end/48152
213 * var-tracking.c (prepare_call_arguments): If argument needs to be
214 passed by reference, adjust argtype and mode.
215
1bce4ff3
RG
2162011-03-17 Richard Guenther <rguenther@suse.de>
217
218 PR middle-end/48134
219 * tree-ssa.c (insert_debug_temp_for_var_def): If we propagated
220 a value make sure to fold the statement.
221
7c71147d
CLT
2222011-03-17 Chung-Lin Tang <cltang@codesourcery.com>
223
224 PR target/43872
225 * config/arm/arm.c (arm_get_frame_offsets): Adjust early
226 return condition with !cfun->calls_alloca.
227
0e1ee172
RG
2282011-03-17 Richard Guenther <rguenther@suse.de>
229
230 PR bootstrap/48148
231 * lto-cgraph.c (input_overwrite_node): Clear the abstract
232 origin for decls in other ltrans units.
233 (input_varpool_node): Likewise.
234
f8bce518
RG
2352011-03-17 Richard Guenther <rguenther@suse.de>
236
237 PR middle-end/48165
238 * tree-object-size.c (compute_object_offset): Properly return
239 the offset operand of MEM_REFs as sizetype.
240
1b6fa860
JJ
2412011-03-17 Jakub Jelinek <jakub@redhat.com>
242
dabd47e7
JJ
243 PR rtl-optimization/48141
244 * params.def (PARAM_MAX_DSE_ACTIVE_LOCAL_STORES): New.
245 * dse.c: Include params.h.
246 (active_local_stores_len): New variable.
247 (add_wild_read, dse_step1): Clear it when setting active_local_stores
248 to NULL.
249 (record_store, check_mem_read_rtx): Decrease it when removing
250 from the chain.
251 (scan_insn): Likewise. Increase it when adding to chain, if it
252 reaches PARAM_MAX_DSE_ACTIVE_LOCAL_STORES limit, set to 1 and
253 set active_local_stores to NULL before the addition.
254 * Makefile.in (dse.o): Depend on $(PARAMS_H).
255
1b6fa860
JJ
256 PR rtl-optimization/48141
257 * dse.c (record_store): If no positions are needed in an insn
258 that cannot be deleted, at least unchain it from active_local_stores.
259
7b5cb7d6
DS
2602011-03-16 Dodji Seketeli <dodji@redhat.com>
261
262 PR debug/47510
263 * dwarf2out.c (strip_naming_typedef): Factorize out of ...
264 (lookup_type_die_strip_naming_typedef): ... here.
265 (get_context_die): Use it.
266 (gen_typedef_die): Add a DW_AT_{,MIPS_}linkage_name attribute to
267 the anonymous struct named by the naming typedef.
268
585e9d9d
L
2692011-03-16 H.J. Lu <hongjiu.lu@intel.com>
270
271 PR target/48154
272 * config/i386/i386.c (ix86_builtin_vectorized_function): Check
273 TARGET_ROUND for BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.
274
6261ab0e
JL
2752011-03-16 Jeff Law <law@redhat.com>
276
277 * tree-vrp.c (identify_jump_threads): Slightly simplify type
16cc4440 278 check for operands of conditional. Allow type to be a pointer.
6261ab0e 279
0b0081ec
RG
2802011-03-16 Richard Guenther <rguenther@suse.de>
281
282 PR tree-optimization/48149
283 * fold-const.c (fold_binary_loc): Fold
284 COMPLEX_EXPR <REALPART_EXPR <x>, IMAGPART_EXPR <x>>.
285
64a3d647
RG
2862011-03-16 Richard Guenther <rguenther@suse.de>
287
288 PR tree-optimization/26134
289 * tree-ssa.c (maybe_rewrite_mem_ref_base): Handle rewriting
290 complex part accesses to REALPART_EXPR and IMAGPART_EXPR.
291 (non_rewritable_mem_ref_base): Handle complex type component
292 accesses, constrain offsets for vector and complex extracts
293 more properly.
294
ef13324e
RG
2952011-03-16 Richard Guenther <rguenther@suse.de>
296
297 PR tree-optimization/48146
298 * tree-ssa-sink.c (sink_code_in_bb): Manually update virtual
299 operands avoiding the need for renaming.
300
f0eddb90
RG
3012011-03-16 Richard Guenther <rguenther@suse.de>
302
303 * gimple-fold.c (maybe_fold_reference): Open-code relevant
304 constant folding. Move MEM_REF canonicalization first.
305 Rely on fold_const_aggregate_ref for initializer folding.
306 * tree-ssa-ccp.c (ccp_fold): Handle constant vector extracts.
307
e42348b8
JJ
3082011-03-16 Jakub Jelinek <jakub@redhat.com>
309
29f10e71
JJ
310 PR middle-end/48136
311 * fold-const.c (fold_binary_loc) <case EQ_EXPR, NE_EXPR>: Make sure
312 arg0/arg1 or their arguments are always fold converted to matching
313 types.
314
e42348b8
JJ
315 * var-tracking.c (prepare_call_arguments): Add ATTRIBUTE_UNUSED
316 to nargs.
317
55b46574
RO
3182011-03-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
319
320 PR lto/46944
321 * configure.ac (gcc_cv_gld_major_version, gcc_cv_gld_minor):
322 Handle in-tree gold.
323 (ld_vers): Extract binutils version for gold.
324 (gcc_cv_ld_hidden): Handle gold here.
325 (gcc_cv_lto_plugin): Determine level of linker plugin support.
326 * configure: Regenerate.
327 * config.in: Regenerate.
328 * gcc.c: Only use LTO plugin if HAVE_LTO_PLUGIN > 0, reject
329 -fuse-linker-plugin otherwise.
330 (LINK_PLUGIN_SPEC): Define. Extract from LINK_COMMAND_SPEC.
331 (LINK_COMMAND_SPEC): Use it.
332 (main): Only look for LTOPLUGINSONAME if HAVE_LTO_PLUGIN > 0.
333
2b1c5433
JJ
3342011-03-16 Jakub Jelinek <jakub@redhat.com>
335
c2969d8e
JJ
336 * emit-rtl.c (try_split): Don't call copy_call_info debug hook.
337 * calls.c: Remove debug.h include.
338 (emit_call_1): Don't call virtual_call_token debug hook.
339 * dwarf2out.c (debug_dcall_section, debug_vcall_section,
340 dcall_entry, vcall_entry, dcall_table, vcall_table, vcall_insn,
341 vcall_insn_table, DEBUG_DCALL_SECTION, DEBUG_VCALL_SECTION,
342 size_of_dcall_table, output_dcall_table, size_of_vcall_table,
343 output_vcall_table, dwarf2out_direct_call, vcall_insn_table_hash,
344 vcall_insn_table_eq, store_vcall_insn, lookup_vcall_insn,
345 dwarf2out_virtual_call_token, dwarf2out_copy_call_info,
346 dwarf2out_virtual_call): Remove.
347 (dwarf2_debug_hooks): Remove direct_call, virtual_call_token,
348 copy_call_info and virtual_call hooks.
349 (dwarf2out_init): Don't initialize vcall_insn_table,
350 debug_dcall_section and debug_vcall_section.
351 (prune_unused_types): Don't mark nodes from dcall_table.
352 (dwarf2out_finish): Don't output dcall or vcall tables.
353 * final.c (final_scan_insn): Don't call direct_call or
354 virtual_call debug hooks.
355 * debug.h (struct gcc_debug_hooks): Remove direct_call,
356 virtual_call_token, copy_call_info and virtual_call hooks.
357 (debug_nothing_uid): Remove prototype.
358 * sdbout.c (sdb_debug_hooks): Remove direct_call, virtual_call_token,
359 copy_call_info and virtual_call hooks.
360 * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
361 * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Likewise.
362 * debug.c (do_nothing_debug_hooks): Likewise.
363 (debug_nothing_uid): Remove.
364 * doc/invoke.texi (-fenable-icf-debug): Remove.
365 * common.opt (-fenable-icf-debug): Likewise.
366
325f5379
JJ
367 * calls.c (emit_call_1): Set MEM_EXPR on call's MEM.
368 * var-tracking.c (prepare_call_arguments): Use MEM_EXPR on
369 call's MEM. Handle functions returning aggregate through a hidden
370 first pointer. For virtual calls add clobbered pc to call arguments
371 chain.
372 * dwarf2out.c (gen_subprogram_die): Emit
373 DW_AT_GNU_call_site_target_clobbered if DW_AT_GNU_call_site_target
374 can't be emitted.
375
a58a8e4b
JJ
376 PR debug/45882
377 * rtl.def (ENTRY_VALUE): Change format from "e" to "0".
378 * rtl.h (ENTRY_VALUE_EXP): Define.
379 * rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle ENTRY_VALUE.
380 * cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise.
381 * print-rtl.c (print_rtx): Likewise.
382 * gengtype.c (adjust_field_rtx_def): Likewise.
383 * var-tracking.c (vt_add_function_parameter): Adjust
384 gen_rtx_ENTRY_VALUE uses, use ENTRY_VALUE_EXP macro.
385 * dwarf2out.c (mem_loc_descriptor): Use ENTRY_VALUE_EXP macro.
386 * cfgexpand.c (expand_debug_expr): If a SSA_NAME without
387 partition is a default definition of a PARM_DECL, use ENTRY_VALUE
388 of its DECL_INCOMING_RTL if possible, or its DECL_RTL if set.
389
2b1c5433
JJ
390 * final.c (final_scan_insn): Handle NOTE_INSN_CALL_ARG_LOCATION.
391 Call var_location debug hook even on CALL_INSNs.
392 (rest_of_clean_state): Don't print NOTE_INSN_CALL_ARG_LOCATION.
393 * rtl.def (ENTRY_VALUE): New.
394 * dwarf2out.c: Include cfglayout.h.
395 (dwarf_stack_op_name, size_of_loc_descr, output_loc_operands,
396 output_loc_operands_raw): Handle DW_OP_GNU_entry_value.
397 (struct call_arg_loc_node): New type.
398 (call_arg_locations, call_arg_loc_last, block_map, call_site_count,
399 tail_call_site_count): New variables.
400 (dwarf_tag_name): Handle DW_TAG_GNU_call_site and
401 DW_TAG_GNU_call_site_parameter.
402 (dwarf_attr_name): Handle DW_AT_GNU_call_site_value,
403 DW_AT_GNU_call_site_data_value, DW_AT_GNU_call_site_target,
404 DW_AT_GNU_call_site_target_clobbered, DW_AT_GNU_tail_call,
405 DW_AT_GNU_all_tail_call_sites, DW_AT_GNU_all_call_sites
406 and DW_AT_GNU_all_source_call_sites.
407 (mem_loc_descriptor): Handle ENTRY_VALUE.
408 (add_src_coords_attributes): Don't add enything if
409 DECL_SOURCE_LOCATION is UNKNOWN_LOCATION.
410 (dwarf2out_abstract_function): Save and clear call_arg_location,
411 call_site_count and tail_call_site_count around dwarf2out_decl call.
412 (gen_call_site_die): New function.
413 (gen_subprogram_die): Emit DW_TAG_GNU_call_site DIEs for call sites.
414 (gen_lexical_block_die, gen_inlined_subroutine_die): Update block_map.
415 (dwarf2out_function_decl): Clear call_arg_locations,
416 call_arg_loc_last, set call_site_count and tail_call_site_count
417 to -1 and free block_map.
418 (dwarf2out_var_location): Handle NOTE_INSN_CALL_ARG_LOCATION and
419 CALL_INSNs. Add NOTE_DURING_CALL_P var location notes even when not
420 followed by any real instructions.
421 (dwarf2out_begin_function): Set call_site_count and
422 tail_call_site_count to 0.
423 (resolve_addr): If DW_AT_abstract_origin of DW_TAG_GNU_call_site
424 is dw_val_class_addr, attempt to look it up again, for DECL_EXTERNAL
425 attempt to force a DIE for it and worst case remove the attribute.
426 (resolve_one_addr): For TREE_CONSTANT_POOL_ADDRESS_P SYMBOL_REFs
427 check TREE_ASM_WRITTEN of DECL_INITIAL of the decl instead of
428 the decl itself.
429 * var-tracking.c: Include tm_p.h.
430 (vt_stack_adjustments): For calls call note_register_arguments.
431 (argument_reg_set): New variable.
432 (add_stores): For MO_VAL_SET of non-tracked regs from argument_reg_set
433 ensure the VALUE is resolved.
434 (call_arguments): New variable.
435 (prepare_call_arguments): New function.
436 (add_with_sets): For MO_CALL set u.loc from call_arguments and clear it.
437 (struct expand_loc_callback_data): Add ignore_cur_loc field.
438 (vt_expand_loc_callback): If ignore_cur_loc, don't look at cur_loc and
439 always use the best expression.
440 (vt_expand_loc): Add ignore_cur_loc argument.
441 (vt_expand_loc_dummy): Clear ignore_cur_loc field.
442 (emit_note_insn_var_location): Adjust vt_expand_loc callers.
443 (emit_notes_in_bb) <case MO_CALL>: Add NOTE_INSN_CALL_ARG_LOCATION
444 note for all calls.
445 (vt_add_function_parameter): Use cselib_lookup_from_insn.
446 If dv is a VALUE, enter into hash table also ENTRY_VALUE for the
447 argument. Don't call cselib_preserve_only_values and
448 cselib_reset_table.
449 (note_register_arguments): New function.
450 (vt_initialize): Compute argument_reg_set. Call
451 vt_add_function_parameters before processing basic blocks instead of
452 afterwards. For calls call prepare_call_arguments before calling
453 cselib_process_insn.
454 * print-rtl.c (print_rtx): Handle NOTE_INSN_CALL_ARG_LOCATION.
455 * Makefile.in (dwarf2out.o): Depend on $(CFGLAYOUT_H).
456 (var-tracking.o): Depend on $(TM_P_H).
457 * cfglayout.h (insn_scope): New prototype.
458 * gengtype.c (adjust_field_rtx_def): Handle NOTE_INSN_CALL_ARG_LOCATION.
459 * cfglayout.c (insn_scope): No longer static.
460 * insn-notes.def (CALL_ARG_LOCATION): New.
461 * calls.c (expand_call, emit_library_call_value_1): Put USEs for
462 MEM arguments into CALL_INSN_FUNCTION_USAGE unconditionally.
463 * integrate.c (set_block_origin_self, set_block_abstract_flags): Do
464 nothing for DECL_EXTERNAL BLOCK_VARS.
465
9ef13bd0
AM
4662011-03-16 Alan Modra <amodra@gmail.com>
467
468 PR target/45844
469 * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
470 create invalid offset address for vsx splat insn.
471 * config/rs6000/predicates.md (splat_input_operand): New.
472 * config/rs6000/vsx.md (vsx_splat_*): Use it.
473
56b67510
XDL
4742011-03-15 Xinliang David Li <davidxl@google.com>
475
476 PR c/47837
477 * tree-ssa-uninit.c (pred_chain_length_cmp): New function.
478 (normalize_preds): New function.
479 (is_use_properly_guarded): Normalize def predicates.
480
80fffdef
RR
4812011-03-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
482
9751171c 483 PR target/46778
80fffdef
RR
484 * config/arm/arm.md (arm_movtas_ze): Use 'L' instead of 'c'
485 in the output template.
486
930672ad
RG
4872011-03-15 Richard Guenther <rguenther@suse.de>
488
489 PR middle-end/47650
490 * tree-pretty-print.c (dump_function_declaration): Properly
491 dump unprototyped and varargs function types.
492
c7ee7b45
RG
4932011-03-15 Richard Guenther <rguenther@suse.de>
494
495 PR tree-optimization/13954
496 * tree-ssa-sccvn.c (vn_reference_lookup_3): Look through memcpy
497 and friends.
498
b2ad5e37
RG
4992011-03-15 Richard Guenther <rguenther@suse.de>
500
501 PR tree-optimization/48037
502 * tree-ssa.c (maybe_rewrite_mem_ref_base): Rewrite vector
503 selects into BIT_FIELD_REFs.
504 (non_rewritable_mem_ref_base): Check if a MEM_REF is a
505 vector select.
506
7ee93d4e
JJ
5072011-03-15 Jakub Jelinek <jakub@redhat.com>
508
509 PR tree-optimization/48129
510 * builtins.c (fold_builtin_snprintf): Convert to type of
511 built_in_decls[BUILT_IN_SNPRINTF] retval instead of
512 implicit_built_in_decls[BUILT_IN_SNPRINTF] retval.
513
e106efc7
RG
5142011-03-15 Richard Guenther <rguenther@suse.de>
515
516 PR tree-optimization/41490
517 * tree-ssa-dce.c (propagate_necessity): Handle returns without
518 value but with VUSE.
519 * tree-ssa-operands.c (parse_ssa_operands): Add a VUSE on all
520 return statements.
521 * tree-ssa-sink.c (statement_sink_location): Fix store sinking.
522 * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Handle virtual PHIs.
523 * tree-tailcall.c (find_tail_calls): Ignore returns.
524
17dea42f
RG
5252011-03-15 Richard Guenther <rguenther@suse.de>
526
527 PR middle-end/48031
528 * fold-const.c (fold_indirect_ref_1): Do not create new variable-sized
529 or variable-indexed array accesses when in gimple form.
530
01c77a60
RG
5312011-03-15 Richard Guenther <rguenther@suse.de>
532
16cc4440 533 * config/i386/i386.c (ix86_emit_swdivsf): Implement more efficiently.
01c77a60 534
77b0791e
AM
5352011-03-15 Alan Modra <amodra@gmail.com>
536
537 PR target/48032
538 * config/rs6000/rs6000.c (offsettable_ok_by_alignment): Do not
539 presume symbol_refs without a symbol_ref_decl are suitably
540 aligned, nor other trees we may see here. Handle anchor symbols.
541 (legitimate_constant_pool_address_p): Comment. Add mode param.
542 Check cmodel=medium addresses. Adjust all calls.
543 (rs6000_emit_move): Don't call offsettable_ok_by_alignment on
544 creating cmodel=medium optimized access to locals.
545 * config/rs6000/constraints.md (R): Pass QImode to
546 legitimate_constant_pool_address_p.
547 * config/rs6000/predicates.md (input_operand): Pass mode to
548 legitimate_constant_pool_address_p.
549 * config/rs6000/rs6000-protos.h (legitimate_constant_pool_address_p):
550 Update prototype.
551
35f61ba4
MM
5522011-03-14 Michael Meissner <meissner@linux.vnet.ibm.com>
553
554 PR target/48053
555 * config/rs6000/rs6000.md (movdi split for 32-bit): Don't split up
556 64-bit constants being loaded into registers other than GPRs such
557 as loading 0 into a VSX register.
558
07332e6d
RO
5592011-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
560
16cc4440 561 * config/sol2.c (solaris_assemble_visibility): Remove obsolete URLs.
07332e6d 562
de888d90
JJ
5632011-03-14 Jakub Jelinek <jakub@redhat.com>
564
ba3ceb2d
JJ
565 PR middle-end/47917
566 * builtins.c (fold_builtin_snprintf): New function.
567 (fold_builtin_3): Call it for BUILT_IN_SNPRINTF.
568 (fold_builtin_4): Likewise.
569
2e64f8b8
JJ
570 PR middle-end/38878
571 * fold-const.c (fold_binary_loc) <case EQ_EXPR, NE_EXPR>: Add
572 STRIP_NOPS on arg0 and arg1. When optimizing X +- C == X
573 and C - X == X also strip nops from +/-/p+ operand.
574 When optimizing -X == C, fold C to arg0's type.
575
de888d90
JJ
576 PR debug/47946
577 * dwarf2out.c (add_bit_offset_attribute): If bit_offset is negative,
578 emit it as add_AT_int instead of add_AT_unsigned.
579
5802011-03-14 Tom Tromey <tromey@redhat.com>
f4e749b4
TT
581
582 * unwind-dw2.c: Include sys/sdt.h if it exists.
583 (_Unwind_DebugHook): Use STAP_PROBE2.
584 * config.in, configure: Rebuild.
585 * configure.ac: Check for sys/sdt.h.
586
d34abfd2
UB
5872011-03-14 Uros Bizjak <ubizjak@gmail.com>
588
589 * config/i386/i386.md (ROUND_FLOOR): New constant.
590 (ROUND_CEIL): Ditto.
591 (ROUND_TRUNC): Ditto.
592 (ROUND_MXCSR): Ditto.
593 (ROUND_NO_EXC): Ditto.
594 (rint<mode>2): Use new defines instead of numerical constants.
595 (floor<mode>2): Ditto.
596 (ceil<mode>2): Ditto.
597 (btrunc<mode>2): Ditto.
598 * config/i386/i386-builtin-types.def: Define ROUND function type
599 aliases.
600 * config/i386/i386.c (enum ix86_builtins): Add
601 IX86_BUILTIN_{FLOOR,CEIL,TRUNC,RINT}{PS,PD}{,256} defines.
602 (struct builtin_description): Add
603 __builtin_ia32_{floor,ceil,trunc,rint}{pd,ps}{,256} descriptions.
604 (ix86_expand_sse_round): New static function.
605 (ix86_expand_args_builtin): Call ix86_expand_sse_round for ROUND
606 function types.
607 (ix86_builtin_vectorized_function): Handle
608 BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.
609
87f9e23d
TT
6102011-03-14 Tom Tromey <tromey@redhat.com>
611
612 * c-parser.c (c_parser_asm_string_literal): Clear
613 warn_overlength_strings.
614
b3ab9ea2
TT
6152011-03-14 Tom Tromey <tromey@redhat.com>
616
617 * c-parser.c (disable_extension_diagnostics): Save
618 warn_overlength_strings.
619 (restore_extension_diagnostics): Restore warn_overlength_strings.
620
6bd73dd8
JJ
6212011-03-14 Jakub Jelinek <jakub@redhat.com>
622
623 * BASE-VER: Change to 4.7.0.
624
7f4d6e1b
RG
6252011-03-14 Richard Guenther <rguenther@suse.de>
626
627 PR middle-end/48098
628 * tree.c (build_vector_from_val): Adjust assert to requirements
629 and reality.
630
c6104ef1
JJ
6312011-03-14 Jakub Jelinek <jakub@redhat.com>
632
633 PR bootstrap/48102
d34abfd2 634 * graphite-cloog-compat.h (build_cloog_prog): Remove STATE parameter.
c6104ef1 635
dfa95e19
AT
6362011-03-14 Andreas Tobler <andreast@fgznet.ch>
637
638 * config/rs6000/freebsd.h: (RELOCATABLE_NEEDS_FIXUP): Define in
639 terms of target_flags_explicit. Adjust copyright year.
640
641 * config.gcc: Add FreeBSD PowerPC soft-float libgcc bits.
642 * config/rs6000/t-freebsd: New file. Add override for
643 LIB2FUNCS_EXTRA.
644
bb322018
CD
6452011-03-13 Chris Demetriou <cgd@google.com>
646
647 * doc/invoke.texi (-fdiagnostics-show-option): Replace with...
648 (-fno-diagnostics-show-option): this, to reflect current default.
649 (-Werror=): Update text about -fno-diagnostics-show-option.
650
12b1c80b
PB
6512011-03-12 Peter Bergner <bergner@vnet.ibm.com>
652
653 PR target/48053
654 * config/rs6000/predicates.md (easy_vector_constant_add_self,
655 easy_vector_constant_msb): Do not handle V2DImode and V2DFmode.
656 * config/rs6000/rs6000.c (const_vector_elt_as_int): Add assert that
657 mode is not V2DImode or V2DFmode.
658 (vspltis_constant): Do not handle V2DImode and V2DFmode.
659 (rs6000_expand_vector_init): Replace copy_to_reg with copy_to_mode_reg.
660 * config/rs6000/rs6000.md (movdi_internal32): Allow setting VSX
661 registers to 0.
662 (movdi_internal64): Likewise.
663
57d598f7
SP
6642011-03-12 Sebastian Pop <sebastian.pop@amd.com>
665
666 PR tree-optimization/47127
667 * graphite-clast-to-gimple.c (build_cloog_prog): Removed state
668 parameter.
669 (set_cloog_options): Same.
670 (scop_to_clast): Same.
671 (print_clast_stmt): Do not call cloog_state_malloc and
672 cloog_state_free.
673 (print_generated_program): Same.
674 (gloog): Same.
675 * graphite-clast-to-gimple.h (cloog_state): Declared.
676 (scop_to_clast): Adjust declaration.
677 * graphite.c (cloog_state): Defined here.
678 (graphite_initialize): Call cloog_state_malloc.
679 (graphite_finalize): Call cloog_state_free.
680
f231b5ff
JM
6812011-03-11 Jason Merrill <jason@redhat.com>
682
683 * attribs.c (lookup_attribute_spec): Take const_tree.
684 * tree.h: Adjust.
685
6a4e2bd5
JM
6862011-03-11 Joseph Myers <joseph@codesourcery.com>
687
688 * config/sparc/sparc.c (sparc_option_override): Use
689 PROCESSOR_NIAGARA2 not PROCESSOR_NIAGARA for "niagara2".
690
a758fd67
RG
6912011-03-11 Richard Guenther <rguenther@suse.de>
692
693 PR tree-optimization/48067
694 * tree-ssa-math-opts.c (convert_mult_to_fma): Verify the
695 multiplication result will be only used once on the target
696 stmt.
697
03dfda54
RG
6982011-03-11 Richard Guenther <rguenther@suse.de>
699
700 * doc/invoke.texi (max-inline-insns-single): Adjust default value.
701
5f11a50a
RG
7022011-03-11 Richard Guenther <rguenther@suse.de>
703
704 PR lto/48073
705 * tree.c (find_decls_types_r): Do not walk types only reachable
706 from IDENTIFIER_NODEs.
707
4074f163
JJ
7082011-03-11 Jakub Jelinek <jakub@redhat.com>
709
710 PR middle-end/48044
711 * ipa.c (cgraph_remove_unreachable_nodes): Enqueue
712 all vnode->force_output nodes as needed.
713
30f7cdcd
JM
7142011-03-11 Jason Merrill <jason@redhat.com>
715
716 PR c++/48069
717 * tree.c (type_hash_eq): Use COMPLETE_TYPE_P, not
718 COMPLETE_OR_UNBOUND_ARRAY_TYPE_P.
719
62ecfeb8
MJ
7202011-03-11 Martin Jambor <mjambor@suse.cz>
721
722 * cgraphunit.c (verify_cgraph_node): Call cgraph_get_node instead of
723 cgraph_node.
724
e89e03ab
JJ
7252011-03-11 Jakub Jelinek <jakub@redhat.com>
726
727 PR tree-optimization/48063
728 * ipa-inline.c (cgraph_decide_inlining): Don't try to
729 inline functions called once if !tree_can_inline_p (node->callers).
730
efbe978b 7312011-03-11 Chen Liqin <liqin.gcc@gmail.com>
9d6193a7 732
efbe978b
EB
733 * config.gcc (score-*-elf): Add extra_parts .., update tmake_file and
734 extra_objs.
9d6193a7
CL
735 * config/score/score3.c: Delete.
736 * config/score/score3.h: Delete.
737 * config/score/mul-div.S: Delete.
738 * config/score/sfp-machine.h: Add new file.
739 * config/score/constraints.md: Add new file.
740 * config/score/t-score-softfp: Add new file.
efbe978b 741 * config/score/t-score-elf: Remove score3.o, do not generate multilib.
9d6193a7
CL
742 * config/score/score7.c (score7_const_ok_for_letter_p): Delete.
743 (score7_extra_constraint): Delete.
efbe978b 744 (score7_option_override): Remove unused code.
9d6193a7
CL
745 * config/score/score.c: Remove score3 and score5 define and code.
746 * config/score/score.h: Remove score3 and score5 define and code.
efbe978b 747 * config/score/score.md: Remove score3 template and unusual insn.
9d6193a7
CL
748 * config/score/score.opt: Remove score3 and score5 options.
749
5de27cca
JDA
7502011-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
751
752 * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Define _REENTRANT
753 when _HPUX_SOURCE is defined.
754 (LIB_SPEC): Use -lc instead of -lc_r when -threads is specified.
755
18d92053
JM
7562011-03-10 Jason Merrill <jason@redhat.com>
757
758 PR c++/48029
759 * stor-layout.c (layout_type): Don't set structural equality
760 on arrays of incomplete type.
761 * tree.c (type_hash_eq): Handle comparing them properly.
762
67a2f76d
JJ
7632011-03-10 Jakub Jelinek <jakub@redhat.com>
764
765 PR debug/48043
18d92053 766 * config/s390/s390.c (s390_delegitimize_address): Make sure the
67a2f76d
JJ
767 result mode matches original rtl mode.
768
d845b2f9
NC
7692011-03-10 Nick Clifton <nickc@redhat.com>
770
771 * config/rx/rx.md (bitset_in_memory, bitclr_in_memory: Fix timings.
39242686 772 (andsi3, andsi3_flags): Fix timings for three operand alternative.
d845b2f9 773
db7ec035
JJ
7742011-03-09 Jakub Jelinek <jakub@redhat.com>
775
776 PR rtl-optimization/47866
777 * expr.c (store_field): If MEM_SCALAR_P (target), don't use
778 MEM_SET_IN_STRUCT_P (to_rtx, 1), just set MEM_IN_STRUCT_P (to_rtx)
779 if target wasn't scalar.
780 * function.c (assign_stack_temp_for_type): Assert that neither
781 MEM_SCALAR_P nor MEM_IN_STRUCT_P is set previously, set either
782 MEM_IN_STRUCT_P or MEM_SCALAR_P instead of using MEM_SET_IN_STRUCT_P
783 macro.
784 * rtl.h (MEM_SET_IN_STRUCT_P): Removed.
785
5d304e47
AK
7862011-03-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
787
788 * config/s390/s390-protos.h (s390_label_align): New prototype.
789 * config/s390/s390.c (s390_label_align): New function.
790 * config/s390/s390.h (LABEL_ALIGN): New target macro definition.
791
93b826f0
MM
7922011-03-08 Michael Meissner <meissner@linux.vnet.ibm.com>
793
794 PR target/47755
795 * config/rs6000/rs6000.c (easy_altivec_constant): Correctly handle
796 V2DI/V2DF constants. Only all 0's or all 1's are easy.
797 (output_vec_const_move): Ditto.
798
ef78aed6
AS
7992011-03-08 Anatoly Sokolov <aesok@post.ru>
800
801 * config/mips/mips.h (PREFERRED_RELOAD_CLASS): Remove macro.
802 * config/mips/mips-protos.h (mips_preferred_reload_class): Remove.
803 * config/mips/mips.c (mips_preferred_reload_class): Make static.
804 Change 'rclass' argument and result type to reg_class_t.
805 (TARGET_PREFERRED_RELOAD_CLASS): Define.
806
5f892aa0
GJL
8072011-03-08 Georg-Johann Lay <avr@gjlay.de>
808
809 * config/avr/avr.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
810 * config/avr/avr.c (TARGET_REGISTER_MOVE_COST,
811 TARGET_MEMORY_MOVE_COST): Define.
812 (avr_register_move_cost, avr_memory_move_cost): New Functions.
813
32bd2409
JJ
8142011-03-08 Jakub Jelinek <jakub@redhat.com>
815
530a4800
JJ
816 PR debug/47881
817 * ira.c (ira): Call df_analyze again if delete_trivially_dead_insns
818 removed anything.
819
32bd2409
JJ
820 PR tree-optimization/48022
821 * fold-const.c (fold_comparison): Don't call fold_overflow_warning
822 for EQ/NE_EXPR.
823
c7148991
JJ
8242011-03-07 Jakub Jelinek <jakub@redhat.com>
825
826 PR debug/47991
827 * var-tracking.c (find_use_val): Return NULL for
828 cui->sets && cui->store_p BLKmode MEMs.
829
43070a6e
AS
8302011-03-07 Anatoly Sokolov <aesok@post.ru>
831
832 * config/stormy16/stormy16.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS):
833 Remove.
834 * config/stormy16/stormy16-protos.h (xstormy16_print_operand,
835 xstormy16_print_operand_address): Remove.
836 * config/stormy16/stormy16.c (xstormy16_print_operand,
837 xstormy16_print_operand_address): Make static.
838 (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
839
efbe978b 8402011-03-07 Pat Haugen <pthaugen@us.ibm.com>
79eefb0d
PH
841
842 PR target/47862
843 * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
844 * config/rs6000/e500.h (HARD_REGNO_CALLER_SAVE_MODE): Undefine
845 before definition.
846
cec8ac0b
ZD
8472011-03-07 Zdenek Dvorak <ook@ucw.cz>
848
849 PR bootstrap/48000
850 * cfgloopmanip.c (fix_bb_placements): Return immediately
851 if FROM is BASE_LOOP's header.
852
59527282
PW
8532011-03-07 Paul Wögerer <paul_woegerer@mentor.com>
854
855 * gimplify.c (gimplify_function_tree): Fix building calls
856 to __builtin_return_address.
857
617718f7
AM
8582011-03-07 Alan Modra <amodra@gmail.com>
859
860 * config/rs6000/linux.h (TARGET_ASM_FILE_END): Don't define.
861 * config/rs6000/linux64.h (TARGET_ASM_FILE_END): Don't define.
862 * config/rs6000/sysv4.h (TARGET_ASM_FILE_END): Define.
863 * config/rs6000/rs6000-protos.h (init_cumulative_args): Add fndecl and
864 return_mode args.
865 * config/rs6000/rs6000.h (CUMULATIVE_ARGS): Add "escapes".
866 (INIT_CUMULATIVE_ARGS): Pass FNDECL, VOIDmode.
867 (INIT_CUMULATIVE_INCOMING_ARGS): Pass current_function_decl, VOIDmode.
868 (INIT_CUMULATIVE_LIBCALL_ARGS): Pass NULL_TREE, MODE.
869 * config/rs6000/rs6000.c
870 (rs6000_elf_end_indicate_exec_stack): Rename to..
871 (rs6000_elf_file_end): ..this. Only call file_end_indicate_exec_stack
872 for POWERPC_LINUX. Move code emitting .gnu_attribute to here, from..
873 (rs6000_file_start): ..here.
874 (rs6000_passes_float, rs6000_passes_vector, rs6000_returns_struct): New
875 file scope variables.
876 (call_ABI_of_interest): New function.
877 (init_cumulative_args): Set above vars when function return value
878 is a float, vector, or small struct.
879 (rs6000_function_arg_advance_1): Likewise for function args.
880 (rs6000_va_start): Set rs6000_passes_float if variable arg function
881 references float args.
882
38528d50
MX
8832011-03-07 Mingjie Xing <mingjie.xing@gmail.com>
884
885 * doc/cfg.texi: Remove "See" before @ref.
886 * doc/invoke.texi: Likewise.
887
f42cf4f4
JM
8882011-03-05 Jason Merrill <jason@redhat.com>
889
890 * doc/invoke.texi (C++ Dialect Options): Document ABI v5.
891
804a304d
AG
8922011-03-05 Anthony Green <green@moxielogic.com>
893
894 * config.gcc (moxie-*-elf): Add newlib-stdint.h to tmfile.
895
634ee309
ZD
8962011-03-05 Zdenek Dvorak <ook@ucw.cz>
897
898 PR rtl-optimization/47899
899 * cfgloopmanip.c (fix_bb_placements): Fix first argument
900 to flow_loop_nested_p when moving the loop upward.
901
6fe471c8
RE
9022011-03-05 Richard Earnshaw <rearnsha@arm.com>
903
904 PR target/47719
905 * arm.md (movhi_insn_arch4): Accept any immediate constant.
906
cc58ceee
JJ
9072011-03-05 Jakub Jelinek <jakub@redhat.com>
908
909 PR tree-optimization/47967
910 * ipa-cp.c (build_const_val): Return NULL instead of creating
911 VIEW_CONVERT_EXPR for mismatching sizes.
912 (ipcp_create_replace_map): Return NULL if build_const_val failed.
913 (ipcp_insert_stage): If ipcp_create_replace_map returns NULL,
914 give up on versioning.
915
ea868305
AM
9162011-03-05 Alan Modra <amodra@gmail.com>
917
918 PR target/47986
919 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
920 full cmodel medium/large lo_sum + high addresses.
921
bc6ce334
AK
9222011-03-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
923
924 * config/s390/s390.c (s390_decompose_address): Reject non-literal
925 pool references in UNSPEC_LTREL_OFFSET.
926
87e7b310
JH
9272011-03-04 Jan Hubicka <jh@suse.cz>
928
929 PR lto/47497
930 * lto-symtab.c (lto_cgraph_replace_node): Do not set thunk.alias.
931 (lto_symtab_merge_cgraph_nodes_1): Update thunk.alias pointers here.
d34abfd2
UB
932 * cgraph.h (cgraph_same_body_alias, cgraph_add_thunk):
933 Add node pointers.
87e7b310
JH
934 * cgraph.c (cgraph_same_body_alias_1, cgraph_same_body_alias,
935 cgraph_add_thunk): Add node pointers.
936 * lto-cgraph.c (lto_output_node): Verify that thunks&aliases are
937 associated to right node.
938 (input_node): Update use of cgraph_same_body_alias
939 and cgraph_add_thunk.
940
d9c64246
CF
9412011-03-04 Changpeng Fang <changpeng.fang@amd.com>
942
943 * config/i386/i386.opt (mprefer-avx128): New flag.
d34abfd2
UB
944 * config/i386/i386.c (ix86_preferred_simd_mode): Prefer 128-bit AVX
945 modes when the flag -mprefer-avx128 is on.
d9c64246 946
08707076
RS
9472011-03-04 Richard Sandiford <richard.sandiford@linaro.org>
948
949 * dwarf2out.c (compare_loc_operands): Fix address handling.
950
52517c81
AM
9512011-03-04 Alan Modra <amodra@gmail.com>
952
953 * tree.h (TREE_ADDRESSABLE): Update FUNCTION_DECL comment.
954
b147c5b9
RG
9552011-03-04 Richard Guenther <rguenther@suse.de>
956
957 PR middle-end/47968
958 * expmed.c (extract_bit_field_1): Prefer vector modes that
959 vec_extract patterns can handle.
960
8750672f
RG
9612011-03-04 Richard Guenther <rguenther@suse.de>
962
963 PR middle-end/47975
964 * optabs.c (optab_for_tree_code): Do not use VECTOR_MODE_P.
965
9eac0f2a
RH
9662011-03-04 Richard Henderson <rth@redhat.com>
967
968 * explow.c (emit_stack_save): Remove 'after' parameter.
969 (emit_stack_restore): Likewise.
970 * expr.h: Update to match.
971 * builtins.c, calls.c, stmt.c: Likewise.
972 * config/alpha/alpha.md, config/avr/avr.md: Likewise.
973 * config/mips/mips.md, config/pa/pa.md, config/vax/vax.md: Likewise.
974 * function.c (expand_function_end): Insert the emit_stack_save
975 sequence before parm_birth_insn instead of after.
976
dfee1406
UB
9772011-03-03 Uros Bizjak <ubizjak@gmail.com>
978
979 * config/i386/sse.md (*avx_pmaddubsw128): Fix mode of VEC_SELECT RTX.
980 (ssse3_pmaddubsw128): Ditto.
981 (ssse3_pmaddubsw): Ditto.
982
f1d4c3de
SE
9832011-03-03 Steve Ellcey <sje@cup.hp.com>
984
985 * config/ia64/t-hpux: Add $(srcdir)/unwind-c.c to LIB2ADDEH
986
71f3a3f5
JJ
9872011-03-03 Jakub Jelinek <jakub@redhat.com>
988
423ed416
JJ
989 PR c/47963
990 * gimplify.c (omp_add_variable): Only call omp_notice_variable
991 on TYPE_SIZE_UNIT if it is a DECL.
992
71f3a3f5
JJ
993 PR debug/47283
994 * cfgexpand.c (expand_debug_expr) <case MEM_REF>: If MEM_REF
995 first operand is not is_gimple_mem_ref_addr, try to fold it.
996 If the operand still isn't is_gimple_mem_ref_addr, clear
997 MEM_EXPR on op0.
998
4b1a5c0d
RG
9992011-03-03 Richard Guenther <rguenther@suse.de>
1000
1001 PR middle-end/47283
1002 * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Make code
1003 match comment.
1004 (refs_may_alias_p_1): For release branches return true if
1005 we are confused by our input.
1006
b46616fd
AK
10072011-03-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1008
1009 * config/s390/s390.c (s390_function_value): Rename to ...
1010 (s390_function_and_libcall_value): ... this.
1011 (s390_function_value): New function.
1012 (s390_libcall_value): New function.
dfee1406 1013 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Define target hooks.
b46616fd
AK
1014 * config/s390/s390.h (FUNCTION_VALUE, LIBCALL_VALUE): Remove
1015 target macro definitions.
1016 * config/s390/s390-protos.h (s390_function_value): Remove prototype.
1017
46d8fabb
JM
10182011-03-02 Joseph Myers <joseph@codesourcery.com>
1019
1020 * config/i386/freebsd64.h (CC1_SPEC): Define.
1021 * config/i386/linux64.h (CC1_SPEC): Define.
1022 * config/i386/x86-64.h (CC1_SPEC): Don't define.
1023
6b1ce545
AS
10242011-03-02 Anatoly Sokolov <aesok@post.ru>
1025
1026 * config/stormy16/stormy16.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
1027 Remove.
1028 * config/stormy16/stormy16.c: Include reload.h.
1029 (xstormy16_memory_move_cost): New function.
1030 (TARGET_MEMORY_MOVE_COST): Define.
1031
34161e98
RS
10322011-03-02 Richard Sandiford <richard.sandiford@linaro.org>
1033
1034 PR rtl-optimization/47925
1035 * cse.c (count_reg_usage): Don't ignore the SET_DEST of instructions
1036 with side effects. Remove the more-specific check for volatile asms.
1037
f60a97cf
AM
10382011-03-02 Alan Modra <amodra@gmail.com>
1039
1040 PR target/47935
1041 * config/rs6000/predicates.md (lwa_operand): Check cmodel medium
1042 toc relative addresses for valid offsets.
1043
f2ca11ca
RG
10442011-03-01 Richard Guenther <rguenther@suse.de>
1045
1046 PR tree-optimization/47890
1047 * tree-vect-loop.c (get_initial_def_for_induction): Set
1048 related stmt properly.
1049
7a00d9ea
RG
10502011-03-01 Richard Guenther <rguenther@suse.de>
1051
1052 PR lto/47924
1053 * lto-streamer.c (lto_record_common_node): Also register
1054 the canonical type.
1055
06c7edcc
RG
10562011-03-01 Richard Guenther <rguenther@suse.de>
1057
1058 PR lto/46911
1059 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
1060 Do not stream DECL_ABSTRACT_ORIGIN.
1061 (lto_input_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
1062 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
1063 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
1064 Do not stream DECL_ABSTRACT_ORIGIN.
1065 (lto_output_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
1066 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
1067
998871e9
AS
10682011-02-28 Anatoly Sokolov <aesok@post.ru>
1069
1070 * config/stormy16/stormy16.h (FUNCTION_VALUE, LIBCALL_VALUE,
1071 FUNCTION_VALUE_REGNO_P): Remove.
b2e2ea67 1072 * config/stormy16/stormy16-protos.h (xstormy16_function_value): Remove.
998871e9
AS
1073 * config/stormy16/stormy16.c (xstormy16_function_value): Make static.
1074 Add 'outgoing' argument.
1075 (xstormy16_libcall_value, xstormy16_function_value_regno_p): New
1076 function.
1077 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
1078 TARGET_FUNCTION_VALUE_REGNO_P): Define.
1079
94369251
KT
10802011-02-28 Kai Tietz <kai.tietz@onevision.com>
1081
1082 PR debug/28047
1083 * dwarf2out.c (file_table_eq): Use filename_cmp instead of strcmp.
1084 (lookup_filename): Likewise.
b2e2ea67 1085 * final.c (remap_debug_filename): Use filename_ncmp instead of strncmp.
94369251 1086
80a832cd
JJ
10872011-02-28 Bernd Schmidt <bernds@codesourcery.com>
1088 Jakub Jelinek <jakub@redhat.com>
1089
1090 PR middle-end/47893
1091 * rtl.h (ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Define.
1092 (assign_stack_local_1): Change last argument type to int.
1093 * function.c (assign_stack_local_1): Replace reduce_alignment_ok
1094 argument with kind. If bit ASLK_RECORD_PAD is not set in it,
b2e2ea67 1095 don't record padding space into frame_space_list nor use those areas.
80a832cd
JJ
1096 (assign_stack_local): Adjust caller.
1097 (assign_stack_temp_for_type): Call assign_stack_local_1 instead
1098 of assign_stack_local, pass 0 as last argument.
1099 * caller-save.c (setup_save_areas): Adjust assign_stack_local_1
1100 callers.
1101
1b500976
JJ
11022011-02-28 Jakub Jelinek <jakub@redhat.com>
1103
f61c6f34
JJ
1104 PR debug/47283
1105 * cfgexpand.c (convert_debug_memory_address): Add AS parameter.
1106 Use target address_mode and pointer_mode hooks instead of hardcoded
1107 Pmode and ptr_mode. Handle some simple cases of extending if
1108 POINTERS_EXTEND_UNSIGNED < 0.
1109 (expand_debug_expr) <case MEM_REF, INDIRECT_REF, TARGET_MEM_REF>:
1110 Call convert_debug_memory_address.
1111 (expand_debug_expr) <case ADDR_EXPR>: Pass as to
1112 convert_debug_memory_address.
1113
1b500976
JJ
1114 PR middle-end/46790
1115 * configure.ac (HAVE_LD_EH_GC_SECTIONS_BUG): New test.
1116 * configure: Regenerated.
1117 * config.in: Regenerated.
1118 * varasm.c (default_function_section): Return NULL
b2e2ea67 1119 if HAVE_LD_EH_GC_SECTIONS_BUG and decl has implicit section name.
1b500976 1120
2f2935b6
MJ
11212011-02-28 Martin Jambor <mjambor@suse.cz>
1122
1123 * ipa-inline.c (cgraph_decide_inlining_of_small_functions): Fix
1124 the description to match the printed values.
1125
474086eb
RG
11262011-02-28 Richard Guenther <rguenther@suse.de>
1127
1128 * tree-inline.c (tree_function_versioning): Set BLOCK_SUPERCONTEXT
1129 of the copied scope tree.
1130
15bf6f3a
RW
11312011-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1132
1133 * doc/extend.texi (Function Attributes): Avoid deeply (and
1134 wrongly) nested tables.
1135
f6b439c9
JJ
11362011-02-27 Jakub Jelinek <jakub@redhat.com>
1137
1138 PR middle-end/47903
1139 * real.c (real_arithmetic) <case PLUS_EXPR, MINUS_EXPR,
1140 MULT_EXPR, RDIV_EXPR>: Clear padding bits in *r first if
1141 r isn't op0 nor op1.
1142
1d8ca2c7
GJL
11432011-02-23 Georg-Johann Lay <avr@gjlay.de>
1144
1145 * config/avr/avr.md: Remove magic comment for emacs.
1146
593fca4b
GJL
11472011-02-23 Georg-Johann Lay <avr@gjlay.de>
1148
1149 PR target/45261
1150 * config/avr/avr.c (avr_option_override): Use error on bad options.
1151 (avr_help): New function.
1152 (TARGET_HELP): Define.
1153
6609216e
GJL
11542011-02-22 Georg-Johann Lay <avr@gjlay.de>
1155
1156 PR target/42240
1157 * config/avr/avr.c (avr_cannot_modify_jumps_p): New function.
1158 (TARGET_CANNOT_MODIFY_JUMPS_P): Define.
1159
03d458af
GP
11602011-02-26 Gerald Pfeifer <gerald@pfeifer.com>
1161
1162 * doc/invoke.texi (ARC Options): Use CPU instead of cpu.
1163 (ARM Options): Ditto.
1164 (i386 and x86-64 Options): Ditto.
1165 (RX Options): Ditto.
1166 (SPARC Options): Ditto.
1167
1c379b78
TC
11682011-02-26 Tijl Coosemans <tijl@coosemans.org>
1169
1170 * config.gcc (i386-*-freebsd*): Make i486 the default arch on
1171 FreeBSD 6 and later. Generally use cpu generic.
1172
d5ed058c 11732011-02-25 Gerald Pfeifer <gerald@pfeifer.com>
b2e2ea67 1174
d5ed058c
GP
1175 * doc/cpp.texi: Update copyright years.
1176
509d65dd 11772011-02-25 Sebastien Bourdeauducq <sebastien@milkymist.org>
308d39cd 1178
509d65dd 1179 PR target/46898
308d39cd
SB
1180 * config/lm32/lm32.md (ashrsi3): Added needed variable.
1181
509d65dd 11822011-02-25 Jon Beniston <jon@beniston.com>
308d39cd 1183
509d65dd 1184 PR target/46898
308d39cd
SB
1185 * config/lm32/lm32.h (INCOMING_RETURN_ADDR_RTX): New.
1186 * config/lm32/lm32.md (ashlsi3): Remove unused variable.
1187 * config/lm32/lm32.c (TARGET_EXCEPT_UNWIND_INFO): New.
1188 (lm32_block_move_inline): Add type cast to remove warning.
b2e2ea67 1189 (lm32_expand_prologue): Generate fp in a way compatible with dwarf2out.
308d39cd
SB
1190 (gen_int_relational): Move declarations to start of function.
1191
822ba6d7
EB
11922011-02-25 Eric Botcazou <ebotcazou@adacore.com>
1193
1194 PR tree-optimization/45470
1195 * tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
1196 can throw internally only.
1197 * tree-vect-stmts.c (vectorizable_call): Likewise.
1198
ef795fc2
AS
11992011-02-24 Anatoly Sokolov <aesok@post.ru>
1200
1201 * config/stormy16/stormy16.h (PREFERRED_RELOAD_CLASS,
1202 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
1203 * config/stormy16/stormy16-protos.h
1204 (xstormy16_preferred_reload_class): Remove.
1205 * config/stormy16/stormy16.c (xstormy16_preferred_reload_class): Make
1206 static. Change 'rclass' argument and return type to reg_class_t.
1207 (TARGET_PREFERRED_RELOAD_CLASS,
1208 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
1209
1c3277ee
RG
12102011-02-24 Richard Guenther <rguenther@suse.de>
1211
1212 * lto-streamer-in.c (input_bb): Do not find referenced vars
1213 in debug statements.
1214
67e18edb
JM
12152011-02-23 Jason Merrill <jason@redhat.com>
1216
1217 * common.opt (fabi-version): Document v5 and v6.
1218
b14fad9d
RG
12192011-02-23 Richard Guenther <rguenther@suse.de>
1220
1221 PR tree-optimization/47849
1222 * tree-if-conv.c (main_tree_if_conversion): Free postdom info.
1223
7fcf46f5
JZ
12242011-02-23 Jie Zhang <jie@codesourcery.com>
1225
1226 * opts-common.c (decode_cmdline_option): Print empty string
1227 argument as "" in decoded->orig_option_with_args_text.
1228 * gcc.c (execute): Print empty string argument as ""
1229 in the verbose output.
1230 (do_spec_1): Keep empty string argument.
1231
f85b70fd
NF
12322011-02-23 Nathan Froyd <froydnj@codesourcery.com>
1233
1234 * config.gcc: Declare score-* and crx-* obsolete.
1235
b152a615
JZ
12362011-02-23 Jie Zhang <jie@codesourcery.com>
1237
1238 PR rtl-optimization/47763
1239 * web.c (web_main): Ignore naked clobber when replacing register.
1240
bb6e77bc
AS
12412011-02-22 Anatoly Sokolov <aesok@post.ru>
1242
1243 * config/stormy16/stormy16.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P):
1244 Remove.
1245
68bf6491
SP
12462011-02-22 Sebastian Pop <sebastian.pop@amd.com>
1247
1248 PR doc/47848
1249 * doc/invoke.texi: Do not mention -ftree-loop-if-convert-memory-writes.
1250
88ee1fc7
MS
12512011-02-22 Mike Stump <mikestump@comcast.net>
1252
1253 * acinclude.m4 (gcc_cv_gas_vers): Add -arch ppc for probing darwin
1254 assembler.
1255 * configure: Regenerate.
1256
6042d1dd
CLT
12572011-02-21 Chung-Lin Tang <cltang@codesourcery.com>
1258
1259 PR rtl-optimization/46002
1260 * ira-color.c (update_copy_costs): Change class intersection
1261 test to reg_class_contents[] test of 'hard_regno'.
1262
7de97f9e
JM
12632011-02-21 Joseph Myers <joseph@codesourcery.com>
1264
1265 * config/alpha/osf5.opt (mno-mips-tfile): Mark as Target rather
1266 than Driver option.
1267 * config/hpux11.opt (mt): Likewise.
1268 * config/microblaze/microblaze.opt (mxl-mode-xilkernel): Likewise.
1269 * config/rs6000/xilinx.opt (mno-clearbss, mppcperflib): Likewise.
1270 * config/vax/elf.opt (mno-asm-pic): Likewise.
1271 * config/vms/vms.opt (map, mvms-return-codes): Likewise.
1272
d1d46f9f
MS
12732011-02-21 Mike Stump <mikestump@comcast.net>
1274
1275 PR target/47822
1276 * config/darwin-protos.h (darwin_init_cfstring_builtins): Return a
1277 tree so we can get save the type.
1278 * config/i386/darwin.h (SUBTARGET_INIT_BUILTINS): Reserve builtin slot
1279 for CFString instead of trying to use past the end of the builtins.
1280 * config/i386/i386.c (IX86_BUILTIN_CFSTRING): Likewise.
1281 * config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_CFSTRING): Likewise.
1282 * config/rs6000/darwin.h (SUBTARGET_INIT_BUILTINS): Likewise.
1283 * config/darwin.c (DARWIN_BUILTIN_CFSTRINGMAKECONSTANTSTRING):
1284 Rename to darwin_builtin_cfstring.
1285 (darwin_init_cfstring_builtins): Return the built type.
1286
23e0d930
UB
12872011-02-21 Uros Bizjak <ubizjak@gmail.com>
1288
1289 PR target/47840
1290 * config/i386/avxintrin.h (_mm256_insert_epi32): Use _mm_insert_epi32.
1291 (_mm256_insert_epi64): Use _mm_insert_epi64.
1292
192997cf
AS
12932011-02-21 Anatoly Sokolov <aesok@post.ru>
1294
1295 * config/stormy16/stormy16.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
1296 * config/stormy16/stormy16-protos.h
1297 (xstormy16_mode_dependent_address_p): Remove.
1298 * config/stormy16/stormy16.c (xstormy16_mode_dependent_address_p):
1299 Make static. Change return type to bool. Change argument type to
1300 const_rtx. Remove dead code.
1301 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
1302
e292d003
RG
13032011-02-21 Richard Guenther <rguenther@suse.de>
1304
1305 PR lto/47820
1306 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
1307 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
1308 (lto_input_ts_block_tree_pointers): Hook a BLOCK into the
1309 TUs context.
23e0d930 1310 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
e292d003
RG
1311 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
1312
77f846e9
RG
13132011-02-20 Richard Guenther <rguenther@suse.de>
1314
1315 PR lto/47822
1316 * tree.c (free_lang_data_in_decl): Clean builtins from
1317 the TU decl BLOCK_VARS.
23e0d930 1318
b2cddfc8
AO
13192011-02-19 Alexandre Oliva <aoliva@redhat.com>
1320
1321 PR debug/47620
1322 PR debug/47630
1323 * haifa-sched.c (fix_tick_ready): Skip tick computation
1324 for debug insns.
1325
becf4c11
RG
13262011-02-19 Richard Guenther <rguenther@suse.de>
1327
1328 PR lto/47647
1329 * lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
1330 Remove lazy BLOCK_VARS streaming.
1331 (lto_input_ts_block_tree_pointers): Likewise.
1332 * lto-streamer-out.c (lto_output_ts_block_tree_pointers): Likewise.
1333
27f98305
JM
13342011-02-19 Joseph Myers <joseph@codesourcery.com>
1335
1336 * config.gcc (i[34567]86-pc-msdosdjgpp*): Use i386/djgpp-stdint.h.
1337
064bf3f4
JM
13382011-02-19 Joseph Myers <joseph@codesourcery.com>
1339
1340 * config/i386/biarch32.h, config/i386/mach.h,
1341 config/rs6000/aix.opt, config/sh/superh64.h: Remove.
1342
9215ddc3
JJ
13432011-02-19 Jakub Jelinek <jakub@redhat.com>
1344
1345 PR target/47800
1346 * config/i386/i386.md (peephole2 for shift and plus): Use
1347 operands[1] original mode in the first insn.
1348
8b021004
MS
13492011-02-18 Mike Stump <mikestump@comcast.net>
1350
65ded153 1351 * config/t-darwin (TM_H): Add dependency on darwin-sections.def.
8b021004 1352
f84ae14c
JH
13532011-02-18 Jan Hubicka <jh@suse.cz>
1354
1355 PR middle-end/47788
65ded153
EB
1356 * ipa-inline.c (compute_inline_parameters): Set disregard_inline_limits
1357 to zero when the function is not inlinable at all.
f84ae14c 1358
eddabc80
JDA
13592011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1360
1361 * config.gcc (hppa[12]*-*-hpux11*): Set extra_parts.
1362 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1363 pthread_mutex_unlock, pthread_once): Reinstate pthread stubs.
1364 * config/pa/t-pa-hpux11: Add rules to build pthread stubs.
1365 * config/pa/t-pa64: Likewise.
1366 * config/pa/pa-hpux11.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
1367
ca3da783
JJ
13682011-02-18 Jakub Jelinek <jakub@redhat.com>
1369
1370 PR driver/47787
1371 * gcc.c (default_compilers): Clear combinable field for "@cpp-output".
1372
430aa868
JDA
13732011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1374
1375 PR target/47792
1376 * gthr-dce.h (__gthread_mutx_destroy): Fix typo in name.
1377
4bf7ff7e
AS
13782011-02-18 Anatoly Sokolov <aesok@post.ru>
1379
1380 * config/m32r/m32r.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
1381 RTX_OK_FOR_BASE_P, RTX_OK_FOR_OFFSET_P, LEGITIMATE_OFFSET_ADDRESS_P,
1382 LEGITIMATE_LO_SUM_ADDRESS_P, LOAD_POSTINC_P, STORE_PREINC_PREDEC_P,
1383 GO_IF_LEGITIMATE_ADDRESS): Remove macros.
1384 * config/m32r/m32r.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
1385 (m32r_rtx_ok_for_base_p, m32r_rtx_ok_for_offset_p,
1386 m32r_legitimate_offset_addres_p, m32r_legitimate_lo_sum_addres_p,
1387 m32r_load_postinc_p, m32r_store_preinc_predec_p,
1388 m32r_legitimate_address_p): New functions.
1389 * config/m32r/constraints.md (constraint "S"): Don't use
1390 STORE_PREINC_PREDEC_P.
1391 (constraint "U"): Don't use LOAD_POSTINC_P.
1392
7efcf910
CLT
13932011-02-18 Chung-Lin Tang <cltang@codesourcery.com>
1394
1395 PR rtl-optimization/46178
1396 * ira.c (setup_hard_regno_class): Use ira_class_translate[] to
1397 compute ira_hard_regno_cover_class[].
1398
237d6259
RG
13992011-02-18 Richard Guenther <rguenther@suse.de>
1400
1401 PR lto/47798
1402 * lto-streamer.h (lto_global_var_decls): Declare.
1403 * lto-streamer-in.c (lto_register_var_decl_in_symtab): Register
1404 statics for global var processing.
1405
12d80acc
RG
14062011-02-18 Richard Guenther <rguenther@suse.de>
1407
1408 PR tree-optimization/47737
1409 * tree-ssa-loop-im.c (extract_true_false_args_from_phi): Fix
1410 edge dominance check.
1411
abfea58d
JJ
14122011-02-18 Jakub Jelinek <jakub@redhat.com>
1413
1414 PR debug/47780
1415 * cfgexpand.c (expand_debug_expr) <case SSA_NAME>: Call copy_rtx to
1416 avoid invalid rtx sharing.
1417
f73c8882
GP
14182011-02-18 Gerald Pfeifer <gerald@pfeifer.com>
1419
1420 * doc/cpp.texi (Obsolete Features): Add background on the
1421 origin of assertions.
1422
d764a8e6
IS
14232011-02-17 Iain Sandoe <iains@gcc.gnu.org>
1424
1425 * config/darwin-c.c (darwin_cpp_builtins): Define __OBJC2__ for
23e0d930 1426 objc_abi == 2.
d764a8e6
IS
1427 * config/darwin.c (output_objc_section_asm_op): Added support for
1428 ABI v1 and v2.
1429 (is_objc_metadata): New.
1430 (darwin_objc2_section): New.
1431 (darwin_objc1_section): New.
1432 (machopic_select_section): Added support for ABI v1 and v2.
1433 (darwin_emit_objc_zeroed): New.
1434 (darwin_output_aligned_bss): Detect objc metadata and treat it
1435 appropriately.
1436 (darwin_asm_output_aligned_decl_common): Same.
1437 (darwin_asm_output_aligned_decl_local): Same.
1438 * config/darwin-sections.def: Updated for ABI v1 and v2.
1439 * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): When
1440 compiling Objective-C code for the NeXT runtime, default to using
1441 ABI version 0 for 32-bit, and version 2 for 64-bit.
1442
0a8134ca
JM
14432011-02-17 Joseph Myers <joseph@codesourcery.com>
1444
1445 * common.opt (optimize_fast): New Variable.
1446 * opts.c (default_options_optimization): Use opts->x_optimize_fast
1447 instead of local variable ofast.
1448
0a256240
NP
14492011-02-17 Nicola Pero <nicola.pero@meta-innovation.com>
1450
1451 * doc/invoke.texi (fobjc-abi-version): Documented.
1452 (fobjc-nilcheck): Documented.
1453 (fno-nil-receiver): Updated documentation to refer to the NeXT ABI
1454 version.
1455
fa381cb2
JM
14562011-02-17 Joseph Myers <joseph@codesourcery.com>
1457
1458 PR driver/47390
1459 * common.opt (export-dynamic): New Driver option.
1460 * gcc.c (LINK_COMMAND_SPEC): Add comment about %{e*}.
1461
5437eaa6
JM
14622011-02-17 Joseph Myers <joseph@codesourcery.com>
1463
1464 * config/rx/rx.h (LIB_SPEC): Match -msim not -msim*.
1465
bb7e6d55
AO
14662011-02-17 Alexandre Oliva <aoliva@redhat.com>
1467 Jan Hubicka <jh@suse.cz>
1468
1469 PR debug/47106
1470 PR debug/47402
1471 * cfgexpand.c (account_used_vars_for_block): Remove.
1472 (estimated_stack_frame_size): Use referenced vars.
1473 * tree-inline.c (remap_decl): Only mark VAR_DECLs as referenced
1474 that were referenced in the original function. Test src_fn
1475 rather than cfun. Drop redundant get_var_ann.
1476 (setup_one_parameter): Drop redundant get_var_ann.
1477 (declare_return_variable): Likewise.
1478 (copy_decl_for_dup_finish): Mark VAR_DECLs referenced in src_fn.
1479 (copy_arguments_for_versioning): Drop redundant get_var_ann.
1480 * ipa-inline.c (compute_inline_parameters): Do not compute
1481 disregard_inline_limits here.
bb7e6d55
AO
1482 (compute_inlinable_for_current, pass_inlinable): New.
1483 (pass_inline_parameters): Require PROP_referenced_vars.
1484 * cgraphunit.c (cgraph_process_new_functions): Don't run
23e0d930 1485 compute_inline_parameters explicitly unless function is in SSA form.
bb7e6d55
AO
1486 (cgraph_analyze_function): Set .disregard_inline_limits.
1487 * tree-sra.c (convert_callers): Compute inliner parameters
1488 only for functions already in SSA form.
1489
f181a8a7
JM
14902011-02-17 Joseph Myers <joseph@codesourcery.com>
1491
1492 * config/sparc/sparc.h (CPP_ENDIAN_SPEC): Don't handle
1493 -mlittle-endian-data.
1494
c6869789
JM
14952011-02-17 Joseph Myers <joseph@codesourcery.com>
1496
1497 * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): Match -mfpu and
1498 -mno-fpu, not -fpu and -no-fpu.
1499 * config/sparc/sol2-bi.h (OPTION_DEFAULT_SPECS): Likewise.
1500 * config/sparc/sparc.h (OPTION_DEFAULT_SPECS): Likewise.
1501
fbf4bfd3
UB
15022011-02-17 Uros Bizjak <ubizjak@gmail.com>
1503
1504 PR target/43653
1505 * config/i386/i386.c (ix86_secondary_reload): Handle SSE
1506 input reload with PLUS RTX.
1507
70be5dc7
JM
15082011-02-16 Joseph Myers <joseph@codesourcery.com>
1509
1510 * config/mips/mips.opt (mno-mdmx): Use Var(TARGET_MDMX, 0) instead
1511 of InverseVar(MDMX).
1512
30b1646e
JM
15132011-02-16 Joseph Myers <joseph@codesourcery.com>
1514
1515 * config/sh/embed-elf.h (LIBGCC_SPEC): Match -m4-340 instead of
1516 --m4-340.
1517
ab7b71e9
JM
15182011-02-16 Joseph Myers <joseph@codesourcery.com>
1519
1520 * config/mn10300/mn10300.opt (mno-crt0): New.
1521
466f3f08
JM
15222011-02-16 Joseph Myers <joseph@codesourcery.com>
1523
1524 * config/m68k/uclinux.opt (static-libc): New Driver option.
1525
8226cd7b
JM
15262011-02-16 Joseph Myers <joseph@codesourcery.com>
1527
1528 * config/m32c/m32c.h (LIB_SPEC): Match -msim not -msim*.
1529
45cab1d7
JM
15302011-02-16 Joseph Myers <joseph@codesourcery.com>
1531
1532 * config/lm32/lm32.h (ASM_SPEC): Use %{muser-enabled} instead of
1533 %{muser-extend-enabled}.
1534
65aab64f
RG
15352011-02-16 Richard Guenther <rguenther@suse.de>
1536
1537 PR tree-optimization/47738
1538 * tree-ssa-loop.c (run_tree_predictive_commoning): Return
1539 the TODO from tree_predictive_commoning.
1540
fc2fa4fb
JL
15412011-02-15 Jeff Law <law@redhat.com>
1542
1543 Revert
1544 2011-01-25 Jeff Law <law@redhat.com>
1545
1546 PR rtl-optimization/37273
1547 * ira-costs.c (scan_one_insn): Detect constants living in memory and
1548 handle them like argument loads from stack slots. Do not double
1549 count memory for memory constants and argument loads from stack slots.
1550
4e380b8e
L
15512011-02-15 H.J. Lu <hongjiu.lu@intel.com>
1552
1553 PR middle-end/47725
1554 * combine.c (cant_combine_insn_p): Revert the last change.
1555
e3a69bb4
MM
15562011-02-15 Michael Meissner <meissner@linux.vnet.ibm.com>
1557
1558 PR target/47755
1559 * config/rs6000/predicates.md (easy_vector_constant): Allow V2DI
1560 mode for vector constants. Remove code that checks for TImode.
1561
de650422
AO
15622011-02-15 Alexandre Oliva <aoliva@redhat.com>
1563
1564 PR debug/47106
1565 PR debug/47402
1566 * cgraph.h (compute_inline_parameters): Return void.
1567 * ipa-inline.c (compute_inline_parameters): Adjust.
1568
30925d94
AO
15692011-02-15 Alexandre Oliva <aoliva@redhat.com>
1570
1571 PR debug/47106
1572 PR debug/47402
1573 * tree-inline.h (estimated_stack_frame_size): Take cgraph node
1574 rather than decl.
1575 * cfgexpand.c (estimated_stack_frame_size): Likewise.
1576 * ipa-inline.c (compute_inline_parameters): Adjust.
1577
1b9a784a
AO
15782011-02-15 Alexandre Oliva <aoliva@redhat.com>
1579
1580 PR debug/47106
1581 PR debug/47402
1582 * tree-flow.h (FOR_EACH_REFERENCED_VAR): Add FN argument.
1583 Adjust all users. Pass FN to...
1584 * tree-flow-inline.h (first_referenced_var): ... this. Add
1585 fn argument.
1586 * ipa-struct-reorg.c: Adjust.
1587 * tree-dfa.c: Adjust.
1588 * tree-into-ssa.c: Adjust.
1589 * tree-sra.c: Adjust.
1590 * tree-ssa-alias.c: Adjust.
1591 * tree-ssa-live.c: Adjust.
1592 * tree-ssa.c: Adjust.
1593 * tree-ssanames.c: Adjust.
1594 * tree-tailcall.c: Adjust.
1595
27c6b086
AO
15962011-02-15 Alexandre Oliva <aoliva@redhat.com>
1597
1598 PR debug/47106
1599 PR debug/47402
1600 * tree-flow.h (referenced_var_lookup): Add fn parameter.
1601 Adjust all callers.
1602 * tree-dfa.c (referenced_var_lookup): Use fn instead of cfun.
1603 * tree-flow-inline.h: Adjust.
1604 * gimple-pretty-print.c: Adjust.
1605 * tree-into-ssa.c: Adjust.
1606 * tree-ssa.c: Adjust.
1607 * cfgexpand.c: Adjust.
1608
679e8183
NF
16092011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1610
fbf4bfd3
UB
1611 * config/iq2000/i2000.h (REG_CLASS_FROM_LETTER): Delete.
1612 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1613 (EXTRA_CONSTRAINT): Delete.
1614 * config/iq2000/constraints.md: New file.
1615 * config/iq2000/iq2000.md: Include it.
679e8183
NF
1616 (define_insn ""): Delete.
1617 (movsi_internal2, movhi_internal2, movqi_internal2): Delete
1618 unsupported constraint letters from patterns.
1619 (call_value, call_value_internal1): Likewise.
1620 (call_value_multiple_internal1): Likewise.
1621
a45d420a
NC
16222011-02-15 Nick Clifton <nickc@redhat.com>
1623
1624 * config/mn10300/mn10300.c: Include tm-constrs.h.
1625 (struct liw_data): New data structure describing an LIW candidate
1626 instruction.
1627 (extract_bundle): Use struct liw_data. Allow small integer
1628 operands for some instructions.
1629 (check_liw_constraints): Use struct liw_data. Remove swapped
1630 parameter. Add comments describing the checks. Fix bug when
1631 assigning the source of liw1 to the source of liw2.
1632 (liw_candidate): Delete. Code moved into extract_bundle.
1633 (mn10300_bundle_liw): Use struct liw_data. Check constraints
1634 before swapping.
1635 * config/mn10300/predicates.md (liw_operand): New predicate.
1636 Allows registers and small integer constants.
1637 * config/mn10300/constraints.md (O): New constraint. Accetps
1638 integers in the range -8 to +7 inclusive.
1639 * config/mn10300/mn10300.md (movesi_internal): Add an alternative
1640 for moving a small integer into a register. Give this alternative
1641 LIW attributes.
1642 (addsi3, subsi3, cmpsi, lshrsi3, ashrsi3): Likewise.
1643 (ashlsi3): Likewise, plus give LIW attributes to the alternatives
1644 using the J,K,L and M constraints,
1645 (liw): Remove SI mode on second operands to allow for HI and QI
1646 mode values.
1647 (cmp_liw, liw_cmp): Likewise. Plus fix order of operands in the
1648 instruction.
1649
8a73faf1
L
16502011-02-15 H.J. Lu <hongjiu.lu@intel.com>
1651
1652 PR middle-end/47725
1653 * combine.c (cant_combine_insn_p): Check zero/sign extended
1654 hard registers.
1655
48feba28
RG
16562011-02-15 Richard Guenther <rguenther@suse.de>
1657
1658 PR tree-optimization/47743
1659 * tree-ssa-pre.c (phi_translate_1): If we didn't get a value-number
1660 for a non-type-compatible VN lookup bail out.
1661
ad1c1eeb
NF
16622011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1663
1664 * config/fr30/constraints.md: New file.
1665 * config/fr30/fr30.md: Include it.
1666 * config/fr30/fr30.h (REG_CLASS_FROM_LETTER): Delete.
1667 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1668 (EXTRA_CONSTRAINT): Delete.
1669
49ac143d
NF
16702011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1671
1672 * config/frv/constraints.md: New file.
1673 * config/frv/predicates.md: Include it.
1674 * config/frv/frv.c (reg_class_from_letter): Delete.
1675 (frv_option_override): Don't initialize it.
1676 * config/frv/frv.h (REG_CLASS_FROM_LETTER): Delete.
1677 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_K): Delete.
1678 (CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Delete.
1679 (CONST_OK_FOR_O, CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
1680 (CONST_DOUBLE_OK_FOR_G, CONST_DOUBLE_OK_FOR_H): Delete.
1681 (CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1682 (EXTRA_CONSTRAINT_FOR_Q, EXTRA_CONSTRAINT_FOR_R): Delete.
1683 (EXTRA_CONSTRAINT_FOR_S, EXTRA_CONSTRAINT_FOR_T): Delete.
1684 (EXTRA_CONSTRAINT_FOR_U, EXTRA_CONSTRAINT): Delete.
1685 (EXTRA_MEMORY_CONSTRAINT, CONSTRAINT_LEN): Delete.
1686 (REG_CLASS_FROM_CONSTRAINT): Delete.
1687
c95f9494
JJ
16882011-02-15 Jakub Jelinek <jakub@redhat.com>
1689
1690 PR middle-end/47581
1691 * config/i386/i386.c (ix86_compute_frame_size): Don't align offset
1692 if frame size is 0 in a leaf function.
1693
13aed611
RO
16942011-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1695
1696 PR pch/14940
1697 * config/alpha/host-osf.c: New file.
1698 * config/alpha/x-osf: New file.
1699 * config.host (alpha*-dec-osf*): Use it.
1700
b09c3081
AS
17012011-02-14 Anatoly Sokolov <aesok@post.ru>
1702
1703 * config/rx/rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
1704 * config/rx/rx-protos.h (rx_is_mode_dependent_addr): Remove.
1705 * config/xtensa/xtensa.c (rx_is_mode_dependent_addr): Rename to...
1706 (rx_mode_dependent_address_p): ...this. Make static. Change argument
1707 type to const_rtx.
1708 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
1709
d634083b
NF
17102011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1711
1712 * config/stormy16/constraints.md: New file.
1713 * config/stormy16/predicates.md (nonimmediate_nonstack_operand):
1714 Use satisfies_constraint_Q and satisfies_constraint_R.
1715 * config/stormy16/stomry16-protos.h (xstormy16_extra_constraint_p):
1716 Delete.
1717 (xstormy16_legitiamte_address_p): Declare.
1718 * config/stormy16/stormy16.h (REG_CLASS_FROM_LETTER): Delete.
1719 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1720 (EXTRA_CONSTRAINT): Delete.
fbf4bfd3 1721 * config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
d634083b
NF
1722 Un-staticize.
1723 (xstormy16_extra_constraint_p): Delete.
1724
c7dd803e
EB
17252011-02-14 Eric Botcazou <ebotcazou@adacore.com>
1726
1727 PR tree-optimization/46494
1728 * loop-unroll.c (split_edge_and_insert): Adjust comment.
1729 * loop-init.c (loop_optimizer_finalize): Do not call verify_flow_info.
1730 (pass_rtl_loop_done): Add TODO_verify_flow.
1731 * fwprop.c (pass_rtl_fwprop): Likewise.
1732 * modulo-sched.c (pass_sms): Likewise.
1733 * tree-ssa-dom.c (pass_dominator): Likewise.
1734 * tree-ssa-loop-ch.c (pass_ch): Likewise.
1735 * tree-ssa-loop.c (pass_complete_unrolli): Likewise.
1736 (pass_tree_loop_done): Likewise.
1737 * tree-ssa-pre.c (execute_pre): Likewise.
1738 * tree-ssa-reassoc.c (pass_reassoc): Likewise.
1739 * tree-ssa-sink.c (pass_sink_code): Likewise.
1740 * tree-vrp.c (pass_vrp): Likewise.
1741
c6150df6
NF
17422011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1743
c7dd803e
EB
1744 * config/v850/constraints.md: New file.
1745 * config/v850/v850.md: Include it.
1746 * config/v850/predicates.md (reg_or_0_operand): Use
1747 satisfies_constraint_G.
1748 (special_symbolref_operand): Use satisfies_constraint_K.
1749 * config/v850/v850.h (CONSTANT_ADDRESS_P): Use constraint_satisfied_p.
1750 (GO_IF_LEGITIMATE_ADDRESS): Likewise.
1751 (REG_CLASS_FROM_LETTER, INT_7_BITS, INT_8_BITS): Delete.
1752 (CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
1753 (EXTRA_CONSTRAINT): Delete.
1754 (CONST_OK_FOR_I, CONST_OK_FOR_J): Use insn_const_int_ok_for_constraint.
1755 (CONST_OK_FOR_K, CONST_OK_FOR_L, CONST_OK_FOR_M): Likewise.
1756 (CONST_OK_FOR_N, CONST_OK_FOR_O): Likewise.
c6150df6 1757
30dd1ea3
AS
17582011-02-14 Anatoly Sokolov <aesok@post.ru>
1759
1760 PR target/47696
1761 * config/avr/avr-devices.c (avr_mcu_types): Fix ATmega2560 device
1762 description.
1763
944f4bb3
NF
17642011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1765
1766 * config/mcore/constraints.md: New file.
1767 * config/mcore/mcore.md: Include it.
1768 * config/mcore/mcore.c (reg_class_from_letter): Delete.
1769 * config/mcore/mcore.h (reg_class_from_letter): Delete.
1770 (REG_CLASS_FROM_LETTER): Delete.
1771 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_L): Use
1772 insn_const_int_ok_for_constraint.
1773 (CONST_OK_FOR_K, CONST_OK_FOR_M, CONST_OK_FOR_N): Likewise.
1774 (CONST_OK_FOR_O, CONST_OK_FOR_P): Likewise.
1775 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1776 (EXTRA_CONSTRAINT): Delete.
1777
ad56a54c
RO
17782011-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1779
1780 PR ada/41929
1781 * config/sparc/sol2-unwind.h: Include <sys/frame.h>, <sys/stack.h>
1782 (IS_SIGHANDLER): Define.
1783 (sparc64_is_sighandler): New function, split off from
1784 sparc64_fallback_frame_state.
1785 (sparc_is_sighandler): New function, split off from
1786 sparc_fallback_frame_state.
1787 (sparc64_fallback_frame_state): Merge with ...
1788 (sparc_fallback_frame_state): ... this into ...
1789 (MD_FALLBACK_FRAME_STATE_FOR): ... this.
fbf4bfd3
UB
1790 Change new_cfa to long. Remove regs_off, fpu_save_off, fpu_save.
1791 Define nframes, mctx. Use IS_SIGHANDLER, handler_args, mctx, walk
1792 stack instead of hardcoded offsets.
ad56a54c 1793
fbf4bfd3 17942011-02-14 Andriy Gapon <avg@freebsd.org>
67932abf
AG
1795
1796 PR target/45808
1797 * config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
1798
029c8f3e
RW
17992011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1800
1801 * configure: Regenerate.
1802
a016dc83
JM
18032011-02-12 Joseph Myers <joseph@codesourcery.com>
1804
1805 PR driver/45731
1806 * gcc.c (asm_options): Correct spec matching --target-help.
1807
8957a0ec
MJ
18082011-02-12 Martin Jambor <mjambor@suse.cz>
1809
1810 * tree-cfg.c (verify_gimple_call): Return true upon invalid argument
1811 to gimple call error.
1812
6ef828bc
MS
18132011-02-12 Mike Stump <mikestump@comcast.net>
1814
1815 * config/frv/frv.h (TRANSFER_FROM_TRAMPOLINE): Canonicalize
1816 comments in backslash regions.
1817
a4015be5
MS
18182011-02-12 Mike Stump <mikestump@comcast.net>
1819 Jakub Jelinek <jakub@redhat.com>
1820 Iain Sandoe <iains@gcc.gnu.org>
1821
1822 PR target/47324
1823 * dwarf2out.c (output_cfa_loc): When required, apply the
1824 DWARF2_FRAME_REG_OUT macro to adjust register numbers.
1825 (output_loc_sequence): Likewise.
1826 (output_loc_operands_raw): Likewise.
1827 (output_loc_sequence_raw): Likewise.
1828 (output_cfa_loc): Likewise.
1829 (output_loc_list): Suppress register number adjustment when
1830 calling output_loc_sequence()
1831 (output_die): Likewise.
1832
5378dda2
AS
18332011-02-12 Anatoly Sokolov <aesok@post.ru>
1834
1835 * config/xtensa/xtensa.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
1836 Remove macros.
1837 * config/xtensa/xtensa.c (xtensa_register_move_cost,
1838 xtensa_memory_move_cost): New functions.
1839 (TARGET_REGISTER_MOVE_COST, TARGET_REGISTER_MOVE_COST): Define.
1840
f3d533d3
AO
18412011-02-12 Alexandre Oliva <aoliva@redhat.com>
1842
1843 PR lto/47225
1844 * configure.ac (gcc_cv_lto_plugin): Test for liblto_plugin.la
1845 in the current directory.
1846 * configure: Rebuilt.
1847
9d53403c
IS
18482011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1849
1850 * config/darwin.c (darwin_override_options): Add a hunk missed
fbf4bfd3 1851 from the commit of r168571. Trim comment line lengths and
9d53403c
IS
1852 correct indents of the preceding block.
1853
a350a6c8
IS
18542011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1855
1856 * gcc.c (driver_handle_option): Concatenate the argument to -F with
1857 the switch.
1858
bab79a40
JM
18592011-02-11 Joseph Myers <joseph@codesourcery.com>
1860
1861 * common.opt (nostartfiles): New Driver option.
1862
1bbc6693
XDL
18632011-02-11 Xinliang David Li <davidxl@google.com>
1864
1865 PR tree-optimization/47707
1866 * tree-chrec.c (convert_affine_scev): Keep type precision.
1867
1da7d8c0
EB
18682011-02-11 Eric Botcazou <ebotcazou@adacore.com>
1869
1870 PR tree-optimization/47420
1871 * ipa-split.c (visit_bb): Punt on any kind of GIMPLE_RESX.
1872
18732011-02-11 Pat Haugen <pthaugen@us.ibm.com>
3f82421f
PH
1874
1875 PR rtl-optimization/47614
1876 * rtl.h (check_for_inc_dec): Declare.
1877 * dse.c (check_for_inc_dec): Externalize...
1878 * postreload.c (reload_cse_simplify): ...use it before deleting stmt.
1879 (reload_cse_simplify_operands): Don't simplify opnds with side effects.
1880
4df47bca
JM
18812011-02-11 Joseph Myers <joseph@codesourcery.com>
1882
1883 PR driver/47678
1884 * gcc.c (main): Do not compile inputs if there were errors in
1885 option handling.
1886 * opts-common.c (read_cmdline_option): Check for wrong language
1887 after other error checks.
1888
61502ca8
NF
18892011-02-11 Nathan Froyd <froydnj@codesourcery.com>
1890
1891 * cgraph.c: Fix comment typos.
1892 * cgraph.h: Likewise.
1893 * cgraphunit.c: Likewise.
1894 * ipa-cp.c: Likewise.
1895 * ipa-inline.c: Likewise.
1896 * ipa-prop.c: Likewise.
1897 * ipa-pure-const.c: Likewise.
1898 * ipa-ref.c: Likewise.
1899 * ipa-reference.c: Likewise.
1900
b63f974e
JJ
19012011-02-11 Jakub Jelinek <jakub@redhat.com>
1902
d50c5e0c
JJ
1903 PR debug/47684
1904 * tree-predcom.c (single_nonlooparound_use): Ignore debug uses.
b63f974e 1905
6dd2a13c
RO
19062011-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1907
1908 PR testsuite/47400
1909 * doc/sourcebuild.texi (Require Support): Document
1910 dg-require-ascii-locale.
1911
4a087ccf
MX
19122011-02-11 Mingjie Xing <mingjie.xing@gmail.com>
1913
1914 * doc/lto.texi (Write summary): Fix missing parentheses.
1915
a4403164
DD
19162011-02-10 DJ Delorie <dj@redhat.com>
1917
1918 * config/m32c/m32c.c (m32c_option_override): Disable
1919 -fcombine-stack-adjustments until flag value tracking and compare
1920 optimization can be rewritten.
1921
4fac45bd
PB
19222011-02-10 Peter Bergner <bergner@vnet.ibm.com>
1923
1924 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Change to
1925 PROCESSOR_POWER7.
1926 (PROCESSOR_DEFAULT64): Likewise.
1927
72602cd1
RH
19282011-02-10 Richard Henderson <rth@redhat.com>
1929
1930 * config/rx/predicates.md (rx_zs_comparison_operator): Revert
1931 change from 2011-02-03.
1932 * config/rx/rx.c (flags_from_code): Likewise.
1933 (rx_print_operand) ['B']: For LT/GE, use lt/ge if overflow flag
1934 is valid, n/pz otherwise.
1935 (rx_select_cc_mode): Return CCmode if Y is not zero.
1936
ea57f573
RG
19372011-02-10 Richard Guenther <rguenther@suse.de>
1938
ea4c3e65 1939 * tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
ea57f573 1940
92b1d23b
RG
19412011-02-10 Richard Guenther <rguenther@suse.de>
1942
1943 PR tree-optimization/47677
1944 * tree-vrp.c (vrp_bitmap_equal_p): Fix comparison of empty bitmaps.
1945
525a2d06
JJ
19462011-02-10 Jakub Jelinek <jakub@redhat.com>
1947
1948 PR target/47665
1949 * combine.c (make_compound_operation): Only change shifts into
1950 multiplication for SCALAR_INT_MODE_P.
1951
06c969bd
JZ
19522011-02-10 Jie Zhang <jie@codesourcery.com>
1953
1954 PR testsuite/47622
1955 Revert
1956 2011-02-05 Jie Zhang <jie@codesourcery.com>
1957 PR debug/42631
1958 * web.c (entry_register): Don't clobber the number of the
1959 first uninitialized reference in used[].
1960
282ec48e
RG
19612011-02-09 Richard Guenther <rguenther@suse.de>
1962
1963 PR tree-optimization/47664
1964 * ipa-inline.c (cgraph_decide_inlining_incrementally): Visit
1965 all edges again.
1966
df98c3e8
DE
19672011-02-09 David Edelsohn <dje.gcc@gmail.com>
1968
d0f21cd6
DE
1969 PR target/46481
1970 PR target/47032
df98c3e8
DE
1971 * config/rs6000/aix61.h (PROCESSOR_DEFAULT): Change to
1972 PROCESSOR_POWER7.
1973 (PROCESSOR_DEFAULT64): Same.
1974 (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Delete.
1975
67b6839f
RO
19762011-02-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1977
1978 * config/mips/iris6.h (TARGET_C99_FUNCTIONS): Define.
1979
4fd73214
MJ
19802011-02-09 Martin Jambor <mjambor@suse.cz>
1981
1982 PR middle-end/45505
1983 * tree-sra.c (struct access): New flags grp_scalar_read and
1984 grp_scalar_write. Changed description of assignment read and write
1985 flags.
1986 (dump_access): Dump new flags, reorder all of them.
1987 (sort_and_splice_var_accesses): Set the new flag accordingly, use them
1988 to detect multiple scalar reads.
1989 (analyze_access_subtree): Use the new scalar read write flags instead
1990 of the old flags. Adjusted comments.
1991
91140cd3
DD
19922011-02-08 DJ Delorie <dj@redhat.com>
1993
1994 PR target/47548
1995 * config/m32c/m32c.c (m32c_subreg): Don't try to validate interim
1996 patterns.
1997
4254bbfe
JM
19982011-02-08 Joseph Myers <joseph@codesourcery.com>
1999
2000 * config/m68k/uclinux.opt: New.
2001 * config.gcc (m68k-*-uclinux*): Use m68k/uclinux.opt.
2002
f1fda84e
JM
20032011-02-08 Joseph Myers <joseph@codesourcery.com>
2004
2005 * config/cris/elf.opt (sim): New Driver option.
2006
4933ae74
JM
20072011-02-08 Joseph Myers <joseph@codesourcery.com>
2008
2009 * config/xtensa/elf.opt: New.
2010 * config.gcc (xtensa*-*-elf*): Use xtensa/elf.opt.
2011
4ad70280
JM
20122011-02-08 Joseph Myers <joseph@codesourcery.com>
2013
2014 * config/vax/elf.opt: New.
2015 * config.gcc (vax-*-linux*, vax-*-netbsdelf*): Use vax/elf.opt.
2016
20893707
JM
20172011-02-08 Joseph Myers <joseph@codesourcery.com>
2018
2019 * config/rs6000/aix64.opt (posix, pthread): New Driver options.
2020
b8e7038e
JM
20212011-02-08 Joseph Myers <joseph@codesourcery.com>
2022
2023 * config/gnu-user.opt: New.
2024 * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
2025 *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu,
2026 *-*-uclinux*): Use gnu-user.opt.
2027
e1c5225a
TS
20282011-02-08 Thomas Schwinge <thomas@schwinge.name>
2029
2030 * config/gnu.h (CPP_SPEC, LIB_SPEC): Remove handling of -bsd option.
2031 * config/i386/gnu.h (CPP_SPEC): Likewise.
2032
5e46b0c6
ILT
20332011-02-08 Ian Lance Taylor <iant@google.com>
2034
2035 * common.opt (fcx-limited-range): Add SetByCombined flag.
2036 (ffinite-math-only, fmath-errno, frounding-math): Likewise.
2037 (fsignaling-nans, fsigned-zeros, ftrapping-math): Likewise.
2038 (fassociative-math, freciprocal-math): Likewise.
2039 (funsafe-math-optimizations): Likewise.
2040 * opth-gen.awk: Handle SetByCombined.
2041 * optc-gen.awk: Likewise.
ea4c3e65 2042 * opts.c (set_fast_math_flags): Don't override flag if set by frontend.
5e46b0c6
ILT
2043 (set_unsafe_math_optimizations_flags): Likewise.
2044 * doc/options.texi (Option properties): Document SetByCombined.
2045
32243d46
JM
20462011-02-08 Joseph Myers <joseph@codesourcery.com>
2047
2048 * config.gcc (arc-*, alpha*-*-gnu*, arm*-*-netbsd*, arm-*-pe*,
2049 i[34567]86-*-interix3*, i[34567]86-*-netbsd*, i[34567]86-*-pe,
2050 m68hc11-*-*, m6811-*-*, m68hc12-*-*, m6812-*-*,
2051 m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc*-*-gnu*,
2052 sh*-*-symbianelf*, vax-*-netbsd*): Mark obsolete.
2053
479c1fb3
SP
20542011-02-08 Sebastian Pop <sebastian.pop@amd.com>
2055
2056 PR tree-optimization/46834
2057 PR tree-optimization/46994
2058 PR tree-optimization/46995
2059 * graphite-sese-to-poly.c (used_outside_reduction): New.
2060 (detect_commutative_reduction): Call used_outside_reduction.
2061 (rewrite_commutative_reductions_out_of_ssa_close_phi): Call
2062 translate_scalar_reduction_to_array only when at least one
2063 loop-phi/close-phi tuple has been detected.
2064
3865a06f
RG
20652011-02-08 Richard Guenther <rguenther@suse.de>
2066
2067 PR middle-end/47639
2068 * tree-vect-generic.c (expand_vector_operations_1): Update
2069 stmts here ...
2070 (expand_vector_operations): ... not here. Cleanup EH info
2071 and the CFG if required.
2072
62902f3f
RG
20732011-02-08 Richard Guenther <rguenther@suse.de>
2074
2075 PR tree-optimization/47641
2076 * tree-ssa.c (execute_update_addresses_taken): For asm outputs
2077 require type compatibility.
2078
0efb9d64
AK
20792011-02-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2080
2081 * gimple-low.c (lower_function_body): Don't remove the location of
2082 the return statement here.
2083 (lower_gimple_return): Do it here instead but only if the return
2084 statement is actually used twice.
2085
034b8ae4
RG
20862011-02-08 Richard Guenther <rguenther@suse.de>
2087
2088 PR tree-optimization/47632
2089 * tree-ssa-forwprop.c (remove_prop_source_from_use): Remove
2090 unused up_to_stmt parameter, return whether cfg-cleanup is
2091 necessary, remove EH info properly.
2092 (forward_propagate_into_gimple_cond): Adjust caller.
2093 (forward_propagate_into_cond): Likewise.
2094 (forward_propagate_comparison): Likewise.
2095 (tree_ssa_forward_propagate_single_use_vars): Make
2096 forward_propagate_comparison case similar to the two others.
2097
298362c8
NC
20982011-02-08 Nick Clifton <nickc@redhat.com>
2099
2100 * config/mn10300/mn10300.opt (mliw): New command line option.
2101 * config/mn10300/mn10300.md (UNSPEC_LIW): New unspec.
2102 (liw_bundling): New automaton.
2103 (liw): New attribute.
2104 (liw_op): New attribute.
2105 (liw_op1, liw_op2, liw_both, liw_either): New reservations.
2106 (movsi_internal): Add LIW attributes.
2107 (andsi3): Likewise.
2108 (iorsi3): Likewise.
2109 (xorsi3): Likewise.
2110 (addsi3): Separate register and immediate alternatives.
2111 Add LIW attributes.
2112 (subsi3): Likewise.
2113 (cmpsi): Likewise.
2114 (aslsi3): Likewise.
2115 (lshrsi3): Likewise.
2116 (ashrsi3): Likewise.
2117 (liw): New pattern.
2118 * config/mn10300/mn10300.c (liw_op_names): New
2119 (mn10300_print_operand): Handle 'W' operand descriptor.
2120 (extract_bundle): New function.
2121 (check_liw_constraints): New function.
2122 (liw_candidate): New function.
2123 (mn10300_bundle_liw): New function.
2124 (mn10300_reorg): New function.
2125 (TARGET_MACHINE_DEPENDENT_REORG): Define.
2126 (TARGET_DEFAULT_TARGET_FLAGS): Add MASK_ALLOW_LIW.
2127 * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Define
2128 __LIW__ or __NO_LIW__.
2129 * doc/invoke.texi: Describe the -mliw command line option.
2130
90488014
JDA
21312011-02-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2132
2133 * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
2134 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
2135 pthread_mutex_unlock): Remove.
2136 * config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
2137 * config/pa/t-pa64: Likewise.
2138 * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
2139 shared libc if not linking against libpthread.
2140 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
2141
689ff841
IS
21422011-02-07 Iain Sandoe <iains@gcc.gnu.org>
2143
2144 PR target/47558
2145 * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Put -lSystem first
2146 on 10.6 and later to ensure that we always use the unwinder from
2147 the system. Only add -no_compact_unwind when tarteting darwin
2148 10.6 or later.
2149
821014aa
SE
21502011-02-07 Steve Ellcey <sje@cup.hp.com>
2151
2152 PR target/46997
2153 * vect.md (vec_interleave_highv2sf): Change fmix for TARGET_BIG_ENDIAN.
2154 (vec_interleave_lowv2sf): Ditto.
2155 (vec_extract_evenv2sf): Add TARGET_BIG_ENDIAN check.
2156 (vec_extract_oddv2sf): Ditto.
2157
41cf94fb
MS
21582011-02-07 Mike Stump <mikestump@comcast.net>
2159
62dea57d 2160 PR target/42333
41cf94fb
MS
2161 Add __ieee_divdc3 entry point.
2162 * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
2163 entry point.
2164 (SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
2165 * config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
2166 * config/darwin.c (darwin_rename_builtins): Add.
2167 * config/darwin-protos.h (darwin_rename_builtins): Add.
2168
ee09a3dd
MM
21692011-02-07 Michael Meissner <meissner@linux.vnet.ibm.com>
2170
2171 PR target/47636
2172 * config/rs6000/rs6000.md (rsqrt<mode>2): Use the correct macro
2173 for the condition.
2174
83296cd0
MS
21752011-02-07 Mike Stump <mikestump@comcast.net>
2176
ea4c3e65 2177 * config/darwin.opt (mmacosx-version-min): Update default OS version.
83296cd0 2178
0f4e946f
DC
21792011-02-07 Denis Chertykov <chertykov@gmail.com>
2180
2181 PR target/47534
2182 * config/avr/libgcc.S (exit): Move .endfunc
2183
1ec87690
RG
21842011-02-07 Richard Guenther <rguenther@suse.de>
2185
2186 PR tree-optimization/47615
2187 * tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
2188 * tree-ssa-sccvn.c (default_vn_walk_kind): New global.
2189 (run_scc_vn): Initialize it.
2190 (visit_reference_op_load): Use it.
2191 * tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
2192
b46ae6da
UW
21932011-02-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2194
2195 * config/spu/spu.c (spu_init_libfuncs): Install SImode and
2196 DImode trapping arithmetic libfuncs.
2197
c0aae19c
RG
21982011-02-07 Richard Guenther <rguenther@suse.de>
2199
2200 PR tree-optimization/47621
2201 * tree-ssa.c (non_rewritable_lvalue_p): New function, split out from
2202 two duplicates ...
2203 (execute_update_addresses_taken): ... here. Make it more
2204 conservative in what we accept.
2205
295d926b
JM
22062011-02-06 Joseph Myers <joseph@codesourcery.com>
2207
2208 * config/sparc/freebsd.h (ASM_SPEC): Define.
2209 * config/sparc/vxworks.h (ASM_SPEC): Define.
2210
bdeb2471
JM
22112011-02-06 Joseph Myers <joseph@codesourcery.com>
2212
2213 * config/sparc/sol2-bi.h (CC1_SPEC): Remove %{sun4:} %{target:}.
2214
d5d3781a
SB
22152011-02-06 Steven Bosscher <steven@gcc.gnu.org>
2216
2217 * doc/invoke.texi: Remove reference to compiler internals from
2218 user documentation.
2219
2220 * reg-notes.def: Remove REG_VALUE_PROFILE.
2221 * combine.c (distribute_notes): Do not handle REG_VALUE_PROFILE.
2222
c42c09fc
JJ
22232011-02-05 Jakub Jelinek <jakub@redhat.com>
2224
2225 PR middle-end/47610
2226 * varasm.c (default_section_type_flags): If decl is NULL,
38be4072 2227 and name is .data.rel.ro or .data.rel.ro.local, set SECTION_RELRO bit.
c42c09fc 2228
beea2755
JZ
22292011-02-05 Jie Zhang <jie@codesourcery.com>
2230
2231 PR debug/42631
2232 * web.c (entry_register): Don't clobber the number of the
2233 first uninitialized reference in used[].
2234
a130584a
SP
22352011-02-04 Sebastian Pop <sebastian.pop@amd.com>
2236
2237 PR tree-optimization/46194
2238 * tree-data-ref.c (analyze_miv_subscript): Remove comment.
2239 (build_classic_dist_vector_1): Do not represent classic distance
2240 vectors when the access functions are variating in different loops.
2241
962101ac
JM
22422011-02-04 Joseph Myers <joseph@codesourcery.com>
2243
2244 * config/mips/iris6.opt: New.
2245 * config.gcc (mips-sgi-irix6.5*): Use mips/iris6.opt.
2246
55eaaa5b
RH
22472011-02-04 Richard Henderson <rth@redhat.com>
2248 Steve Ellcey <sje@cup.hp.com>
2249
2250 PR target/46997
2251 * config/ia64/predicates.md (mux1_brcst_element): New.
2252 * config/ia64/ia64-protos.h (ia64_unpack_assemble): New.
2253 * config/ia64/ia64.c (ia64_unpack_assemble): New.
2254 (ia64_unpack_sign): New.
2255 (ia64_expand_unpack): Rewrite using new routines.
2256 (ia64_expand_widen_sum): Ditto.
2257 (ia64_expand_dot_prod_v8qi): Ditto.
2258 * config/ia64/vect.md (mulv8qi3): Rewrite to use new
2259 routines, add endian check.
2260 (pmpy2_even): Rename from pmpy2_r, add endian check.
2261 (pmpy2_odd): Rename from pmpy2_l, add endian check.
2262 (vec_widen_smult_lo_v4hi): Rewrite using new routines.
2263 (vec_widen_smult_hi_v4hi): Ditto.
2264 (vec_widen_umult_lo_v4hi): Ditto.
2265 (vec_widen_umult_hi_v4hi): Ditto.
2266 (mulv2si3): Change endian checks.
2267 (sdot_prodv4hi): Rewrite with new calls.
2268 (udot_prodv4hi): New.
2269 (vec_pack_ssat_v4hi): Add endian check.
2270 (vec_pack_usat_v4hi): Ditto.
2271 (vec_pack_ssat_v2si): Ditto.
2272 (max1_even): Rename from max1_r, add endian check.
2273 (max1_odd): Rename from max1_l, add endian check.
2274 (*mux1_rev): Format change.
2275 (*mux1_mix): Ditto.
2276 (*mux1_shuf): Ditto.
2277 (*mux1_alt): Ditto.
2278 (*mux1_brcst_v8qi): Use new predicate.
2279 (vec_extract_evenv8qi): Remove endian check.
2280 (vec_extract_oddv8qi): Ditto.
2281 (vec_interleave_lowv4hi): Format change.
2282 (vec_interleave_highv4hi): Ditto.
2283 (mix2_even): Rename from mix2_r, add endian check.
2284 (mix2_odd): Rename from mux2_l, add endian check.
2285 (*mux2): Fix mask setting for TARGET_BIG_ENDIAN.
2286 (vec_extract_evenodd_helper): Format change.
2287 (vec_extract_evenv4hi): Remove endian check.
2288 (vec_extract_oddv4hi): Remove endian check.
2289 (vec_interleave_lowv2si): Format change.
2290 (vec_interleave_highv2si): Format change.
2291 (vec_initv2si): Remove endian check.
2292 (vecinit_v2si): Add endian check.
2293 (reduc_splus_v2sf): Add endian check.
2294 (reduc_smax_v2sf): Ditto.
2295 (reduc_smin_v2sf): Ditto.
2296 (vec_initv2sf): Remove endian check.
2297 (fpack): Add endian check.
2298 (fswap): Add endian check.
2299 (vec_interleave_highv2sf): Add endian check.
2300 (vec_interleave_lowv2sf): Add endian check.
2301 (fmix_lr): Add endian check.
2302 (vec_setv2sf): Format change.
2303 (*vec_extractv2sf_0_be): Use shift to extract operand.
2304 (*vec_extractv2sf_1_be): New.
2305 (vec_pack_trunc_v4hi): Add endian check.
2306 (vec_pack_trunc_v2si): Format change.
2307
dcde5957
JJ
23082011-02-04 Jakub Jelinek <jakub@redhat.com>
2309
2310 PR inline-asm/23200
2311 * tree-ssa-ter.c (is_replaceable_p): Add TER argument. Don't
38be4072 2312 do bb, locus and block comparison and disallow loads if it is not set.
dcde5957
JJ
2313 (stmt_is_replaceable_p): New function.
2314 (process_replaceable, find_replaceable_in_bb): Adjust is_replaceable_p
2315 callers.
2316 * expr.c (expand_expr_real_1) <case SSA_NAME>: If
2317 get_gimple_for_ssa_name try for EXPAND_INITIALIZER harder to use
2318 SSA_NAME_DEF_STMT.
2319 * tree-flow.h (stmt_is_replaceable_p): New prototype.
2320
a64a8e5a
JM
23212011-02-04 Joseph Myers <joseph@codesourcery.com>
2322
2323 * config/rs6000/xilinx.opt: New.
2324 * config.gcc (powerpc-xilinx-eabi*): Use rs6000/xilinx.opt.
2325
4da2ed2f
JM
23262011-02-04 Joseph Myers <joseph@codesourcery.com>
2327
2328 * config/mips/mips.opt (EB, EL, noasmopt): New Driver options.
2329
a6e508f9
AS
23302011-02-03 Anatoly Sokolov <aesok@post.ru>
2331
2332 * config/xtensa/xtensa.h (PREFERRED_RELOAD_CLASS,
2333 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
2334 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class,
2335 secondary_reload_info, xtensa_secondary_reload): Remove.
2336 * config/xtensa/xtensa.c (TARGET_PREFERRED_RELOAD_CLASS,
2337 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
2338 (xtensa_preferred_reload_class): Make static. Change return and
2339 'rclass' argument type to reg_class_t. Remove 'isoutput' argument.
2340 Use CONST_DOUBLE_P predicate.
2341 (xtensa_preferred_output_reload_class): New function.
2342 (xtensa_secondary_reload): Make static.
2343
82dc0de3
JM
23442011-02-03 Joseph Myers <joseph@codesourcery.com>
2345
2346 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap,
2347 Zxl-mode-executable, Zxl-mode-novectors, Zxl-mode-xilkernel,
2348 Zxl-mode-xmdstub, mxl-mode-xilkernel): New Driver options.
2349
7fece979
JJ
23502011-02-03 Jakub Jelinek <jakub@redhat.com>
2351
2352 PR middle-end/31490
2353 * output.h (SECTION_RELRO): Define.
2354 (SECTION_MACH_DEP): Adjust.
2355 (get_variable_section): New prototype.
2356 * varpool.c (varpool_finalize_named_section_flags): New function.
2357 (varpool_assemble_pending_decls): Call it.
2358 * cgraph.h (varpool_finalize_named_section_flags): New prototype.
2359 * cgraphunit.c (cgraph_output_in_order): Call
2360 varpool_finalize_named_section_flags.
2361 * varasm.c (get_section): Allow section flags conflicts between
2362 relro and read-only sections if the section hasn't been declared yet.
2363 Set SECTION_OVERRIDE after diagnosing section type conflict.
2364 (get_variable_section): No longer static.
2365 (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for
2366 readonly sections that need relocations.
2367 (decl_readonly_section_1): New function.
2368 (decl_readonly_section): Use it.
2369
2370 Revert:
509d65dd 2371 2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
7fece979
JJ
2372 Steve Ellcey <sje@cup.hp.com>
2373
2374 PR middle-end/31490
2375 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
2376 if section attribute used.
2377
d18d5478
JJ
23782011-02-03 Jakub Jelinek <jakub@redhat.com>
2379
2380 * config/darwin.h (SECTION_NO_ANCHOR): Remove.
2381 * config/darwin.c (SECTION_NO_ANCHOR): Define.
2382 (darwin_init_sections): Remove assertion.
2383
6479ed4b
NC
23842011-02-03 Nick Clifton <nickc@redhat.com>
2385
2386 * config/rx/predicates.md (rx_zs_comparison_operator): Remove
2387 lt and ge.
38be4072 2388 * config/rx/rx.md (abssi2_flags): Use CC_ZSmode rather than CC_ZSOmode.
6479ed4b
NC
2389 * config/rx/rx.c (rx_print_operand): Use "lt" and "ge" suffixes
2390 instead of "n" and "pz".
2391 (flags_from_code): LT and GE tests need CC_FLAG_O as well as
2392 CC_FLAG_S.
2393
89843f5d
JJ
23942011-02-03 Jakub Jelinek <jakub@redhat.com>
2395
65450d64
JJ
2396 PR target/47312
2397 * expr.c (expand_expr_real_2) <case FMA_EXPR>: If target doesn't expand
2398 fma, expand FMA_EXPR as fma{,f,l} call.
2399
7d58701c
JJ
2400 PR lto/47274
2401 * lto-streamer-out.c (write_symbol): When writing kind and visibility,
2402 copy them into a unsigned char variable and pass address of it to
2403 lto_output_data_stream.
2404
89843f5d
JJ
2405 PR target/47564
2406 * toplev.c (target_reinit): Save and restore *crtl and regno_reg_rtx
2407 around backend_init_target and lang_dependent_init_target calls.
2408 * cgraphunit.c (cgraph_debug_gimple_stmt): New function.
2409 (verify_cgraph_node): Don't call set_cfun here. Use
2410 cgraph_debug_gimple_stmt instead of debug_gimple_stmt.
2411 Set error_found for incorrectly represented calls to thunks.
2412
4deef538
AO
24132011-02-03 Alexandre Oliva <aoliva@redhat.com>
2414
2415 PR debug/43092
2416 PR rtl-optimization/43494
2417 * rtl.h (for_each_inc_dec_fn): New type.
2418 (for_each_inc_dec): Declare.
2419 * rtlanal.c (struct for_each_inc_dec_ops): New type.
2420 (for_each_inc_dec_find_inc_dec): New fn.
2421 (for_each_inc_dec_find_mem): New fn.
2422 (for_each_inc_dec): New fn.
2423 * dse.c (struct insn_size): Remove.
2424 (replace_inc_dec, replace_inc_dec_mem): Remove.
2425 (emit_inc_dec_insn_before): New fn.
2426 (check_for_inc_dec): Use it, along with for_each_inc_dec.
2427 (canon_address): Pass mem modes to cselib_lookup.
2428 * cselib.h (cselib_lookup): Add memmode argument. Adjust callers.
2429 (cselib_lookup_from_insn): Likewise.
2430 (cselib_subst_to_values): Likewise.
2431 * cselib.c (find_slot_memmode): New var.
2432 (cselib_find_slot): New fn. Use it instead of
2433 htab_find_slot_with_hash everywhere.
2434 (entry_and_rtx_equal_p): Use find_slot_memmode.
2435 (autoinc_split): New fn.
2436 (rtx_equal_for_cselib_p): Rename and implement in terms of...
2437 (rtx_equal_for_cselib_1): ... this. Take memmode, pass it on.
2438 Deal with autoinc. Special-case recursion into MEMs.
2439 (cselib_hash_rtx): Likewise.
2440 (cselib_lookup_mem): Infer pmode from address mode. Distinguish
2441 address and MEM modes.
2442 (cselib_subst_to_values): Add memmode, pass it on.
2443 Deal with autoinc.
2444 (cselib_lookup): Add memmode argument, pass it on.
2445 (cselib_lookup_from_insn): Add memmode.
2446 (cselib_invalidate_rtx): Discard obsolete push_operand handling.
2447 (struct cselib_record_autoinc_data): New.
2448 (cselib_record_autoinc_cb): New fn.
2449 (cselib_record_sets): Use it, along with for_each_inc_dec. Pass MEM
2450 mode to cselib_lookup. Reset autoinced REGs here instead of...
2451 (cselib_process_insn): ... here.
2452 * var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
2453 to cselib_lookup.
2454 (add_uses): Likewise, also to cselib_subst_to_values.
2455 (add_stores): Likewise.
2456 * sched-deps.c (add_insn_mem_dependence): Pass mode to
2457 cselib_subst_to_values.
2458 (sched_analyze_1, sched_analyze_2): Likewise. Adjusted.
2459 * gcse.c (do_local_cprop): Adjusted.
2460 * postreload.c (reload_cse_simplify_set): Adjusted.
2461 (reload_cse_simplify_operands): Adjusted.
2462 * sel-sched-dump (debug_mem_addr_value): Pass mode.
2463
1551d44a
AO
24642011-02-03 Alexandre Oliva <aoliva@redhat.com>
2465
2466 PR tree-optimization/45122
2467 * tree-ssa-loop-niter.c (number_of_iterations_exit): Don't make
2468 unsafe assumptions when there's more than one loop exit.
2469
c9485473
MM
24702011-02-02 Michael Meissner <meissner@linux.vnet.ibm.com>
2471
2472 PR target/47272
2473 * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
2474 Document using vector double with the load/store builtins, and
2475 that the load/store builtins always use Altivec instructions.
2476
2477 * config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
2478 to use altivec memory instructions, even on VSX.
2479 (vector_altivec_store_<mode>): Ditto.
2480
2481 * config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
2482 function.
2483
2484 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
2485 V2DF, V2DI support to load/store overloaded builtins.
2486
2487 * config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
2488 altivec load/store builtins for V2DF/V2DI types.
2489
2490 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
2491 set avoid indexed addresses on power6 if -maltivec.
2492 (altivec_expand_ld_builtin): Add V2DF, V2DI support, use
2493 vector_altivec_load/vector_altivec_store builtins.
2494 (altivec_expand_st_builtin): Ditto.
2495 (altivec_expand_builtin): Add VSX memory builtins.
2496 (rs6000_init_builtins): Add V2DI types to internal types.
2497 (altivec_init_builtins): Add support for V2DF/V2DI altivec
2498 load/store builtins.
2499 (rs6000_address_for_altivec): Insure memory address is appropriate
2500 for Altivec.
2501
2502 * config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
2503 vec_vsx_ld and vec_vsx_st.
2504 (vsx_store_<mode>): Ditto.
2505
2506 * config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
2507 variables to hold long long types for VSX vector memory builtins.
2508 (RS6000_BTI_unsigned_long_long): Ditto.
2509 (long_long_integer_type_internal_node): Ditti.
2510 (long_long_unsigned_type_internal_node): Ditti.
2511
2512 * config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
2513 (altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
2514 (altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
2515
2516 * config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
2517 short cuts.
2518 (vec_vsx_st): Ditto.
2519
b24d1acf
JM
25202011-02-02 Joseph Myers <joseph@codesourcery.com>
2521
2522 * config/pa/pa-hpux10.opt: New.
2523 * config/hpux11.opt (pthread): New Driver option.
2524 * config/pa/pa-hpux.opt (nolibdld, rdynamic): New Driver options.
2525 * config.gcc (hppa[12]*-*-hpux10*): Use pa/pa-hpux10.opt.
2526
aa18dd0f
JM
25272011-02-02 Joseph Myers <joseph@codesourcery.com>
2528
2529 * config/ia64/vms.opt: New.
2530 * config.gcc (ia64-hp-*vms*): Use ia64/vms.opt.
2531
28fc3eee
MM
25322011-02-01 Michael Meissner <meissner@linux.vnet.ibm.com>
2533
2534 PR target/47580
2535 * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
2536 gpc_reg_operand instead of vsx_register_operand to match rs6000.md
2537 generator functions.
2538 (vsx_floatuns<VSi><mode>2): Ditto.
2539 (vsx_fix_trunc<mode><VSi>2): Ditto.
2540 (vsx_fixuns_trunc<mode><VSi>2): Ditto.
2541
b5838b1f
JM
25422011-02-02 Joseph Myers <joseph@codesourcery.com>
2543
2544 * config/i386/djgpp.opt (posix): New Driver option.
2545
0db8fa89
GP
25462011-02-02 Gerald Pfeifer <gerald@pfeifer.com>
2547
2548 * config.gcc (*-*-freebsd[12], *-*-freebsd[12].*, *-*-freebsd*aout*):
2549 Move to the unsupported targets list.
2550
9cd4f22a
PB
25512011-02-02 Peter Bergner <bergner@vnet.ibm.com>
2552
2553 PR rtl-optimization/47525
2554 * df-scan.c: Update copyright years.
2555 (df_get_call_refs): Do not mark global registers as DF_REF_REG_USE
2556 and non-clobber DF_REF_REG_DEF for calls to const and pure functions.
2557
9ed8059c
RO
25582011-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2559
2560 * config/i386/sysv4.h (TARGET_VERSION): Remove.
2561 (SUBTARGET_RETURN_IN_MEMORY): Remove.
2562 (ASM_OUTPUT_ASCII): Remove.
2563 * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove #undef.
2564
2a737389
JL
25652011-02-02 Jeff Law <law@redhat.com>
2566
2567 PR middle-end/47543
2568 * reload.c (find_reloads_address): Handle reg+d address where both
2569 components are invalid by reloading the entire address.
2570
9dac82c4
SP
25712011-02-02 Sebastian Pop <sebastian.pop@amd.com>
2572 Richard Guenther <rguenther@suse.de>
2573
2574 PR tree-optimization/40979
2575 PR bootstrap/47044
2576 * passes.c (init_optimization_passes): After LIM call copy_prop
2577 and DCE to clean up.
2578 * tree-ssa-loop.c (pass_graphite_transforms): Add TODO_dump_func.
2579
14dd9aab
SP
25802011-02-02 Sebastian Pop <sebastian.pop@amd.com>
2581
2582 PR tree-optimization/47576
2583 PR tree-optimization/47555
2584 * doc/invoke.texi (scev-max-expr-complexity): Documented.
2585 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
2586 (PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
2587 * tree-scalar-evolution.c (follow_ssa_edge): Use
2588 PARAM_SCEV_MAX_EXPR_COMPLEXITY.
2589
5cbf5c20
RG
25902011-02-02 Richard Guenther <rguenther@suse.de>
2591
2592 PR tree-optimization/47566
2593 * builtins.c (builtin_save_expr): No SAVE_EXPR for SSA_NAMEs.
2594
83d70792
AO
25952011-02-02 Alexandre Oliva <aoliva@redhat.com>
2596
e829c321
AO
2597 PR debug/47106
2598 PR debug/47402
2599 * tree-inline.c (declare_return_variable): Remove unused caller
2600 variable.
2601
83d70792
AO
2602 PR debug/47106
2603 PR debug/47402
2604 * tree-flow-inline.h (clear_is_used, is_used_p): New.
2605 * cfgexpand.c (account_used_vars_for_block): Use them.
2606 * tree-nrv.c (tree_nrv): Likewise.
2607 * tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
2608 (dump_scope_block): Likewise.
2609 (remove_unused_locals): Likewise.
2610
aaa2ac93
AO
2611 PR debug/47106
2612 PR debug/47402
2613 * tree-inline.c (declare_return_variable): Add result decl to
2614 local decls only once.
2615 * gimple-low.c (record_vars_into): Mark newly-created variables
2616 as referenced.
2617
a59d15cf
AO
26182011-02-02 Alexandre Oliva <aoliva@redhat.com>
2619
2620 PR debug/47498
2621 PR debug/47501
2622 PR debug/45136
2623 PR debug/45130
2624 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2625 debug insns.
2626 (no_real_insns_p, schedule_block, set_priorities): Drop special
2627 treatment of boundary debug insns.
38be4072 2628 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
a59d15cf
AO
2629 * sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
2630 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2631 (BOUNDARY_DEBUG_INSN_P): Likewise.
2632 (SCHEDULE_DEBUG_INSN_P): Likewise.
2633 * sched-rgn.c (init_ready_list): Drop special treatment of
2634 boundary debug insns.
2635 * final.c (rest_of_clean_state): Clear notes' BB.
2636
6fc2f091
JM
26372011-02-01 Joseph Myers <joseph@codesourcery.com>
2638
2639 * config/openbsd.opt (assert=): New Driver option.
2640
fc523387
JM
26412011-02-01 Joseph Myers <joseph@codesourcery.com>
2642
2643 * config/i386/nto.opt: New.
2644 * config.gcc (i[34567]86-*-nto-qnx*): Use i386/nto.opt.
2645
6d9821e5
JM
26462011-02-01 Joseph Myers <joseph@codesourcery.com>
2647
2648 * config/i386/netware.opt: New.
2649 * config.gcc (i[3456x]86-*-netware*): Use i386/netware.opt.
2650
cef932d4
JM
26512011-02-01 Joseph Myers <joseph@codesourcery.com>
2652
2653 * config/interix.opt (posix): New Driver option.
2654
22843acd
DD
26552011-02-01 DJ Delorie <dj@redhat.com>
2656
56490b74
DD
2657 * config/m32c/m32c.h (PTRDIFF_TYPE): Remove extra definition.
2658
22843acd
DD
2659 * config/m32c/m32c.c (m32c_regno_reg_class): Return smallest reg
2660 class for A0/A1.
2661
199c8f2f
SP
26622011-02-01 Sebastian Pop <sebastian.pop@amd.com>
2663
2664 PR tree-optimization/47561
2665 * toplev.c (process_options): Print the Graphite flags. Add
2666 flag_loop_flatten to the list of options requiring Graphite.
2667
926bcf22
JM
26682011-02-01 Joseph Myers <joseph@codesourcery.com>
2669
2670 * config/i386/cygming.opt (posix): New Driver option.
2671
59793c51
JM
26722011-02-01 Joseph Myers <joseph@codesourcery.com>
2673
2674 * config/arm/vxworks.opt: New.
2675 * config.gcc (arm-wrs-vxworks): Use arm/vxworks.opt.
2676
183c38a4
JM
26772011-02-01 Joseph Myers <joseph@codesourcery.com>
2678
2679 * config/alpha/elf.opt: New.
2680 * config.gcc (alpha*-*-linux*, alpha*-*-gnu*, alpha*-*-freebsd*,
2681 alpha*-*-netbsd*, alpha*-*-openbsd*): Use alpha/elf.opt.
2682
9939e416
RG
26832011-02-01 Richard Guenther <rguenther@suse.de>
2684
2685 PR tree-optimization/47559
2686 * tree-ssa-loop-im.c (can_sm_ref_p): Do not perform
2687 store-motion on references that can throw.
2688
4a3c9687
BS
26892011-02-01 Bernd Schmidt <bernds@codesourcery.com>
2690
2691 * tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB.
2692 * tree-pass.h (TDF_CSELIB): New macro.
2693 * cselib.c (new_cselib_val, expand_loc, cselib_expand_value_rtx_1,
2694 cselib_lookup): Check for it rather than for TDF_DETAILS.
2695
dd3b31fb
L
26962011-02-01 H.J. Lu <hongjiu.lu@intel.com>
2697
2698 PR driver/47547
2699 * lto-wrapper.c (run_gcc): Don't add -dumpdir if linker_output
2700 is HOST_BIT_BUCKET.
2701
2702 * opts.c (finish_options): Don't add x_aux_base_name if it is
2703 HOST_BIT_BUCKET.
2704
34c1de79
RG
27052011-02-01 Richard Guenther <rguenther@suse.de>
2706
2707 PR tree-optimization/47555
2708 Revert
2709 2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
2710
2711 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
2712
dd2804d2
SB
27132011-02-01 Sebastien Bourdeauducq <sebastien@milkymist.org>
2714
2715 PR gcc/46692
2716 * config/lm32/t-lm32: Add multilib for all CPU options.
2717
3fd3b156
RG
27182011-02-01 Richard Guenther <rguenther@suse.de>
2719
2720 PR tree-optimization/47541
2721 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
2722 sure to have a field at offset zero.
2723
f16072b6
JM
27242011-01-31 Joseph Myers <joseph@codesourcery.com>
2725
2726 * config/arc/arc.opt (EB, EL): New Driver options.
2727
6456cf2e
JM
27282011-01-31 Joseph Myers <joseph@codesourcery.com>
2729
2730 * config/alpha/osf5.opt: New.
2731 * config.gcc (alpha*-dec-osf5.1*): Use alpha/osf5.opt.
2732
cdde6ab4
JM
27332011-01-31 Joseph Myers <joseph@codesourcery.com>
2734
2735 * config/vms/vms.opt (map, mvms-return-codes): New Driver options.
2736
7633415c
SP
27372011-01-31 Sebastian Pop <sebastian.pop@amd.com>
2738
2739 * common.opt (ftree-loop-linear): Use Alias to make it an alias of
2740 -floop-interchange.
2741 * invoke.texi (-ftree-loop-linear): Make it clear that this flag
2742 is an alias of -floop-interchange and that it requires the
2743 Graphite infrastructure.
2744 * tree-ssa-loop.c (gate_graphite_transforms): Do not set
2745 flag_loop_interchange based on the value of flag_tree_loop_linear.
2746
0425d6f5
JJ
27472011-01-31 Jakub Jelinek <jakub@redhat.com>
2748 Richard Guenther <rguenther@suse.de>
2749
2750 PR tree-optimization/47538
2751 * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
2752 type instead of r1type, except for comparisons. For right
2753 shifts and comparisons punt if there are mismatches in
2754 sizetype vs. non-sizetype types.
2755
500b16c3
RO
27562011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2757
2758 * doc/sourcebuild.texi (Effective-Target Keywords): Document
2759 avx_runtime.
2760
e279edb0
RO
27612011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2762
2763 * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
2764 version number.
2765 * configure: Regenerate.
2766
c6092243
RO
27672011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2768
2769 * configure.ac (gcc_cv_ld_static_option): Define.
2770 (gcc_cv_ld_dynamic_option): Define.
2771 (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
2772 instead.
2773 (HAVE_LD_STATIC_DYNAMIC): Update message.
2774 (LD_STATIC_OPTION): Define.
2775 (LD_DYNAMIC_OPTION): Define.
2776 * configure: Regenerate.
2777 * config.in: Regenerate.
2778 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
2779 HAVE_LD_STATIC_DYNAMIC]: Use them.
2780
d7862be3
NC
27812011-01-31 Nick Clifton <nickc@redhat.com>
2782
2783 * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
2784 registers inside interrupt handlers if the handler is not a leaf
2785 function.
2786
ba4ec0e0
NC
27872011-01-31 Nick Clifton <nickc@redhat.com>
2788
2789 * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
2790 reg_renumber returning an INVALID_REGNUM.
2791
29a63921
AO
27922011-01-31 Alexandre Oliva <aoliva@redhat.com>
2793
2794 PR libgcj/44341
2795 * doc/install.texi: Document host options discarded when cross
2796 configuring target libraries.
2797
ef591d3f
AO
27982011-01-31 Alexandre Oliva <aoliva@redhat.com>
2799
2800 Reverted:
2801 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
2802 PR debug/45136
2803 PR debug/45130
2804 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2805 debug insns.
2806 (no_real_insns_p, schedule_block, set_priorities): Drop special
2807 treatment of boundary debug insns.
38be4072 2808 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
ef591d3f
AO
2809 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
2810 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2811 (BOUNDARY_DEBUG_INSN_P): Likewise.
2812 (SCHEDULE_DEBUG_INSN_P): Likewise.
2813 * sched-rgn.c (init_ready_list): Drop special treatment of
2814 boundary debug insns.
2815 * final.c (rest_of_clean-state): Clear notes' BB.
2816
61052244
AM
28172011-01-31 Alan Modra <amodra@gmail.com>
2818
2819 * config/rs6000/rs6000.c (print_operand): Rearrange addends in
2820 toc relative expressions as we do in print_operand_address.
2821
c4c8962b
KH
28222011-01-30 Kazu Hirata <kazu@codesourcery.com>
2823
2824 * doc/extend.texi: Follow spelling conventions.
2825 * doc/invoke.texi: Fix a typo.
2826
e543b94c
JM
28272011-01-30 Joseph Myers <joseph@codesourcery.com>
2828
2829 * config/hpux11.opt: New.
2830 * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
2831 ia64*-*-hpux*): Use hpux11.opt.
2832
509d65dd 28332011-01-30 Jonathan Yong <jon_y@users.sourceforge.net>
a70e0551
JY
2834
2835 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
2836 to tmake_file.
2837
7be03a0e
GP
28382011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2839
2840 * doc/install.texi (hppa-hp-hpux10): Remove references to HP
2841 support sites.
2842
419d1d37
GP
28432011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2844
b596ed64
GP
2845 * doc/install.texi (Binaries): Remove outdated reference for
2846 Motorola 68HC11/68HC12 downloads.
2847
28482011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
61052244 2849
419d1d37
GP
2850 * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
2851 Drepper's paper.
2852
4406d0e9
JW
28532011-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2854
2855 PR bootstrap/47147
2856 * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
2857 used by NetBSD.
2858
38be4072 28592011-01-28 Ahmad Sharif <asharif@google.com>
e0b77418
AS
2860
2861 * value-prof.c (check_counter): Corrected error message.
2862
0cd98787
JZ
28632011-01-29 Jie Zhang <jie@codesourcery.com>
2864
2865 * config/arm/arm.c (arm_legitimize_reload_address): New.
2866 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
2867 arm_legitimize_reload_address.
38be4072 2868 * config/arm/arm-protos.h (arm_legitimize_reload_address): Declare.
0cd98787 2869
9b798ac5
ILT
28702011-01-28 Ian Lance Taylor <iant@google.com>
2871
2872 * godump.c (go_define): Ignore macros whose definitions include
2873 two adjacent operands.
2874
591e29d9
JJ
28752011-01-28 Jakub Jelinek <jakub@redhat.com>
2876
2877 PR target/42894
2878 * varasm.c (force_const_mem): Store copy of x in desc->constant
2879 instead of x itself.
2880 * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
2881 itself into REG_EQUAL note.
2882
62dcc44a
JM
28832011-01-28 Joseph Myers <joseph@codesourcery.com>
2884
2885 * config/freebsd.opt (posix, rdynamic): New Driver options.
2886
c9f58b9a
RO
28872011-01-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2888
2889 * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
2890 -Bstatic/-Bdynamic.
2891 * configure: Regenerate.
2892
5f02b9db
JM
28932011-01-27 Joseph Myers <joseph@codesourcery.com>
2894
2895 * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
2896 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
2897
5df97412
AS
28982011-01-27 Anatoly Sokolov <aesok@post.ru>
2899
2900 * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
2901 * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
2902 * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
2903 (s390_preferred_reload_class): Make static. Change return and
2904 'rclass' argument type to reg_class_t.
2905
779d4b91
JH
29062011-01-27 Jan Hubicka <jh@suse.cz>
2907
2908 PR middle-end/46949
2909 * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
2910 (process_function_and_variable_attributes): Check defined weakrefs.
2911
e80b21ed
MJ
29122011-01-27 Martin Jambor <mjambor@suse.cz>
2913
2914 PR tree-optimization/47228
2915 * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
2916 build_ref_for_offset.
2917
6dcc4f31
UW
29182011-01-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2919
2920 * config/spu/spu-elf.h (ASM_SPEC): Remove.
2921
509d65dd 29222011-01-26 Mikael Pettersson <mikpe@it.uu.se>
3b8ff89f
MP
2923
2924 PR rtl-optimization/46856
2925 * postreload.c (reload_combine_recognize_const_pattern): Do not
2926 separate cc0 setter and user on cc0 targets.
2927
04af8788
NP
29282011-01-26 Nicola Pero <nicola.pero@meta-innovation.com>
2929
2930 PR c/43082
2931 * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
2932 passed a VOID_TYPE expression, immediately emit an error and
2933 return error_mark_node.
2934
f7a60085
JL
29352011-01-26 Jeff Law <law@redhat.com>
2936
2937 PR rtl-optimization/47464
2938 * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
2939 rather than may_trap_p as needed.
2940
5c2917ec
DD
29412011-01-26 DJ Delorie <dj@redhat.com>
2942
2943 PR rtl-optimization/46878
2944 * combine.c (insn_a_feeds_b): Check for the implicit cc0
2945 setter/user dependency as well.
2946
bef16e87
EB
29472011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2948
2949 PR rtl-optimization/44469
2950 * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
2951 after removing trivially dead basic blocks.
2952
c75d884b
JM
29532011-01-26 Joseph Myers <joseph@codesourcery.com>
2954
2955 * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
2956 * config/frv/frv.h (LINK_SPEC): Likewise.
2957 * config/i386/netware.h (LINK_SPEC): Likewise.
2958 * config/m68k/linux.h (ASM_SPEC): Likewise.
2959 * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
2960 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2961 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2962 * config/sparc/linux.h (ASM_SPEC): Likewise.
2963 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2964 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2965
d3153553
JM
29662011-01-26 Joseph Myers <joseph@codesourcery.com>
2967
2968 * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
2969 * config/frv/frv.h (ASM_SPEC): Likewise.
2970 * config/m68k/linux.h (ASM_SPEC): Likewise.
2971 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2972 * config/rs6000/linux64.h (ASM_SPEC): Likewise.
2973 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2974 * config/sparc/linux.h (ASM_SPEC): Likewise.
2975 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2976 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2977
b89b1e9d
JM
29782011-01-26 Joseph Myers <joseph@codesourcery.com>
2979
2980 * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
2981 * config/frv/frv.h (LINK_SPEC): Likewise.
2982 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2983
12eb1a9c
JM
29842011-01-26 Joseph Myers <joseph@codesourcery.com>
2985
2986 * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
2987 * config/frv/frv.h (ASM_SPEC): Likewise.
2988 * config/i386/sol2-10.h (ASM_SPEC): Likewise.
2989 * config/m68k/linux.h (ASM_SPEC): Likewise.
2990 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2991 * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
2992 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2993 * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
2994 * config/sparc/linux.h (ASM_SPEC): Likewise.
2995 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2996 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2997 * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
2998
e435f098
SE
29992011-01-26 Steve Ellcey <sje@cup.hp.com>
3000
3001 PR target/46997
3002 * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
3003 (*mux2): Ditto.
3004 (vec_extract_evenodd_help): Ditto.
3005 (vec_extract_evenv4hi): Ditto.
3006 (vec_extract_oddv4hi): Ditto.
3007 (vec_interleave_lowv2si): Ditto.
3008 (vec_interleave_highv2si): Ditto.
3009 (vec_extract_evenv2si): Ditto.
3010 (vec_extract_oddv2si: Ditto.
3011 (vec_pack_trunc_v2si): Ditto.
3012
34f0eee0
JH
30132011-01-22 Jan Hubicka <jh@suse.cz>
3014
3015 PR target/47237
3016 * cgraph.h (cgraph_local_info): New field can_change_signature.
3017 * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
3018 signature can change.
3019 (ipcp_estimate_growth): Call sequence simplify only if calle signature
3020 can change.
3021 (ipcp_insert_stage): Only compute args_to_skip if signature can change.
3022 (cgraph_function_versioning): We can not change signature of functions
3023 that don't allow that.
3024 * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
3025 (lto_input_node): Likewise.
38be4072
UB
3026 * ipa-inline.c (compute_inline_parameters): Compute
3027 local.can_change_signature.
34f0eee0 3028 * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
38be4072
UB
3029 * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on
3030 functions that can not change signature.
34f0eee0 3031 * i386.c (ix86_function_regparm, ix86_function_sseregparm,
38be4072
UB
3032 init_cumulative_args): Do not use local calling conventions
3033 for functions that can not change signature.
34f0eee0 3034
980ca891
JH
30352011-01-22 Jan Hubicka <jh@suse.cz>
3036
3037 * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
3038
768e3c60
RG
30392011-01-26 Richard Guenther <rguenther@suse.de>
3040
3041 PR tree-optimization/47190
61052244
AM
3042 * cgraphunit.c (process_common_attributes): New function.
3043 (process_function_and_variable_attributes): Use it.
768e3c60 3044
21d6a1c7
RG
30452011-01-26 Richard Guenther <rguenther@suse.de>
3046
3047 PR lto/47423
3048 * cgraphbuild.c (record_eh_tables): Record reference to personality
3049 function.
3050
48bb58b1
AO
30512011-01-26 Alexandre Oliva <aoliva@redhat.com>
3052
3053 PR debug/45454
3054 * sel-sched.c (moveup_expr): Don't let debug insns prevent
3055 non-debug insns from moving up.
3056
58c741a6
DK
30572011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3058
3059 PR target/40125
3060 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
3061 t-dlldir{,-x} fragment for build and add it to tmake_file.
3062 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
3063 * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
3064 * config/i386/t-dlldir: New file.
3065 (SHLIB_DLLDIR): Define.
3066 * config/i386/t-dlldir-x: New file.
3067 (SHLIB_DLLDIR): Define.
3068 * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
3069 (SHLIB_INSTALL): Use it.
3070
bff99262
CLT
30712011-01-26 Chung-Lin Tang <cltang@codesourcery.com>
3072
3073 PR target/47246
3074 * config/arm/arm.c (thumb2_legitimate_index_p): Change the
3075 lower bound of the allowed Thumb-2 coprocessor load/store
3076 index range to -256. Add explaining comment.
3077
82c03907
ILT
30782011-01-25 Ian Lance Taylor <iant@google.com>
3079
3080 * godump.c (go_define): Improve lexing of macro expansion to only
3081 accept expressions which match Go spec.
3082
47ea1edf
DK
30832011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
3084
d4dba752 3085 PR c++/43601
47ea1edf
DK
3086 * tree.c (handle_dll_attribute): Handle it.
3087 * doc/extend.texi (@item dllexport): Mention it.
3088 * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
3089
744f0946
ILT
30902011-01-25 Ian Lance Taylor <iant@google.com>
3091
3092 PR tree-optimization/26854
3093 * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
3094 (decl_jump_unsafe): Move higher in file, with no other change.
3095 (bind): Set has_jump_unsafe_decl if appropriate.
3096 (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
3097 (check_earlier_gotos): Likewise.
3098 (c_check_switch_jump_warnings): Likewise.
3099
5734f2b3
JW
31002011-01-25 Jonathan Wakely <jwakely.gcc@gmail.com>
3101
3102 * doc/invoke.texi (Warning Options): Add missing hyphen.
3103 (-fprofile-dir): Minor grammatical fixes.
3104 (-fbranch-probabilities): Likewise.
3105
9bdbdcef
AO
31062011-01-25 Alexandre Oliva <aoliva@redhat.com>
3107
3108 PR debug/45136
3109 PR debug/45130
3110 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
3111 debug insns.
3112 (no_real_insns_p, schedule_block, set_priorities): Drop special
3113 treatment of boundary debug insns.
38be4072 3114 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
9bdbdcef
AO
3115 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
3116 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
3117 (BOUNDARY_DEBUG_INSN_P): Likewise.
3118 (SCHEDULE_DEBUG_INSN_P): Likewise.
3119 * sched-rgn.c (init_ready_list): Drop special treatment of
3120 boundary debug insns.
3121 * final.c (rest_of_clean-state): Clear notes' BB.
3122
b305e3da
SP
31232011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3124
3125 * Makefile.in (LAMBDA_H): Removed.
3126 (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
3127 (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
3128 lambda-trans.o, and tree-loop-linear.o.
3129 (lto-symtab.o): Remove dependence on LAMBDA_H.
3130 (tree-loop-linear.o): Remove rule.
3131 (lambda-mat.o): Same.
3132 (lambda-trans.o): Same.
3133 (lambda-code.o): Same.
3134 (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
3135 (tree-vect-slp.o): Same.
3136 * hwint.h (gcd): Moved here.
3137 (least_common_multiple): Same.
3138 * lambda-code.c: Removed.
3139 * lambda-mat.c: Removed.
3140 * lambda-trans.c: Removed.
3141 * lambda.h: Removed.
3142 * tree-loop-linear.c: Removed.
3143 * lto-symtab.c: Do not include lambda.h.
3144 * omega.c (gcd): Removed.
3145 * passes.c (init_optimization_passes): Remove pass_linear_transform.
3146 * tree-data-ref.c (print_lambda_vector): Moved here.
3147 (lambda_vector_copy): Same.
3148 (lambda_matrix_copy): Same.
3149 (lambda_matrix_id): Same.
3150 (lambda_vector_first_nz): Same.
3151 (lambda_matrix_row_add): Same.
3152 (lambda_matrix_row_exchange): Same.
3153 (lambda_vector_mult_const): Same.
3154 (lambda_vector_negate): Same.
3155 (lambda_matrix_row_negate): Same.
3156 (lambda_vector_equal): Same.
3157 (lambda_matrix_right_hermite): Same.
3158 * tree-data-ref.h: Do not include lambda.h.
3159 (lambda_vector): Moved here.
3160 (lambda_matrix): Same.
3161 (dependence_level): Same.
3162 (lambda_transform_legal_p): Removed declaration.
3163 (lambda_collect_parameters): Same.
3164 (lambda_compute_access_matrices): Same.
3165 (lambda_vector_gcd): Same.
3166 (lambda_vector_new): Same.
3167 (lambda_vector_clear): Same.
3168 (lambda_vector_lexico_pos): Same.
3169 (lambda_vector_zerop): Same.
3170 (lambda_matrix_new): Same.
3171 * tree-flow.h (least_common_multiple): Removed declaration.
3172 * tree-parloops.c (lambda_trans_matrix): Moved here.
3173 (LTM_MATRIX): Same.
3174 (LTM_ROWSIZE): Same.
3175 (LTM_COLSIZE): Same.
3176 (LTM_DENOMINATOR): Same.
3177 (lambda_trans_matrix_new): Same.
3178 (lambda_matrix_vector_mult): Same.
3179 (lambda_transform_legal_p): Same.
3180 * tree-pass.h (pass_linear_transform): Removed declaration.
3181 * tree-ssa-loop.c (tree_linear_transform): Removed.
3182 (gate_tree_linear_transform): Removed.
3183 (pass_linear_transform): Removed.
3184 (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
3185 flag_loop_interchange.
3186
6bdfdb96
JJ
31872011-01-25 Jakub Jelinek <jakub@redhat.com>
3188
3189 PR tree-optimization/47265
3190 PR tree-optimization/47443
3191 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
3192 if name still has some uses.
3193
e4cba915
MJ
31942011-01-25 Martin Jambor <mjambor@suse.cz>
3195
3196 PR tree-optimization/47382
3197 * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
3198 (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
3199
509d65dd 32002011-01-25 Joel Sherrill <joel.sherrill@oarcorp.com>
f822b8ea
JS
3201
3202 * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
3203 sjlj_except_unwind_info.
3204
194313e2
RG
32052011-01-25 Richard Guenther <rguenther@suse.de>
3206
3207 PR tree-optimization/47426
3208 * tree-ssa-structalias.c (ipa_pta_execute): Make externally
3209 visible functions results escape.
3210
147a0bcf
JJ
32112011-01-25 Jakub Jelinek <jakub@redhat.com>
3212
3213 PR target/45701
3214 * config/arm/arm.c (any_sibcall_uses_r3): New function.
3215 (arm_get_frame_offsets): Use it.
3216
db963b52
SP
32172011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3218 Jakub Jelinek <jakub@redhat.com>
3219
3220 PR tree-optimization/47271
3221 * tree-if-conv.c (bb_postdominates_preds): New.
3222 (if_convertible_bb_p): Call bb_postdominates_preds.
3223 (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
3224 (predicate_scalar_phi): Call bb_postdominates_preds.
3225
bcddd3b9
NC
32262011-01-25 Nick Clifton <nickc@redhat.com>
3227
3228 * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
3229 * config/rx/rx.c (rx_function_value): Likewise.
3230 (rx_promote_function_mode): Likewise.
3231 (gen_safe_add): Place an outsized immediate value inside an UNSPEC
3232 in order to make it legitimate.
38be4072
UB
3233 * config/rx/rx.md (adddi3_internal): If the second operand is a MEM
3234 make sure that the first operand is the same as the result register.
bcddd3b9
NC
3235 (addsi3_unspec): Delete.
3236 (subdi3): Do not accept immediate operands.
3237 (subdi3_internal): Likewise.
3238
7e6cb022
JL
32392011-01-25 Jeff Law <law@redhat.com>
3240
3241 PR rtl-optimization/37273
3242 * ira-costs.c (scan_one_insn): Detect constants living in memory and
3243 handle them like argument loads from stack slots. Do not double
3244 count memory for memory constants and argument loads from stack slots.
3245
9ffa621e
JJ
32462011-01-25 Jakub Jelinek <jakub@redhat.com>
3247
3248 PR tree-optimization/47427
3249 PR tree-optimization/47428
3250 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
3251 coalesce if the new root var would be TREE_READONLY.
3252
5bd6e652
RG
32532011-01-25 Richard Guenther <rguenther@suse.de>
3254
3255 PR middle-end/47414
3256 * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
3257 correct type for TBAA.
3258
7c48ea69
SP
32592011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3260
3261 * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
3262 (close_phi_written_to_memory): Call for_each_index with
3263 dr_indices_valid_in_loop.
3264
38013f25
SP
32652011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3266
3267 * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
3268 when it is initialized.
3269
5c640e29
SP
32702011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3271
3272 * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
3273 call to graphite_find_data_references_in_stmt.
3274 * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
3275 (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update
3276 call to graphite_find_data_references_in_stmt.
3277 (analyze_drs_in_stmts): Same.
3278 * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
3279 in which the scalar analysis of indices is performed.
3280 (create_data_ref): Same. Update call to dr_analyze_indices.
3281 (find_data_references_in_stmt): Update call to create_data_ref.
3282 (graphite_find_data_references_in_stmt): Same.
3283 * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
3284 declaration.
3285 (create_data_ref): Same.
3286 * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
3287 call to create_data_ref.
3288
ac53c069
SP
32892011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3290
3291 * graphite-sese-to-poly.c (build_poly_scop): Move
38be4072 3292 rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
ac53c069 3293
3d17df15
SP
32942011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3295
3296 * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
3297 VAR_DECL, PARM_DECL, and RESULT_DECL.
3298
c513da01
SP
32992011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3300
3301 * graphite-dependences.c (reduction_dr_1): Allow several reductions
3302 in a reduction PBB.
3303 * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
3304 that have already been marked as PBB_IS_REDUCTION.
3305
3a292d59
SP
33062011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3307
3308 * graphite-scop-detection.c (same_close_phi_node): New.
3309 (remove_duplicate_close_phi): New.
3310 (make_close_phi_nodes_unique): New.
3311 (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
3312
ba858447
SP
33132011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3314
3315 * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
3316 * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
3317 of both data references to be the same.
3318
8d865c56
SP
33192011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3320
38be4072
UB
3321 * graphite-dependences.c (build_lexicographical_constraint): Remove
3322 the gdim parameter.
3323 (build_lexicographical_constraint): Adjust call to
3324 ppl_powerset_is_empty.
8d865c56
SP
3325 (dependence_polyhedron): Same.
3326 (graphite_legal_transform_dr): Same.
3327 (graphite_carried_dependence_level_k): Same.
38be4072
UB
3328 * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params
3329 parameter.
8d865c56
SP
3330 * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
3331
50034a36
SP
33322011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3333
3334 * graphite-sese-to-poly.c
3335 (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
3336 (close_phi_written_to_memory): New.
3337 (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
3338 and unshare_expr.
3339
0deada9e
SP
33402011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3341
3342 * doc/install.texi: Update the expected version number of PPL to 0.11.
3343 * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
3344 #if PPL_VERSION_MINOR < 11.
3345
d7d3d6af
SP
33462011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3347
3348 * graphite-dependences.c: Include graphite-cloog-util.h.
3349 (new_poly_ddr): Inlined into dependence_polyhedron.
3350 (free_poly_ddr): Moved close by new_poly_ddr.
3351 (dependence_polyhedron_1): Renamed dependence_polyhedron.
3352 Early return NULL when ppl_powerset_is_empty returns true.
3353 (dependence_polyhedron): Renamed new_poly_ddr. Call only once
3354 poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty.
3355 (graphite_legal_transform_dr): Call new_poly_ddr.
3356 (graphite_carried_dependence_level_k): Same.
3357 (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr.
3358 (dot_transformed_deps_stmt_1): Removed.
3359 (dot_deps_stmt_1): Call dot_deps_stmt_2.
3360 (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr.
3361 (dot_deps_1): Call dot_deps_2.
3362 * Makefile.in (graphite-dependences.o): Add missing dependence on
3363 graphite-cloog-util.h.
3364
28c5db57
SP
33652011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3366
3367 * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
3368 (build_lexicographical_constraint): Same.
3369 (dependence_polyhedron_1): Same.
3370 (graphite_legal_transform_dr): Same.
3371 (graphite_carried_dependence_level_k): Same.
3372 * graphite-ppl.c (ppl_powerset_is_empty): New.
3373 * graphite-ppl.h (ppl_powerset_is_empty): Declared.
3374 * tree-data-ref.c (dump_data_reference): Print the basic block index.
3375
5168d98f
SP
33762011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3377
3378 * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
3379 the "a followed by b" relation and document it.
3380
4a40293a
SP
33812011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3382
3383 * graphite-dependences.c (build_lexicographical_constraint): Stop the
3384 iteration when the bag of constraints is empty.
3385
271fb6fa
SP
33862011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3387
3388 * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
3389
92d23680
SP
33902011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3391
3392 * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
3393 nest and two loop depths as parameters.
3394 (lst_try_interchange_loops): Call lst_interchange_profitable_p after
3395 lst_perfect_nestify.
3396
2f51deff
SP
33972011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3398
3399 * graphite-dependences.c (print_pddr): Call
3400 ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
3401
07f3593c
SP
34022011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3403
3404 * graphite-ppl.c (debug_gmp_value): New.
3405 * graphite-ppl.h (debug_gmp_value): Declared.
3406
3fae6099
TG
34072011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>
3408
3409 * doc/install.texi: Document availability of cloog-0.16.
3410
1c3ba85b
SP
34112011-01-25 Vladimir Kargov <kargov@gmail.com>
3412
3413 * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
3414 invalid postdominance info.
3415
e8ba94fc
JH
34162011-01-24 Jan Hubicka <jh@suse.cz>
3417
3418 PR c/21659
3419 * doc/extend.texi (weak pragma): Drop claim that it must
3420 appear before definition.
3421 * varasm.c (merge_weak, declare_weak): Only sanity check
3422 that DECL is not output at a time it is declared weak.
3423
2b6e2d13
KZ
34242011-01-24 Kenneth Zadeck <zadeck@naturalbridge.com>
3425
3426 * machmode.def: Fixed comments.
1c3ba85b 3427
9841210f
KT
34282011-01-24 Kai Tietz <kai.tietz@onevision.com>
3429
3430 * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
3431
34322011-01-24 Paul Koning <ni1d@arrl.net>
e046112d
PK
3433
3434 * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
1c3ba85b 3435 WORDS_BIG_ENDIAN.
e046112d 3436
a6c5070a
L
34372011-01-24 H.J. Lu <hongjiu.lu@intel.com>
3438
3439 PR target/46519
3440 * config/i386/i386.c: Include sbitmap.h and fibheap.h.
3441 (block_info): Add scanned and prev.
3442 (move_or_delete_vzeroupper_2): Return if the basic block
3443 has been scanned and the upper 128bit state is unchanged
3444 from the last scan.
3445 (move_or_delete_vzeroupper_1): Return true if the exit
3446 state is changed.
3447 (move_or_delete_vzeroupper): Visit basic blocks using the
3448 work-list based algorithm based on vt_find_locations in
3449 var-tracking.c.
3450
3451 * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
3452
a40d79d7
NC
34532011-01-24 Nick Clifton <nickc@redhat.com>
3454
3455 * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
3456 * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
3457 -mv850e1 to the assembler. If -mv850e1 or -mv850es is specified
3458 then define __v850e1__.
3459 * doc/invoke.texi: Document -mv850es.
3460
440eb8de
RH
34612011-01-24 Richard Henderson <rth@redhat.com>
3462
3463 * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
3464 compound unordered comparisons.
3465 * config/rx/rx.c (rx_split_fp_compare): Remove.
3466 * config/rx/rx-protos.h: Update.
3467 * config/rx/rx.md (gcc_conds, rx_conds): Remove.
3468 (cbranchsf4): Don't call rx_split_fp_compare.
3469 (*cbranchsf4): Use rx_split_cbranch.
3470 (*cmpsf): Don't accept "i" constraint.
3471 (*conditional_branch): Only valid after reload.
3472 (cstoresf4): Merge expander with insn. Don't call rx_split_fp_compare.
3473
3ff79f99
MM
34742011-01-24 Michael Meissner <meissner@linux.vnet.ibm.com>
3475
3476 PR target/47385
3477 * config/rs6000/altivec.md (vector constant splitters): Add
3478 support for creating vector single precision constants if -mvsx is
3479 used and we would create the constant using Altivec primitives.
3480
ff3d9d08
BS
34812011-01-23 Bernd Schmidt <bernds@codesourcery.com>
3482 Richard Sandiford <rdsandiford@googlemail.com>
3483
3484 PR rtl-optimization/47166
3485 * reload1.c (emit_reload_insns): Disable the spill_reg_store
3486 mechanism for PRE_MODIFY and POST_MODIFY.
3487 (inc_for_reload): For PRE_MODIFY, return the insn that sets the
3488 reloadreg.
3489
7fcaf152
AS
34902011-01-23 Andreas Schwab <schwab@linux-m68k.org>
3491
8788adb6 3492 * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
7fcaf152 3493
d09b58c4
JH
34942011-01-22 Jan Hubicka <jh@suse.cz>
3495
3496 PR lto/47333
3497 * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
3498
e8ff8c5a
JH
34992011-01-22 Jan Hubicka <jh@suse.cz>
3500
3501 PR tree-optimization/43884
3502 PR lto/44334
8788adb6 3503 * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
e8ff8c5a
JH
3504 * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
3505
ccaed3ba
AS
35062011-01-22 Anatoly Sokolov <aesok@post.ru>
3507
3508 * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
3509 * config/s390/s390.c (s390_register_move_cost,
3510 s390_memory_move_cost): New.
3511 (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
3512
0cecee06
UW
35132011-01-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3514
3515 PR middle-end/47401
3516 * except.c (sjlj_assign_call_site_values): Move setting the
3517 crtl->uses_eh_lsda flag to ...
3518 (sjlj_mark_call_sites): ... here.
3519 (sjlj_emit_function_enter): Support NULL dispatch label.
3520 (sjlj_build_landing_pads): In a function with no landing pads
3521 that still has must-not-throw regions, generate code to register
3522 a personality function with empty LSDA.
3523
e692f276
RH
35242011-01-21 Richard Henderson <rth@redhat.com>
3525
1b7ae0b7
RH
3526 * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
3527
3843787f
RH
3528 * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
3529
e692f276
RH
3530 * compare-elim.c: New file.
3531 * Makefile.in (OBJS-common): Add it.
3532 (compare-elim.o): New.
3533 * common.opt (fcompare-elim): New.
3534 * opts.c (default_options_table): Add OPT_fcompare_elim.
3535 * tree-pass.h (pass_compare_elim_after_reload): New.
3536 * passes.c (init_optimization_passes): Add it.
3537 * recog.h: Protect against re-inclusion.
3538 * target.def (TARGET_FLAGS_REGNUM): New POD hook.
3539 * doc/invoke.texi (-fcompare-elim): Document it.
3540 * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
3541 * doc/tm.texi: Rebuild.
3542
9a7c2050
NC
35432011-01-22 Nick Clifton <nickc@redhat.com>
3544
3545 * config/rx/rx.md (cstoresf4): Pass comparison operator to
3546 rx_split_fp_compare.
3547
15ba5696
NC
35482011-01-22 Nick Clifton <nickc@redhat.com>
3549
3550 * config/rx/rx.md (UNSPEC_CONST): New.
3551 (deallocate_and_return): Wrap the amount popped off the stack in
3552 an UNSPEC_CONST in order to stop it being rejected by
3553 -mmax-constant-size.
3554 (pop_and_return): Add a "(return)" rtx.
3555 (call): Drop the immediate operand.
3556 (call_internal): Likewise.
3557 (call_value): Likewise.
3558 (call_value_internal): Likewise.
3559 (sibcall_internal): Likewise.
3560 (sibcall_value_internal): Likewise.
3561 (sibcall): Likewise. Generate an explicit call using
3562 sibcall_internal.
3563 (sibcall_value): Likewise.
3564 (mov<>): FAIL if a constant operand is not legitimate.
3565 (addsi3_unpsec): New pattern.
9a7c2050 3566
38be4072 3567 * config/rx/rx.c (rx_print_operand_address): Handle UNSPEC CONSTs.
15ba5696
NC
3568 (ok_for_max_constant): New function.
3569 (gen_safe_add): New function.
3570 (rx_expand_prologue): Use gen_safe_add.
3571 (rx_expand_epilogue): Likewise.
3572 (rx_is_legitimate_constant): Use ok_for_max_constant. Handle
3573 UNSPEC CONSTs.
3574
caaf13d3
JL
35752011-01-21 Jeff Law <law@redhat.com>
3576
3577 PR tree-optimization/47053
3578 * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
3579 (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
3580 statements are deleted.
3581 (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP. If NEED_EH_CLEANUP
3582 is nonempty, then purge dead edges and cleanup the CFG.
3583
12c30f2f
AO
35842011-01-21 Alexandre Oliva <aoliva@redhat.com>
3585
3586 PR debug/47402
3587 Temporarily revert:
3588 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
3589 PR debug/47106
3590 * tree-dfa.c (create_var_ann): Mark variable as used.
3591
7360d2ac
JJ
35922011-01-21 Jakub Jelinek <jakub@redhat.com>
3593
aaa52a96
JJ
3594 PR middle-end/45566
3595 * except.c (convert_to_eh_region_ranges): Emit queued no-region
3596 notes from other section in hot/cold partitioning even if
3597 last_action is -3. Increment call_site_base.
3598
7360d2ac
JJ
3599 PR rtl-optimization/47366
3600 * fwprop.c (forward_propagate_into): Return bool. If
3601 any changes are made, -fnon-call-exceptions is used and
3602 REG_EH_REGION note is present, call purge_dead_edges
3603 and return true if it purged anything.
3604 (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
3605 any EH edges were purged.
3606
e90b336f
JL
36072011-01-21 Jeff Law <law@redhat.com>
3608
3609 PR rtl-optimization/41619
3610 * caller-save.c (setup_save_areas): Break out code to determine
3611 which hard regs are live across calls by examining the reload chains
3612 so that it is always used.
3613 Eliminate code which checked REG_N_CALLS_CROSSED.
3614
3ffe07e1
JJ
36152011-01-21 Jakub Jelinek <jakub@redhat.com>
3616
3617 PR tree-optimization/47355
3618 * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
3619 NOP has non-debug uses beyond PHIs in new_bb.
3620
1c7d0b34
AO
36212011-01-21 Alexandre Oliva <aoliva@redhat.com>
3622
3623 PR debug/47106
3624 * cfgexpand.c (account_used_vars_for_block): Only account vars
3625 that are annotated as used.
3626 (estimated_stack_frame_size): Don't set TREE_USED.
3627 * tree-dfa.c (create_var_ann): Mark variable as used.
3628
f99cc488
RG
36292011-01-21 Richard Guenther <rguenther@suse.de>
3630
3631 PR middle-end/47395
3632 * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
3633
3bc27de7
RG
36342011-01-21 Richard Guenther <rguenther@suse.de>
3635
3636 PR tree-optimization/47365
3637 * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
3638 (vn_reference_lookup_pieces): Adjust.
3639 (vn_reference_lookup): Likewise.
3640 * tree-ssa-sccvn.c (vn_walk_kind): New static global.
3641 (vn_reference_lookup_3): Only look through kills if in
3642 VN_WALKREWRITE mode.
3643 (vn_reference_lookup_pieces): Adjust.
3644 (vn_reference_lookup): Likewise.
3645 (visit_reference_op_load): Likewise.
3646 (visit_reference_op_store): Likewise.
3647 * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
3648 (compute_avail): Likewise.
3649 (eliminate): Likewise.
3650
d8debb1d
JJ
36512011-01-21 Jakub Jelinek <jakub@redhat.com>
3652
3653 * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
3654 DECL_IGNORED_P non-reg vars if they are used.
3655
3a2df831
JJ
3656 PR tree-optimization/47391
3657 * varpool.c (const_value_known_p): Return false if
3658 decl is volatile.
3659
1dd584a2
KT
36602011-01-21 Kai Tietz <kai.tietz@onevision.com>
3661
3662 PR bootstrap/47215
3663 * config/i386/i386.c (ix86_local_alignment): Handle
3664 case for va_list_type_node is nil.
3665 (ix86_canonical_va_list_type): Likewise.
3666
7f9f095e
AM
36672011-01-21 Alan Modra <amodra@gmail.com>
3668
3669 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
3670 builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
3671
837b01f6
RR
36722011-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
3673
3674 * config/arm/arm.md (define_attr type): Rename f_load
3675 and f_store to f_fpa_load and f_fpa_store. Update.
3676 (write_conflict): Deal with rename fallout.
3677 (*push_fp_multi): Likewise.
3678 * config/arm/fpa.md (f_load): Use f_fpa_load.
3679 (f_store): Use f_fpa_store.
3680 (*movsf_fpa): Likewise.
3681 (*movdf_fpa): Likewise.
3682 (*movxf_fpa): Likewise.
3683 (*thumb2_movsf_fpa): Likewise.
3684 (*thumb2_movdf_fpa): Likewise.
3685 (*thumb2_movxf_fpa): Likewise.
3686 * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
3687 f_loadd and f_stored.
3688 (*thumb2_movdi_vfp): Likewise.
3689 (*thumb2_movsf_vfp): Fix attribute to f_loads.
3690 (*thumb2_movsi_vfp): Likewise.
3691 * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
3692 Use f_loads instead of f_load.
3693 * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
3694
a1a79768
AS
36952011-01-20 Anatoly Sokolov <aesok@post.ru>
3696
3697 * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
3698 * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
3699 * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
3700 (xtensa_mode_dependent_address_p): New function.
3701 (constantpool_address_p): Make static. Change return type to bool.
3702 Change argument type to const_rtx. Use CONST_INT_P predicate.
3703
427f6cec
AO
37042011-01-20 Alexandre Oliva <aoliva@redhat.com>
3705
3706 PR debug/46583
3707 * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
3708
583ac69c
JJ
37092011-01-20 Jakub Jelinek <jakub@redhat.com>
3710
3711 PR debug/47283
3712 * cfgexpand.c (expand_debug_expr): Instead of generating
3713 (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
3714 etc. handling.
3715
93e452ed
RG
37162011-01-20 Richard Guenther <rguenther@suse.de>
3717
3718 PR middle-end/47370
3719 * tree-inline.c (remap_gimple_op_r): Recurse manually for
3720 the pointer operand of MEM_REFs.
3721
28fc44f3
JJ
37222011-01-20 Jakub Jelinek <jakub@redhat.com>
3723
3724 PR tree-optimization/46130
3725 * ipa-split.c (consider_split): If return_bb contains non-virtual
3726 PHIs other than for retval or if split_function would not adjust it,
3727 refuse to split.
3728
ddd268f2
RG
37292011-01-20 Richard Guenther <rguenther@suse.de>
3730
3731 PR tree-optimization/47167
3732 * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
3733 Revert previous change, only avoid enumeral type changes.
3734
882020aa
MS
37352011-01-19 Mike Stump <mikestump@comcast.net>
3736
3737 * doc/tm.texi.in (BRANCH_COST): Englishify.
3738 * doc/tm.texi (BRANCH_COST): Likewise.
3739
7edb6247
DS
37402011-01-19 Dodji Seketeli <dodji@redhat.com>
3741
3742 PR c++/47291
3743 * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
61052244
AM
3744 (gen_scheduled_generic_parms_dies): New functions.
3745 (gen_struct_or_union_type_die): Schedule template parameters DIEs
3746 generation for the end of CU compilation.
3747 (dwarf2out_finish): Generate template parameters DIEs here.
7edb6247 3748
23d5ed5d
AO
37492011-01-19 Alexandre Oliva <aoliva@redhat.com>
3750
3751 PR debug/46240
3752 * tree-into-ssa.c (maybe_register_def): Do not attempt to add
3753 debug bind stmt on merge edges.
3754
37d6a488
AO
37552011-01-19 Alexandre Oliva <aoliva@redhat.com>
3756
3757 PR debug/47079
3758 PR debug/46724
3759 * function.c (instantiate_expr): Instantiate incoming rtl of
3760 implicit arguments, and recurse on VALUE_EXPRs.
3761 (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
3762 * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
3763
689f2c82
AO
37642011-01-19 Alexandre Oliva <aoliva@redhat.com>
3765
3766 * c-parser.c (c_parser_for_statement): Initialize
3767 collection_expression.
3768
03029de4
JM
37692011-01-19 Joseph Myers <joseph@codesourcery.com>
3770
3771 * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
3772
3e03217e
JM
37732011-01-19 Joseph Myers <joseph@codesourcery.com>
3774
3775 * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
3776 (LINK_SHLIB_SPEC): Don't use %(link_path).
3777 (SUBTARGET_EXTRA_SPECS): Remove link_path.
3778
5bbe9b3f
JM
37792011-01-19 Joseph Myers <joseph@codesourcery.com>
3780
3781 * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
3782 (NO_SHARED_LIB_SUPPORT): Remove.
3783 (LINK_SHLIB_SPEC): Remove one conditional definition.
3784
368e0b39
JM
37852011-01-19 Joseph Myers <joseph@codesourcery.com>
3786
3787 * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
3788 %{call_shared}.
3789 * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
3790 * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
3791 * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
3792 %{call_shared} and conditionals on these options not being passed.
3793 * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
3794 %{call_shared}.
3795
ed7656f6
JJ
37962011-01-19 Jakub Jelinek <jakub@redhat.com>
3797
68457901
JJ
3798 * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
3799 simplify.
3800
ed7656f6
JJ
3801 * ipa-split.c: Spelling fixes.
3802
e0d1958f
RH
38032011-01-19 Richard Henderson <rth@redhat.com>
3804
3805 * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
3806 (*mulsi3): Likewise.
3807
27098b6b
RH
3808 * longlong.h [__mn10300__] (count_leading_zeros): New.
3809 [__mn10300__] (umul_ppmm, smul_ppmm): New.
3810 [__mn10300__] (add_ssaaaa, subddmmss): New.
3811 [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
3812 [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
3813
d6be7c36
UW
38142011-01-19 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3815
3816 * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
3817
b1efde2a
RH
38182011-01-19 Richard Henderson <rth@redhat.com>
3819
44217823
RH
3820 * config/mn10300/mn10300.md (addsi3_flags): New.
3821 (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
3822 (subsi3_flags, subc_internal, subdi3): New.
3823 (subdi3_internal, *subdi3_degenerate): New.
3824 * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
3825
37a185d7
RH
3826 * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
3827 (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
3828 (mn10300_expand_epilogue): Use it. Compute REG_SAVE_BYTES once.
3829 * config/mn10300/mn10300-protos.h: Update.
3830 * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
3831 (return_ret): Likewise. Rename from return_internal_regs.
3832 (return_internal): Remove.
3833
040c5757
RH
3834 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
3835 (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
3836 (mn10300_legitimate_constant_p): Likewise.
3837 (mn10300_can_use_return_insn): Use mn10300_initial_offset.
3838 (mn10300_frame_size): New.
3839 (mn10300_expand_prologue): Use it.
3840 (mn10300_expand_epilogue): Likewise.
3841 (mn10300_initial_offset): Likewise.
3842 * config/mn10300/mn10300-protos.h: Update.
3843 * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
3844 * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
3845 (prologue, epilogue, return_internal): Tidy output code.
3846 (mn10300_store_multiple_operation, return): Likewise.
3847 (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
3848 (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
3849 (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
3850 (load_pic, am33_load_pic): New.
3851 (mn10300_load_pic0, mn10300_load_pic1): New.
3852
bad41521
RH
3853 * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
3854 * config/mn10300/mn10300.c (CC_FLAG_Z): New.
3855 (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
3856 (cc_flags_for_mode, cc_flags_for_code): New.
3857 (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
3858 overflow flag is not valid. Validate that the flags we need
3859 for the comparison are valid.
3860 (mn10300_output_cmp): Remove.
3861 (mn10300_output_add): New.
3862 (mn10300_select_cc_mode): Use cc_flags_for_code.
3863 (mn10300_split_cbranch): New.
3864 (mn10300_match_ccmode): New.
3865 (mn10300_split_and_operand_count): New.
3866 * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
3867 to the function.
3868 * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
3869 (addsi3): ... here. Use mn10300_output_add.
3870 (*addsi3_flags): New.
3871 (*am33_subsi3, *mn10300_subsi3): Merge...
3872 (subsi3): ... here. Use attribute isa.
3873 (*subsi3_flags): New.
3874 (negsi2): Rewrite from expander to insn_and_split. Use NOT+INC
3875 when possible.
3876 (*am33_andsi3, *mn10300_andsi3): Merge...
3877 (andsi3): ... here.
3878 (*andsi3_flags): New.
3879 (andsi3 splitters): New.
3880 (*am33_iorsi3, *mn10300_iorsi3): Merge...
3881 (iorsi3): ... here.
3882 (*iorsi3_flags): New.
3883 (*am33_xorsi3, *mn10300_xorsi3): Merge...
3884 (xorsi3): ... here.
3885 (*xorsi3_flags): New.
3886 (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
3887 (one_cmplsi2): ... here.
3888 (*one_cmplsi2_flags): New.
3889 (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload. Use "r"
3890 instead of "dax" in constraints. Use mn10300_split_cbranch.
3891 (*cmpsi): Rename from cmpsi. Do not use mn10300_output_cmp. Do not
3892 use matching constraints to eliminate a self-comparison.
3893 (*integer_conditional_branch): Rename from integer_conditional_branch.
3894 Use int_mode_flags to match CC_REG.
3895 (*cbranchsi4_btst, *btstsi): New.
3896 (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload. Use
3897 mn10300_split_cbranch.
3898 (*am33_cmpsf): Rename from am33_cmpsf.
3899 (*float_conditional_branch): Rename from float_conditional_branch.
3900 (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
3901 (zero_extendqisi2): ... here.
3902 (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
3903 (zero_extendhisi2): ... here.
3904 (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
3905 (extendqisi2): ... here.
3906 (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
3907 (extendhisi2): ... here.
3908 (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
3909 (ashlsi3): ... here.
3910 (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
3911 (lshrsi3): ... here.
3912 (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
3913 (ashrsi3): ... here.
3914 (consecutive add peephole): Remove.
3915 * config/mn10300/predicates.md (label_ref_operand): New.
3916 (int_mode_flags): New.
3917 (CCZN_comparison_operator): New.
3918
9efb4993
RH
3919 * config/mn10300/mn10300.md (UNSPEC_EXT): New.
3920 (throughput_42_latency_43): New reservation.
3921 (mulsidi3, umulsidi3): New expanders.
3922 (mulsidi3_internal): Rewrite from old mulsidi3 pattern. Expose
3923 the MDR register to allocation; separately allocate the low and
3924 high parts of the DImode result.
3925 (umulsidi3_internal): Similarly.
3926 (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
3927 (*mulsi3): ... here. Clobber MDR as a scratch as necessary.
3928 (udivsi3, umodsi3): Remove.
3929 (udivmodsi4, divmodsi4): New expanders.
3930 (*udivmodsi4): Rename from udivmodsi4. Expose MDR properly.
3931 (*divmodsi4): Simiarly.
3932 (ext_internal): New.
3933
c25a21f5
RH
3934 * config/mn10300/constraints.md ("z"): New constraint.
3935 * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
3936 (FIXED_REGISTERS): Don't fix MDR.
3937 (CALL_USED_REGSITERS): Reformat nicely.
3938 (REG_ALLOC_ORDER): Add MDR.
3939 (enum regclass): Add MDR_REGS.
3940 (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
3941 (IRA_COVER_CLASSES): Add MDR_REGS.
3942 (REGNO_REG_CLASS): Handle MDR_REG.
3943 * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
3944 (mn10300_register_move_cost): Likewise.
3945 * config/mn10300/mn10300.md (MDR_REG): New.
3946 (*movsi_internal): Handle moves to/from MDR_REGS.
3947
36846b26
RH
3948 * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
3949 POST_MODIFY.
3950 (mn10300_secondary_reload): Tidy combination reload classes.
3951 (mn10300_legitimate_address_p): Allow post-modify and reg+reg
3952 addresses for AM33. Allow symbolic offsets for reg+imm.
3953 (mn10300_regno_in_class_p): New.
3954 (mn10300_legitimize_reload_address): New.
3955 * config/mn10300/mn10300.h (enum reg_class): Remove
3956 DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
3957 SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS. Add
3958 SP_OR_GENERAL_REGS.
3959 (REG_CLASS_NAMES): Update to match.
3960 (REG_CLASS_CONTENTS): Likewise.
3961 (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
3962 (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
3963 (REGNO_IN_RANGE_P): Remove.
3964 (REGNO_DATA_P): Use mn10300_regno_in_class_p.
3965 (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
3966 (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
3967 (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
3968 (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
3969 (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
3970 (REGNO_GENERAL_P): New.
3971 (HAVE_POST_MODIFY_DISP): New.
3972 (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
3973 (LEGITIMIZE_RELOAD_ADDRESS): New.
3974 * config/mn10300/mn10300-protos.h: Update.
3975
8b119bb6
RH
3976 * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
3977 DATA_REGS for AM33 stack-pointer destination.
3978 (mn10300_preferred_output_reload_class): Likewise.
3979 (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
3980 into a form appropriate for ...
3981 (TARGET_SECONDARY_RELOAD): New.
3982 * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
3983 * config/mn10300/mn10300-protos.h: Update.
3984 * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
3985 reload_insi; use the "A" constraint for the scratch; handle AM33
3986 moves of sp to non-address registers.
3987
b1efde2a
RH
3988 * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
3989 (*movqi_internal): ... here.
3990 (*am33_movhi, *mn10300_movhi): Merge into...
3991 (*movhi_internal): ... here.
3992 (*movsi_internal): Use "r" instead of "dax" in constraints. Use "A"
3993 as the source/destination of moves from/to SP.
3994 (movsf): Only allow for AM33-2.
1c3ba85b 3995 (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
b1efde2a
RH
3996 any integer constant constraint. Only allow for AM33-2. Tidy
3997 all of the alternative outputs.
3998 (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
3999 (udivmodsi4): Delete expander and promote *udivmodsi4. Disallow
4000 for MN103.
4001 (udivsi3, umodsi3): New patterns for MN103 only.
4002
b899fd78
JR
40032011-01-19 Joern Rennecke <amylaar@spamcop.net>
4004
4005 * doc/tm.texi.in: Spell out that a lack of register class unions
4006 can lead to ICEs.
4007 * doc/tm.texi: Regenerate.
4008
afaaa67d
JJ
40092011-01-19 Jakub Jelinek <jakub@redhat.com>
4010
2e0642cd
JJ
4011 PR rtl-optimization/47337
4012 * dce.c (check_argument_store): New function.
4013 (find_call_stack_args): Ignore debug insns. Use check_argument_store.
4014
afaaa67d
JJ
4015 PR tree-optimization/47290
4016 * tree-eh.c (infinite_empty_loop_p): New function.
4017 (cleanup_empty_eh): Use it.
4018
d2cd871f
SE
40192011-01-18 Steve Ellcey <sje@cup.hp.com>
4020
4021 PR target/46997
4022 * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
4023 (a64_expand_widen_sum): Ditto.
4024 * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
4025 (vec_extract_evenodd_help): Ditto.
4026 (vec_extract_evenv4hi): Ditto.
4027 (vec_extract_oddv4hi): Ditto.
4028 (vec_extract_evenv2si): Ditto.
4029 (vec_extract_oddv2si): Ditto.
4030 (vec_extract_evenv2sf): Ditto.
4031 (vec_extract_oddv2sf): Ditto.
4032 (vec_pack_trunc_v4hi: Ditto.
4033 (vec_pack_trunc_v2si): Ditto.
4034 (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
4035 (vec_interleave_highv8qi): Ditto.
4036 (mix1_r): Ditto.
4037 (vec_extract_oddv8qi): Ditto.
4038 (vec_interleave_lowv4hi): Ditto.
4039 (vec_interleave_highv4hi): Ditto.
4040 (vec_interleave_lowv2si): Ditto.
4041 (vec_interleave_highv2si): Ditto.
4042
41a1208a
JDA
40432011-01-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
4044
4045 * doc/extend.texi: Mention __float128 support on hppa HP-UX.
4046 * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
4047 * config/pa/pa.c (pa_expand_builtin): New. Include "langhooks.h".
4048 (pa_c_mode_for_suffix): New.
4049 (TARGET_EXPAND_BUILTIN): Define.
4050 (TARGET_C_MODE_FOR_SUFFIX): Define.
4051 (pa_builtins): Define.
4052 (pa_init_builtins): Register __float128 type and init new support
4053 builtins.
4054 * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
4055 * config/pa/quadlib.c (_U_Qfcopysign): New.
4056
1ecad98e
EB
40572011-01-18 Eric Botcazou <ebotcazou@adacore.com>
4058
4059 PR middle-end/46894
4060 * explow.c (allocate_dynamic_stack_space): Do not assume more than
4061 BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
4062 are defined.
4063
d4f2460a
UW
40642011-01-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4065
4066 PR tree-optimization/47179
4067 * config/spu/spu.c (spu_ref_may_alias_errno): New function.
4068 (TARGET_REF_MAY_ALIAS_ERRNO): Define.
4069
4994da65
RG
40702011-01-18 Richard Guenther <rguenther@suse.de>
4071
4072 PR rtl-optimization/47216
4073 * emit-rtl.c: Include tree-flow.h.
4074 (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
4075 of replicating it with different semantics.
4076 * Makefile.in (emit-rtl.o): Adjust.
4077
1eb458d1
RR
40782011-01-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4079
38be4072 4080 * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually include.
61052244 4081 (cortex_a9_dp): Handle neon types correctly.
1eb458d1 4082
e7ef91dc
JJ
40832011-01-18 Jakub Jelinek <jakub@redhat.com>
4084
4085 PR rtl-optimization/47299
4086 * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
38be4072 4087 subtarget. Use normal multiplication if both operands are constants.
e7ef91dc
JJ
4088 * expmed.c (expand_widening_mult): Don't try to optimize constant
4089 multiplication if op0 has VOIDmode. Convert op1 constant to mode
4090 before using it.
4091
535b7874
RW
40922011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4093
4094 * doc/lto.texi (LTO): Ensure two spaces after period. Fix
4095 spacing after 'e.g.', typos, comma, hyphenation.
4096
27bf36f3
RH
40972011-01-17 Richard Henderson <rth@redhat.com>
4098
8a5b5449
RH
4099 * config/rx/predicates.md (rx_constshift_operand): Use match_test.
4100 (rx_restricted_mem_operand): New.
4101 (rx_shift_operand): Use register_operand.
4102 (rx_source_operand, rx_compare_operand): Likewise.
4103 * config/rx/rx.md (addsi3_flags): New expander.
4104 (adddi3): Rewrite as expander.
4105 (adc_internal, *adc_flags, adddi3_internal): New patterns.
4106 (subsi3_flags): New expander.
4107 (subdi3): Rewrite as expander.
4108 (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
4109
784f69be
RH
4110 * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
4111 (rx_init_builtins): Remove sat builtin.
4112 (rx_expand_builtin): Likewise.
4113 * config/rx/rx.md (ssaddsi3): New.
4114 (*sat): Rename from sat. Represent the CC_REG input.
4115
f033541c
RH
4116 * config/rx/predicates.md (rshift_operator): New.
4117 * config/rx/rx.c (rx_expand_insv): Remove.
4118 * config/rx/rx-protos.h: Update.
4119 * config/rx/rx.md (*bitset): Rename from bitset. Swap the ashift
4120 operand to the canonical position.
4121 (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
4122 (*bitclr, *bitclr_in_memory): Similarly.
4123 (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
4124 (insv): Retain the zero_extract in the expansion.
4125
34fee389
RH
4126 * config/rx/rx.md (bswapsi2): Use = not + for output reload.
4127 (bswaphi2, bitinvert, revw): Likewise.
4128
265c835f
RH
4129 * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
4130 (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
4131 * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
4132 (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
4133 (bitset, bitset_in_memory): Likewise.
4134 (bitinvert, bitinvert_in_memory): Likewise.
4135 (bitclr, bitclr_in_memory): Likewise.
4136 (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
4137 (rx_strend, rx_cmpstrn): Likewise.
4138 (rx_setmem): Likewise. Make the source BLKmode to match the dest.
4139 (bitop peep2 patterns): Remove.
4140
b4d83be3
RH
4141 * config/rx/rx.c (rx_match_ccmode): New.
4142 * config/rx/rx-protos.h: Update.
4143 * config/rx/rx.md (abssi2): Clobber, don't set flags.
4144 (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
4145 (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
4146 (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
4147 (fix_truncsfsi2, floatsisf2): Likewise.
4148 (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
4149 (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
4150 (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
4151 (*subsi3_flags, *xorsi3_flags): New.
4152
d0acb939
RH
4153 * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
4154
c06fc3d9
RH
4155 * config/rx/rx.c (rx_print_operand): Remove workaround for
4156 unsplit comparison operations.
4157
2882702b
RH
4158 * config/rx/rx.md (movsicc): Split after reload.
4159 (*movsicc): Merge *movsieq and *movsine via match_operator.
4160 (*stcc): New pattern.
4161
6f7310f2
RH
4162 * config/rx/rx.c (rx_float_compare_mode): Remove.
4163 * config/rx/rx.h (rx_float_compare_mode): Remove.
4164 * config/rx/rx.md (cstoresi4): Split after reload.
4165 (*sccc): New pattern.
4166
e963cb1a
RH
4167 * config/rx/predicates.md (label_ref_operand): New.
4168 (rx_z_comparison_operator): New.
4169 (rx_zs_comparison_operator): New.
4170 (rx_fp_comparison_operator): New.
4171 * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
4172 Validate that the flags are set properly for the comparison.
4173 (rx_gen_cond_branch_template): Remove.
4174 (rx_cc_modes_compatible): Remove.
4175 (mode_from_flags): New.
4176 (flags_from_code): Rename from flags_needed_for_conditional.
4177 (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
4178 (rx_select_cc_mode): Likewise.
4179 (rx_split_fp_compare): New.
4180 (rx_split_cbranch): New.
4181 * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
4182 (*cbranchsi4): Use match_operator and rx_split_cbranch.
4183 (*cbranchsf4): Similarly.
4184 (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>. Use
4185 match_operator and rx_split_cbranch.
4186 (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
4187 tstbranchsi4m_ne. Use match_operator and rx_split_cbranch.
4188 (*cmpsi): Rename from cmpsi.
4189 (*tstsi): Rename from tstsi.
4190 (*cmpsf): Rename from cmpsf; use CC_Fmode.
4191 (*conditional_branch): Rename from conditional_branch.
4192 (*reveresed_conditional_branch): Remove.
4193 (b<code>): Remove expander.
4194 * config/rx/rx-protos.h: Update.
4195
af530bb4
RH
4196 * config/rx/rx.c (rx_compare_redundant): Remove.
4197 * config/rx/rx.md (cmpsi): Don't use it.
4198 * config/rx/rx-protos.h: Update.
4199
27bf36f3
RH
4200 * config/rx/rx-modes.def (CC_F): New mode.
4201 * config/rx/rx.c (rx_select_cc_mode): New.
4202 * config/rx/rx.h (SELECT_CC_MODE): Use it.
4203 * config/rx/rx-protos.h: Update.
4204
d7fde127
RH
42052011-01-17 Richard Henderson <rth@redhat.com>
4206
4207 * except.c (dump_eh_tree): Fix stray ; after for statement.
4208
6ff38230
RG
42092011-01-17 Richard Guenther <rguenther@suse.de>
4210
4211 PR tree-optimization/47313
4212 * tree-inline.c (tree_function_versioning): Move DECL_RESULT
4213 handling before copying the body. Properly deal with
4214 by-reference result in SSA form.
4215
114ce554
ILT
42162011-01-17 Ian Lance Taylor <iant@google.com>
4217
bf5cd92b 4218 PR target/47219
114ce554
ILT
4219 * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
4220 (struct_value_alias_set): Don't define.
4221 (sparc_option_override): Don't set sparc_sr_alias_set and
4222 struct_value_alias_set.
4223 (save_or_restore_regs): Use gen_frame_mem rather than calling
4224 set_mem_alias_set.
4225 (sparc_struct_value_rtx): Likewise.
4226
98c6d93c
L
42272011-01-17 H.J. Lu <hongjiu.lu@intel.com>
4228
4229 PR target/47318
4230 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
4231 __m128i.
4232 (_mm_maskstore_pd): Likewise.
4233 (_mm_maskload_ps): Likewise.
4234 (_mm_maskstore_ps): Likewise.
4235 (_mm256_maskload_pd): Change mask to __m256i.
4236 (_mm256_maskstore_pd): Likewise.
4237 (_mm256_maskload_ps): Likewise.
4238 (_mm256_maskstore_ps): Likewise.
4239
4240 * config/i386/i386-builtin-types.def: Updated.
4241 (ix86_expand_special_args_builtin): Likewise.
4242
4243 * config/i386/i386.c (bdesc_special_args): Update
4244 __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
4245 __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
4246 __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
4247 __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
4248
4249 * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
4250 Use <avxpermvecmode> on mask register.
4251 (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
4252
b9361af2 42532011-01-17 Olivier Hainque <hainque@adacore.com>
61052244
AM
4254 Michael Haubenwallner <michael.haubenwallner@salomon.at>
4255 Eric Botcazou <ebotcazou@adacore.com>
b9361af2
OH
4256
4257 PR target/46655
4258 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
4259 if <= USHRT_MAX in 32-bit mode.
4260
b7ae9eb5
RW
42612011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4262
4263 * doc/install.texi (Configuration, Specific): Wrap long
4264 lines in examples. Allow line wrapping in long options
4265 and URLs where beneficial for PDF output.
4266
4377fad9
RS
42672011-01-16 Richard Sandiford <rdsandiford@googlemail.com>
4268
4269 * config/mips/mips.c (mips_classify_symbol): Don't return
4270 SYMBOL_PC_RELATIVE for nonlocal labels.
4271
55959ffa 42722011-01-15 Eric Botcazou <ebotcazou@adacore.com>
be46831f 4273
55959ffa
EB
4274 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
4275
42762011-01-15 Jan Hubicka <jh@suse.cz>
4277
4278 PR tree-optimization/47276
be46831f
JH
4279 * ipa.c (function_and_variable_visibility): Do not try to mark alias
4280 declarations as needed.
4281
05842ff5
MJ
42822011-01-15 Martin Jambor <mjambor@suse.cz>
4283
4284 * common.opt (fdevirtualize): New flag.
4285 * doc/invoke.texi (Option Summary): Document it.
4286 * opts.c (default_options_table): Add devirtualize flag.
4287 * ipa-prop.c (detect_type_change): Return immediately if
4288 devirtualize flag is not set.
4289 (detect_type_change_ssa): Likewise.
4290 (compute_known_type_jump_func): Likewise.
4291 (ipa_analyze_virtual_call_uses): Likewise.
4292
f65cf2b7
MJ
42932011-01-14 Martin Jambor <mjambor@suse.cz>
4294
4295 PR tree-optimization/45934
4296 PR tree-optimization/46302
4297 * ipa-prop.c (type_change_info): New type.
4298 (stmt_may_be_vtbl_ptr_store): New function.
4299 (check_stmt_for_type_change): Likewise.
4300 (detect_type_change): Likewise.
4301 (detect_type_change_ssa): Likewise.
4302 (compute_complex_assign_jump_func): Check for dynamic type change.
4303 (compute_complex_ancestor_jump_func): Likewise.
4304 (compute_known_type_jump_func): Likewise.
4305 (compute_scalar_jump_functions): Likewise.
4306 (ipa_analyze_virtual_call_uses): Likewise.
4307 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
4308
eb5bb0fd
JM
43092011-01-14 Joseph Myers <joseph@codesourcery.com>
4310
4311 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
4312 * config/i386/i386.opt (msse5): New Alias.
4313
f2060fbe
JM
43142011-01-14 Joseph Myers <joseph@codesourcery.com>
4315
4316 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
4317 * config/sparc/linux64.h (CC1_SPEC): Likewise.
4318 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
4319 * config/sparc/sparc.h (CC1_SPEC): Likewise.
4320
3a7b4385
JM
43212011-01-14 Joseph Myers <joseph@codesourcery.com>
4322
4323 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
4324 -mcpu options.
4325 * config/sparc/linux64.h (CC1_SPEC): Likewise.
4326 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
4327 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
4328 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
4329 Likewise.
4330 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
4331
a7b778f8
JM
43322011-01-14 Joseph Myers <joseph@codesourcery.com>
4333
38be4072 4334 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or -fvec-eabi.
a7b778f8 4335
a7edae0a
MS
43362011-01-14 Mike Stump <mikestump@comcast.net>
4337
4338 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
4339 * config/fr30/fr30.md: Likweise
4340 (movsi_push): Likewise.
4341 (movsi_pop): Likewise.
4342 (enter_func): Likewise.
4343 * config/moxie/moxie.md (movsi_push): Likewise.
4344 (movsi_pop): Likewise.
4345
cbabf03f
JM
43462011-01-14 Joseph Myers <joseph@codesourcery.com>
4347
4348 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
4349 %{no_archive} %{exact_version}.
4350 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
4351 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
4352 %{no_archive} %{exact_version}.
4353 * config/mips/openbsd.h (LINK_SPEC): Likewise.
4354 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
4355 * config/mips/vxworks.h: Likewise.
4356
438da41a
JM
43572011-01-14 Joseph Myers <joseph@codesourcery.com>
4358
38be4072 4359 * config/microblaze/microblaze.h (ASM_SPEC): Remove %{microblaze1}.
438da41a 4360
da290a42
JM
43612011-01-14 Joseph Myers <joseph@codesourcery.com>
4362
4363 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
4364 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
4365
8989d00e
JM
43662011-01-14 Joseph Myers <joseph@codesourcery.com>
4367
4368 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
4369 -nodefaultlib.
4370
a3010a69
JM
43712011-01-14 Joseph Myers <joseph@codesourcery.com>
4372
4373 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
4374 for mcpu not cpu.
4375 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
4376 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
4377 not cpu.
4378 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
4379 Don't handle -shlib.
4380
e7f2f537
JM
43812011-01-14 Joseph Myers <joseph@codesourcery.com>
4382
4383 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
4384 (CC1_SPEC): Don't handle -profile.
4385
34830bfd
JM
43862011-01-14 Joseph Myers <joseph@codesourcery.com>
4387
4388 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
4389 * config/mips/mips.h (CC1_SPEC): Likewise.
4390
b2d36e74
JM
43912011-01-14 Joseph Myers <joseph@codesourcery.com>
4392
4393 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
4394 * config/mips/mips.h (CC1_SPEC): Likewise.
4395
dabadc52
JM
43962011-01-14 Joseph Myers <joseph@codesourcery.com>
4397
4398 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
4399 * config/m32r/linux.h (LINK_SPEC): Likewise.
4400 * config/mips/linux.h (LINK_SPEC): Likewise.
4401 * config/mips/linux64.h (LINK_SPEC): Likewise.
4402 * config/sparc/linux.h (LINK_SPEC): Likewise.
4403 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
4404 LINK_SPEC): Likewise.
4405 * config/xtensa/linux.h (LINK_SPEC): Likewise.
4406
43ee6785
JM
44072011-01-14 Joseph Myers <joseph@codesourcery.com>
4408
4409 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
4410 %{version:-v}.
4411 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
4412
45e79dfd
JM
44132011-01-14 Joseph Myers <joseph@codesourcery.com>
4414
4415 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
4416 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
4417
37e9e71d
JM
44182011-01-14 Joseph Myers <joseph@codesourcery.com>
4419
4420 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
4421
bb127cd8
RO
44222011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4423
4424 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
4425 supports -Bstatic/-Bdynamic.
4426 * configure: Regenerate.
4427
89a012ea 44282011-01-14 Jan Hubicka <jh@suse.cz>
509d65dd 4429 Jack Howarth <howarth@bromo.med.uc.edu>
89a012ea
JH
4430
4431 PR target/46037
4432 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
4433 when checking debug_info_level. Test write_symbols instead of
4434 debug_hooks->var_location when setting flag_var_tracking_uninit.
4435
7352c013
RG
44362011-01-14 Richard Guenther <rguenther@suse.de>
4437
4438 PR tree-optimization/47179
4439 * target.def (ref_may_alias_errno): New target hook.
4440 * targhooks.h (default_ref_may_alias_errno): Declare.
4441 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
4442 (default_ref_may_alias_errno): New function.
4443 * target.h (struct ao_ref_s): Declare.
4444 * tree-ssa-alias.c: Include target.h.
4445 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
4446 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
4447 (targhooks.o): Likewise.
4448 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
4449 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
4450
9a6c9288
RG
44512011-01-14 Richard Guenther <rguenther@suse.de>
4452
4453 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
4454
0fdb0d27
RG
44552011-01-14 Richard Guenther <rguenther@suse.de>
4456
4457 PR tree-optimization/47280
4458 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
4459 return CFG changes.
4460 (tree_ssa_forward_propagate_single_use_vars): Deal with
4461 CFG changes from associate_plusminus.
4462
8f66db3b
RG
44632011-01-14 Richard Guenther <rguenther@suse.de>
4464
4465 PR middle-end/47281
4466 Revert
4467 2011-01-11 Richard Guenther <rguenther@suse.de>
4468
280d9630
EB
4469 PR tree-optimization/46076
4470 * tree-ssa.c (useless_type_conversion_p): Conversions from
4471 unprototyped to empty argument list function types are useless.
8f66db3b 4472
6c0c92e6
RG
44732011-01-14 Richard Guenther <rguenther@suse.de>
4474
4475 PR tree-optimization/47286
280d9630 4476 * tree-ssa-structalias.c (new_var_info): Register variables are global.
6c0c92e6 4477
db09f943
MJ
44782011-01-14 Martin Jambor <mjambor@suse.cz>
4479
4480 PR middle-end/46823
4481 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
4482
dde8a3a4
AS
44832011-01-13 Anatoly Sokolov <aesok@post.ru>
4484
4485 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
4486 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
4487 * config/xtensa/xtensa.c (xtensa_libcall_value,
4488 xtensa_function_value_regno_p): New functions.
4489 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
4490
a2b63a20
KT
44912011-01-13 Kai Tietz <kai.tietz@onevision.com>
4492
4493 PR c++/47213
4494 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
4495 PE specific hook.
4496 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
4497 New function prototype.
4498 * config/i386/winnt.c (i386_pe_assemble_visibility):
4499 Warn only if attribute was specified by user.
4500
b41f0b34
MM
45012011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
4502
4503 PR target/47251
4504 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
4505 floating point.
4506 (floatunsdidf2_fcfidu): Ditto.
4507
3f3c098d
AK
45082011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
4509
4510 * config/s390/s390.c (print_operand_address): Replace 'error' with
4511 'output_operand_lossage'.
4512 (print_operand): Likewise.
4513
29fa95ed
JL
45142011-01-13 Jeff Law <law@redhat.com>
4515
280d9630 4516 PR rtl-optimization/39077
29fa95ed
JL
4517 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
4518 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
4519 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
4520 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
4521 * gcse.c (prune_insertions_deletions): New function.
4522 (compute_pre_data): Use it.
4523
71d12276
DS
45242011-01-13 Dodji Seketeli <dodji@redhat.com>
4525
4526 PR debug/PR46973
4527 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
4528 static function.
61052244 4529 (prune_unused_types_mark): Use it.
71d12276 4530
9b0f04e7
AB
45312011-01-13 Andrey Belevantsev <abel@ispras.ru>
4532
4533 PR rtl-optimization/45352
1c3ba85b 4534 * sel-sched.c: Update copyright years.
9b0f04e7 4535 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1c3ba85b 4536 in the advancing loop when we have issued issue_rate insns.
9b0f04e7 4537
d6a3e264
RH
45382011-01-12 Richard Henderson <rth@redhat.com>
4539
a49b692a
RH
4540 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
4541 (TARGET_MD_ASM_CLOBBERS): New.
4542
126b1483
RH
4543 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
4544 (TARGET_DELEGITIMIZE_ADDRESS): New.
4545
f3d9d2e0
RH
4546 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
4547 (clzsi2, *bsch): New patterns.
4548
d84760c9
RH
4549 * config/mn10300/mn10300.md (INT): New mode iterator.
4550 (*mov<INT>_clr): New pattern, and peep2 to generate it.
4551
ec815d65
RH
4552 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
4553 flag_split_wide_types.
4554
d6a3e264
RH
4555 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
4556 (mn10300_trampoline_init): Rewrite without a template, an immediate
4557 load and a direct branch.
4558 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
4559
0f8ab434
AS
45602011-01-12 Anatoly Sokolov <aesok@post.ru>
4561
4562 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
4563 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
4564 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
4565 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
4566
d8a24b65
KT
45672011-01-12 Kai Tietz <kai.tietz@onevision.com>
4568
4569 PR debug/47209
4570 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
4571 of type.
4572
56e22cab
JH
45732011-01-12 Jan Hubicka <jh@suse.cz>
4574
4575 PR driver/47244
4576 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
4577 (PLUGIN_COND_CLOSE): New macro.
4578 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
4579
4b18b3c2
RG
45802011-01-12 Richard Guenther <rguenther@suse.de>
4581
4582 PR lto/47259
4583 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
4584 register variables in a MEM_REF.
4585
8e38461c
JM
45862011-01-12 Joseph Myers <joseph@codesourcery.com>
4587
4588 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
4589 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
4590 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
4591 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
4592 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
4593 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
4594 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
4595 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
4596 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
4597 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
4598 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
4599 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
4600 * config/gnu-user.h: New. Copied from linux.h.
4601 (LINUX_TARGET_STARTFILE_SPEC): Rename to
4602 GNU_USER_TARGET_STARTFILE_SPEC.
4603 (LINUX_TARGET_ENDFILE_SPEC): Rename to
4604 GNU_USER_TARGET_ENDFILE_SPEC.
4605 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
4606 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
4607 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
4608 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
4609 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
4610 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
4611 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
4612 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
4613 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
4614 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
4615 * config/arm/linux-eabi.h (CC1_SPEC): Use
4616 GNU_USER_TARGET_CC1_SPEC.
4617 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
4618 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
4619 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
4620 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
4621 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
4622 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
4623 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
4624 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
4625
a570fc16
RG
46262011-01-12 Richard Guenther <rguenther@suse.de>
4627
4628 PR other/46946
4629 * doc/invoke.texi (ffast-math): Document it is turned on
4630 with -Ofast.
4631
b0223c3e
JH
46322011-01-12 Jan Hubicka <jh@suse.cz>
4633
4634 PR tree-optimization/47233
ca1e00b3
EB
4635 * opts.c (common_handle_option): Disable ipa-reference with profile
4636 feedback.
b0223c3e 4637
1c3ba85b 46382011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
d853ee42
NP
4639
4640 * c-parser.c (c_parser_objc_at_property_declaration): Improved
ca1e00b3
EB
4641 error message.
4642
d853ee42
NP
46432011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
4644
4645 * c-parser.c (c_lex_one_token): Updated and reindented some
4646 comments. No changes in code.
4647
4053a5a0
ILT
46482011-01-11 Ian Lance Taylor <iant@google.com>
4649
4650 * godump.c (go_output_var): Don't output the variable if there is
4651 already a type with the same name.
4652
fa3e04d2
ILT
46532011-01-11 Ian Lance Taylor <iant@google.com>
4654
4655 * godump.c (go_format_type): Don't generate float80.
4656
885fe07c
RH
46572011-01-11 Richard Henderson <rth@redhat.com>
4658
72d6e3c5
RH
4659 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
4660 declaration. Rewrite for both speed and size.
4661 (mn10300_address_cost_1): Remove.
4662 (mn10300_register_move_cost): New.
4663 (mn10300_memory_move_cost): New.
4664 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
4665 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
4666 extensions, shifts, BSWAP, CLZ.
4667 (mn10300_wide_const_load_uses_clr): Remove.
4668 (TARGET_REGISTER_MOVE_COST): New.
4669 (TARGET_MEMORY_MOVE_COST): New.
4670 * config/mn10300/mn10300-protos.h: Update.
4671 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
4672
df37c023
RH
4673 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
4674 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
4675 * config/mn10300/mn10300-protos.h: Update.
4676 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
4677 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
4678 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
4679 (*test_int_bitfield, *test_byte_bitfield): Remove.
4680 (*bit_test, *subreg_bit_test): Remove.
62d3f9b2 4681 * config/mn10300/predicates.md (const_8bit_operand): Remove.
df37c023 4682
85a337b5
RH
4683 * config/mn10300/constraints.md ("c"): Rename from "A".
4684 ("A", "D"): New constraint letters.
4685 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
4686 (fmssf4, fnmasf4, fnmssf4): Likewise.
4687
a5c727e3
RH
4688 * config/mn10300/mn10300.md (isa): New attribute.
4689 (enabled): New attribute.
4690
0d9e23f4
RH
4691 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
4692 (abssf2, negsf2): Define only for hardware fp.
4693 (sqrtsf2): Reformat.
4694 (addsf3, subsf3, mulsf3): Merge expander and insn.
4695
c157b3f0
RH
4696 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
4697 (DEBUGGER_AUTO_OFFSET): Remove.
4698 (DEBUGGER_ARG_OFFSET): Remove.
4699
cc909bba
RH
4700 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
4701 Emit register stores with the same offsets as the hardware.
4702 (mn10300_store_multiple_operation): Don't check that the register
4703 save offsets are monotonic.
4704 * config/mn10300/mn10300-protos.h: Update.
4705
e3b5c2f3
RH
4706 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
4707
885fe07c
RH
4708 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
4709 in terms of the value on the stack, not the MDR register.
4710
6e701822
JH
47112011-01-11 Jan Hubicka <jh@suse.cz>
4712
4713 PR lto/45721
4714 PR lto/45375
4715 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
4716 (symbol_alias_set_destroy, symbol_alias_set_contains,
4717 propagate_aliases_backward): Declare.
4718 * lto-streamer-out.c (struct sets): New sturcture.
4719 (trivally_defined_alias): New function.
4720 (output_alias_pair_p): Rewrite.
4721 (output_unreferenced_globals): Fix output of alias pairs.
4722 (produce_symtab): Likewise.
4723 * ipa.c (function_and_variable_visibility): Set weak alias destination
4724 as needed in lto.
4725 * varasm.c (symbol_alias_set_t): Remove.
4726 (symbol_alias_set_destroy): Export.
4727 (propagate_aliases_forward, propagate_aliases_backward): New functions
4728 based on ...
4729 (compute_visible_aliases): ... this one; remove.
4730 (trivially_visible_alias): New
4731 (trivially_defined_alias): New.
4732 (remove_unreachable_alias_pairs): Rewrite.
4733 (finish_aliases_1): Reorganize code checking if alias is defined.
4734 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
4735 in LTO mode.
4736
1b248907
RG
47372011-01-11 Richard Guenther <rguenther@suse.de>
4738
4739 PR tree-optimization/46076
4740 * tree-ssa.c (useless_type_conversion_p): Conversions from
4741 unprototyped to empty argument list function types are useless.
4742
b1923f0a
RG
47432011-01-11 Richard Guenther <rguenther@suse.de>
4744
4745 PR middle-end/45235
4746 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
4747 volatile MEMs as MEM_READONLY_P.
4748
e98965af
RG
47492011-01-11 Richard Guenther <rguenther@suse.de>
4750
4751 PR tree-optimization/47239
4752 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
4753
9f9ca914
JL
47542011-01-11 Jeff Law <law@redhat.com>
4755
1ee3ea05 4756 PR tree-optimization/47086
9f9ca914
JL
4757 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
4758 IVs from statements that might throw.
4759
345fdcb7
JH
47602011-01-10 Jan Hubicka <jh@suse.cz>
4761
4762 PR lto/45375
4763 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
4764
c459c97b
JH
47652011-01-10 Jan Hubicka <jh@suse.cz>
4766
4767 PR lto/45375
4768 * profile.c (read_profile_edge_counts): Ignore profile inconistency
4769 when correcting profile.
4770
06c9eb51
JH
47712011-01-10 Jan Hubicka <jh@suse.cz>
4772
4773 PR lto/46083
4774 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
4775 DECL_FINI_PRIORITY.
4776 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
4777 Restore DECL_FINI_PRIORITY.
4778
ae9fd815
RW
47792011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4780
4781 * doc/gimple.texi: Fix quoting of multi-word return values in
4782 @deftypefn statements. Ensure presence of return value. Wrap
4783 overlong @deftypefn lines.
4784 (is_gimple_operand, is_gimple_min_invariant_address): Remove
4785 descriptions of removed functions.
4786 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
4787 of multi-word return value in @deftypefn statement.
4788
0ecb4a7c
RW
47892011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4790
4791 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
4792 (Conditional Expressions, Logical Operators)
4793 (Statement and operand traversals): Do not indent smallexample
4794 code. Fix duplicate function argument in example.
4795
2e5e346d
JL
47962011-01-10 Jeff Law <law@redhat.com>
4797
1ee3ea05 4798 PR tree-optimization/47141
2e5e346d
JL
4799 * ipa-split.c (split_function): Handle case where we are
4800 returning a value and the return block has a virtual operand phi.
4801
cf9712cc
JH
48022011-01-10 Jan Hubicka <jh@suse.cz>
4803
1c3ba85b 4804 PR tree-optimization/47234
cf9712cc
JH
4805 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
4806 (pass_feedback_split_functions): Declare.
4807 * passes.c (init_optimization_passes): Add ipa-split as subpass of
4808 tree-profile.
4809 * ipa-split.c (gate_split_functions): Update comments; disable
4810 split-functions for profile_arc_flag and branch_probabilities.
4811 (gate_feedback_split_functions): New function.
4812 (execute_feedback_split_functions): New function.
4813 (pass_feedback_split_functions): New global var.
4814
94cd932c
L
48152011-01-10 H.J. Lu <hongjiu.lu@intel.com>
4816
4817 PR lto/46760
4818 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
4819 calling gimple_call_set_cannot_inline.
4820
fbbfcaf1
IS
48212011-01-10 Iain Sandoe <iains@gcc.gnu.org>
4822
4823 * config/darwin-sections.def: Remove unused section.
4824
d06865bf
DK
48252011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
4826
4827 PR c++/47218
4828 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
4829
96bbfbac
NP
48302011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
4831
4832 PR objc/47232
4833 * c-parser.c (c_parser_declaration_or_fndef): Improved
4834 error message.
4835
1ba6516f
KT
48362011-01-09 Kai Tietz <kai.tietz@onevision.com>
4837
4838 * config/i386/winnt.c (i386_pe_start_function): Make sure
4839 to switch back to function's section.
4840
0c5d770e
IS
48412011-01-09 Iain Sandoe <iains@gcc.gnu.org>
4842
4843 PR gcc/46902
4844 PR testsuite/46912
4845 * plugin.c: Move include of dlfcn.h from here...
4846 * system.h: ... to here.
4847
48482011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4ee1aa2a
RW
4849
4850 * doc/cpp.texi (C++ Named Operators): Fix markup for header
4851 file name.
4852 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
4853 two extra empty pages in PDF output.
4854
046608a3
NP
48552011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
4856
4857 PR objc/47078
4858 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
4859 for error recovery purposes behave as if it was not specified so
4860 that the default type is usd.
4861
8cb114b9
JH
48622011-01-07 Jan Hubicka <jh@suse.cz>
4863
4864 PR tree-optmization/46469
4865 * ipa.c (function_and_variable_visibility): Clear needed flags on
4866 nodes with external decls; handle weakrefs merging correctly.
4867
b294a75e
JM
48682011-01-07 Joseph Myers <joseph@codesourcery.com>
4869
4870 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
4871 not false.
4872
96bdf9b4
JH
48732011-01-07 Jan Hubicka <jh@suse.cz>
4874
4875 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
4876 and no longer claim that gold is required for linker plugin.
4877 * configure: Regenerate.
4878 * gcc.c (PLUGIN_COND): New macro.
4879 (LINK_COMMAND_SPEC): Use it.
4880 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
4881 * config.in (HAVE_LTO_PLUGIN): New.
4882 * configure.ac (--with-lto-plugin): New parameter; autodetect
4883 HAVE_LTO_PLUGIN.
4884
17afc0fe
JH
48852011-01-07 Jan Hubicka <jh@suse.cz>
4886
4887 PR tree-optimization/46367
4888 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
4889 when we can update original.
4890 (cgraph_mark_inline_edge): Sanity check.
4891 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
4892
d4c48c0f
UW
48932011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4894
4895 * config/spu/spu.h (ASM_COMMENT_START): Define.
4896
96f5b137
L
48972011-01-07 H.J. Lu <hongjiu.lu@intel.com>
4898
4899 PR driver/42445
4900 * gcc.c (%>S): New.
4901 (SWITCH_KEEP_FOR_GCC): Likewise.
4902 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
4903 (do_spec_1): Handle "%>".
4904
4905 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
4906
c6a8f6de
JJ
49072011-01-07 Jakub Jelinek <jakub@redhat.com>
4908
c21bbd7a
JJ
4909 PR target/47201
4910 * config/i386/i386.c (ix86_delegitimize_address): If
4911 simplify_gen_subreg fails, return orig_x.
4912
c6a8f6de
JJ
4913 PR bootstrap/47187
4914 * value-prof.c (gimple_stringop_fixed_value): Handle
4915 lhs of the call properly.
4916
fe95fbf9
JH
49172011-01-07 Jan Hubicka <jh@suse.cz>
4918
4919 PR lto/45375
4920 * lto-opt.c (lto_reissue_options): Set flag_shlib.
4921
14d11d40
IS
49222011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4923
72e961c8
EB
4924 * target.def (function_switched_text_sections): New hook.
4925 * doc/tm.texi: Regenerated.
4926 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4927 * final.c (default_function_switched_text_sections): New.
72e961c8
EB
4928 (final_scan_insn): Call function_switched_text_sections when a
4929 mid-function section change occurs.
14d11d40 4930 * output.h (default_function_switched_text_sections): Declare.
72e961c8
EB
4931 * config/darwin-protos.h (darwin_function_switched_text_sections):
4932 Likewise.
14d11d40 4933 * config/darwin.c (darwin_function_switched_text_sections): New.
72e961c8 4934 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4935
0b764288
IS
49362011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4937
4938 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
4939 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
4940 the secondary code fragment when outputting for DWARF == 2.
4941
2ac6bb04
AS
49422011-01-07 Anatoly Sokolov <aesok@post.ru>
4943
4944 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
4945 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
4946 Remove.
4947 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
4948 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
4949
9f82de11
EB
49502011-01-06 Eric Botcazou <ebotcazou@adacore.com>
4951
4952 PR debug/46704
280d9630
EB
4953 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
4954 when it is not empty.
9f82de11
EB
4955
49562011-01-06 Changpeng Fang <changpeng.fang@amd.com>
14b52538 4957
1ed72abf 4958 Bobcat Enablement
14b52538 4959 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
1ed72abf 4960 (case ${target}): Add btver1.
14b52538 4961 * config/i386/driver-i386.c (host_detect_local_cpu): Let
1ed72abf 4962 -march=native recognize btver1 processors.
14b52538 4963 * config/i386/i386-c.c (ix86_target_macros_internal): Add
1ed72abf 4964 btver1 def_and_undef
14b52538 4965 * config/i386/i386.c (struct processor_costs btver1_cost): New
1ed72abf
CF
4966 btver1 cost table.
4967 (m_BTVER1): New definition.
4968 (m_AMD_MULTIPLE): Includes m_BTVER1.
4969 (initial_ix86_tune_features): Add btver1 tune.
4970 (processor_target_table): Add btver1 entry.
4971 (static const char *const cpu_names): Add btver1 entry.
4972 (software_prefetching_beneficial_p): Add btver1.
4973 (ix86_option_override_internal): Add btver1 instruction sets.
4974 (ix86_issue_rate): Add btver1.
4975 (ix86_adjust_cost): Add btver1.
14b52538 4976 * config/i386/i386.h (TARGET_BTVER1): New definition.
1ed72abf
CF
4977 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
4978 (enum processor_type): Add PROCESSOR_BTVER1.
14b52538
CF
4979 * config/i386/i386.md (define_attr "cpu"): Add btver1.
4980
e1a973d8
RO
49812011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4982
4983 PR target/43309
4984 * config/i386/i386.c (legitimize_tls_address)
4985 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
4986 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
4987 (tls_initial_exec_64_sun): New pattern.
4988
c73f67c5
GP
49892011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
4990
4991 * doc/invoke.texi (Overall Options): Improve wording and markup
4992 of the description of -wrapper.
4993
bc4c6f9c
JM
49942011-01-06 Joseph Myers <joseph@codesourcery.com>
4995
4996 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
4997 rdynamic, threads): New Driver options.
4998
adb75db0
RO
49992011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5000
5001 PR target/38118
5002 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
5003 if coming from .tdata.
5004 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
5005
402c1cb4
JH
50062011-01-06 Jan Hubicka <jh@suse.cz>
5007
5008 PR lto/47188
5009 * collect2.c (main): Do not enable LTOmode when plugin is active.
5010
a4da6485
RO
50112011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5012
5013 PR other/45915
5014 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
5015 --version output if supported.
5016 * configure: Regenerate.
5017
028dbdf4
JM
50182011-01-06 Joseph Myers <joseph@codesourcery.com>
5019
5020 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
5021 Driver options.
5022
dfe776dd
JJ
50232011-01-06 Jakub Jelinek <jakub@redhat.com>
5024
5025 PR c/47150
5026 * c-convert.c (convert): When converting a complex expression
5027 other than COMPLEX_EXPR to a different complex type, ensure
5028 c_save_expr is called instead of save_expr, unless in_late_binary_op.
5029 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
5030 when converting COMPLEX_TYPE.
5031
210dedfe
IR
50322011-01-06 Ira Rosen <irar@il.ibm.com>
5033
5034 PR tree-optimization/47139
5035 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
5036 only the last reduction value is used outside the loop. Update
5037 documentation.
5038
cd33a412
JM
50392011-01-05 Joseph Myers <joseph@codesourcery.com>
5040
5041 * config/rtems.opt: New.
5042 * config.gcc (*-*-rtems*): Use rtems.opt.
5043
819edd94
CF
50442011-01-05 Changpeng Fang <changpeng.fang@amd.com>
5045
5046 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
5047 processors do not support 3DNow instructions.
5048
dc242c4a
UW
50492011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5050
5051 * config/spu/spu.c (spu_option_override): Set parameter
5052 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
5053
be286227
JH
50542011-01-05 Jan Hubicka <jh@suse.cz>
5055
5056 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
5057 at the command line.
5058
644e637f
MJ
50592011-01-05 Martin Jambor <mjambor@suse.cz>
5060
5061 PR lto/47162
5062 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
5063 deltas on streamed outgoing edges.
5064 (output_node_opt_summary): Output info for outgoing edges only when
5065 the node is in new parameter set.
5066 (output_cgraph_opt_summary): New parameter set, passed to the two
5067 aforementioned functions. Update its forward declaration and its
5068 callee too.
5069
7bd11157
TT
50702011-01-05 Tom Tromey <tromey@redhat.com>
5071
5072 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
5073 operator to c_finish_omp_atomic.
5074 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
5075 (build_unary_op): Update.
5076 (build_modify_expr): Update.
5077 (build_asm_expr): Update.
5078
f626b979
UW
50792011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5080
5081 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
5082 newly inserted insns.
5083 (pad_bb): Likewise.
5084 (spu_emit_branch_hint): Likewise.
5085 (insert_hbrp_for_ilb_runout): Likewise.
5086 (spu_machine_dependent_reorg): Call df_finish_pass after
5087 schedule_insns returns.
5088
4c825c02
UW
50892011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5090
5091 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
5092
5e9fba51
EB
50932011-01-05 Eric Botcazou <ebotcazou@adacore.com>
5094
5095 PR tree-optimization/47005
5096 * tree-sra.c (struct access): Add 'non_addressable' bit.
5097 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
5098 (decide_one_param_reduction): Return 0 if the parameter is passed by
5099 reference and one of the accesses in the group is non_addressable.
5100
3ebb5ca6
EB
51012011-01-04 Eric Botcazou <ebotcazou@adacore.com>
5102
5103 PR tree-optimization/47056
5104 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
5105 (mark_load): Likewise. Handle FUNCTION_DECL specially.
5106 (mark_store): Likewise. Pass STMT to ipa_record_reference.
5107
d5d4d14e
EB
51082011-01-04 Eric Botcazou <ebotcazou@adacore.com>
5109
5110 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
5111 initializer. Skip view conversions from aggregate types.
5112
d996ef70
KT
51132011-01-04 Kai Tietz <kai.tietz@onevision.com>
5114
5115 PR bootstrap/47055
5116 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
5117
509d65dd 51182011-01-04 Philipp Thomas <pth@suse.de>
017096ca
PT
5119
5120 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
5121 obvious typo.
5122
55c623b5
UW
51232011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5124
5125 * function.c (thread_prologue_and_epilogue_insns): Do not crash
5126 on empty epilogue sequences.
5127
b98d6b35
JM
51282011-01-04 Joseph Myers <joseph@codesourcery.com>
5129
5130 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
5131 non-static): New Driver options.
5132
a0d43bac
JZ
51332011-01-04 Jie Zhang <jie@codesourcery.com>
5134
5135 PR driver/47137
5136 * gcc.c (default_compilers[]): Set combinable field to 0
5137 for all assembly languages.
5138
2b18eb32
MX
51392011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
5140
5141 * config/mips/loongson3a.md: New file.
5142 * config/mips/mips.md: Include loongson3a.md.
5143 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
5144 TUNE_LOONGSON_3A.
5145
42a48c4f
EB
51462011-01-03 Eric Botcazou <ebotcazou@adacore.com>
5147
5148 PR middle-end/47017
5149 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
5150 instead of convert_memory_address_addr_space on the base expression.
5151
9c1732c4
UW
51522011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5153
5154 * config/spu/spu.c (spu_option_override): Update error text
5155 for bad -march= / -mtune= values.
5156
aa474365
UW
51572011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
5158
5159 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
5160 if branch-hint optimization will be performed.
5161
9766135b
JJ
51622011-01-03 Jakub Jelinek <jakub@redhat.com>
5163
371556ee
JJ
5164 PR tree-optimization/47148
5165 * ipa-split.c (split_function): Convert arguments to
5166 DECL_ARG_TYPE if possible.
5167
1ac12fa2
JJ
5168 PR tree-optimization/47155
5169 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
5170 when computing uns.
5171
9766135b
JJ
5172 PR rtl-optimization/47157
5173 * combine.c (try_combine): If undobuf.other_insn becomes
5174 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
5175 and set *new_direct_jump_p too.
5176
f4a2e571
SP
51772011-01-03 Sebastian Pop <sebastian.pop@amd.com>
5178
5179 PR tree-optimization/47021
5180 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
5181
9f8e43c0
JJ
51822011-01-03 Jakub Jelinek <jakub@redhat.com>
5183
5184 * gcc.c (process_command): Update copyright notice dates.
5185 * gcov.c (print_version): Likewise.
5186 * gcov-dump.c (print_version): Likewise.
5187 * mips-tfile.c (main): Likewise.
5188 * mips-tdump.c (main): Likewise.
5189
1a2e38f3
MJ
51902011-01-03 Martin Jambor <mjambor@suse.cz>
5191
5192 PR tree-optimization/46801
5193 * tree-sra.c (type_internals_preclude_sra_p): Check whether
5194 aggregate fields start at byte boundary instead of the bit-field flag.
5195
56b721c5
L
51962011-01-03 H.J. Lu <hongjiu.lu@intel.com>
5197
5198 PR driver/47137
5199 * gcc.c (main): Revert revision 168407.
5200
839d549b
MJ
52012011-01-03 Martin Jambor <mjambor@suse.cz>
5202
5203 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
5204
4ce99a20 52052011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2fa6eeff
UW
5206
5207 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
5208 vector optab to expand vector/scalar shift, update gimple to vector.
5209
76df0ae6
MJ
52102011-01-03 Martin Jambor <mjambor@suse.cz>
5211
5212 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
5213 a thunk.
5214
ce47fda3
MJ
52152011-01-03 Martin Jambor <mjambor@suse.cz>
5216
5217 PR tree-optimization/46984
5218 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
5219 HOST_WIDE_INT.
5220 (cgraph_create_indirect_edge): Fixed line length.
5221 (cgraph_indirect_call_info): Declare.
5222 (cgraph_make_edge_direct) Update declaration.
5223 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
5224 (cgraph_create_indirect_edge): Use it.
5225 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
5226 callees.
5227 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
5228 the new thunk_delta representation.
5229 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
5230 HOST_WIDE_INT.
5231 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
5232 (ipa_read_indirect_edge_info): Likewise.
5233 * lto-cgraph.c (output_edge_opt_summary): New function.
5234 (output_node_opt_summary): Call it on all outgoing edges.
5235 (input_edge_opt_summary): New function.
5236 (input_node_opt_summary): Call it on all outgoing edges.
5237
1e67fa1f
L
52382011-01-02 H.J. Lu <hongjiu.lu@intel.com>
5239
5240 PR driver/47137
5241 * gcc.c (main): Don't check have_o when settting combine_inputs.
5242
6656b2ac
EB
52432011-01-02 Eric Botcazou <ebotcazou@adacore.com>
5244
5245 * regrename.c: Add general comment describing the pass.
5246 (struct du_head): Remove 'length' field.
5247 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
5248 (regrename_optimize): Do not sort chains. Rework comments, add others.
5249 Force renaming to the preferred class (if any) in the first pass and do
5250 not consider registers that belong to it in the second pass.
5251 (create_new_chain): Do not set 'length' field.
5252 (scan_rtx_reg): Likewise.
5253
bc470c24
JJ
52542011-01-02 Jakub Jelinek <jakub@redhat.com>
5255
4e996296
JJ
5256 PR tree-optimization/47140
5257 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
5258 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
5259 to bit_value_binop.
5260
bc470c24 5261 PR rtl-optimization/47028
6656b2ac
EB
5262 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
5263 parm_birth_insn instead of at the beginning of first bb.
bc470c24 5264
5af62fcd 52652011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
0d52f2a8
MX
5266
5267 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
5268 Remove the word "see" before "@pxref".
5269 * doc/rtl.texi: Remove the word "see" before "@pxref".
5270
0e20c89f
JH
52712011-01-01 Jan Hubicka <jh@suse.cz>
5272
6656b2ac
EB
5273 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
5274 memory.
0e20c89f 5275
220e83ca
KT
52762011-01-01 Kai Tietz <kai.tietz@onevision.com>
5277
5278 PR target/38662
6656b2ac 5279 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
220e83ca 5280
ad41bd84 5281\f
797103eb 5282Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
5283
5284Copying and distribution of this file, with or without modification,
5285are permitted in any medium without royalty provided the copyright
5286notice and this notice are preserved.