]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
emit-rtl.c (try_split): Don't call copy_call_info debug hook.
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
2b1c5433
JJ
12011-03-16 Jakub Jelinek <jakub@redhat.com>
2
c2969d8e
JJ
3 * emit-rtl.c (try_split): Don't call copy_call_info debug hook.
4 * calls.c: Remove debug.h include.
5 (emit_call_1): Don't call virtual_call_token debug hook.
6 * dwarf2out.c (debug_dcall_section, debug_vcall_section,
7 dcall_entry, vcall_entry, dcall_table, vcall_table, vcall_insn,
8 vcall_insn_table, DEBUG_DCALL_SECTION, DEBUG_VCALL_SECTION,
9 size_of_dcall_table, output_dcall_table, size_of_vcall_table,
10 output_vcall_table, dwarf2out_direct_call, vcall_insn_table_hash,
11 vcall_insn_table_eq, store_vcall_insn, lookup_vcall_insn,
12 dwarf2out_virtual_call_token, dwarf2out_copy_call_info,
13 dwarf2out_virtual_call): Remove.
14 (dwarf2_debug_hooks): Remove direct_call, virtual_call_token,
15 copy_call_info and virtual_call hooks.
16 (dwarf2out_init): Don't initialize vcall_insn_table,
17 debug_dcall_section and debug_vcall_section.
18 (prune_unused_types): Don't mark nodes from dcall_table.
19 (dwarf2out_finish): Don't output dcall or vcall tables.
20 * final.c (final_scan_insn): Don't call direct_call or
21 virtual_call debug hooks.
22 * debug.h (struct gcc_debug_hooks): Remove direct_call,
23 virtual_call_token, copy_call_info and virtual_call hooks.
24 (debug_nothing_uid): Remove prototype.
25 * sdbout.c (sdb_debug_hooks): Remove direct_call, virtual_call_token,
26 copy_call_info and virtual_call hooks.
27 * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
28 * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Likewise.
29 * debug.c (do_nothing_debug_hooks): Likewise.
30 (debug_nothing_uid): Remove.
31 * doc/invoke.texi (-fenable-icf-debug): Remove.
32 * common.opt (-fenable-icf-debug): Likewise.
33
325f5379
JJ
34 * calls.c (emit_call_1): Set MEM_EXPR on call's MEM.
35 * var-tracking.c (prepare_call_arguments): Use MEM_EXPR on
36 call's MEM. Handle functions returning aggregate through a hidden
37 first pointer. For virtual calls add clobbered pc to call arguments
38 chain.
39 * dwarf2out.c (gen_subprogram_die): Emit
40 DW_AT_GNU_call_site_target_clobbered if DW_AT_GNU_call_site_target
41 can't be emitted.
42
a58a8e4b
JJ
43 PR debug/45882
44 * rtl.def (ENTRY_VALUE): Change format from "e" to "0".
45 * rtl.h (ENTRY_VALUE_EXP): Define.
46 * rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle ENTRY_VALUE.
47 * cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise.
48 * print-rtl.c (print_rtx): Likewise.
49 * gengtype.c (adjust_field_rtx_def): Likewise.
50 * var-tracking.c (vt_add_function_parameter): Adjust
51 gen_rtx_ENTRY_VALUE uses, use ENTRY_VALUE_EXP macro.
52 * dwarf2out.c (mem_loc_descriptor): Use ENTRY_VALUE_EXP macro.
53 * cfgexpand.c (expand_debug_expr): If a SSA_NAME without
54 partition is a default definition of a PARM_DECL, use ENTRY_VALUE
55 of its DECL_INCOMING_RTL if possible, or its DECL_RTL if set.
56
2b1c5433
JJ
57 * final.c (final_scan_insn): Handle NOTE_INSN_CALL_ARG_LOCATION.
58 Call var_location debug hook even on CALL_INSNs.
59 (rest_of_clean_state): Don't print NOTE_INSN_CALL_ARG_LOCATION.
60 * rtl.def (ENTRY_VALUE): New.
61 * dwarf2out.c: Include cfglayout.h.
62 (dwarf_stack_op_name, size_of_loc_descr, output_loc_operands,
63 output_loc_operands_raw): Handle DW_OP_GNU_entry_value.
64 (struct call_arg_loc_node): New type.
65 (call_arg_locations, call_arg_loc_last, block_map, call_site_count,
66 tail_call_site_count): New variables.
67 (dwarf_tag_name): Handle DW_TAG_GNU_call_site and
68 DW_TAG_GNU_call_site_parameter.
69 (dwarf_attr_name): Handle DW_AT_GNU_call_site_value,
70 DW_AT_GNU_call_site_data_value, DW_AT_GNU_call_site_target,
71 DW_AT_GNU_call_site_target_clobbered, DW_AT_GNU_tail_call,
72 DW_AT_GNU_all_tail_call_sites, DW_AT_GNU_all_call_sites
73 and DW_AT_GNU_all_source_call_sites.
74 (mem_loc_descriptor): Handle ENTRY_VALUE.
75 (add_src_coords_attributes): Don't add enything if
76 DECL_SOURCE_LOCATION is UNKNOWN_LOCATION.
77 (dwarf2out_abstract_function): Save and clear call_arg_location,
78 call_site_count and tail_call_site_count around dwarf2out_decl call.
79 (gen_call_site_die): New function.
80 (gen_subprogram_die): Emit DW_TAG_GNU_call_site DIEs for call sites.
81 (gen_lexical_block_die, gen_inlined_subroutine_die): Update block_map.
82 (dwarf2out_function_decl): Clear call_arg_locations,
83 call_arg_loc_last, set call_site_count and tail_call_site_count
84 to -1 and free block_map.
85 (dwarf2out_var_location): Handle NOTE_INSN_CALL_ARG_LOCATION and
86 CALL_INSNs. Add NOTE_DURING_CALL_P var location notes even when not
87 followed by any real instructions.
88 (dwarf2out_begin_function): Set call_site_count and
89 tail_call_site_count to 0.
90 (resolve_addr): If DW_AT_abstract_origin of DW_TAG_GNU_call_site
91 is dw_val_class_addr, attempt to look it up again, for DECL_EXTERNAL
92 attempt to force a DIE for it and worst case remove the attribute.
93 (resolve_one_addr): For TREE_CONSTANT_POOL_ADDRESS_P SYMBOL_REFs
94 check TREE_ASM_WRITTEN of DECL_INITIAL of the decl instead of
95 the decl itself.
96 * var-tracking.c: Include tm_p.h.
97 (vt_stack_adjustments): For calls call note_register_arguments.
98 (argument_reg_set): New variable.
99 (add_stores): For MO_VAL_SET of non-tracked regs from argument_reg_set
100 ensure the VALUE is resolved.
101 (call_arguments): New variable.
102 (prepare_call_arguments): New function.
103 (add_with_sets): For MO_CALL set u.loc from call_arguments and clear it.
104 (struct expand_loc_callback_data): Add ignore_cur_loc field.
105 (vt_expand_loc_callback): If ignore_cur_loc, don't look at cur_loc and
106 always use the best expression.
107 (vt_expand_loc): Add ignore_cur_loc argument.
108 (vt_expand_loc_dummy): Clear ignore_cur_loc field.
109 (emit_note_insn_var_location): Adjust vt_expand_loc callers.
110 (emit_notes_in_bb) <case MO_CALL>: Add NOTE_INSN_CALL_ARG_LOCATION
111 note for all calls.
112 (vt_add_function_parameter): Use cselib_lookup_from_insn.
113 If dv is a VALUE, enter into hash table also ENTRY_VALUE for the
114 argument. Don't call cselib_preserve_only_values and
115 cselib_reset_table.
116 (note_register_arguments): New function.
117 (vt_initialize): Compute argument_reg_set. Call
118 vt_add_function_parameters before processing basic blocks instead of
119 afterwards. For calls call prepare_call_arguments before calling
120 cselib_process_insn.
121 * print-rtl.c (print_rtx): Handle NOTE_INSN_CALL_ARG_LOCATION.
122 * Makefile.in (dwarf2out.o): Depend on $(CFGLAYOUT_H).
123 (var-tracking.o): Depend on $(TM_P_H).
124 * cfglayout.h (insn_scope): New prototype.
125 * gengtype.c (adjust_field_rtx_def): Handle NOTE_INSN_CALL_ARG_LOCATION.
126 * cfglayout.c (insn_scope): No longer static.
127 * insn-notes.def (CALL_ARG_LOCATION): New.
128 * calls.c (expand_call, emit_library_call_value_1): Put USEs for
129 MEM arguments into CALL_INSN_FUNCTION_USAGE unconditionally.
130 * integrate.c (set_block_origin_self, set_block_abstract_flags): Do
131 nothing for DECL_EXTERNAL BLOCK_VARS.
132
9ef13bd0
AM
1332011-03-16 Alan Modra <amodra@gmail.com>
134
135 PR target/45844
136 * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
137 create invalid offset address for vsx splat insn.
138 * config/rs6000/predicates.md (splat_input_operand): New.
139 * config/rs6000/vsx.md (vsx_splat_*): Use it.
140
56b67510
XDL
1412011-03-15 Xinliang David Li <davidxl@google.com>
142
143 PR c/47837
144 * tree-ssa-uninit.c (pred_chain_length_cmp): New function.
145 (normalize_preds): New function.
146 (is_use_properly_guarded): Normalize def predicates.
147
80fffdef
RR
1482011-03-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
149
9751171c 150 PR target/46778
80fffdef
RR
151 * config/arm/arm.md (arm_movtas_ze): Use 'L' instead of 'c'
152 in the output template.
153
930672ad
RG
1542011-03-15 Richard Guenther <rguenther@suse.de>
155
156 PR middle-end/47650
157 * tree-pretty-print.c (dump_function_declaration): Properly
158 dump unprototyped and varargs function types.
159
c7ee7b45
RG
1602011-03-15 Richard Guenther <rguenther@suse.de>
161
162 PR tree-optimization/13954
163 * tree-ssa-sccvn.c (vn_reference_lookup_3): Look through memcpy
164 and friends.
165
b2ad5e37
RG
1662011-03-15 Richard Guenther <rguenther@suse.de>
167
168 PR tree-optimization/48037
169 * tree-ssa.c (maybe_rewrite_mem_ref_base): Rewrite vector
170 selects into BIT_FIELD_REFs.
171 (non_rewritable_mem_ref_base): Check if a MEM_REF is a
172 vector select.
173
7ee93d4e
JJ
1742011-03-15 Jakub Jelinek <jakub@redhat.com>
175
176 PR tree-optimization/48129
177 * builtins.c (fold_builtin_snprintf): Convert to type of
178 built_in_decls[BUILT_IN_SNPRINTF] retval instead of
179 implicit_built_in_decls[BUILT_IN_SNPRINTF] retval.
180
e106efc7
RG
1812011-03-15 Richard Guenther <rguenther@suse.de>
182
183 PR tree-optimization/41490
184 * tree-ssa-dce.c (propagate_necessity): Handle returns without
185 value but with VUSE.
186 * tree-ssa-operands.c (parse_ssa_operands): Add a VUSE on all
187 return statements.
188 * tree-ssa-sink.c (statement_sink_location): Fix store sinking.
189 * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Handle virtual PHIs.
190 * tree-tailcall.c (find_tail_calls): Ignore returns.
191
17dea42f
RG
1922011-03-15 Richard Guenther <rguenther@suse.de>
193
194 PR middle-end/48031
195 * fold-const.c (fold_indirect_ref_1): Do not create new variable-sized
196 or variable-indexed array accesses when in gimple form.
197
01c77a60
RG
1982011-03-15 Richard Guenther <rguenther@suse.de>
199
200 * config/i386/i386.c (ix86_emit_swdivsf): Implement more
201 efficiently.
202
77b0791e
AM
2032011-03-15 Alan Modra <amodra@gmail.com>
204
205 PR target/48032
206 * config/rs6000/rs6000.c (offsettable_ok_by_alignment): Do not
207 presume symbol_refs without a symbol_ref_decl are suitably
208 aligned, nor other trees we may see here. Handle anchor symbols.
209 (legitimate_constant_pool_address_p): Comment. Add mode param.
210 Check cmodel=medium addresses. Adjust all calls.
211 (rs6000_emit_move): Don't call offsettable_ok_by_alignment on
212 creating cmodel=medium optimized access to locals.
213 * config/rs6000/constraints.md (R): Pass QImode to
214 legitimate_constant_pool_address_p.
215 * config/rs6000/predicates.md (input_operand): Pass mode to
216 legitimate_constant_pool_address_p.
217 * config/rs6000/rs6000-protos.h (legitimate_constant_pool_address_p):
218 Update prototype.
219
35f61ba4
MM
2202011-03-14 Michael Meissner <meissner@linux.vnet.ibm.com>
221
222 PR target/48053
223 * config/rs6000/rs6000.md (movdi split for 32-bit): Don't split up
224 64-bit constants being loaded into registers other than GPRs such
225 as loading 0 into a VSX register.
226
07332e6d
RO
2272011-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
228
229 * config/sol2.c (solaris_assemble_visibility): Remove obsolete
230 URLs.
231
de888d90
JJ
2322011-03-14 Jakub Jelinek <jakub@redhat.com>
233
ba3ceb2d
JJ
234 PR middle-end/47917
235 * builtins.c (fold_builtin_snprintf): New function.
236 (fold_builtin_3): Call it for BUILT_IN_SNPRINTF.
237 (fold_builtin_4): Likewise.
238
2e64f8b8
JJ
239 PR middle-end/38878
240 * fold-const.c (fold_binary_loc) <case EQ_EXPR, NE_EXPR>: Add
241 STRIP_NOPS on arg0 and arg1. When optimizing X +- C == X
242 and C - X == X also strip nops from +/-/p+ operand.
243 When optimizing -X == C, fold C to arg0's type.
244
de888d90
JJ
245 PR debug/47946
246 * dwarf2out.c (add_bit_offset_attribute): If bit_offset is negative,
247 emit it as add_AT_int instead of add_AT_unsigned.
248
2492011-03-14 Tom Tromey <tromey@redhat.com>
f4e749b4
TT
250
251 * unwind-dw2.c: Include sys/sdt.h if it exists.
252 (_Unwind_DebugHook): Use STAP_PROBE2.
253 * config.in, configure: Rebuild.
254 * configure.ac: Check for sys/sdt.h.
255
d34abfd2
UB
2562011-03-14 Uros Bizjak <ubizjak@gmail.com>
257
258 * config/i386/i386.md (ROUND_FLOOR): New constant.
259 (ROUND_CEIL): Ditto.
260 (ROUND_TRUNC): Ditto.
261 (ROUND_MXCSR): Ditto.
262 (ROUND_NO_EXC): Ditto.
263 (rint<mode>2): Use new defines instead of numerical constants.
264 (floor<mode>2): Ditto.
265 (ceil<mode>2): Ditto.
266 (btrunc<mode>2): Ditto.
267 * config/i386/i386-builtin-types.def: Define ROUND function type
268 aliases.
269 * config/i386/i386.c (enum ix86_builtins): Add
270 IX86_BUILTIN_{FLOOR,CEIL,TRUNC,RINT}{PS,PD}{,256} defines.
271 (struct builtin_description): Add
272 __builtin_ia32_{floor,ceil,trunc,rint}{pd,ps}{,256} descriptions.
273 (ix86_expand_sse_round): New static function.
274 (ix86_expand_args_builtin): Call ix86_expand_sse_round for ROUND
275 function types.
276 (ix86_builtin_vectorized_function): Handle
277 BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.
278
87f9e23d
TT
2792011-03-14 Tom Tromey <tromey@redhat.com>
280
281 * c-parser.c (c_parser_asm_string_literal): Clear
282 warn_overlength_strings.
283
b3ab9ea2
TT
2842011-03-14 Tom Tromey <tromey@redhat.com>
285
286 * c-parser.c (disable_extension_diagnostics): Save
287 warn_overlength_strings.
288 (restore_extension_diagnostics): Restore warn_overlength_strings.
289
6bd73dd8
JJ
2902011-03-14 Jakub Jelinek <jakub@redhat.com>
291
292 * BASE-VER: Change to 4.7.0.
293
7f4d6e1b
RG
2942011-03-14 Richard Guenther <rguenther@suse.de>
295
296 PR middle-end/48098
297 * tree.c (build_vector_from_val): Adjust assert to requirements
298 and reality.
299
c6104ef1
JJ
3002011-03-14 Jakub Jelinek <jakub@redhat.com>
301
302 PR bootstrap/48102
d34abfd2 303 * graphite-cloog-compat.h (build_cloog_prog): Remove STATE parameter.
c6104ef1 304
dfa95e19
AT
3052011-03-14 Andreas Tobler <andreast@fgznet.ch>
306
307 * config/rs6000/freebsd.h: (RELOCATABLE_NEEDS_FIXUP): Define in
308 terms of target_flags_explicit. Adjust copyright year.
309
310 * config.gcc: Add FreeBSD PowerPC soft-float libgcc bits.
311 * config/rs6000/t-freebsd: New file. Add override for
312 LIB2FUNCS_EXTRA.
313
bb322018
CD
3142011-03-13 Chris Demetriou <cgd@google.com>
315
316 * doc/invoke.texi (-fdiagnostics-show-option): Replace with...
317 (-fno-diagnostics-show-option): this, to reflect current default.
318 (-Werror=): Update text about -fno-diagnostics-show-option.
319
12b1c80b
PB
3202011-03-12 Peter Bergner <bergner@vnet.ibm.com>
321
322 PR target/48053
323 * config/rs6000/predicates.md (easy_vector_constant_add_self,
324 easy_vector_constant_msb): Do not handle V2DImode and V2DFmode.
325 * config/rs6000/rs6000.c (const_vector_elt_as_int): Add assert that
326 mode is not V2DImode or V2DFmode.
327 (vspltis_constant): Do not handle V2DImode and V2DFmode.
328 (rs6000_expand_vector_init): Replace copy_to_reg with copy_to_mode_reg.
329 * config/rs6000/rs6000.md (movdi_internal32): Allow setting VSX
330 registers to 0.
331 (movdi_internal64): Likewise.
332
57d598f7
SP
3332011-03-12 Sebastian Pop <sebastian.pop@amd.com>
334
335 PR tree-optimization/47127
336 * graphite-clast-to-gimple.c (build_cloog_prog): Removed state
337 parameter.
338 (set_cloog_options): Same.
339 (scop_to_clast): Same.
340 (print_clast_stmt): Do not call cloog_state_malloc and
341 cloog_state_free.
342 (print_generated_program): Same.
343 (gloog): Same.
344 * graphite-clast-to-gimple.h (cloog_state): Declared.
345 (scop_to_clast): Adjust declaration.
346 * graphite.c (cloog_state): Defined here.
347 (graphite_initialize): Call cloog_state_malloc.
348 (graphite_finalize): Call cloog_state_free.
349
f231b5ff
JM
3502011-03-11 Jason Merrill <jason@redhat.com>
351
352 * attribs.c (lookup_attribute_spec): Take const_tree.
353 * tree.h: Adjust.
354
6a4e2bd5
JM
3552011-03-11 Joseph Myers <joseph@codesourcery.com>
356
357 * config/sparc/sparc.c (sparc_option_override): Use
358 PROCESSOR_NIAGARA2 not PROCESSOR_NIAGARA for "niagara2".
359
a758fd67
RG
3602011-03-11 Richard Guenther <rguenther@suse.de>
361
362 PR tree-optimization/48067
363 * tree-ssa-math-opts.c (convert_mult_to_fma): Verify the
364 multiplication result will be only used once on the target
365 stmt.
366
03dfda54
RG
3672011-03-11 Richard Guenther <rguenther@suse.de>
368
369 * doc/invoke.texi (max-inline-insns-single): Adjust default value.
370
5f11a50a
RG
3712011-03-11 Richard Guenther <rguenther@suse.de>
372
373 PR lto/48073
374 * tree.c (find_decls_types_r): Do not walk types only reachable
375 from IDENTIFIER_NODEs.
376
4074f163
JJ
3772011-03-11 Jakub Jelinek <jakub@redhat.com>
378
379 PR middle-end/48044
380 * ipa.c (cgraph_remove_unreachable_nodes): Enqueue
381 all vnode->force_output nodes as needed.
382
30f7cdcd
JM
3832011-03-11 Jason Merrill <jason@redhat.com>
384
385 PR c++/48069
386 * tree.c (type_hash_eq): Use COMPLETE_TYPE_P, not
387 COMPLETE_OR_UNBOUND_ARRAY_TYPE_P.
388
62ecfeb8
MJ
3892011-03-11 Martin Jambor <mjambor@suse.cz>
390
391 * cgraphunit.c (verify_cgraph_node): Call cgraph_get_node instead of
392 cgraph_node.
393
e89e03ab
JJ
3942011-03-11 Jakub Jelinek <jakub@redhat.com>
395
396 PR tree-optimization/48063
397 * ipa-inline.c (cgraph_decide_inlining): Don't try to
398 inline functions called once if !tree_can_inline_p (node->callers).
399
efbe978b 4002011-03-11 Chen Liqin <liqin.gcc@gmail.com>
9d6193a7 401
efbe978b
EB
402 * config.gcc (score-*-elf): Add extra_parts .., update tmake_file and
403 extra_objs.
9d6193a7
CL
404 * config/score/score3.c: Delete.
405 * config/score/score3.h: Delete.
406 * config/score/mul-div.S: Delete.
407 * config/score/sfp-machine.h: Add new file.
408 * config/score/constraints.md: Add new file.
409 * config/score/t-score-softfp: Add new file.
efbe978b 410 * config/score/t-score-elf: Remove score3.o, do not generate multilib.
9d6193a7
CL
411 * config/score/score7.c (score7_const_ok_for_letter_p): Delete.
412 (score7_extra_constraint): Delete.
efbe978b 413 (score7_option_override): Remove unused code.
9d6193a7
CL
414 * config/score/score.c: Remove score3 and score5 define and code.
415 * config/score/score.h: Remove score3 and score5 define and code.
efbe978b 416 * config/score/score.md: Remove score3 template and unusual insn.
9d6193a7
CL
417 * config/score/score.opt: Remove score3 and score5 options.
418
5de27cca
JDA
4192011-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
420
421 * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Define _REENTRANT
422 when _HPUX_SOURCE is defined.
423 (LIB_SPEC): Use -lc instead of -lc_r when -threads is specified.
424
18d92053
JM
4252011-03-10 Jason Merrill <jason@redhat.com>
426
427 PR c++/48029
428 * stor-layout.c (layout_type): Don't set structural equality
429 on arrays of incomplete type.
430 * tree.c (type_hash_eq): Handle comparing them properly.
431
67a2f76d
JJ
4322011-03-10 Jakub Jelinek <jakub@redhat.com>
433
434 PR debug/48043
18d92053 435 * config/s390/s390.c (s390_delegitimize_address): Make sure the
67a2f76d
JJ
436 result mode matches original rtl mode.
437
d845b2f9
NC
4382011-03-10 Nick Clifton <nickc@redhat.com>
439
440 * config/rx/rx.md (bitset_in_memory, bitclr_in_memory: Fix timings.
39242686 441 (andsi3, andsi3_flags): Fix timings for three operand alternative.
d845b2f9 442
db7ec035
JJ
4432011-03-09 Jakub Jelinek <jakub@redhat.com>
444
445 PR rtl-optimization/47866
446 * expr.c (store_field): If MEM_SCALAR_P (target), don't use
447 MEM_SET_IN_STRUCT_P (to_rtx, 1), just set MEM_IN_STRUCT_P (to_rtx)
448 if target wasn't scalar.
449 * function.c (assign_stack_temp_for_type): Assert that neither
450 MEM_SCALAR_P nor MEM_IN_STRUCT_P is set previously, set either
451 MEM_IN_STRUCT_P or MEM_SCALAR_P instead of using MEM_SET_IN_STRUCT_P
452 macro.
453 * rtl.h (MEM_SET_IN_STRUCT_P): Removed.
454
5d304e47
AK
4552011-03-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
456
457 * config/s390/s390-protos.h (s390_label_align): New prototype.
458 * config/s390/s390.c (s390_label_align): New function.
459 * config/s390/s390.h (LABEL_ALIGN): New target macro definition.
460
93b826f0
MM
4612011-03-08 Michael Meissner <meissner@linux.vnet.ibm.com>
462
463 PR target/47755
464 * config/rs6000/rs6000.c (easy_altivec_constant): Correctly handle
465 V2DI/V2DF constants. Only all 0's or all 1's are easy.
466 (output_vec_const_move): Ditto.
467
ef78aed6
AS
4682011-03-08 Anatoly Sokolov <aesok@post.ru>
469
470 * config/mips/mips.h (PREFERRED_RELOAD_CLASS): Remove macro.
471 * config/mips/mips-protos.h (mips_preferred_reload_class): Remove.
472 * config/mips/mips.c (mips_preferred_reload_class): Make static.
473 Change 'rclass' argument and result type to reg_class_t.
474 (TARGET_PREFERRED_RELOAD_CLASS): Define.
475
5f892aa0
GJL
4762011-03-08 Georg-Johann Lay <avr@gjlay.de>
477
478 * config/avr/avr.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
479 * config/avr/avr.c (TARGET_REGISTER_MOVE_COST,
480 TARGET_MEMORY_MOVE_COST): Define.
481 (avr_register_move_cost, avr_memory_move_cost): New Functions.
482
32bd2409
JJ
4832011-03-08 Jakub Jelinek <jakub@redhat.com>
484
530a4800
JJ
485 PR debug/47881
486 * ira.c (ira): Call df_analyze again if delete_trivially_dead_insns
487 removed anything.
488
32bd2409
JJ
489 PR tree-optimization/48022
490 * fold-const.c (fold_comparison): Don't call fold_overflow_warning
491 for EQ/NE_EXPR.
492
c7148991
JJ
4932011-03-07 Jakub Jelinek <jakub@redhat.com>
494
495 PR debug/47991
496 * var-tracking.c (find_use_val): Return NULL for
497 cui->sets && cui->store_p BLKmode MEMs.
498
43070a6e
AS
4992011-03-07 Anatoly Sokolov <aesok@post.ru>
500
501 * config/stormy16/stormy16.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS):
502 Remove.
503 * config/stormy16/stormy16-protos.h (xstormy16_print_operand,
504 xstormy16_print_operand_address): Remove.
505 * config/stormy16/stormy16.c (xstormy16_print_operand,
506 xstormy16_print_operand_address): Make static.
507 (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
508
efbe978b 5092011-03-07 Pat Haugen <pthaugen@us.ibm.com>
79eefb0d
PH
510
511 PR target/47862
512 * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
513 * config/rs6000/e500.h (HARD_REGNO_CALLER_SAVE_MODE): Undefine
514 before definition.
515
cec8ac0b
ZD
5162011-03-07 Zdenek Dvorak <ook@ucw.cz>
517
518 PR bootstrap/48000
519 * cfgloopmanip.c (fix_bb_placements): Return immediately
520 if FROM is BASE_LOOP's header.
521
59527282
PW
5222011-03-07 Paul Wögerer <paul_woegerer@mentor.com>
523
524 * gimplify.c (gimplify_function_tree): Fix building calls
525 to __builtin_return_address.
526
617718f7
AM
5272011-03-07 Alan Modra <amodra@gmail.com>
528
529 * config/rs6000/linux.h (TARGET_ASM_FILE_END): Don't define.
530 * config/rs6000/linux64.h (TARGET_ASM_FILE_END): Don't define.
531 * config/rs6000/sysv4.h (TARGET_ASM_FILE_END): Define.
532 * config/rs6000/rs6000-protos.h (init_cumulative_args): Add fndecl and
533 return_mode args.
534 * config/rs6000/rs6000.h (CUMULATIVE_ARGS): Add "escapes".
535 (INIT_CUMULATIVE_ARGS): Pass FNDECL, VOIDmode.
536 (INIT_CUMULATIVE_INCOMING_ARGS): Pass current_function_decl, VOIDmode.
537 (INIT_CUMULATIVE_LIBCALL_ARGS): Pass NULL_TREE, MODE.
538 * config/rs6000/rs6000.c
539 (rs6000_elf_end_indicate_exec_stack): Rename to..
540 (rs6000_elf_file_end): ..this. Only call file_end_indicate_exec_stack
541 for POWERPC_LINUX. Move code emitting .gnu_attribute to here, from..
542 (rs6000_file_start): ..here.
543 (rs6000_passes_float, rs6000_passes_vector, rs6000_returns_struct): New
544 file scope variables.
545 (call_ABI_of_interest): New function.
546 (init_cumulative_args): Set above vars when function return value
547 is a float, vector, or small struct.
548 (rs6000_function_arg_advance_1): Likewise for function args.
549 (rs6000_va_start): Set rs6000_passes_float if variable arg function
550 references float args.
551
38528d50
MX
5522011-03-07 Mingjie Xing <mingjie.xing@gmail.com>
553
554 * doc/cfg.texi: Remove "See" before @ref.
555 * doc/invoke.texi: Likewise.
556
f42cf4f4
JM
5572011-03-05 Jason Merrill <jason@redhat.com>
558
559 * doc/invoke.texi (C++ Dialect Options): Document ABI v5.
560
804a304d
AG
5612011-03-05 Anthony Green <green@moxielogic.com>
562
563 * config.gcc (moxie-*-elf): Add newlib-stdint.h to tmfile.
564
634ee309
ZD
5652011-03-05 Zdenek Dvorak <ook@ucw.cz>
566
567 PR rtl-optimization/47899
568 * cfgloopmanip.c (fix_bb_placements): Fix first argument
569 to flow_loop_nested_p when moving the loop upward.
570
6fe471c8
RE
5712011-03-05 Richard Earnshaw <rearnsha@arm.com>
572
573 PR target/47719
574 * arm.md (movhi_insn_arch4): Accept any immediate constant.
575
cc58ceee
JJ
5762011-03-05 Jakub Jelinek <jakub@redhat.com>
577
578 PR tree-optimization/47967
579 * ipa-cp.c (build_const_val): Return NULL instead of creating
580 VIEW_CONVERT_EXPR for mismatching sizes.
581 (ipcp_create_replace_map): Return NULL if build_const_val failed.
582 (ipcp_insert_stage): If ipcp_create_replace_map returns NULL,
583 give up on versioning.
584
ea868305
AM
5852011-03-05 Alan Modra <amodra@gmail.com>
586
587 PR target/47986
588 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
589 full cmodel medium/large lo_sum + high addresses.
590
bc6ce334
AK
5912011-03-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
592
593 * config/s390/s390.c (s390_decompose_address): Reject non-literal
594 pool references in UNSPEC_LTREL_OFFSET.
595
87e7b310
JH
5962011-03-04 Jan Hubicka <jh@suse.cz>
597
598 PR lto/47497
599 * lto-symtab.c (lto_cgraph_replace_node): Do not set thunk.alias.
600 (lto_symtab_merge_cgraph_nodes_1): Update thunk.alias pointers here.
d34abfd2
UB
601 * cgraph.h (cgraph_same_body_alias, cgraph_add_thunk):
602 Add node pointers.
87e7b310
JH
603 * cgraph.c (cgraph_same_body_alias_1, cgraph_same_body_alias,
604 cgraph_add_thunk): Add node pointers.
605 * lto-cgraph.c (lto_output_node): Verify that thunks&aliases are
606 associated to right node.
607 (input_node): Update use of cgraph_same_body_alias
608 and cgraph_add_thunk.
609
d9c64246
CF
6102011-03-04 Changpeng Fang <changpeng.fang@amd.com>
611
612 * config/i386/i386.opt (mprefer-avx128): New flag.
d34abfd2
UB
613 * config/i386/i386.c (ix86_preferred_simd_mode): Prefer 128-bit AVX
614 modes when the flag -mprefer-avx128 is on.
d9c64246 615
08707076
RS
6162011-03-04 Richard Sandiford <richard.sandiford@linaro.org>
617
618 * dwarf2out.c (compare_loc_operands): Fix address handling.
619
52517c81
AM
6202011-03-04 Alan Modra <amodra@gmail.com>
621
622 * tree.h (TREE_ADDRESSABLE): Update FUNCTION_DECL comment.
623
b147c5b9
RG
6242011-03-04 Richard Guenther <rguenther@suse.de>
625
626 PR middle-end/47968
627 * expmed.c (extract_bit_field_1): Prefer vector modes that
628 vec_extract patterns can handle.
629
8750672f
RG
6302011-03-04 Richard Guenther <rguenther@suse.de>
631
632 PR middle-end/47975
633 * optabs.c (optab_for_tree_code): Do not use VECTOR_MODE_P.
634
9eac0f2a
RH
6352011-03-04 Richard Henderson <rth@redhat.com>
636
637 * explow.c (emit_stack_save): Remove 'after' parameter.
638 (emit_stack_restore): Likewise.
639 * expr.h: Update to match.
640 * builtins.c, calls.c, stmt.c: Likewise.
641 * config/alpha/alpha.md, config/avr/avr.md: Likewise.
642 * config/mips/mips.md, config/pa/pa.md, config/vax/vax.md: Likewise.
643 * function.c (expand_function_end): Insert the emit_stack_save
644 sequence before parm_birth_insn instead of after.
645
dfee1406
UB
6462011-03-03 Uros Bizjak <ubizjak@gmail.com>
647
648 * config/i386/sse.md (*avx_pmaddubsw128): Fix mode of VEC_SELECT RTX.
649 (ssse3_pmaddubsw128): Ditto.
650 (ssse3_pmaddubsw): Ditto.
651
f1d4c3de
SE
6522011-03-03 Steve Ellcey <sje@cup.hp.com>
653
654 * config/ia64/t-hpux: Add $(srcdir)/unwind-c.c to LIB2ADDEH
655
71f3a3f5
JJ
6562011-03-03 Jakub Jelinek <jakub@redhat.com>
657
423ed416
JJ
658 PR c/47963
659 * gimplify.c (omp_add_variable): Only call omp_notice_variable
660 on TYPE_SIZE_UNIT if it is a DECL.
661
71f3a3f5
JJ
662 PR debug/47283
663 * cfgexpand.c (expand_debug_expr) <case MEM_REF>: If MEM_REF
664 first operand is not is_gimple_mem_ref_addr, try to fold it.
665 If the operand still isn't is_gimple_mem_ref_addr, clear
666 MEM_EXPR on op0.
667
4b1a5c0d
RG
6682011-03-03 Richard Guenther <rguenther@suse.de>
669
670 PR middle-end/47283
671 * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Make code
672 match comment.
673 (refs_may_alias_p_1): For release branches return true if
674 we are confused by our input.
675
b46616fd
AK
6762011-03-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
677
678 * config/s390/s390.c (s390_function_value): Rename to ...
679 (s390_function_and_libcall_value): ... this.
680 (s390_function_value): New function.
681 (s390_libcall_value): New function.
dfee1406 682 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Define target hooks.
b46616fd
AK
683 * config/s390/s390.h (FUNCTION_VALUE, LIBCALL_VALUE): Remove
684 target macro definitions.
685 * config/s390/s390-protos.h (s390_function_value): Remove prototype.
686
46d8fabb
JM
6872011-03-02 Joseph Myers <joseph@codesourcery.com>
688
689 * config/i386/freebsd64.h (CC1_SPEC): Define.
690 * config/i386/linux64.h (CC1_SPEC): Define.
691 * config/i386/x86-64.h (CC1_SPEC): Don't define.
692
6b1ce545
AS
6932011-03-02 Anatoly Sokolov <aesok@post.ru>
694
695 * config/stormy16/stormy16.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
696 Remove.
697 * config/stormy16/stormy16.c: Include reload.h.
698 (xstormy16_memory_move_cost): New function.
699 (TARGET_MEMORY_MOVE_COST): Define.
700
34161e98
RS
7012011-03-02 Richard Sandiford <richard.sandiford@linaro.org>
702
703 PR rtl-optimization/47925
704 * cse.c (count_reg_usage): Don't ignore the SET_DEST of instructions
705 with side effects. Remove the more-specific check for volatile asms.
706
f60a97cf
AM
7072011-03-02 Alan Modra <amodra@gmail.com>
708
709 PR target/47935
710 * config/rs6000/predicates.md (lwa_operand): Check cmodel medium
711 toc relative addresses for valid offsets.
712
f2ca11ca
RG
7132011-03-01 Richard Guenther <rguenther@suse.de>
714
715 PR tree-optimization/47890
716 * tree-vect-loop.c (get_initial_def_for_induction): Set
717 related stmt properly.
718
7a00d9ea
RG
7192011-03-01 Richard Guenther <rguenther@suse.de>
720
721 PR lto/47924
722 * lto-streamer.c (lto_record_common_node): Also register
723 the canonical type.
724
06c7edcc
RG
7252011-03-01 Richard Guenther <rguenther@suse.de>
726
727 PR lto/46911
728 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
729 Do not stream DECL_ABSTRACT_ORIGIN.
730 (lto_input_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
731 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
732 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
733 Do not stream DECL_ABSTRACT_ORIGIN.
734 (lto_output_ts_block_tree_pointers): Nor BLOCK_SOURCE_LOCATION,
735 BLOCK_NONLOCALIZED_VARS or BLOCK_ABSTRACT_ORIGIN.
736
998871e9
AS
7372011-02-28 Anatoly Sokolov <aesok@post.ru>
738
739 * config/stormy16/stormy16.h (FUNCTION_VALUE, LIBCALL_VALUE,
740 FUNCTION_VALUE_REGNO_P): Remove.
b2e2ea67 741 * config/stormy16/stormy16-protos.h (xstormy16_function_value): Remove.
998871e9
AS
742 * config/stormy16/stormy16.c (xstormy16_function_value): Make static.
743 Add 'outgoing' argument.
744 (xstormy16_libcall_value, xstormy16_function_value_regno_p): New
745 function.
746 (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
747 TARGET_FUNCTION_VALUE_REGNO_P): Define.
748
94369251
KT
7492011-02-28 Kai Tietz <kai.tietz@onevision.com>
750
751 PR debug/28047
752 * dwarf2out.c (file_table_eq): Use filename_cmp instead of strcmp.
753 (lookup_filename): Likewise.
b2e2ea67 754 * final.c (remap_debug_filename): Use filename_ncmp instead of strncmp.
94369251 755
80a832cd
JJ
7562011-02-28 Bernd Schmidt <bernds@codesourcery.com>
757 Jakub Jelinek <jakub@redhat.com>
758
759 PR middle-end/47893
760 * rtl.h (ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Define.
761 (assign_stack_local_1): Change last argument type to int.
762 * function.c (assign_stack_local_1): Replace reduce_alignment_ok
763 argument with kind. If bit ASLK_RECORD_PAD is not set in it,
b2e2ea67 764 don't record padding space into frame_space_list nor use those areas.
80a832cd
JJ
765 (assign_stack_local): Adjust caller.
766 (assign_stack_temp_for_type): Call assign_stack_local_1 instead
767 of assign_stack_local, pass 0 as last argument.
768 * caller-save.c (setup_save_areas): Adjust assign_stack_local_1
769 callers.
770
1b500976
JJ
7712011-02-28 Jakub Jelinek <jakub@redhat.com>
772
f61c6f34
JJ
773 PR debug/47283
774 * cfgexpand.c (convert_debug_memory_address): Add AS parameter.
775 Use target address_mode and pointer_mode hooks instead of hardcoded
776 Pmode and ptr_mode. Handle some simple cases of extending if
777 POINTERS_EXTEND_UNSIGNED < 0.
778 (expand_debug_expr) <case MEM_REF, INDIRECT_REF, TARGET_MEM_REF>:
779 Call convert_debug_memory_address.
780 (expand_debug_expr) <case ADDR_EXPR>: Pass as to
781 convert_debug_memory_address.
782
1b500976
JJ
783 PR middle-end/46790
784 * configure.ac (HAVE_LD_EH_GC_SECTIONS_BUG): New test.
785 * configure: Regenerated.
786 * config.in: Regenerated.
787 * varasm.c (default_function_section): Return NULL
b2e2ea67 788 if HAVE_LD_EH_GC_SECTIONS_BUG and decl has implicit section name.
1b500976 789
2f2935b6
MJ
7902011-02-28 Martin Jambor <mjambor@suse.cz>
791
792 * ipa-inline.c (cgraph_decide_inlining_of_small_functions): Fix
793 the description to match the printed values.
794
474086eb
RG
7952011-02-28 Richard Guenther <rguenther@suse.de>
796
797 * tree-inline.c (tree_function_versioning): Set BLOCK_SUPERCONTEXT
798 of the copied scope tree.
799
15bf6f3a
RW
8002011-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
801
802 * doc/extend.texi (Function Attributes): Avoid deeply (and
803 wrongly) nested tables.
804
f6b439c9
JJ
8052011-02-27 Jakub Jelinek <jakub@redhat.com>
806
807 PR middle-end/47903
808 * real.c (real_arithmetic) <case PLUS_EXPR, MINUS_EXPR,
809 MULT_EXPR, RDIV_EXPR>: Clear padding bits in *r first if
810 r isn't op0 nor op1.
811
1d8ca2c7
GJL
8122011-02-23 Georg-Johann Lay <avr@gjlay.de>
813
814 * config/avr/avr.md: Remove magic comment for emacs.
815
593fca4b
GJL
8162011-02-23 Georg-Johann Lay <avr@gjlay.de>
817
818 PR target/45261
819 * config/avr/avr.c (avr_option_override): Use error on bad options.
820 (avr_help): New function.
821 (TARGET_HELP): Define.
822
6609216e
GJL
8232011-02-22 Georg-Johann Lay <avr@gjlay.de>
824
825 PR target/42240
826 * config/avr/avr.c (avr_cannot_modify_jumps_p): New function.
827 (TARGET_CANNOT_MODIFY_JUMPS_P): Define.
828
03d458af
GP
8292011-02-26 Gerald Pfeifer <gerald@pfeifer.com>
830
831 * doc/invoke.texi (ARC Options): Use CPU instead of cpu.
832 (ARM Options): Ditto.
833 (i386 and x86-64 Options): Ditto.
834 (RX Options): Ditto.
835 (SPARC Options): Ditto.
836
1c379b78
TC
8372011-02-26 Tijl Coosemans <tijl@coosemans.org>
838
839 * config.gcc (i386-*-freebsd*): Make i486 the default arch on
840 FreeBSD 6 and later. Generally use cpu generic.
841
d5ed058c 8422011-02-25 Gerald Pfeifer <gerald@pfeifer.com>
b2e2ea67 843
d5ed058c
GP
844 * doc/cpp.texi: Update copyright years.
845
509d65dd 8462011-02-25 Sebastien Bourdeauducq <sebastien@milkymist.org>
308d39cd 847
509d65dd 848 PR target/46898
308d39cd
SB
849 * config/lm32/lm32.md (ashrsi3): Added needed variable.
850
509d65dd 8512011-02-25 Jon Beniston <jon@beniston.com>
308d39cd 852
509d65dd 853 PR target/46898
308d39cd
SB
854 * config/lm32/lm32.h (INCOMING_RETURN_ADDR_RTX): New.
855 * config/lm32/lm32.md (ashlsi3): Remove unused variable.
856 * config/lm32/lm32.c (TARGET_EXCEPT_UNWIND_INFO): New.
857 (lm32_block_move_inline): Add type cast to remove warning.
b2e2ea67 858 (lm32_expand_prologue): Generate fp in a way compatible with dwarf2out.
308d39cd
SB
859 (gen_int_relational): Move declarations to start of function.
860
822ba6d7
EB
8612011-02-25 Eric Botcazou <ebotcazou@adacore.com>
862
863 PR tree-optimization/45470
864 * tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
865 can throw internally only.
866 * tree-vect-stmts.c (vectorizable_call): Likewise.
867
ef795fc2
AS
8682011-02-24 Anatoly Sokolov <aesok@post.ru>
869
870 * config/stormy16/stormy16.h (PREFERRED_RELOAD_CLASS,
871 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
872 * config/stormy16/stormy16-protos.h
873 (xstormy16_preferred_reload_class): Remove.
874 * config/stormy16/stormy16.c (xstormy16_preferred_reload_class): Make
875 static. Change 'rclass' argument and return type to reg_class_t.
876 (TARGET_PREFERRED_RELOAD_CLASS,
877 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
878
1c3277ee
RG
8792011-02-24 Richard Guenther <rguenther@suse.de>
880
881 * lto-streamer-in.c (input_bb): Do not find referenced vars
882 in debug statements.
883
67e18edb
JM
8842011-02-23 Jason Merrill <jason@redhat.com>
885
886 * common.opt (fabi-version): Document v5 and v6.
887
b14fad9d
RG
8882011-02-23 Richard Guenther <rguenther@suse.de>
889
890 PR tree-optimization/47849
891 * tree-if-conv.c (main_tree_if_conversion): Free postdom info.
892
7fcf46f5
JZ
8932011-02-23 Jie Zhang <jie@codesourcery.com>
894
895 * opts-common.c (decode_cmdline_option): Print empty string
896 argument as "" in decoded->orig_option_with_args_text.
897 * gcc.c (execute): Print empty string argument as ""
898 in the verbose output.
899 (do_spec_1): Keep empty string argument.
900
f85b70fd
NF
9012011-02-23 Nathan Froyd <froydnj@codesourcery.com>
902
903 * config.gcc: Declare score-* and crx-* obsolete.
904
b152a615
JZ
9052011-02-23 Jie Zhang <jie@codesourcery.com>
906
907 PR rtl-optimization/47763
908 * web.c (web_main): Ignore naked clobber when replacing register.
909
bb6e77bc
AS
9102011-02-22 Anatoly Sokolov <aesok@post.ru>
911
912 * config/stormy16/stormy16.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P):
913 Remove.
914
68bf6491
SP
9152011-02-22 Sebastian Pop <sebastian.pop@amd.com>
916
917 PR doc/47848
918 * doc/invoke.texi: Do not mention -ftree-loop-if-convert-memory-writes.
919
88ee1fc7
MS
9202011-02-22 Mike Stump <mikestump@comcast.net>
921
922 * acinclude.m4 (gcc_cv_gas_vers): Add -arch ppc for probing darwin
923 assembler.
924 * configure: Regenerate.
925
6042d1dd
CLT
9262011-02-21 Chung-Lin Tang <cltang@codesourcery.com>
927
928 PR rtl-optimization/46002
929 * ira-color.c (update_copy_costs): Change class intersection
930 test to reg_class_contents[] test of 'hard_regno'.
931
7de97f9e
JM
9322011-02-21 Joseph Myers <joseph@codesourcery.com>
933
934 * config/alpha/osf5.opt (mno-mips-tfile): Mark as Target rather
935 than Driver option.
936 * config/hpux11.opt (mt): Likewise.
937 * config/microblaze/microblaze.opt (mxl-mode-xilkernel): Likewise.
938 * config/rs6000/xilinx.opt (mno-clearbss, mppcperflib): Likewise.
939 * config/vax/elf.opt (mno-asm-pic): Likewise.
940 * config/vms/vms.opt (map, mvms-return-codes): Likewise.
941
d1d46f9f
MS
9422011-02-21 Mike Stump <mikestump@comcast.net>
943
944 PR target/47822
945 * config/darwin-protos.h (darwin_init_cfstring_builtins): Return a
946 tree so we can get save the type.
947 * config/i386/darwin.h (SUBTARGET_INIT_BUILTINS): Reserve builtin slot
948 for CFString instead of trying to use past the end of the builtins.
949 * config/i386/i386.c (IX86_BUILTIN_CFSTRING): Likewise.
950 * config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_CFSTRING): Likewise.
951 * config/rs6000/darwin.h (SUBTARGET_INIT_BUILTINS): Likewise.
952 * config/darwin.c (DARWIN_BUILTIN_CFSTRINGMAKECONSTANTSTRING):
953 Rename to darwin_builtin_cfstring.
954 (darwin_init_cfstring_builtins): Return the built type.
955
23e0d930
UB
9562011-02-21 Uros Bizjak <ubizjak@gmail.com>
957
958 PR target/47840
959 * config/i386/avxintrin.h (_mm256_insert_epi32): Use _mm_insert_epi32.
960 (_mm256_insert_epi64): Use _mm_insert_epi64.
961
192997cf
AS
9622011-02-21 Anatoly Sokolov <aesok@post.ru>
963
964 * config/stormy16/stormy16.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
965 * config/stormy16/stormy16-protos.h
966 (xstormy16_mode_dependent_address_p): Remove.
967 * config/stormy16/stormy16.c (xstormy16_mode_dependent_address_p):
968 Make static. Change return type to bool. Change argument type to
969 const_rtx. Remove dead code.
970 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
971
e292d003
RG
9722011-02-21 Richard Guenther <rguenther@suse.de>
973
974 PR lto/47820
975 * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
976 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
977 (lto_input_ts_block_tree_pointers): Hook a BLOCK into the
978 TUs context.
23e0d930 979 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
e292d003
RG
980 Do not stream DECL_INITIAL for TRANSLATION_UNIT_DECLs.
981
77f846e9
RG
9822011-02-20 Richard Guenther <rguenther@suse.de>
983
984 PR lto/47822
985 * tree.c (free_lang_data_in_decl): Clean builtins from
986 the TU decl BLOCK_VARS.
23e0d930 987
b2cddfc8
AO
9882011-02-19 Alexandre Oliva <aoliva@redhat.com>
989
990 PR debug/47620
991 PR debug/47630
992 * haifa-sched.c (fix_tick_ready): Skip tick computation
993 for debug insns.
994
becf4c11
RG
9952011-02-19 Richard Guenther <rguenther@suse.de>
996
997 PR lto/47647
998 * lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
999 Remove lazy BLOCK_VARS streaming.
1000 (lto_input_ts_block_tree_pointers): Likewise.
1001 * lto-streamer-out.c (lto_output_ts_block_tree_pointers): Likewise.
1002
27f98305
JM
10032011-02-19 Joseph Myers <joseph@codesourcery.com>
1004
1005 * config.gcc (i[34567]86-pc-msdosdjgpp*): Use i386/djgpp-stdint.h.
1006
064bf3f4
JM
10072011-02-19 Joseph Myers <joseph@codesourcery.com>
1008
1009 * config/i386/biarch32.h, config/i386/mach.h,
1010 config/rs6000/aix.opt, config/sh/superh64.h: Remove.
1011
9215ddc3
JJ
10122011-02-19 Jakub Jelinek <jakub@redhat.com>
1013
1014 PR target/47800
1015 * config/i386/i386.md (peephole2 for shift and plus): Use
1016 operands[1] original mode in the first insn.
1017
8b021004
MS
10182011-02-18 Mike Stump <mikestump@comcast.net>
1019
65ded153 1020 * config/t-darwin (TM_H): Add dependency on darwin-sections.def.
8b021004 1021
f84ae14c
JH
10222011-02-18 Jan Hubicka <jh@suse.cz>
1023
1024 PR middle-end/47788
65ded153
EB
1025 * ipa-inline.c (compute_inline_parameters): Set disregard_inline_limits
1026 to zero when the function is not inlinable at all.
f84ae14c 1027
eddabc80
JDA
10282011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1029
1030 * config.gcc (hppa[12]*-*-hpux11*): Set extra_parts.
1031 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1032 pthread_mutex_unlock, pthread_once): Reinstate pthread stubs.
1033 * config/pa/t-pa-hpux11: Add rules to build pthread stubs.
1034 * config/pa/t-pa64: Likewise.
1035 * config/pa/pa-hpux11.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
1036
ca3da783
JJ
10372011-02-18 Jakub Jelinek <jakub@redhat.com>
1038
1039 PR driver/47787
1040 * gcc.c (default_compilers): Clear combinable field for "@cpp-output".
1041
430aa868
JDA
10422011-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1043
1044 PR target/47792
1045 * gthr-dce.h (__gthread_mutx_destroy): Fix typo in name.
1046
4bf7ff7e
AS
10472011-02-18 Anatoly Sokolov <aesok@post.ru>
1048
1049 * config/m32r/m32r.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
1050 RTX_OK_FOR_BASE_P, RTX_OK_FOR_OFFSET_P, LEGITIMATE_OFFSET_ADDRESS_P,
1051 LEGITIMATE_LO_SUM_ADDRESS_P, LOAD_POSTINC_P, STORE_PREINC_PREDEC_P,
1052 GO_IF_LEGITIMATE_ADDRESS): Remove macros.
1053 * config/m32r/m32r.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
1054 (m32r_rtx_ok_for_base_p, m32r_rtx_ok_for_offset_p,
1055 m32r_legitimate_offset_addres_p, m32r_legitimate_lo_sum_addres_p,
1056 m32r_load_postinc_p, m32r_store_preinc_predec_p,
1057 m32r_legitimate_address_p): New functions.
1058 * config/m32r/constraints.md (constraint "S"): Don't use
1059 STORE_PREINC_PREDEC_P.
1060 (constraint "U"): Don't use LOAD_POSTINC_P.
1061
7efcf910
CLT
10622011-02-18 Chung-Lin Tang <cltang@codesourcery.com>
1063
1064 PR rtl-optimization/46178
1065 * ira.c (setup_hard_regno_class): Use ira_class_translate[] to
1066 compute ira_hard_regno_cover_class[].
1067
237d6259
RG
10682011-02-18 Richard Guenther <rguenther@suse.de>
1069
1070 PR lto/47798
1071 * lto-streamer.h (lto_global_var_decls): Declare.
1072 * lto-streamer-in.c (lto_register_var_decl_in_symtab): Register
1073 statics for global var processing.
1074
12d80acc
RG
10752011-02-18 Richard Guenther <rguenther@suse.de>
1076
1077 PR tree-optimization/47737
1078 * tree-ssa-loop-im.c (extract_true_false_args_from_phi): Fix
1079 edge dominance check.
1080
abfea58d
JJ
10812011-02-18 Jakub Jelinek <jakub@redhat.com>
1082
1083 PR debug/47780
1084 * cfgexpand.c (expand_debug_expr) <case SSA_NAME>: Call copy_rtx to
1085 avoid invalid rtx sharing.
1086
f73c8882
GP
10872011-02-18 Gerald Pfeifer <gerald@pfeifer.com>
1088
1089 * doc/cpp.texi (Obsolete Features): Add background on the
1090 origin of assertions.
1091
d764a8e6
IS
10922011-02-17 Iain Sandoe <iains@gcc.gnu.org>
1093
1094 * config/darwin-c.c (darwin_cpp_builtins): Define __OBJC2__ for
23e0d930 1095 objc_abi == 2.
d764a8e6
IS
1096 * config/darwin.c (output_objc_section_asm_op): Added support for
1097 ABI v1 and v2.
1098 (is_objc_metadata): New.
1099 (darwin_objc2_section): New.
1100 (darwin_objc1_section): New.
1101 (machopic_select_section): Added support for ABI v1 and v2.
1102 (darwin_emit_objc_zeroed): New.
1103 (darwin_output_aligned_bss): Detect objc metadata and treat it
1104 appropriately.
1105 (darwin_asm_output_aligned_decl_common): Same.
1106 (darwin_asm_output_aligned_decl_local): Same.
1107 * config/darwin-sections.def: Updated for ABI v1 and v2.
1108 * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): When
1109 compiling Objective-C code for the NeXT runtime, default to using
1110 ABI version 0 for 32-bit, and version 2 for 64-bit.
1111
0a8134ca
JM
11122011-02-17 Joseph Myers <joseph@codesourcery.com>
1113
1114 * common.opt (optimize_fast): New Variable.
1115 * opts.c (default_options_optimization): Use opts->x_optimize_fast
1116 instead of local variable ofast.
1117
0a256240
NP
11182011-02-17 Nicola Pero <nicola.pero@meta-innovation.com>
1119
1120 * doc/invoke.texi (fobjc-abi-version): Documented.
1121 (fobjc-nilcheck): Documented.
1122 (fno-nil-receiver): Updated documentation to refer to the NeXT ABI
1123 version.
1124
fa381cb2
JM
11252011-02-17 Joseph Myers <joseph@codesourcery.com>
1126
1127 PR driver/47390
1128 * common.opt (export-dynamic): New Driver option.
1129 * gcc.c (LINK_COMMAND_SPEC): Add comment about %{e*}.
1130
5437eaa6
JM
11312011-02-17 Joseph Myers <joseph@codesourcery.com>
1132
1133 * config/rx/rx.h (LIB_SPEC): Match -msim not -msim*.
1134
bb7e6d55
AO
11352011-02-17 Alexandre Oliva <aoliva@redhat.com>
1136 Jan Hubicka <jh@suse.cz>
1137
1138 PR debug/47106
1139 PR debug/47402
1140 * cfgexpand.c (account_used_vars_for_block): Remove.
1141 (estimated_stack_frame_size): Use referenced vars.
1142 * tree-inline.c (remap_decl): Only mark VAR_DECLs as referenced
1143 that were referenced in the original function. Test src_fn
1144 rather than cfun. Drop redundant get_var_ann.
1145 (setup_one_parameter): Drop redundant get_var_ann.
1146 (declare_return_variable): Likewise.
1147 (copy_decl_for_dup_finish): Mark VAR_DECLs referenced in src_fn.
1148 (copy_arguments_for_versioning): Drop redundant get_var_ann.
1149 * ipa-inline.c (compute_inline_parameters): Do not compute
1150 disregard_inline_limits here.
bb7e6d55
AO
1151 (compute_inlinable_for_current, pass_inlinable): New.
1152 (pass_inline_parameters): Require PROP_referenced_vars.
1153 * cgraphunit.c (cgraph_process_new_functions): Don't run
23e0d930 1154 compute_inline_parameters explicitly unless function is in SSA form.
bb7e6d55
AO
1155 (cgraph_analyze_function): Set .disregard_inline_limits.
1156 * tree-sra.c (convert_callers): Compute inliner parameters
1157 only for functions already in SSA form.
1158
f181a8a7
JM
11592011-02-17 Joseph Myers <joseph@codesourcery.com>
1160
1161 * config/sparc/sparc.h (CPP_ENDIAN_SPEC): Don't handle
1162 -mlittle-endian-data.
1163
c6869789
JM
11642011-02-17 Joseph Myers <joseph@codesourcery.com>
1165
1166 * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): Match -mfpu and
1167 -mno-fpu, not -fpu and -no-fpu.
1168 * config/sparc/sol2-bi.h (OPTION_DEFAULT_SPECS): Likewise.
1169 * config/sparc/sparc.h (OPTION_DEFAULT_SPECS): Likewise.
1170
fbf4bfd3
UB
11712011-02-17 Uros Bizjak <ubizjak@gmail.com>
1172
1173 PR target/43653
1174 * config/i386/i386.c (ix86_secondary_reload): Handle SSE
1175 input reload with PLUS RTX.
1176
70be5dc7
JM
11772011-02-16 Joseph Myers <joseph@codesourcery.com>
1178
1179 * config/mips/mips.opt (mno-mdmx): Use Var(TARGET_MDMX, 0) instead
1180 of InverseVar(MDMX).
1181
30b1646e
JM
11822011-02-16 Joseph Myers <joseph@codesourcery.com>
1183
1184 * config/sh/embed-elf.h (LIBGCC_SPEC): Match -m4-340 instead of
1185 --m4-340.
1186
ab7b71e9
JM
11872011-02-16 Joseph Myers <joseph@codesourcery.com>
1188
1189 * config/mn10300/mn10300.opt (mno-crt0): New.
1190
466f3f08
JM
11912011-02-16 Joseph Myers <joseph@codesourcery.com>
1192
1193 * config/m68k/uclinux.opt (static-libc): New Driver option.
1194
8226cd7b
JM
11952011-02-16 Joseph Myers <joseph@codesourcery.com>
1196
1197 * config/m32c/m32c.h (LIB_SPEC): Match -msim not -msim*.
1198
45cab1d7
JM
11992011-02-16 Joseph Myers <joseph@codesourcery.com>
1200
1201 * config/lm32/lm32.h (ASM_SPEC): Use %{muser-enabled} instead of
1202 %{muser-extend-enabled}.
1203
65aab64f
RG
12042011-02-16 Richard Guenther <rguenther@suse.de>
1205
1206 PR tree-optimization/47738
1207 * tree-ssa-loop.c (run_tree_predictive_commoning): Return
1208 the TODO from tree_predictive_commoning.
1209
fc2fa4fb
JL
12102011-02-15 Jeff Law <law@redhat.com>
1211
1212 Revert
1213 2011-01-25 Jeff Law <law@redhat.com>
1214
1215 PR rtl-optimization/37273
1216 * ira-costs.c (scan_one_insn): Detect constants living in memory and
1217 handle them like argument loads from stack slots. Do not double
1218 count memory for memory constants and argument loads from stack slots.
1219
4e380b8e
L
12202011-02-15 H.J. Lu <hongjiu.lu@intel.com>
1221
1222 PR middle-end/47725
1223 * combine.c (cant_combine_insn_p): Revert the last change.
1224
e3a69bb4
MM
12252011-02-15 Michael Meissner <meissner@linux.vnet.ibm.com>
1226
1227 PR target/47755
1228 * config/rs6000/predicates.md (easy_vector_constant): Allow V2DI
1229 mode for vector constants. Remove code that checks for TImode.
1230
de650422
AO
12312011-02-15 Alexandre Oliva <aoliva@redhat.com>
1232
1233 PR debug/47106
1234 PR debug/47402
1235 * cgraph.h (compute_inline_parameters): Return void.
1236 * ipa-inline.c (compute_inline_parameters): Adjust.
1237
30925d94
AO
12382011-02-15 Alexandre Oliva <aoliva@redhat.com>
1239
1240 PR debug/47106
1241 PR debug/47402
1242 * tree-inline.h (estimated_stack_frame_size): Take cgraph node
1243 rather than decl.
1244 * cfgexpand.c (estimated_stack_frame_size): Likewise.
1245 * ipa-inline.c (compute_inline_parameters): Adjust.
1246
1b9a784a
AO
12472011-02-15 Alexandre Oliva <aoliva@redhat.com>
1248
1249 PR debug/47106
1250 PR debug/47402
1251 * tree-flow.h (FOR_EACH_REFERENCED_VAR): Add FN argument.
1252 Adjust all users. Pass FN to...
1253 * tree-flow-inline.h (first_referenced_var): ... this. Add
1254 fn argument.
1255 * ipa-struct-reorg.c: Adjust.
1256 * tree-dfa.c: Adjust.
1257 * tree-into-ssa.c: Adjust.
1258 * tree-sra.c: Adjust.
1259 * tree-ssa-alias.c: Adjust.
1260 * tree-ssa-live.c: Adjust.
1261 * tree-ssa.c: Adjust.
1262 * tree-ssanames.c: Adjust.
1263 * tree-tailcall.c: Adjust.
1264
27c6b086
AO
12652011-02-15 Alexandre Oliva <aoliva@redhat.com>
1266
1267 PR debug/47106
1268 PR debug/47402
1269 * tree-flow.h (referenced_var_lookup): Add fn parameter.
1270 Adjust all callers.
1271 * tree-dfa.c (referenced_var_lookup): Use fn instead of cfun.
1272 * tree-flow-inline.h: Adjust.
1273 * gimple-pretty-print.c: Adjust.
1274 * tree-into-ssa.c: Adjust.
1275 * tree-ssa.c: Adjust.
1276 * cfgexpand.c: Adjust.
1277
679e8183
NF
12782011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1279
fbf4bfd3
UB
1280 * config/iq2000/i2000.h (REG_CLASS_FROM_LETTER): Delete.
1281 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1282 (EXTRA_CONSTRAINT): Delete.
1283 * config/iq2000/constraints.md: New file.
1284 * config/iq2000/iq2000.md: Include it.
679e8183
NF
1285 (define_insn ""): Delete.
1286 (movsi_internal2, movhi_internal2, movqi_internal2): Delete
1287 unsupported constraint letters from patterns.
1288 (call_value, call_value_internal1): Likewise.
1289 (call_value_multiple_internal1): Likewise.
1290
a45d420a
NC
12912011-02-15 Nick Clifton <nickc@redhat.com>
1292
1293 * config/mn10300/mn10300.c: Include tm-constrs.h.
1294 (struct liw_data): New data structure describing an LIW candidate
1295 instruction.
1296 (extract_bundle): Use struct liw_data. Allow small integer
1297 operands for some instructions.
1298 (check_liw_constraints): Use struct liw_data. Remove swapped
1299 parameter. Add comments describing the checks. Fix bug when
1300 assigning the source of liw1 to the source of liw2.
1301 (liw_candidate): Delete. Code moved into extract_bundle.
1302 (mn10300_bundle_liw): Use struct liw_data. Check constraints
1303 before swapping.
1304 * config/mn10300/predicates.md (liw_operand): New predicate.
1305 Allows registers and small integer constants.
1306 * config/mn10300/constraints.md (O): New constraint. Accetps
1307 integers in the range -8 to +7 inclusive.
1308 * config/mn10300/mn10300.md (movesi_internal): Add an alternative
1309 for moving a small integer into a register. Give this alternative
1310 LIW attributes.
1311 (addsi3, subsi3, cmpsi, lshrsi3, ashrsi3): Likewise.
1312 (ashlsi3): Likewise, plus give LIW attributes to the alternatives
1313 using the J,K,L and M constraints,
1314 (liw): Remove SI mode on second operands to allow for HI and QI
1315 mode values.
1316 (cmp_liw, liw_cmp): Likewise. Plus fix order of operands in the
1317 instruction.
1318
8a73faf1
L
13192011-02-15 H.J. Lu <hongjiu.lu@intel.com>
1320
1321 PR middle-end/47725
1322 * combine.c (cant_combine_insn_p): Check zero/sign extended
1323 hard registers.
1324
48feba28
RG
13252011-02-15 Richard Guenther <rguenther@suse.de>
1326
1327 PR tree-optimization/47743
1328 * tree-ssa-pre.c (phi_translate_1): If we didn't get a value-number
1329 for a non-type-compatible VN lookup bail out.
1330
ad1c1eeb
NF
13312011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1332
1333 * config/fr30/constraints.md: New file.
1334 * config/fr30/fr30.md: Include it.
1335 * config/fr30/fr30.h (REG_CLASS_FROM_LETTER): Delete.
1336 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1337 (EXTRA_CONSTRAINT): Delete.
1338
49ac143d
NF
13392011-02-15 Nathan Froyd <froydnj@codesourcery.com>
1340
1341 * config/frv/constraints.md: New file.
1342 * config/frv/predicates.md: Include it.
1343 * config/frv/frv.c (reg_class_from_letter): Delete.
1344 (frv_option_override): Don't initialize it.
1345 * config/frv/frv.h (REG_CLASS_FROM_LETTER): Delete.
1346 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_K): Delete.
1347 (CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Delete.
1348 (CONST_OK_FOR_O, CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
1349 (CONST_DOUBLE_OK_FOR_G, CONST_DOUBLE_OK_FOR_H): Delete.
1350 (CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1351 (EXTRA_CONSTRAINT_FOR_Q, EXTRA_CONSTRAINT_FOR_R): Delete.
1352 (EXTRA_CONSTRAINT_FOR_S, EXTRA_CONSTRAINT_FOR_T): Delete.
1353 (EXTRA_CONSTRAINT_FOR_U, EXTRA_CONSTRAINT): Delete.
1354 (EXTRA_MEMORY_CONSTRAINT, CONSTRAINT_LEN): Delete.
1355 (REG_CLASS_FROM_CONSTRAINT): Delete.
1356
c95f9494
JJ
13572011-02-15 Jakub Jelinek <jakub@redhat.com>
1358
1359 PR middle-end/47581
1360 * config/i386/i386.c (ix86_compute_frame_size): Don't align offset
1361 if frame size is 0 in a leaf function.
1362
13aed611
RO
13632011-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1364
1365 PR pch/14940
1366 * config/alpha/host-osf.c: New file.
1367 * config/alpha/x-osf: New file.
1368 * config.host (alpha*-dec-osf*): Use it.
1369
b09c3081
AS
13702011-02-14 Anatoly Sokolov <aesok@post.ru>
1371
1372 * config/rx/rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
1373 * config/rx/rx-protos.h (rx_is_mode_dependent_addr): Remove.
1374 * config/xtensa/xtensa.c (rx_is_mode_dependent_addr): Rename to...
1375 (rx_mode_dependent_address_p): ...this. Make static. Change argument
1376 type to const_rtx.
1377 (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
1378
d634083b
NF
13792011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1380
1381 * config/stormy16/constraints.md: New file.
1382 * config/stormy16/predicates.md (nonimmediate_nonstack_operand):
1383 Use satisfies_constraint_Q and satisfies_constraint_R.
1384 * config/stormy16/stomry16-protos.h (xstormy16_extra_constraint_p):
1385 Delete.
1386 (xstormy16_legitiamte_address_p): Declare.
1387 * config/stormy16/stormy16.h (REG_CLASS_FROM_LETTER): Delete.
1388 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1389 (EXTRA_CONSTRAINT): Delete.
fbf4bfd3 1390 * config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
d634083b
NF
1391 Un-staticize.
1392 (xstormy16_extra_constraint_p): Delete.
1393
c7dd803e
EB
13942011-02-14 Eric Botcazou <ebotcazou@adacore.com>
1395
1396 PR tree-optimization/46494
1397 * loop-unroll.c (split_edge_and_insert): Adjust comment.
1398 * loop-init.c (loop_optimizer_finalize): Do not call verify_flow_info.
1399 (pass_rtl_loop_done): Add TODO_verify_flow.
1400 * fwprop.c (pass_rtl_fwprop): Likewise.
1401 * modulo-sched.c (pass_sms): Likewise.
1402 * tree-ssa-dom.c (pass_dominator): Likewise.
1403 * tree-ssa-loop-ch.c (pass_ch): Likewise.
1404 * tree-ssa-loop.c (pass_complete_unrolli): Likewise.
1405 (pass_tree_loop_done): Likewise.
1406 * tree-ssa-pre.c (execute_pre): Likewise.
1407 * tree-ssa-reassoc.c (pass_reassoc): Likewise.
1408 * tree-ssa-sink.c (pass_sink_code): Likewise.
1409 * tree-vrp.c (pass_vrp): Likewise.
1410
c6150df6
NF
14112011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1412
c7dd803e
EB
1413 * config/v850/constraints.md: New file.
1414 * config/v850/v850.md: Include it.
1415 * config/v850/predicates.md (reg_or_0_operand): Use
1416 satisfies_constraint_G.
1417 (special_symbolref_operand): Use satisfies_constraint_K.
1418 * config/v850/v850.h (CONSTANT_ADDRESS_P): Use constraint_satisfied_p.
1419 (GO_IF_LEGITIMATE_ADDRESS): Likewise.
1420 (REG_CLASS_FROM_LETTER, INT_7_BITS, INT_8_BITS): Delete.
1421 (CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
1422 (EXTRA_CONSTRAINT): Delete.
1423 (CONST_OK_FOR_I, CONST_OK_FOR_J): Use insn_const_int_ok_for_constraint.
1424 (CONST_OK_FOR_K, CONST_OK_FOR_L, CONST_OK_FOR_M): Likewise.
1425 (CONST_OK_FOR_N, CONST_OK_FOR_O): Likewise.
c6150df6 1426
30dd1ea3
AS
14272011-02-14 Anatoly Sokolov <aesok@post.ru>
1428
1429 PR target/47696
1430 * config/avr/avr-devices.c (avr_mcu_types): Fix ATmega2560 device
1431 description.
1432
944f4bb3
NF
14332011-02-14 Nathan Froyd <froydnj@codesourcery.com>
1434
1435 * config/mcore/constraints.md: New file.
1436 * config/mcore/mcore.md: Include it.
1437 * config/mcore/mcore.c (reg_class_from_letter): Delete.
1438 * config/mcore/mcore.h (reg_class_from_letter): Delete.
1439 (REG_CLASS_FROM_LETTER): Delete.
1440 (CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_L): Use
1441 insn_const_int_ok_for_constraint.
1442 (CONST_OK_FOR_K, CONST_OK_FOR_M, CONST_OK_FOR_N): Likewise.
1443 (CONST_OK_FOR_O, CONST_OK_FOR_P): Likewise.
1444 (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
1445 (EXTRA_CONSTRAINT): Delete.
1446
ad56a54c
RO
14472011-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1448
1449 PR ada/41929
1450 * config/sparc/sol2-unwind.h: Include <sys/frame.h>, <sys/stack.h>
1451 (IS_SIGHANDLER): Define.
1452 (sparc64_is_sighandler): New function, split off from
1453 sparc64_fallback_frame_state.
1454 (sparc_is_sighandler): New function, split off from
1455 sparc_fallback_frame_state.
1456 (sparc64_fallback_frame_state): Merge with ...
1457 (sparc_fallback_frame_state): ... this into ...
1458 (MD_FALLBACK_FRAME_STATE_FOR): ... this.
fbf4bfd3
UB
1459 Change new_cfa to long. Remove regs_off, fpu_save_off, fpu_save.
1460 Define nframes, mctx. Use IS_SIGHANDLER, handler_args, mctx, walk
1461 stack instead of hardcoded offsets.
ad56a54c 1462
fbf4bfd3 14632011-02-14 Andriy Gapon <avg@freebsd.org>
67932abf
AG
1464
1465 PR target/45808
1466 * config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
1467
029c8f3e
RW
14682011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1469
1470 * configure: Regenerate.
1471
a016dc83
JM
14722011-02-12 Joseph Myers <joseph@codesourcery.com>
1473
1474 PR driver/45731
1475 * gcc.c (asm_options): Correct spec matching --target-help.
1476
8957a0ec
MJ
14772011-02-12 Martin Jambor <mjambor@suse.cz>
1478
1479 * tree-cfg.c (verify_gimple_call): Return true upon invalid argument
1480 to gimple call error.
1481
6ef828bc
MS
14822011-02-12 Mike Stump <mikestump@comcast.net>
1483
1484 * config/frv/frv.h (TRANSFER_FROM_TRAMPOLINE): Canonicalize
1485 comments in backslash regions.
1486
a4015be5
MS
14872011-02-12 Mike Stump <mikestump@comcast.net>
1488 Jakub Jelinek <jakub@redhat.com>
1489 Iain Sandoe <iains@gcc.gnu.org>
1490
1491 PR target/47324
1492 * dwarf2out.c (output_cfa_loc): When required, apply the
1493 DWARF2_FRAME_REG_OUT macro to adjust register numbers.
1494 (output_loc_sequence): Likewise.
1495 (output_loc_operands_raw): Likewise.
1496 (output_loc_sequence_raw): Likewise.
1497 (output_cfa_loc): Likewise.
1498 (output_loc_list): Suppress register number adjustment when
1499 calling output_loc_sequence()
1500 (output_die): Likewise.
1501
5378dda2
AS
15022011-02-12 Anatoly Sokolov <aesok@post.ru>
1503
1504 * config/xtensa/xtensa.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
1505 Remove macros.
1506 * config/xtensa/xtensa.c (xtensa_register_move_cost,
1507 xtensa_memory_move_cost): New functions.
1508 (TARGET_REGISTER_MOVE_COST, TARGET_REGISTER_MOVE_COST): Define.
1509
f3d533d3
AO
15102011-02-12 Alexandre Oliva <aoliva@redhat.com>
1511
1512 PR lto/47225
1513 * configure.ac (gcc_cv_lto_plugin): Test for liblto_plugin.la
1514 in the current directory.
1515 * configure: Rebuilt.
1516
9d53403c
IS
15172011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1518
1519 * config/darwin.c (darwin_override_options): Add a hunk missed
fbf4bfd3 1520 from the commit of r168571. Trim comment line lengths and
9d53403c
IS
1521 correct indents of the preceding block.
1522
a350a6c8
IS
15232011-02-12 Iain Sandoe <iains@gcc.gnu.org>
1524
1525 * gcc.c (driver_handle_option): Concatenate the argument to -F with
1526 the switch.
1527
bab79a40
JM
15282011-02-11 Joseph Myers <joseph@codesourcery.com>
1529
1530 * common.opt (nostartfiles): New Driver option.
1531
1bbc6693
XDL
15322011-02-11 Xinliang David Li <davidxl@google.com>
1533
1534 PR tree-optimization/47707
1535 * tree-chrec.c (convert_affine_scev): Keep type precision.
1536
1da7d8c0
EB
15372011-02-11 Eric Botcazou <ebotcazou@adacore.com>
1538
1539 PR tree-optimization/47420
1540 * ipa-split.c (visit_bb): Punt on any kind of GIMPLE_RESX.
1541
15422011-02-11 Pat Haugen <pthaugen@us.ibm.com>
3f82421f
PH
1543
1544 PR rtl-optimization/47614
1545 * rtl.h (check_for_inc_dec): Declare.
1546 * dse.c (check_for_inc_dec): Externalize...
1547 * postreload.c (reload_cse_simplify): ...use it before deleting stmt.
1548 (reload_cse_simplify_operands): Don't simplify opnds with side effects.
1549
4df47bca
JM
15502011-02-11 Joseph Myers <joseph@codesourcery.com>
1551
1552 PR driver/47678
1553 * gcc.c (main): Do not compile inputs if there were errors in
1554 option handling.
1555 * opts-common.c (read_cmdline_option): Check for wrong language
1556 after other error checks.
1557
61502ca8
NF
15582011-02-11 Nathan Froyd <froydnj@codesourcery.com>
1559
1560 * cgraph.c: Fix comment typos.
1561 * cgraph.h: Likewise.
1562 * cgraphunit.c: Likewise.
1563 * ipa-cp.c: Likewise.
1564 * ipa-inline.c: Likewise.
1565 * ipa-prop.c: Likewise.
1566 * ipa-pure-const.c: Likewise.
1567 * ipa-ref.c: Likewise.
1568 * ipa-reference.c: Likewise.
1569
b63f974e
JJ
15702011-02-11 Jakub Jelinek <jakub@redhat.com>
1571
d50c5e0c
JJ
1572 PR debug/47684
1573 * tree-predcom.c (single_nonlooparound_use): Ignore debug uses.
b63f974e 1574
6dd2a13c
RO
15752011-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1576
1577 PR testsuite/47400
1578 * doc/sourcebuild.texi (Require Support): Document
1579 dg-require-ascii-locale.
1580
4a087ccf
MX
15812011-02-11 Mingjie Xing <mingjie.xing@gmail.com>
1582
1583 * doc/lto.texi (Write summary): Fix missing parentheses.
1584
a4403164
DD
15852011-02-10 DJ Delorie <dj@redhat.com>
1586
1587 * config/m32c/m32c.c (m32c_option_override): Disable
1588 -fcombine-stack-adjustments until flag value tracking and compare
1589 optimization can be rewritten.
1590
4fac45bd
PB
15912011-02-10 Peter Bergner <bergner@vnet.ibm.com>
1592
1593 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Change to
1594 PROCESSOR_POWER7.
1595 (PROCESSOR_DEFAULT64): Likewise.
1596
72602cd1
RH
15972011-02-10 Richard Henderson <rth@redhat.com>
1598
1599 * config/rx/predicates.md (rx_zs_comparison_operator): Revert
1600 change from 2011-02-03.
1601 * config/rx/rx.c (flags_from_code): Likewise.
1602 (rx_print_operand) ['B']: For LT/GE, use lt/ge if overflow flag
1603 is valid, n/pz otherwise.
1604 (rx_select_cc_mode): Return CCmode if Y is not zero.
1605
ea57f573
RG
16062011-02-10 Richard Guenther <rguenther@suse.de>
1607
ea4c3e65 1608 * tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
ea57f573 1609
92b1d23b
RG
16102011-02-10 Richard Guenther <rguenther@suse.de>
1611
1612 PR tree-optimization/47677
1613 * tree-vrp.c (vrp_bitmap_equal_p): Fix comparison of empty bitmaps.
1614
525a2d06
JJ
16152011-02-10 Jakub Jelinek <jakub@redhat.com>
1616
1617 PR target/47665
1618 * combine.c (make_compound_operation): Only change shifts into
1619 multiplication for SCALAR_INT_MODE_P.
1620
06c969bd
JZ
16212011-02-10 Jie Zhang <jie@codesourcery.com>
1622
1623 PR testsuite/47622
1624 Revert
1625 2011-02-05 Jie Zhang <jie@codesourcery.com>
1626 PR debug/42631
1627 * web.c (entry_register): Don't clobber the number of the
1628 first uninitialized reference in used[].
1629
282ec48e
RG
16302011-02-09 Richard Guenther <rguenther@suse.de>
1631
1632 PR tree-optimization/47664
1633 * ipa-inline.c (cgraph_decide_inlining_incrementally): Visit
1634 all edges again.
1635
df98c3e8
DE
16362011-02-09 David Edelsohn <dje.gcc@gmail.com>
1637
d0f21cd6
DE
1638 PR target/46481
1639 PR target/47032
df98c3e8
DE
1640 * config/rs6000/aix61.h (PROCESSOR_DEFAULT): Change to
1641 PROCESSOR_POWER7.
1642 (PROCESSOR_DEFAULT64): Same.
1643 (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Delete.
1644
67b6839f
RO
16452011-02-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1646
1647 * config/mips/iris6.h (TARGET_C99_FUNCTIONS): Define.
1648
4fd73214
MJ
16492011-02-09 Martin Jambor <mjambor@suse.cz>
1650
1651 PR middle-end/45505
1652 * tree-sra.c (struct access): New flags grp_scalar_read and
1653 grp_scalar_write. Changed description of assignment read and write
1654 flags.
1655 (dump_access): Dump new flags, reorder all of them.
1656 (sort_and_splice_var_accesses): Set the new flag accordingly, use them
1657 to detect multiple scalar reads.
1658 (analyze_access_subtree): Use the new scalar read write flags instead
1659 of the old flags. Adjusted comments.
1660
91140cd3
DD
16612011-02-08 DJ Delorie <dj@redhat.com>
1662
1663 PR target/47548
1664 * config/m32c/m32c.c (m32c_subreg): Don't try to validate interim
1665 patterns.
1666
4254bbfe
JM
16672011-02-08 Joseph Myers <joseph@codesourcery.com>
1668
1669 * config/m68k/uclinux.opt: New.
1670 * config.gcc (m68k-*-uclinux*): Use m68k/uclinux.opt.
1671
f1fda84e
JM
16722011-02-08 Joseph Myers <joseph@codesourcery.com>
1673
1674 * config/cris/elf.opt (sim): New Driver option.
1675
4933ae74
JM
16762011-02-08 Joseph Myers <joseph@codesourcery.com>
1677
1678 * config/xtensa/elf.opt: New.
1679 * config.gcc (xtensa*-*-elf*): Use xtensa/elf.opt.
1680
4ad70280
JM
16812011-02-08 Joseph Myers <joseph@codesourcery.com>
1682
1683 * config/vax/elf.opt: New.
1684 * config.gcc (vax-*-linux*, vax-*-netbsdelf*): Use vax/elf.opt.
1685
20893707
JM
16862011-02-08 Joseph Myers <joseph@codesourcery.com>
1687
1688 * config/rs6000/aix64.opt (posix, pthread): New Driver options.
1689
b8e7038e
JM
16902011-02-08 Joseph Myers <joseph@codesourcery.com>
1691
1692 * config/gnu-user.opt: New.
1693 * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
1694 *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu,
1695 *-*-uclinux*): Use gnu-user.opt.
1696
e1c5225a
TS
16972011-02-08 Thomas Schwinge <thomas@schwinge.name>
1698
1699 * config/gnu.h (CPP_SPEC, LIB_SPEC): Remove handling of -bsd option.
1700 * config/i386/gnu.h (CPP_SPEC): Likewise.
1701
5e46b0c6
ILT
17022011-02-08 Ian Lance Taylor <iant@google.com>
1703
1704 * common.opt (fcx-limited-range): Add SetByCombined flag.
1705 (ffinite-math-only, fmath-errno, frounding-math): Likewise.
1706 (fsignaling-nans, fsigned-zeros, ftrapping-math): Likewise.
1707 (fassociative-math, freciprocal-math): Likewise.
1708 (funsafe-math-optimizations): Likewise.
1709 * opth-gen.awk: Handle SetByCombined.
1710 * optc-gen.awk: Likewise.
ea4c3e65 1711 * opts.c (set_fast_math_flags): Don't override flag if set by frontend.
5e46b0c6
ILT
1712 (set_unsafe_math_optimizations_flags): Likewise.
1713 * doc/options.texi (Option properties): Document SetByCombined.
1714
32243d46
JM
17152011-02-08 Joseph Myers <joseph@codesourcery.com>
1716
1717 * config.gcc (arc-*, alpha*-*-gnu*, arm*-*-netbsd*, arm-*-pe*,
1718 i[34567]86-*-interix3*, i[34567]86-*-netbsd*, i[34567]86-*-pe,
1719 m68hc11-*-*, m6811-*-*, m68hc12-*-*, m6812-*-*,
1720 m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc*-*-gnu*,
1721 sh*-*-symbianelf*, vax-*-netbsd*): Mark obsolete.
1722
479c1fb3
SP
17232011-02-08 Sebastian Pop <sebastian.pop@amd.com>
1724
1725 PR tree-optimization/46834
1726 PR tree-optimization/46994
1727 PR tree-optimization/46995
1728 * graphite-sese-to-poly.c (used_outside_reduction): New.
1729 (detect_commutative_reduction): Call used_outside_reduction.
1730 (rewrite_commutative_reductions_out_of_ssa_close_phi): Call
1731 translate_scalar_reduction_to_array only when at least one
1732 loop-phi/close-phi tuple has been detected.
1733
3865a06f
RG
17342011-02-08 Richard Guenther <rguenther@suse.de>
1735
1736 PR middle-end/47639
1737 * tree-vect-generic.c (expand_vector_operations_1): Update
1738 stmts here ...
1739 (expand_vector_operations): ... not here. Cleanup EH info
1740 and the CFG if required.
1741
62902f3f
RG
17422011-02-08 Richard Guenther <rguenther@suse.de>
1743
1744 PR tree-optimization/47641
1745 * tree-ssa.c (execute_update_addresses_taken): For asm outputs
1746 require type compatibility.
1747
0efb9d64
AK
17482011-02-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1749
1750 * gimple-low.c (lower_function_body): Don't remove the location of
1751 the return statement here.
1752 (lower_gimple_return): Do it here instead but only if the return
1753 statement is actually used twice.
1754
034b8ae4
RG
17552011-02-08 Richard Guenther <rguenther@suse.de>
1756
1757 PR tree-optimization/47632
1758 * tree-ssa-forwprop.c (remove_prop_source_from_use): Remove
1759 unused up_to_stmt parameter, return whether cfg-cleanup is
1760 necessary, remove EH info properly.
1761 (forward_propagate_into_gimple_cond): Adjust caller.
1762 (forward_propagate_into_cond): Likewise.
1763 (forward_propagate_comparison): Likewise.
1764 (tree_ssa_forward_propagate_single_use_vars): Make
1765 forward_propagate_comparison case similar to the two others.
1766
298362c8
NC
17672011-02-08 Nick Clifton <nickc@redhat.com>
1768
1769 * config/mn10300/mn10300.opt (mliw): New command line option.
1770 * config/mn10300/mn10300.md (UNSPEC_LIW): New unspec.
1771 (liw_bundling): New automaton.
1772 (liw): New attribute.
1773 (liw_op): New attribute.
1774 (liw_op1, liw_op2, liw_both, liw_either): New reservations.
1775 (movsi_internal): Add LIW attributes.
1776 (andsi3): Likewise.
1777 (iorsi3): Likewise.
1778 (xorsi3): Likewise.
1779 (addsi3): Separate register and immediate alternatives.
1780 Add LIW attributes.
1781 (subsi3): Likewise.
1782 (cmpsi): Likewise.
1783 (aslsi3): Likewise.
1784 (lshrsi3): Likewise.
1785 (ashrsi3): Likewise.
1786 (liw): New pattern.
1787 * config/mn10300/mn10300.c (liw_op_names): New
1788 (mn10300_print_operand): Handle 'W' operand descriptor.
1789 (extract_bundle): New function.
1790 (check_liw_constraints): New function.
1791 (liw_candidate): New function.
1792 (mn10300_bundle_liw): New function.
1793 (mn10300_reorg): New function.
1794 (TARGET_MACHINE_DEPENDENT_REORG): Define.
1795 (TARGET_DEFAULT_TARGET_FLAGS): Add MASK_ALLOW_LIW.
1796 * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Define
1797 __LIW__ or __NO_LIW__.
1798 * doc/invoke.texi: Describe the -mliw command line option.
1799
90488014
JDA
18002011-02-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1801
1802 * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
1803 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1804 pthread_mutex_unlock): Remove.
1805 * config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
1806 * config/pa/t-pa64: Likewise.
1807 * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
1808 shared libc if not linking against libpthread.
1809 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
1810
689ff841
IS
18112011-02-07 Iain Sandoe <iains@gcc.gnu.org>
1812
1813 PR target/47558
1814 * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Put -lSystem first
1815 on 10.6 and later to ensure that we always use the unwinder from
1816 the system. Only add -no_compact_unwind when tarteting darwin
1817 10.6 or later.
1818
821014aa
SE
18192011-02-07 Steve Ellcey <sje@cup.hp.com>
1820
1821 PR target/46997
1822 * vect.md (vec_interleave_highv2sf): Change fmix for TARGET_BIG_ENDIAN.
1823 (vec_interleave_lowv2sf): Ditto.
1824 (vec_extract_evenv2sf): Add TARGET_BIG_ENDIAN check.
1825 (vec_extract_oddv2sf): Ditto.
1826
41cf94fb
MS
18272011-02-07 Mike Stump <mikestump@comcast.net>
1828
62dea57d 1829 PR target/42333
41cf94fb
MS
1830 Add __ieee_divdc3 entry point.
1831 * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
1832 entry point.
1833 (SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
1834 * config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
1835 * config/darwin.c (darwin_rename_builtins): Add.
1836 * config/darwin-protos.h (darwin_rename_builtins): Add.
1837
ee09a3dd
MM
18382011-02-07 Michael Meissner <meissner@linux.vnet.ibm.com>
1839
1840 PR target/47636
1841 * config/rs6000/rs6000.md (rsqrt<mode>2): Use the correct macro
1842 for the condition.
1843
83296cd0
MS
18442011-02-07 Mike Stump <mikestump@comcast.net>
1845
ea4c3e65 1846 * config/darwin.opt (mmacosx-version-min): Update default OS version.
83296cd0 1847
0f4e946f
DC
18482011-02-07 Denis Chertykov <chertykov@gmail.com>
1849
1850 PR target/47534
1851 * config/avr/libgcc.S (exit): Move .endfunc
1852
1ec87690
RG
18532011-02-07 Richard Guenther <rguenther@suse.de>
1854
1855 PR tree-optimization/47615
1856 * tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
1857 * tree-ssa-sccvn.c (default_vn_walk_kind): New global.
1858 (run_scc_vn): Initialize it.
1859 (visit_reference_op_load): Use it.
1860 * tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
1861
b46ae6da
UW
18622011-02-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1863
1864 * config/spu/spu.c (spu_init_libfuncs): Install SImode and
1865 DImode trapping arithmetic libfuncs.
1866
c0aae19c
RG
18672011-02-07 Richard Guenther <rguenther@suse.de>
1868
1869 PR tree-optimization/47621
1870 * tree-ssa.c (non_rewritable_lvalue_p): New function, split out from
1871 two duplicates ...
1872 (execute_update_addresses_taken): ... here. Make it more
1873 conservative in what we accept.
1874
295d926b
JM
18752011-02-06 Joseph Myers <joseph@codesourcery.com>
1876
1877 * config/sparc/freebsd.h (ASM_SPEC): Define.
1878 * config/sparc/vxworks.h (ASM_SPEC): Define.
1879
bdeb2471
JM
18802011-02-06 Joseph Myers <joseph@codesourcery.com>
1881
1882 * config/sparc/sol2-bi.h (CC1_SPEC): Remove %{sun4:} %{target:}.
1883
d5d3781a
SB
18842011-02-06 Steven Bosscher <steven@gcc.gnu.org>
1885
1886 * doc/invoke.texi: Remove reference to compiler internals from
1887 user documentation.
1888
1889 * reg-notes.def: Remove REG_VALUE_PROFILE.
1890 * combine.c (distribute_notes): Do not handle REG_VALUE_PROFILE.
1891
c42c09fc
JJ
18922011-02-05 Jakub Jelinek <jakub@redhat.com>
1893
1894 PR middle-end/47610
1895 * varasm.c (default_section_type_flags): If decl is NULL,
38be4072 1896 and name is .data.rel.ro or .data.rel.ro.local, set SECTION_RELRO bit.
c42c09fc 1897
beea2755
JZ
18982011-02-05 Jie Zhang <jie@codesourcery.com>
1899
1900 PR debug/42631
1901 * web.c (entry_register): Don't clobber the number of the
1902 first uninitialized reference in used[].
1903
a130584a
SP
19042011-02-04 Sebastian Pop <sebastian.pop@amd.com>
1905
1906 PR tree-optimization/46194
1907 * tree-data-ref.c (analyze_miv_subscript): Remove comment.
1908 (build_classic_dist_vector_1): Do not represent classic distance
1909 vectors when the access functions are variating in different loops.
1910
962101ac
JM
19112011-02-04 Joseph Myers <joseph@codesourcery.com>
1912
1913 * config/mips/iris6.opt: New.
1914 * config.gcc (mips-sgi-irix6.5*): Use mips/iris6.opt.
1915
55eaaa5b
RH
19162011-02-04 Richard Henderson <rth@redhat.com>
1917 Steve Ellcey <sje@cup.hp.com>
1918
1919 PR target/46997
1920 * config/ia64/predicates.md (mux1_brcst_element): New.
1921 * config/ia64/ia64-protos.h (ia64_unpack_assemble): New.
1922 * config/ia64/ia64.c (ia64_unpack_assemble): New.
1923 (ia64_unpack_sign): New.
1924 (ia64_expand_unpack): Rewrite using new routines.
1925 (ia64_expand_widen_sum): Ditto.
1926 (ia64_expand_dot_prod_v8qi): Ditto.
1927 * config/ia64/vect.md (mulv8qi3): Rewrite to use new
1928 routines, add endian check.
1929 (pmpy2_even): Rename from pmpy2_r, add endian check.
1930 (pmpy2_odd): Rename from pmpy2_l, add endian check.
1931 (vec_widen_smult_lo_v4hi): Rewrite using new routines.
1932 (vec_widen_smult_hi_v4hi): Ditto.
1933 (vec_widen_umult_lo_v4hi): Ditto.
1934 (vec_widen_umult_hi_v4hi): Ditto.
1935 (mulv2si3): Change endian checks.
1936 (sdot_prodv4hi): Rewrite with new calls.
1937 (udot_prodv4hi): New.
1938 (vec_pack_ssat_v4hi): Add endian check.
1939 (vec_pack_usat_v4hi): Ditto.
1940 (vec_pack_ssat_v2si): Ditto.
1941 (max1_even): Rename from max1_r, add endian check.
1942 (max1_odd): Rename from max1_l, add endian check.
1943 (*mux1_rev): Format change.
1944 (*mux1_mix): Ditto.
1945 (*mux1_shuf): Ditto.
1946 (*mux1_alt): Ditto.
1947 (*mux1_brcst_v8qi): Use new predicate.
1948 (vec_extract_evenv8qi): Remove endian check.
1949 (vec_extract_oddv8qi): Ditto.
1950 (vec_interleave_lowv4hi): Format change.
1951 (vec_interleave_highv4hi): Ditto.
1952 (mix2_even): Rename from mix2_r, add endian check.
1953 (mix2_odd): Rename from mux2_l, add endian check.
1954 (*mux2): Fix mask setting for TARGET_BIG_ENDIAN.
1955 (vec_extract_evenodd_helper): Format change.
1956 (vec_extract_evenv4hi): Remove endian check.
1957 (vec_extract_oddv4hi): Remove endian check.
1958 (vec_interleave_lowv2si): Format change.
1959 (vec_interleave_highv2si): Format change.
1960 (vec_initv2si): Remove endian check.
1961 (vecinit_v2si): Add endian check.
1962 (reduc_splus_v2sf): Add endian check.
1963 (reduc_smax_v2sf): Ditto.
1964 (reduc_smin_v2sf): Ditto.
1965 (vec_initv2sf): Remove endian check.
1966 (fpack): Add endian check.
1967 (fswap): Add endian check.
1968 (vec_interleave_highv2sf): Add endian check.
1969 (vec_interleave_lowv2sf): Add endian check.
1970 (fmix_lr): Add endian check.
1971 (vec_setv2sf): Format change.
1972 (*vec_extractv2sf_0_be): Use shift to extract operand.
1973 (*vec_extractv2sf_1_be): New.
1974 (vec_pack_trunc_v4hi): Add endian check.
1975 (vec_pack_trunc_v2si): Format change.
1976
dcde5957
JJ
19772011-02-04 Jakub Jelinek <jakub@redhat.com>
1978
1979 PR inline-asm/23200
1980 * tree-ssa-ter.c (is_replaceable_p): Add TER argument. Don't
38be4072 1981 do bb, locus and block comparison and disallow loads if it is not set.
dcde5957
JJ
1982 (stmt_is_replaceable_p): New function.
1983 (process_replaceable, find_replaceable_in_bb): Adjust is_replaceable_p
1984 callers.
1985 * expr.c (expand_expr_real_1) <case SSA_NAME>: If
1986 get_gimple_for_ssa_name try for EXPAND_INITIALIZER harder to use
1987 SSA_NAME_DEF_STMT.
1988 * tree-flow.h (stmt_is_replaceable_p): New prototype.
1989
a64a8e5a
JM
19902011-02-04 Joseph Myers <joseph@codesourcery.com>
1991
1992 * config/rs6000/xilinx.opt: New.
1993 * config.gcc (powerpc-xilinx-eabi*): Use rs6000/xilinx.opt.
1994
4da2ed2f
JM
19952011-02-04 Joseph Myers <joseph@codesourcery.com>
1996
1997 * config/mips/mips.opt (EB, EL, noasmopt): New Driver options.
1998
a6e508f9
AS
19992011-02-03 Anatoly Sokolov <aesok@post.ru>
2000
2001 * config/xtensa/xtensa.h (PREFERRED_RELOAD_CLASS,
2002 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
2003 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class,
2004 secondary_reload_info, xtensa_secondary_reload): Remove.
2005 * config/xtensa/xtensa.c (TARGET_PREFERRED_RELOAD_CLASS,
2006 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
2007 (xtensa_preferred_reload_class): Make static. Change return and
2008 'rclass' argument type to reg_class_t. Remove 'isoutput' argument.
2009 Use CONST_DOUBLE_P predicate.
2010 (xtensa_preferred_output_reload_class): New function.
2011 (xtensa_secondary_reload): Make static.
2012
82dc0de3
JM
20132011-02-03 Joseph Myers <joseph@codesourcery.com>
2014
2015 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap,
2016 Zxl-mode-executable, Zxl-mode-novectors, Zxl-mode-xilkernel,
2017 Zxl-mode-xmdstub, mxl-mode-xilkernel): New Driver options.
2018
7fece979
JJ
20192011-02-03 Jakub Jelinek <jakub@redhat.com>
2020
2021 PR middle-end/31490
2022 * output.h (SECTION_RELRO): Define.
2023 (SECTION_MACH_DEP): Adjust.
2024 (get_variable_section): New prototype.
2025 * varpool.c (varpool_finalize_named_section_flags): New function.
2026 (varpool_assemble_pending_decls): Call it.
2027 * cgraph.h (varpool_finalize_named_section_flags): New prototype.
2028 * cgraphunit.c (cgraph_output_in_order): Call
2029 varpool_finalize_named_section_flags.
2030 * varasm.c (get_section): Allow section flags conflicts between
2031 relro and read-only sections if the section hasn't been declared yet.
2032 Set SECTION_OVERRIDE after diagnosing section type conflict.
2033 (get_variable_section): No longer static.
2034 (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for
2035 readonly sections that need relocations.
2036 (decl_readonly_section_1): New function.
2037 (decl_readonly_section): Use it.
2038
2039 Revert:
509d65dd 2040 2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
7fece979
JJ
2041 Steve Ellcey <sje@cup.hp.com>
2042
2043 PR middle-end/31490
2044 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
2045 if section attribute used.
2046
d18d5478
JJ
20472011-02-03 Jakub Jelinek <jakub@redhat.com>
2048
2049 * config/darwin.h (SECTION_NO_ANCHOR): Remove.
2050 * config/darwin.c (SECTION_NO_ANCHOR): Define.
2051 (darwin_init_sections): Remove assertion.
2052
6479ed4b
NC
20532011-02-03 Nick Clifton <nickc@redhat.com>
2054
2055 * config/rx/predicates.md (rx_zs_comparison_operator): Remove
2056 lt and ge.
38be4072 2057 * config/rx/rx.md (abssi2_flags): Use CC_ZSmode rather than CC_ZSOmode.
6479ed4b
NC
2058 * config/rx/rx.c (rx_print_operand): Use "lt" and "ge" suffixes
2059 instead of "n" and "pz".
2060 (flags_from_code): LT and GE tests need CC_FLAG_O as well as
2061 CC_FLAG_S.
2062
89843f5d
JJ
20632011-02-03 Jakub Jelinek <jakub@redhat.com>
2064
65450d64
JJ
2065 PR target/47312
2066 * expr.c (expand_expr_real_2) <case FMA_EXPR>: If target doesn't expand
2067 fma, expand FMA_EXPR as fma{,f,l} call.
2068
7d58701c
JJ
2069 PR lto/47274
2070 * lto-streamer-out.c (write_symbol): When writing kind and visibility,
2071 copy them into a unsigned char variable and pass address of it to
2072 lto_output_data_stream.
2073
89843f5d
JJ
2074 PR target/47564
2075 * toplev.c (target_reinit): Save and restore *crtl and regno_reg_rtx
2076 around backend_init_target and lang_dependent_init_target calls.
2077 * cgraphunit.c (cgraph_debug_gimple_stmt): New function.
2078 (verify_cgraph_node): Don't call set_cfun here. Use
2079 cgraph_debug_gimple_stmt instead of debug_gimple_stmt.
2080 Set error_found for incorrectly represented calls to thunks.
2081
4deef538
AO
20822011-02-03 Alexandre Oliva <aoliva@redhat.com>
2083
2084 PR debug/43092
2085 PR rtl-optimization/43494
2086 * rtl.h (for_each_inc_dec_fn): New type.
2087 (for_each_inc_dec): Declare.
2088 * rtlanal.c (struct for_each_inc_dec_ops): New type.
2089 (for_each_inc_dec_find_inc_dec): New fn.
2090 (for_each_inc_dec_find_mem): New fn.
2091 (for_each_inc_dec): New fn.
2092 * dse.c (struct insn_size): Remove.
2093 (replace_inc_dec, replace_inc_dec_mem): Remove.
2094 (emit_inc_dec_insn_before): New fn.
2095 (check_for_inc_dec): Use it, along with for_each_inc_dec.
2096 (canon_address): Pass mem modes to cselib_lookup.
2097 * cselib.h (cselib_lookup): Add memmode argument. Adjust callers.
2098 (cselib_lookup_from_insn): Likewise.
2099 (cselib_subst_to_values): Likewise.
2100 * cselib.c (find_slot_memmode): New var.
2101 (cselib_find_slot): New fn. Use it instead of
2102 htab_find_slot_with_hash everywhere.
2103 (entry_and_rtx_equal_p): Use find_slot_memmode.
2104 (autoinc_split): New fn.
2105 (rtx_equal_for_cselib_p): Rename and implement in terms of...
2106 (rtx_equal_for_cselib_1): ... this. Take memmode, pass it on.
2107 Deal with autoinc. Special-case recursion into MEMs.
2108 (cselib_hash_rtx): Likewise.
2109 (cselib_lookup_mem): Infer pmode from address mode. Distinguish
2110 address and MEM modes.
2111 (cselib_subst_to_values): Add memmode, pass it on.
2112 Deal with autoinc.
2113 (cselib_lookup): Add memmode argument, pass it on.
2114 (cselib_lookup_from_insn): Add memmode.
2115 (cselib_invalidate_rtx): Discard obsolete push_operand handling.
2116 (struct cselib_record_autoinc_data): New.
2117 (cselib_record_autoinc_cb): New fn.
2118 (cselib_record_sets): Use it, along with for_each_inc_dec. Pass MEM
2119 mode to cselib_lookup. Reset autoinced REGs here instead of...
2120 (cselib_process_insn): ... here.
2121 * var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
2122 to cselib_lookup.
2123 (add_uses): Likewise, also to cselib_subst_to_values.
2124 (add_stores): Likewise.
2125 * sched-deps.c (add_insn_mem_dependence): Pass mode to
2126 cselib_subst_to_values.
2127 (sched_analyze_1, sched_analyze_2): Likewise. Adjusted.
2128 * gcse.c (do_local_cprop): Adjusted.
2129 * postreload.c (reload_cse_simplify_set): Adjusted.
2130 (reload_cse_simplify_operands): Adjusted.
2131 * sel-sched-dump (debug_mem_addr_value): Pass mode.
2132
1551d44a
AO
21332011-02-03 Alexandre Oliva <aoliva@redhat.com>
2134
2135 PR tree-optimization/45122
2136 * tree-ssa-loop-niter.c (number_of_iterations_exit): Don't make
2137 unsafe assumptions when there's more than one loop exit.
2138
c9485473
MM
21392011-02-02 Michael Meissner <meissner@linux.vnet.ibm.com>
2140
2141 PR target/47272
2142 * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
2143 Document using vector double with the load/store builtins, and
2144 that the load/store builtins always use Altivec instructions.
2145
2146 * config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
2147 to use altivec memory instructions, even on VSX.
2148 (vector_altivec_store_<mode>): Ditto.
2149
2150 * config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
2151 function.
2152
2153 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
2154 V2DF, V2DI support to load/store overloaded builtins.
2155
2156 * config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
2157 altivec load/store builtins for V2DF/V2DI types.
2158
2159 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
2160 set avoid indexed addresses on power6 if -maltivec.
2161 (altivec_expand_ld_builtin): Add V2DF, V2DI support, use
2162 vector_altivec_load/vector_altivec_store builtins.
2163 (altivec_expand_st_builtin): Ditto.
2164 (altivec_expand_builtin): Add VSX memory builtins.
2165 (rs6000_init_builtins): Add V2DI types to internal types.
2166 (altivec_init_builtins): Add support for V2DF/V2DI altivec
2167 load/store builtins.
2168 (rs6000_address_for_altivec): Insure memory address is appropriate
2169 for Altivec.
2170
2171 * config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
2172 vec_vsx_ld and vec_vsx_st.
2173 (vsx_store_<mode>): Ditto.
2174
2175 * config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
2176 variables to hold long long types for VSX vector memory builtins.
2177 (RS6000_BTI_unsigned_long_long): Ditto.
2178 (long_long_integer_type_internal_node): Ditti.
2179 (long_long_unsigned_type_internal_node): Ditti.
2180
2181 * config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
2182 (altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
2183 (altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
2184
2185 * config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
2186 short cuts.
2187 (vec_vsx_st): Ditto.
2188
b24d1acf
JM
21892011-02-02 Joseph Myers <joseph@codesourcery.com>
2190
2191 * config/pa/pa-hpux10.opt: New.
2192 * config/hpux11.opt (pthread): New Driver option.
2193 * config/pa/pa-hpux.opt (nolibdld, rdynamic): New Driver options.
2194 * config.gcc (hppa[12]*-*-hpux10*): Use pa/pa-hpux10.opt.
2195
aa18dd0f
JM
21962011-02-02 Joseph Myers <joseph@codesourcery.com>
2197
2198 * config/ia64/vms.opt: New.
2199 * config.gcc (ia64-hp-*vms*): Use ia64/vms.opt.
2200
28fc3eee
MM
22012011-02-01 Michael Meissner <meissner@linux.vnet.ibm.com>
2202
2203 PR target/47580
2204 * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
2205 gpc_reg_operand instead of vsx_register_operand to match rs6000.md
2206 generator functions.
2207 (vsx_floatuns<VSi><mode>2): Ditto.
2208 (vsx_fix_trunc<mode><VSi>2): Ditto.
2209 (vsx_fixuns_trunc<mode><VSi>2): Ditto.
2210
b5838b1f
JM
22112011-02-02 Joseph Myers <joseph@codesourcery.com>
2212
2213 * config/i386/djgpp.opt (posix): New Driver option.
2214
0db8fa89
GP
22152011-02-02 Gerald Pfeifer <gerald@pfeifer.com>
2216
2217 * config.gcc (*-*-freebsd[12], *-*-freebsd[12].*, *-*-freebsd*aout*):
2218 Move to the unsupported targets list.
2219
9cd4f22a
PB
22202011-02-02 Peter Bergner <bergner@vnet.ibm.com>
2221
2222 PR rtl-optimization/47525
2223 * df-scan.c: Update copyright years.
2224 (df_get_call_refs): Do not mark global registers as DF_REF_REG_USE
2225 and non-clobber DF_REF_REG_DEF for calls to const and pure functions.
2226
9ed8059c
RO
22272011-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2228
2229 * config/i386/sysv4.h (TARGET_VERSION): Remove.
2230 (SUBTARGET_RETURN_IN_MEMORY): Remove.
2231 (ASM_OUTPUT_ASCII): Remove.
2232 * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove #undef.
2233
2a737389
JL
22342011-02-02 Jeff Law <law@redhat.com>
2235
2236 PR middle-end/47543
2237 * reload.c (find_reloads_address): Handle reg+d address where both
2238 components are invalid by reloading the entire address.
2239
9dac82c4
SP
22402011-02-02 Sebastian Pop <sebastian.pop@amd.com>
2241 Richard Guenther <rguenther@suse.de>
2242
2243 PR tree-optimization/40979
2244 PR bootstrap/47044
2245 * passes.c (init_optimization_passes): After LIM call copy_prop
2246 and DCE to clean up.
2247 * tree-ssa-loop.c (pass_graphite_transforms): Add TODO_dump_func.
2248
14dd9aab
SP
22492011-02-02 Sebastian Pop <sebastian.pop@amd.com>
2250
2251 PR tree-optimization/47576
2252 PR tree-optimization/47555
2253 * doc/invoke.texi (scev-max-expr-complexity): Documented.
2254 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
2255 (PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
2256 * tree-scalar-evolution.c (follow_ssa_edge): Use
2257 PARAM_SCEV_MAX_EXPR_COMPLEXITY.
2258
5cbf5c20
RG
22592011-02-02 Richard Guenther <rguenther@suse.de>
2260
2261 PR tree-optimization/47566
2262 * builtins.c (builtin_save_expr): No SAVE_EXPR for SSA_NAMEs.
2263
83d70792
AO
22642011-02-02 Alexandre Oliva <aoliva@redhat.com>
2265
e829c321
AO
2266 PR debug/47106
2267 PR debug/47402
2268 * tree-inline.c (declare_return_variable): Remove unused caller
2269 variable.
2270
83d70792
AO
2271 PR debug/47106
2272 PR debug/47402
2273 * tree-flow-inline.h (clear_is_used, is_used_p): New.
2274 * cfgexpand.c (account_used_vars_for_block): Use them.
2275 * tree-nrv.c (tree_nrv): Likewise.
2276 * tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
2277 (dump_scope_block): Likewise.
2278 (remove_unused_locals): Likewise.
2279
aaa2ac93
AO
2280 PR debug/47106
2281 PR debug/47402
2282 * tree-inline.c (declare_return_variable): Add result decl to
2283 local decls only once.
2284 * gimple-low.c (record_vars_into): Mark newly-created variables
2285 as referenced.
2286
a59d15cf
AO
22872011-02-02 Alexandre Oliva <aoliva@redhat.com>
2288
2289 PR debug/47498
2290 PR debug/47501
2291 PR debug/45136
2292 PR debug/45130
2293 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2294 debug insns.
2295 (no_real_insns_p, schedule_block, set_priorities): Drop special
2296 treatment of boundary debug insns.
38be4072 2297 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
a59d15cf
AO
2298 * sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
2299 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2300 (BOUNDARY_DEBUG_INSN_P): Likewise.
2301 (SCHEDULE_DEBUG_INSN_P): Likewise.
2302 * sched-rgn.c (init_ready_list): Drop special treatment of
2303 boundary debug insns.
2304 * final.c (rest_of_clean_state): Clear notes' BB.
2305
6fc2f091
JM
23062011-02-01 Joseph Myers <joseph@codesourcery.com>
2307
2308 * config/openbsd.opt (assert=): New Driver option.
2309
fc523387
JM
23102011-02-01 Joseph Myers <joseph@codesourcery.com>
2311
2312 * config/i386/nto.opt: New.
2313 * config.gcc (i[34567]86-*-nto-qnx*): Use i386/nto.opt.
2314
6d9821e5
JM
23152011-02-01 Joseph Myers <joseph@codesourcery.com>
2316
2317 * config/i386/netware.opt: New.
2318 * config.gcc (i[3456x]86-*-netware*): Use i386/netware.opt.
2319
cef932d4
JM
23202011-02-01 Joseph Myers <joseph@codesourcery.com>
2321
2322 * config/interix.opt (posix): New Driver option.
2323
22843acd
DD
23242011-02-01 DJ Delorie <dj@redhat.com>
2325
56490b74
DD
2326 * config/m32c/m32c.h (PTRDIFF_TYPE): Remove extra definition.
2327
22843acd
DD
2328 * config/m32c/m32c.c (m32c_regno_reg_class): Return smallest reg
2329 class for A0/A1.
2330
199c8f2f
SP
23312011-02-01 Sebastian Pop <sebastian.pop@amd.com>
2332
2333 PR tree-optimization/47561
2334 * toplev.c (process_options): Print the Graphite flags. Add
2335 flag_loop_flatten to the list of options requiring Graphite.
2336
926bcf22
JM
23372011-02-01 Joseph Myers <joseph@codesourcery.com>
2338
2339 * config/i386/cygming.opt (posix): New Driver option.
2340
59793c51
JM
23412011-02-01 Joseph Myers <joseph@codesourcery.com>
2342
2343 * config/arm/vxworks.opt: New.
2344 * config.gcc (arm-wrs-vxworks): Use arm/vxworks.opt.
2345
183c38a4
JM
23462011-02-01 Joseph Myers <joseph@codesourcery.com>
2347
2348 * config/alpha/elf.opt: New.
2349 * config.gcc (alpha*-*-linux*, alpha*-*-gnu*, alpha*-*-freebsd*,
2350 alpha*-*-netbsd*, alpha*-*-openbsd*): Use alpha/elf.opt.
2351
9939e416
RG
23522011-02-01 Richard Guenther <rguenther@suse.de>
2353
2354 PR tree-optimization/47559
2355 * tree-ssa-loop-im.c (can_sm_ref_p): Do not perform
2356 store-motion on references that can throw.
2357
4a3c9687
BS
23582011-02-01 Bernd Schmidt <bernds@codesourcery.com>
2359
2360 * tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB.
2361 * tree-pass.h (TDF_CSELIB): New macro.
2362 * cselib.c (new_cselib_val, expand_loc, cselib_expand_value_rtx_1,
2363 cselib_lookup): Check for it rather than for TDF_DETAILS.
2364
dd3b31fb
L
23652011-02-01 H.J. Lu <hongjiu.lu@intel.com>
2366
2367 PR driver/47547
2368 * lto-wrapper.c (run_gcc): Don't add -dumpdir if linker_output
2369 is HOST_BIT_BUCKET.
2370
2371 * opts.c (finish_options): Don't add x_aux_base_name if it is
2372 HOST_BIT_BUCKET.
2373
34c1de79
RG
23742011-02-01 Richard Guenther <rguenther@suse.de>
2375
2376 PR tree-optimization/47555
2377 Revert
2378 2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
2379
2380 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
2381
dd2804d2
SB
23822011-02-01 Sebastien Bourdeauducq <sebastien@milkymist.org>
2383
2384 PR gcc/46692
2385 * config/lm32/t-lm32: Add multilib for all CPU options.
2386
3fd3b156
RG
23872011-02-01 Richard Guenther <rguenther@suse.de>
2388
2389 PR tree-optimization/47541
2390 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
2391 sure to have a field at offset zero.
2392
f16072b6
JM
23932011-01-31 Joseph Myers <joseph@codesourcery.com>
2394
2395 * config/arc/arc.opt (EB, EL): New Driver options.
2396
6456cf2e
JM
23972011-01-31 Joseph Myers <joseph@codesourcery.com>
2398
2399 * config/alpha/osf5.opt: New.
2400 * config.gcc (alpha*-dec-osf5.1*): Use alpha/osf5.opt.
2401
cdde6ab4
JM
24022011-01-31 Joseph Myers <joseph@codesourcery.com>
2403
2404 * config/vms/vms.opt (map, mvms-return-codes): New Driver options.
2405
7633415c
SP
24062011-01-31 Sebastian Pop <sebastian.pop@amd.com>
2407
2408 * common.opt (ftree-loop-linear): Use Alias to make it an alias of
2409 -floop-interchange.
2410 * invoke.texi (-ftree-loop-linear): Make it clear that this flag
2411 is an alias of -floop-interchange and that it requires the
2412 Graphite infrastructure.
2413 * tree-ssa-loop.c (gate_graphite_transforms): Do not set
2414 flag_loop_interchange based on the value of flag_tree_loop_linear.
2415
0425d6f5
JJ
24162011-01-31 Jakub Jelinek <jakub@redhat.com>
2417 Richard Guenther <rguenther@suse.de>
2418
2419 PR tree-optimization/47538
2420 * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
2421 type instead of r1type, except for comparisons. For right
2422 shifts and comparisons punt if there are mismatches in
2423 sizetype vs. non-sizetype types.
2424
500b16c3
RO
24252011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2426
2427 * doc/sourcebuild.texi (Effective-Target Keywords): Document
2428 avx_runtime.
2429
e279edb0
RO
24302011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2431
2432 * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
2433 version number.
2434 * configure: Regenerate.
2435
c6092243
RO
24362011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2437
2438 * configure.ac (gcc_cv_ld_static_option): Define.
2439 (gcc_cv_ld_dynamic_option): Define.
2440 (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
2441 instead.
2442 (HAVE_LD_STATIC_DYNAMIC): Update message.
2443 (LD_STATIC_OPTION): Define.
2444 (LD_DYNAMIC_OPTION): Define.
2445 * configure: Regenerate.
2446 * config.in: Regenerate.
2447 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
2448 HAVE_LD_STATIC_DYNAMIC]: Use them.
2449
d7862be3
NC
24502011-01-31 Nick Clifton <nickc@redhat.com>
2451
2452 * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
2453 registers inside interrupt handlers if the handler is not a leaf
2454 function.
2455
ba4ec0e0
NC
24562011-01-31 Nick Clifton <nickc@redhat.com>
2457
2458 * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
2459 reg_renumber returning an INVALID_REGNUM.
2460
29a63921
AO
24612011-01-31 Alexandre Oliva <aoliva@redhat.com>
2462
2463 PR libgcj/44341
2464 * doc/install.texi: Document host options discarded when cross
2465 configuring target libraries.
2466
ef591d3f
AO
24672011-01-31 Alexandre Oliva <aoliva@redhat.com>
2468
2469 Reverted:
2470 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
2471 PR debug/45136
2472 PR debug/45130
2473 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2474 debug insns.
2475 (no_real_insns_p, schedule_block, set_priorities): Drop special
2476 treatment of boundary debug insns.
38be4072 2477 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
ef591d3f
AO
2478 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
2479 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2480 (BOUNDARY_DEBUG_INSN_P): Likewise.
2481 (SCHEDULE_DEBUG_INSN_P): Likewise.
2482 * sched-rgn.c (init_ready_list): Drop special treatment of
2483 boundary debug insns.
2484 * final.c (rest_of_clean-state): Clear notes' BB.
2485
61052244
AM
24862011-01-31 Alan Modra <amodra@gmail.com>
2487
2488 * config/rs6000/rs6000.c (print_operand): Rearrange addends in
2489 toc relative expressions as we do in print_operand_address.
2490
c4c8962b
KH
24912011-01-30 Kazu Hirata <kazu@codesourcery.com>
2492
2493 * doc/extend.texi: Follow spelling conventions.
2494 * doc/invoke.texi: Fix a typo.
2495
e543b94c
JM
24962011-01-30 Joseph Myers <joseph@codesourcery.com>
2497
2498 * config/hpux11.opt: New.
2499 * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
2500 ia64*-*-hpux*): Use hpux11.opt.
2501
509d65dd 25022011-01-30 Jonathan Yong <jon_y@users.sourceforge.net>
a70e0551
JY
2503
2504 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
2505 to tmake_file.
2506
7be03a0e
GP
25072011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2508
2509 * doc/install.texi (hppa-hp-hpux10): Remove references to HP
2510 support sites.
2511
419d1d37
GP
25122011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
2513
b596ed64
GP
2514 * doc/install.texi (Binaries): Remove outdated reference for
2515 Motorola 68HC11/68HC12 downloads.
2516
25172011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
61052244 2518
419d1d37
GP
2519 * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
2520 Drepper's paper.
2521
4406d0e9
JW
25222011-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2523
2524 PR bootstrap/47147
2525 * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
2526 used by NetBSD.
2527
38be4072 25282011-01-28 Ahmad Sharif <asharif@google.com>
e0b77418
AS
2529
2530 * value-prof.c (check_counter): Corrected error message.
2531
0cd98787
JZ
25322011-01-29 Jie Zhang <jie@codesourcery.com>
2533
2534 * config/arm/arm.c (arm_legitimize_reload_address): New.
2535 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
2536 arm_legitimize_reload_address.
38be4072 2537 * config/arm/arm-protos.h (arm_legitimize_reload_address): Declare.
0cd98787 2538
9b798ac5
ILT
25392011-01-28 Ian Lance Taylor <iant@google.com>
2540
2541 * godump.c (go_define): Ignore macros whose definitions include
2542 two adjacent operands.
2543
591e29d9
JJ
25442011-01-28 Jakub Jelinek <jakub@redhat.com>
2545
2546 PR target/42894
2547 * varasm.c (force_const_mem): Store copy of x in desc->constant
2548 instead of x itself.
2549 * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
2550 itself into REG_EQUAL note.
2551
62dcc44a
JM
25522011-01-28 Joseph Myers <joseph@codesourcery.com>
2553
2554 * config/freebsd.opt (posix, rdynamic): New Driver options.
2555
c9f58b9a
RO
25562011-01-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2557
2558 * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
2559 -Bstatic/-Bdynamic.
2560 * configure: Regenerate.
2561
5f02b9db
JM
25622011-01-27 Joseph Myers <joseph@codesourcery.com>
2563
2564 * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
2565 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
2566
5df97412
AS
25672011-01-27 Anatoly Sokolov <aesok@post.ru>
2568
2569 * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
2570 * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
2571 * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
2572 (s390_preferred_reload_class): Make static. Change return and
2573 'rclass' argument type to reg_class_t.
2574
779d4b91
JH
25752011-01-27 Jan Hubicka <jh@suse.cz>
2576
2577 PR middle-end/46949
2578 * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
2579 (process_function_and_variable_attributes): Check defined weakrefs.
2580
e80b21ed
MJ
25812011-01-27 Martin Jambor <mjambor@suse.cz>
2582
2583 PR tree-optimization/47228
2584 * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
2585 build_ref_for_offset.
2586
6dcc4f31
UW
25872011-01-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2588
2589 * config/spu/spu-elf.h (ASM_SPEC): Remove.
2590
509d65dd 25912011-01-26 Mikael Pettersson <mikpe@it.uu.se>
3b8ff89f
MP
2592
2593 PR rtl-optimization/46856
2594 * postreload.c (reload_combine_recognize_const_pattern): Do not
2595 separate cc0 setter and user on cc0 targets.
2596
04af8788
NP
25972011-01-26 Nicola Pero <nicola.pero@meta-innovation.com>
2598
2599 PR c/43082
2600 * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
2601 passed a VOID_TYPE expression, immediately emit an error and
2602 return error_mark_node.
2603
f7a60085
JL
26042011-01-26 Jeff Law <law@redhat.com>
2605
2606 PR rtl-optimization/47464
2607 * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
2608 rather than may_trap_p as needed.
2609
5c2917ec
DD
26102011-01-26 DJ Delorie <dj@redhat.com>
2611
2612 PR rtl-optimization/46878
2613 * combine.c (insn_a_feeds_b): Check for the implicit cc0
2614 setter/user dependency as well.
2615
bef16e87
EB
26162011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2617
2618 PR rtl-optimization/44469
2619 * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
2620 after removing trivially dead basic blocks.
2621
c75d884b
JM
26222011-01-26 Joseph Myers <joseph@codesourcery.com>
2623
2624 * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
2625 * config/frv/frv.h (LINK_SPEC): Likewise.
2626 * config/i386/netware.h (LINK_SPEC): Likewise.
2627 * config/m68k/linux.h (ASM_SPEC): Likewise.
2628 * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
2629 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2630 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2631 * config/sparc/linux.h (ASM_SPEC): Likewise.
2632 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2633 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2634
d3153553
JM
26352011-01-26 Joseph Myers <joseph@codesourcery.com>
2636
2637 * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
2638 * config/frv/frv.h (ASM_SPEC): Likewise.
2639 * config/m68k/linux.h (ASM_SPEC): Likewise.
2640 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2641 * config/rs6000/linux64.h (ASM_SPEC): Likewise.
2642 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2643 * config/sparc/linux.h (ASM_SPEC): Likewise.
2644 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2645 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2646
b89b1e9d
JM
26472011-01-26 Joseph Myers <joseph@codesourcery.com>
2648
2649 * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
2650 * config/frv/frv.h (LINK_SPEC): Likewise.
2651 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
2652
12eb1a9c
JM
26532011-01-26 Joseph Myers <joseph@codesourcery.com>
2654
2655 * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
2656 * config/frv/frv.h (ASM_SPEC): Likewise.
2657 * config/i386/sol2-10.h (ASM_SPEC): Likewise.
2658 * config/m68k/linux.h (ASM_SPEC): Likewise.
2659 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
2660 * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
2661 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
2662 * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
2663 * config/sparc/linux.h (ASM_SPEC): Likewise.
2664 * config/sparc/linux64.h (ASM_SPEC): Likewise.
2665 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
2666 * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
2667
e435f098
SE
26682011-01-26 Steve Ellcey <sje@cup.hp.com>
2669
2670 PR target/46997
2671 * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
2672 (*mux2): Ditto.
2673 (vec_extract_evenodd_help): Ditto.
2674 (vec_extract_evenv4hi): Ditto.
2675 (vec_extract_oddv4hi): Ditto.
2676 (vec_interleave_lowv2si): Ditto.
2677 (vec_interleave_highv2si): Ditto.
2678 (vec_extract_evenv2si): Ditto.
2679 (vec_extract_oddv2si: Ditto.
2680 (vec_pack_trunc_v2si): Ditto.
2681
34f0eee0
JH
26822011-01-22 Jan Hubicka <jh@suse.cz>
2683
2684 PR target/47237
2685 * cgraph.h (cgraph_local_info): New field can_change_signature.
2686 * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
2687 signature can change.
2688 (ipcp_estimate_growth): Call sequence simplify only if calle signature
2689 can change.
2690 (ipcp_insert_stage): Only compute args_to_skip if signature can change.
2691 (cgraph_function_versioning): We can not change signature of functions
2692 that don't allow that.
2693 * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
2694 (lto_input_node): Likewise.
38be4072
UB
2695 * ipa-inline.c (compute_inline_parameters): Compute
2696 local.can_change_signature.
34f0eee0 2697 * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
38be4072
UB
2698 * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on
2699 functions that can not change signature.
34f0eee0 2700 * i386.c (ix86_function_regparm, ix86_function_sseregparm,
38be4072
UB
2701 init_cumulative_args): Do not use local calling conventions
2702 for functions that can not change signature.
34f0eee0 2703
980ca891
JH
27042011-01-22 Jan Hubicka <jh@suse.cz>
2705
2706 * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
2707
768e3c60
RG
27082011-01-26 Richard Guenther <rguenther@suse.de>
2709
2710 PR tree-optimization/47190
61052244
AM
2711 * cgraphunit.c (process_common_attributes): New function.
2712 (process_function_and_variable_attributes): Use it.
768e3c60 2713
21d6a1c7
RG
27142011-01-26 Richard Guenther <rguenther@suse.de>
2715
2716 PR lto/47423
2717 * cgraphbuild.c (record_eh_tables): Record reference to personality
2718 function.
2719
48bb58b1
AO
27202011-01-26 Alexandre Oliva <aoliva@redhat.com>
2721
2722 PR debug/45454
2723 * sel-sched.c (moveup_expr): Don't let debug insns prevent
2724 non-debug insns from moving up.
2725
58c741a6
DK
27262011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2727
2728 PR target/40125
2729 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
2730 t-dlldir{,-x} fragment for build and add it to tmake_file.
2731 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
2732 * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
2733 * config/i386/t-dlldir: New file.
2734 (SHLIB_DLLDIR): Define.
2735 * config/i386/t-dlldir-x: New file.
2736 (SHLIB_DLLDIR): Define.
2737 * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
2738 (SHLIB_INSTALL): Use it.
2739
bff99262
CLT
27402011-01-26 Chung-Lin Tang <cltang@codesourcery.com>
2741
2742 PR target/47246
2743 * config/arm/arm.c (thumb2_legitimate_index_p): Change the
2744 lower bound of the allowed Thumb-2 coprocessor load/store
2745 index range to -256. Add explaining comment.
2746
82c03907
ILT
27472011-01-25 Ian Lance Taylor <iant@google.com>
2748
2749 * godump.c (go_define): Improve lexing of macro expansion to only
2750 accept expressions which match Go spec.
2751
47ea1edf
DK
27522011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
2753
d4dba752 2754 PR c++/43601
47ea1edf
DK
2755 * tree.c (handle_dll_attribute): Handle it.
2756 * doc/extend.texi (@item dllexport): Mention it.
2757 * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
2758
744f0946
ILT
27592011-01-25 Ian Lance Taylor <iant@google.com>
2760
2761 PR tree-optimization/26854
2762 * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
2763 (decl_jump_unsafe): Move higher in file, with no other change.
2764 (bind): Set has_jump_unsafe_decl if appropriate.
2765 (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
2766 (check_earlier_gotos): Likewise.
2767 (c_check_switch_jump_warnings): Likewise.
2768
5734f2b3
JW
27692011-01-25 Jonathan Wakely <jwakely.gcc@gmail.com>
2770
2771 * doc/invoke.texi (Warning Options): Add missing hyphen.
2772 (-fprofile-dir): Minor grammatical fixes.
2773 (-fbranch-probabilities): Likewise.
2774
9bdbdcef
AO
27752011-01-25 Alexandre Oliva <aoliva@redhat.com>
2776
2777 PR debug/45136
2778 PR debug/45130
2779 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
2780 debug insns.
2781 (no_real_insns_p, schedule_block, set_priorities): Drop special
2782 treatment of boundary debug insns.
38be4072 2783 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
9bdbdcef
AO
2784 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
2785 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
2786 (BOUNDARY_DEBUG_INSN_P): Likewise.
2787 (SCHEDULE_DEBUG_INSN_P): Likewise.
2788 * sched-rgn.c (init_ready_list): Drop special treatment of
2789 boundary debug insns.
2790 * final.c (rest_of_clean-state): Clear notes' BB.
2791
b305e3da
SP
27922011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2793
2794 * Makefile.in (LAMBDA_H): Removed.
2795 (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
2796 (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
2797 lambda-trans.o, and tree-loop-linear.o.
2798 (lto-symtab.o): Remove dependence on LAMBDA_H.
2799 (tree-loop-linear.o): Remove rule.
2800 (lambda-mat.o): Same.
2801 (lambda-trans.o): Same.
2802 (lambda-code.o): Same.
2803 (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
2804 (tree-vect-slp.o): Same.
2805 * hwint.h (gcd): Moved here.
2806 (least_common_multiple): Same.
2807 * lambda-code.c: Removed.
2808 * lambda-mat.c: Removed.
2809 * lambda-trans.c: Removed.
2810 * lambda.h: Removed.
2811 * tree-loop-linear.c: Removed.
2812 * lto-symtab.c: Do not include lambda.h.
2813 * omega.c (gcd): Removed.
2814 * passes.c (init_optimization_passes): Remove pass_linear_transform.
2815 * tree-data-ref.c (print_lambda_vector): Moved here.
2816 (lambda_vector_copy): Same.
2817 (lambda_matrix_copy): Same.
2818 (lambda_matrix_id): Same.
2819 (lambda_vector_first_nz): Same.
2820 (lambda_matrix_row_add): Same.
2821 (lambda_matrix_row_exchange): Same.
2822 (lambda_vector_mult_const): Same.
2823 (lambda_vector_negate): Same.
2824 (lambda_matrix_row_negate): Same.
2825 (lambda_vector_equal): Same.
2826 (lambda_matrix_right_hermite): Same.
2827 * tree-data-ref.h: Do not include lambda.h.
2828 (lambda_vector): Moved here.
2829 (lambda_matrix): Same.
2830 (dependence_level): Same.
2831 (lambda_transform_legal_p): Removed declaration.
2832 (lambda_collect_parameters): Same.
2833 (lambda_compute_access_matrices): Same.
2834 (lambda_vector_gcd): Same.
2835 (lambda_vector_new): Same.
2836 (lambda_vector_clear): Same.
2837 (lambda_vector_lexico_pos): Same.
2838 (lambda_vector_zerop): Same.
2839 (lambda_matrix_new): Same.
2840 * tree-flow.h (least_common_multiple): Removed declaration.
2841 * tree-parloops.c (lambda_trans_matrix): Moved here.
2842 (LTM_MATRIX): Same.
2843 (LTM_ROWSIZE): Same.
2844 (LTM_COLSIZE): Same.
2845 (LTM_DENOMINATOR): Same.
2846 (lambda_trans_matrix_new): Same.
2847 (lambda_matrix_vector_mult): Same.
2848 (lambda_transform_legal_p): Same.
2849 * tree-pass.h (pass_linear_transform): Removed declaration.
2850 * tree-ssa-loop.c (tree_linear_transform): Removed.
2851 (gate_tree_linear_transform): Removed.
2852 (pass_linear_transform): Removed.
2853 (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
2854 flag_loop_interchange.
2855
6bdfdb96
JJ
28562011-01-25 Jakub Jelinek <jakub@redhat.com>
2857
2858 PR tree-optimization/47265
2859 PR tree-optimization/47443
2860 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
2861 if name still has some uses.
2862
e4cba915
MJ
28632011-01-25 Martin Jambor <mjambor@suse.cz>
2864
2865 PR tree-optimization/47382
2866 * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
2867 (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
2868
509d65dd 28692011-01-25 Joel Sherrill <joel.sherrill@oarcorp.com>
f822b8ea
JS
2870
2871 * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
2872 sjlj_except_unwind_info.
2873
194313e2
RG
28742011-01-25 Richard Guenther <rguenther@suse.de>
2875
2876 PR tree-optimization/47426
2877 * tree-ssa-structalias.c (ipa_pta_execute): Make externally
2878 visible functions results escape.
2879
147a0bcf
JJ
28802011-01-25 Jakub Jelinek <jakub@redhat.com>
2881
2882 PR target/45701
2883 * config/arm/arm.c (any_sibcall_uses_r3): New function.
2884 (arm_get_frame_offsets): Use it.
2885
db963b52
SP
28862011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2887 Jakub Jelinek <jakub@redhat.com>
2888
2889 PR tree-optimization/47271
2890 * tree-if-conv.c (bb_postdominates_preds): New.
2891 (if_convertible_bb_p): Call bb_postdominates_preds.
2892 (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
2893 (predicate_scalar_phi): Call bb_postdominates_preds.
2894
bcddd3b9
NC
28952011-01-25 Nick Clifton <nickc@redhat.com>
2896
2897 * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
2898 * config/rx/rx.c (rx_function_value): Likewise.
2899 (rx_promote_function_mode): Likewise.
2900 (gen_safe_add): Place an outsized immediate value inside an UNSPEC
2901 in order to make it legitimate.
38be4072
UB
2902 * config/rx/rx.md (adddi3_internal): If the second operand is a MEM
2903 make sure that the first operand is the same as the result register.
bcddd3b9
NC
2904 (addsi3_unspec): Delete.
2905 (subdi3): Do not accept immediate operands.
2906 (subdi3_internal): Likewise.
2907
7e6cb022
JL
29082011-01-25 Jeff Law <law@redhat.com>
2909
2910 PR rtl-optimization/37273
2911 * ira-costs.c (scan_one_insn): Detect constants living in memory and
2912 handle them like argument loads from stack slots. Do not double
2913 count memory for memory constants and argument loads from stack slots.
2914
9ffa621e
JJ
29152011-01-25 Jakub Jelinek <jakub@redhat.com>
2916
2917 PR tree-optimization/47427
2918 PR tree-optimization/47428
2919 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
2920 coalesce if the new root var would be TREE_READONLY.
2921
5bd6e652
RG
29222011-01-25 Richard Guenther <rguenther@suse.de>
2923
2924 PR middle-end/47414
2925 * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
2926 correct type for TBAA.
2927
7c48ea69
SP
29282011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2929
2930 * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
2931 (close_phi_written_to_memory): Call for_each_index with
2932 dr_indices_valid_in_loop.
2933
38013f25
SP
29342011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2935
2936 * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
2937 when it is initialized.
2938
5c640e29
SP
29392011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2940
2941 * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
2942 call to graphite_find_data_references_in_stmt.
2943 * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
2944 (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update
2945 call to graphite_find_data_references_in_stmt.
2946 (analyze_drs_in_stmts): Same.
2947 * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
2948 in which the scalar analysis of indices is performed.
2949 (create_data_ref): Same. Update call to dr_analyze_indices.
2950 (find_data_references_in_stmt): Update call to create_data_ref.
2951 (graphite_find_data_references_in_stmt): Same.
2952 * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
2953 declaration.
2954 (create_data_ref): Same.
2955 * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
2956 call to create_data_ref.
2957
ac53c069
SP
29582011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2959
2960 * graphite-sese-to-poly.c (build_poly_scop): Move
38be4072 2961 rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
ac53c069 2962
3d17df15
SP
29632011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2964
2965 * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
2966 VAR_DECL, PARM_DECL, and RESULT_DECL.
2967
c513da01
SP
29682011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2969
2970 * graphite-dependences.c (reduction_dr_1): Allow several reductions
2971 in a reduction PBB.
2972 * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
2973 that have already been marked as PBB_IS_REDUCTION.
2974
3a292d59
SP
29752011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2976
2977 * graphite-scop-detection.c (same_close_phi_node): New.
2978 (remove_duplicate_close_phi): New.
2979 (make_close_phi_nodes_unique): New.
2980 (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
2981
ba858447
SP
29822011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2983
2984 * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
2985 * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
2986 of both data references to be the same.
2987
8d865c56
SP
29882011-01-25 Sebastian Pop <sebastian.pop@amd.com>
2989
38be4072
UB
2990 * graphite-dependences.c (build_lexicographical_constraint): Remove
2991 the gdim parameter.
2992 (build_lexicographical_constraint): Adjust call to
2993 ppl_powerset_is_empty.
8d865c56
SP
2994 (dependence_polyhedron): Same.
2995 (graphite_legal_transform_dr): Same.
2996 (graphite_carried_dependence_level_k): Same.
38be4072
UB
2997 * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params
2998 parameter.
8d865c56
SP
2999 * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
3000
50034a36
SP
30012011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3002
3003 * graphite-sese-to-poly.c
3004 (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
3005 (close_phi_written_to_memory): New.
3006 (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
3007 and unshare_expr.
3008
0deada9e
SP
30092011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3010
3011 * doc/install.texi: Update the expected version number of PPL to 0.11.
3012 * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
3013 #if PPL_VERSION_MINOR < 11.
3014
d7d3d6af
SP
30152011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3016
3017 * graphite-dependences.c: Include graphite-cloog-util.h.
3018 (new_poly_ddr): Inlined into dependence_polyhedron.
3019 (free_poly_ddr): Moved close by new_poly_ddr.
3020 (dependence_polyhedron_1): Renamed dependence_polyhedron.
3021 Early return NULL when ppl_powerset_is_empty returns true.
3022 (dependence_polyhedron): Renamed new_poly_ddr. Call only once
3023 poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty.
3024 (graphite_legal_transform_dr): Call new_poly_ddr.
3025 (graphite_carried_dependence_level_k): Same.
3026 (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr.
3027 (dot_transformed_deps_stmt_1): Removed.
3028 (dot_deps_stmt_1): Call dot_deps_stmt_2.
3029 (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr.
3030 (dot_deps_1): Call dot_deps_2.
3031 * Makefile.in (graphite-dependences.o): Add missing dependence on
3032 graphite-cloog-util.h.
3033
28c5db57
SP
30342011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3035
3036 * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
3037 (build_lexicographical_constraint): Same.
3038 (dependence_polyhedron_1): Same.
3039 (graphite_legal_transform_dr): Same.
3040 (graphite_carried_dependence_level_k): Same.
3041 * graphite-ppl.c (ppl_powerset_is_empty): New.
3042 * graphite-ppl.h (ppl_powerset_is_empty): Declared.
3043 * tree-data-ref.c (dump_data_reference): Print the basic block index.
3044
5168d98f
SP
30452011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3046
3047 * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
3048 the "a followed by b" relation and document it.
3049
4a40293a
SP
30502011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3051
3052 * graphite-dependences.c (build_lexicographical_constraint): Stop the
3053 iteration when the bag of constraints is empty.
3054
271fb6fa
SP
30552011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3056
3057 * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
3058
92d23680
SP
30592011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3060
3061 * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
3062 nest and two loop depths as parameters.
3063 (lst_try_interchange_loops): Call lst_interchange_profitable_p after
3064 lst_perfect_nestify.
3065
2f51deff
SP
30662011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3067
3068 * graphite-dependences.c (print_pddr): Call
3069 ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
3070
07f3593c
SP
30712011-01-25 Sebastian Pop <sebastian.pop@amd.com>
3072
3073 * graphite-ppl.c (debug_gmp_value): New.
3074 * graphite-ppl.h (debug_gmp_value): Declared.
3075
3fae6099
TG
30762011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>
3077
3078 * doc/install.texi: Document availability of cloog-0.16.
3079
1c3ba85b
SP
30802011-01-25 Vladimir Kargov <kargov@gmail.com>
3081
3082 * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
3083 invalid postdominance info.
3084
e8ba94fc
JH
30852011-01-24 Jan Hubicka <jh@suse.cz>
3086
3087 PR c/21659
3088 * doc/extend.texi (weak pragma): Drop claim that it must
3089 appear before definition.
3090 * varasm.c (merge_weak, declare_weak): Only sanity check
3091 that DECL is not output at a time it is declared weak.
3092
2b6e2d13
KZ
30932011-01-24 Kenneth Zadeck <zadeck@naturalbridge.com>
3094
3095 * machmode.def: Fixed comments.
1c3ba85b 3096
9841210f
KT
30972011-01-24 Kai Tietz <kai.tietz@onevision.com>
3098
3099 * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
3100
31012011-01-24 Paul Koning <ni1d@arrl.net>
e046112d
PK
3102
3103 * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
1c3ba85b 3104 WORDS_BIG_ENDIAN.
e046112d 3105
a6c5070a
L
31062011-01-24 H.J. Lu <hongjiu.lu@intel.com>
3107
3108 PR target/46519
3109 * config/i386/i386.c: Include sbitmap.h and fibheap.h.
3110 (block_info): Add scanned and prev.
3111 (move_or_delete_vzeroupper_2): Return if the basic block
3112 has been scanned and the upper 128bit state is unchanged
3113 from the last scan.
3114 (move_or_delete_vzeroupper_1): Return true if the exit
3115 state is changed.
3116 (move_or_delete_vzeroupper): Visit basic blocks using the
3117 work-list based algorithm based on vt_find_locations in
3118 var-tracking.c.
3119
3120 * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
3121
a40d79d7
NC
31222011-01-24 Nick Clifton <nickc@redhat.com>
3123
3124 * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
3125 * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
3126 -mv850e1 to the assembler. If -mv850e1 or -mv850es is specified
3127 then define __v850e1__.
3128 * doc/invoke.texi: Document -mv850es.
3129
440eb8de
RH
31302011-01-24 Richard Henderson <rth@redhat.com>
3131
3132 * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
3133 compound unordered comparisons.
3134 * config/rx/rx.c (rx_split_fp_compare): Remove.
3135 * config/rx/rx-protos.h: Update.
3136 * config/rx/rx.md (gcc_conds, rx_conds): Remove.
3137 (cbranchsf4): Don't call rx_split_fp_compare.
3138 (*cbranchsf4): Use rx_split_cbranch.
3139 (*cmpsf): Don't accept "i" constraint.
3140 (*conditional_branch): Only valid after reload.
3141 (cstoresf4): Merge expander with insn. Don't call rx_split_fp_compare.
3142
3ff79f99
MM
31432011-01-24 Michael Meissner <meissner@linux.vnet.ibm.com>
3144
3145 PR target/47385
3146 * config/rs6000/altivec.md (vector constant splitters): Add
3147 support for creating vector single precision constants if -mvsx is
3148 used and we would create the constant using Altivec primitives.
3149
ff3d9d08
BS
31502011-01-23 Bernd Schmidt <bernds@codesourcery.com>
3151 Richard Sandiford <rdsandiford@googlemail.com>
3152
3153 PR rtl-optimization/47166
3154 * reload1.c (emit_reload_insns): Disable the spill_reg_store
3155 mechanism for PRE_MODIFY and POST_MODIFY.
3156 (inc_for_reload): For PRE_MODIFY, return the insn that sets the
3157 reloadreg.
3158
7fcaf152
AS
31592011-01-23 Andreas Schwab <schwab@linux-m68k.org>
3160
8788adb6 3161 * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
7fcaf152 3162
d09b58c4
JH
31632011-01-22 Jan Hubicka <jh@suse.cz>
3164
3165 PR lto/47333
3166 * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
3167
e8ff8c5a
JH
31682011-01-22 Jan Hubicka <jh@suse.cz>
3169
3170 PR tree-optimization/43884
3171 PR lto/44334
8788adb6 3172 * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
e8ff8c5a
JH
3173 * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
3174
ccaed3ba
AS
31752011-01-22 Anatoly Sokolov <aesok@post.ru>
3176
3177 * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
3178 * config/s390/s390.c (s390_register_move_cost,
3179 s390_memory_move_cost): New.
3180 (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
3181
0cecee06
UW
31822011-01-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3183
3184 PR middle-end/47401
3185 * except.c (sjlj_assign_call_site_values): Move setting the
3186 crtl->uses_eh_lsda flag to ...
3187 (sjlj_mark_call_sites): ... here.
3188 (sjlj_emit_function_enter): Support NULL dispatch label.
3189 (sjlj_build_landing_pads): In a function with no landing pads
3190 that still has must-not-throw regions, generate code to register
3191 a personality function with empty LSDA.
3192
e692f276
RH
31932011-01-21 Richard Henderson <rth@redhat.com>
3194
1b7ae0b7
RH
3195 * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
3196
3843787f
RH
3197 * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
3198
e692f276
RH
3199 * compare-elim.c: New file.
3200 * Makefile.in (OBJS-common): Add it.
3201 (compare-elim.o): New.
3202 * common.opt (fcompare-elim): New.
3203 * opts.c (default_options_table): Add OPT_fcompare_elim.
3204 * tree-pass.h (pass_compare_elim_after_reload): New.
3205 * passes.c (init_optimization_passes): Add it.
3206 * recog.h: Protect against re-inclusion.
3207 * target.def (TARGET_FLAGS_REGNUM): New POD hook.
3208 * doc/invoke.texi (-fcompare-elim): Document it.
3209 * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
3210 * doc/tm.texi: Rebuild.
3211
9a7c2050
NC
32122011-01-22 Nick Clifton <nickc@redhat.com>
3213
3214 * config/rx/rx.md (cstoresf4): Pass comparison operator to
3215 rx_split_fp_compare.
3216
15ba5696
NC
32172011-01-22 Nick Clifton <nickc@redhat.com>
3218
3219 * config/rx/rx.md (UNSPEC_CONST): New.
3220 (deallocate_and_return): Wrap the amount popped off the stack in
3221 an UNSPEC_CONST in order to stop it being rejected by
3222 -mmax-constant-size.
3223 (pop_and_return): Add a "(return)" rtx.
3224 (call): Drop the immediate operand.
3225 (call_internal): Likewise.
3226 (call_value): Likewise.
3227 (call_value_internal): Likewise.
3228 (sibcall_internal): Likewise.
3229 (sibcall_value_internal): Likewise.
3230 (sibcall): Likewise. Generate an explicit call using
3231 sibcall_internal.
3232 (sibcall_value): Likewise.
3233 (mov<>): FAIL if a constant operand is not legitimate.
3234 (addsi3_unpsec): New pattern.
9a7c2050 3235
38be4072 3236 * config/rx/rx.c (rx_print_operand_address): Handle UNSPEC CONSTs.
15ba5696
NC
3237 (ok_for_max_constant): New function.
3238 (gen_safe_add): New function.
3239 (rx_expand_prologue): Use gen_safe_add.
3240 (rx_expand_epilogue): Likewise.
3241 (rx_is_legitimate_constant): Use ok_for_max_constant. Handle
3242 UNSPEC CONSTs.
3243
caaf13d3
JL
32442011-01-21 Jeff Law <law@redhat.com>
3245
3246 PR tree-optimization/47053
3247 * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
3248 (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
3249 statements are deleted.
3250 (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP. If NEED_EH_CLEANUP
3251 is nonempty, then purge dead edges and cleanup the CFG.
3252
12c30f2f
AO
32532011-01-21 Alexandre Oliva <aoliva@redhat.com>
3254
3255 PR debug/47402
3256 Temporarily revert:
3257 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
3258 PR debug/47106
3259 * tree-dfa.c (create_var_ann): Mark variable as used.
3260
7360d2ac
JJ
32612011-01-21 Jakub Jelinek <jakub@redhat.com>
3262
aaa52a96
JJ
3263 PR middle-end/45566
3264 * except.c (convert_to_eh_region_ranges): Emit queued no-region
3265 notes from other section in hot/cold partitioning even if
3266 last_action is -3. Increment call_site_base.
3267
7360d2ac
JJ
3268 PR rtl-optimization/47366
3269 * fwprop.c (forward_propagate_into): Return bool. If
3270 any changes are made, -fnon-call-exceptions is used and
3271 REG_EH_REGION note is present, call purge_dead_edges
3272 and return true if it purged anything.
3273 (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
3274 any EH edges were purged.
3275
e90b336f
JL
32762011-01-21 Jeff Law <law@redhat.com>
3277
3278 PR rtl-optimization/41619
3279 * caller-save.c (setup_save_areas): Break out code to determine
3280 which hard regs are live across calls by examining the reload chains
3281 so that it is always used.
3282 Eliminate code which checked REG_N_CALLS_CROSSED.
3283
3ffe07e1
JJ
32842011-01-21 Jakub Jelinek <jakub@redhat.com>
3285
3286 PR tree-optimization/47355
3287 * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
3288 NOP has non-debug uses beyond PHIs in new_bb.
3289
1c7d0b34
AO
32902011-01-21 Alexandre Oliva <aoliva@redhat.com>
3291
3292 PR debug/47106
3293 * cfgexpand.c (account_used_vars_for_block): Only account vars
3294 that are annotated as used.
3295 (estimated_stack_frame_size): Don't set TREE_USED.
3296 * tree-dfa.c (create_var_ann): Mark variable as used.
3297
f99cc488
RG
32982011-01-21 Richard Guenther <rguenther@suse.de>
3299
3300 PR middle-end/47395
3301 * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
3302
3bc27de7
RG
33032011-01-21 Richard Guenther <rguenther@suse.de>
3304
3305 PR tree-optimization/47365
3306 * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
3307 (vn_reference_lookup_pieces): Adjust.
3308 (vn_reference_lookup): Likewise.
3309 * tree-ssa-sccvn.c (vn_walk_kind): New static global.
3310 (vn_reference_lookup_3): Only look through kills if in
3311 VN_WALKREWRITE mode.
3312 (vn_reference_lookup_pieces): Adjust.
3313 (vn_reference_lookup): Likewise.
3314 (visit_reference_op_load): Likewise.
3315 (visit_reference_op_store): Likewise.
3316 * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
3317 (compute_avail): Likewise.
3318 (eliminate): Likewise.
3319
d8debb1d
JJ
33202011-01-21 Jakub Jelinek <jakub@redhat.com>
3321
3322 * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
3323 DECL_IGNORED_P non-reg vars if they are used.
3324
3a2df831
JJ
3325 PR tree-optimization/47391
3326 * varpool.c (const_value_known_p): Return false if
3327 decl is volatile.
3328
1dd584a2
KT
33292011-01-21 Kai Tietz <kai.tietz@onevision.com>
3330
3331 PR bootstrap/47215
3332 * config/i386/i386.c (ix86_local_alignment): Handle
3333 case for va_list_type_node is nil.
3334 (ix86_canonical_va_list_type): Likewise.
3335
7f9f095e
AM
33362011-01-21 Alan Modra <amodra@gmail.com>
3337
3338 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
3339 builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
3340
837b01f6
RR
33412011-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
3342
3343 * config/arm/arm.md (define_attr type): Rename f_load
3344 and f_store to f_fpa_load and f_fpa_store. Update.
3345 (write_conflict): Deal with rename fallout.
3346 (*push_fp_multi): Likewise.
3347 * config/arm/fpa.md (f_load): Use f_fpa_load.
3348 (f_store): Use f_fpa_store.
3349 (*movsf_fpa): Likewise.
3350 (*movdf_fpa): Likewise.
3351 (*movxf_fpa): Likewise.
3352 (*thumb2_movsf_fpa): Likewise.
3353 (*thumb2_movdf_fpa): Likewise.
3354 (*thumb2_movxf_fpa): Likewise.
3355 * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
3356 f_loadd and f_stored.
3357 (*thumb2_movdi_vfp): Likewise.
3358 (*thumb2_movsf_vfp): Fix attribute to f_loads.
3359 (*thumb2_movsi_vfp): Likewise.
3360 * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
3361 Use f_loads instead of f_load.
3362 * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
3363
a1a79768
AS
33642011-01-20 Anatoly Sokolov <aesok@post.ru>
3365
3366 * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
3367 * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
3368 * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
3369 (xtensa_mode_dependent_address_p): New function.
3370 (constantpool_address_p): Make static. Change return type to bool.
3371 Change argument type to const_rtx. Use CONST_INT_P predicate.
3372
427f6cec
AO
33732011-01-20 Alexandre Oliva <aoliva@redhat.com>
3374
3375 PR debug/46583
3376 * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
3377
583ac69c
JJ
33782011-01-20 Jakub Jelinek <jakub@redhat.com>
3379
3380 PR debug/47283
3381 * cfgexpand.c (expand_debug_expr): Instead of generating
3382 (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
3383 etc. handling.
3384
93e452ed
RG
33852011-01-20 Richard Guenther <rguenther@suse.de>
3386
3387 PR middle-end/47370
3388 * tree-inline.c (remap_gimple_op_r): Recurse manually for
3389 the pointer operand of MEM_REFs.
3390
28fc44f3
JJ
33912011-01-20 Jakub Jelinek <jakub@redhat.com>
3392
3393 PR tree-optimization/46130
3394 * ipa-split.c (consider_split): If return_bb contains non-virtual
3395 PHIs other than for retval or if split_function would not adjust it,
3396 refuse to split.
3397
ddd268f2
RG
33982011-01-20 Richard Guenther <rguenther@suse.de>
3399
3400 PR tree-optimization/47167
3401 * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
3402 Revert previous change, only avoid enumeral type changes.
3403
882020aa
MS
34042011-01-19 Mike Stump <mikestump@comcast.net>
3405
3406 * doc/tm.texi.in (BRANCH_COST): Englishify.
3407 * doc/tm.texi (BRANCH_COST): Likewise.
3408
7edb6247
DS
34092011-01-19 Dodji Seketeli <dodji@redhat.com>
3410
3411 PR c++/47291
3412 * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
61052244
AM
3413 (gen_scheduled_generic_parms_dies): New functions.
3414 (gen_struct_or_union_type_die): Schedule template parameters DIEs
3415 generation for the end of CU compilation.
3416 (dwarf2out_finish): Generate template parameters DIEs here.
7edb6247 3417
23d5ed5d
AO
34182011-01-19 Alexandre Oliva <aoliva@redhat.com>
3419
3420 PR debug/46240
3421 * tree-into-ssa.c (maybe_register_def): Do not attempt to add
3422 debug bind stmt on merge edges.
3423
37d6a488
AO
34242011-01-19 Alexandre Oliva <aoliva@redhat.com>
3425
3426 PR debug/47079
3427 PR debug/46724
3428 * function.c (instantiate_expr): Instantiate incoming rtl of
3429 implicit arguments, and recurse on VALUE_EXPRs.
3430 (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
3431 * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
3432
689f2c82
AO
34332011-01-19 Alexandre Oliva <aoliva@redhat.com>
3434
3435 * c-parser.c (c_parser_for_statement): Initialize
3436 collection_expression.
3437
03029de4
JM
34382011-01-19 Joseph Myers <joseph@codesourcery.com>
3439
3440 * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
3441
3e03217e
JM
34422011-01-19 Joseph Myers <joseph@codesourcery.com>
3443
3444 * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
3445 (LINK_SHLIB_SPEC): Don't use %(link_path).
3446 (SUBTARGET_EXTRA_SPECS): Remove link_path.
3447
5bbe9b3f
JM
34482011-01-19 Joseph Myers <joseph@codesourcery.com>
3449
3450 * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
3451 (NO_SHARED_LIB_SUPPORT): Remove.
3452 (LINK_SHLIB_SPEC): Remove one conditional definition.
3453
368e0b39
JM
34542011-01-19 Joseph Myers <joseph@codesourcery.com>
3455
3456 * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
3457 %{call_shared}.
3458 * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
3459 * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
3460 * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
3461 %{call_shared} and conditionals on these options not being passed.
3462 * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
3463 %{call_shared}.
3464
ed7656f6
JJ
34652011-01-19 Jakub Jelinek <jakub@redhat.com>
3466
68457901
JJ
3467 * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
3468 simplify.
3469
ed7656f6
JJ
3470 * ipa-split.c: Spelling fixes.
3471
e0d1958f
RH
34722011-01-19 Richard Henderson <rth@redhat.com>
3473
3474 * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
3475 (*mulsi3): Likewise.
3476
27098b6b
RH
3477 * longlong.h [__mn10300__] (count_leading_zeros): New.
3478 [__mn10300__] (umul_ppmm, smul_ppmm): New.
3479 [__mn10300__] (add_ssaaaa, subddmmss): New.
3480 [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
3481 [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
3482
d6be7c36
UW
34832011-01-19 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3484
3485 * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
3486
b1efde2a
RH
34872011-01-19 Richard Henderson <rth@redhat.com>
3488
44217823
RH
3489 * config/mn10300/mn10300.md (addsi3_flags): New.
3490 (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
3491 (subsi3_flags, subc_internal, subdi3): New.
3492 (subdi3_internal, *subdi3_degenerate): New.
3493 * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
3494
37a185d7
RH
3495 * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
3496 (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
3497 (mn10300_expand_epilogue): Use it. Compute REG_SAVE_BYTES once.
3498 * config/mn10300/mn10300-protos.h: Update.
3499 * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
3500 (return_ret): Likewise. Rename from return_internal_regs.
3501 (return_internal): Remove.
3502
040c5757
RH
3503 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
3504 (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
3505 (mn10300_legitimate_constant_p): Likewise.
3506 (mn10300_can_use_return_insn): Use mn10300_initial_offset.
3507 (mn10300_frame_size): New.
3508 (mn10300_expand_prologue): Use it.
3509 (mn10300_expand_epilogue): Likewise.
3510 (mn10300_initial_offset): Likewise.
3511 * config/mn10300/mn10300-protos.h: Update.
3512 * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
3513 * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
3514 (prologue, epilogue, return_internal): Tidy output code.
3515 (mn10300_store_multiple_operation, return): Likewise.
3516 (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
3517 (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
3518 (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
3519 (load_pic, am33_load_pic): New.
3520 (mn10300_load_pic0, mn10300_load_pic1): New.
3521
bad41521
RH
3522 * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
3523 * config/mn10300/mn10300.c (CC_FLAG_Z): New.
3524 (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
3525 (cc_flags_for_mode, cc_flags_for_code): New.
3526 (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
3527 overflow flag is not valid. Validate that the flags we need
3528 for the comparison are valid.
3529 (mn10300_output_cmp): Remove.
3530 (mn10300_output_add): New.
3531 (mn10300_select_cc_mode): Use cc_flags_for_code.
3532 (mn10300_split_cbranch): New.
3533 (mn10300_match_ccmode): New.
3534 (mn10300_split_and_operand_count): New.
3535 * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
3536 to the function.
3537 * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
3538 (addsi3): ... here. Use mn10300_output_add.
3539 (*addsi3_flags): New.
3540 (*am33_subsi3, *mn10300_subsi3): Merge...
3541 (subsi3): ... here. Use attribute isa.
3542 (*subsi3_flags): New.
3543 (negsi2): Rewrite from expander to insn_and_split. Use NOT+INC
3544 when possible.
3545 (*am33_andsi3, *mn10300_andsi3): Merge...
3546 (andsi3): ... here.
3547 (*andsi3_flags): New.
3548 (andsi3 splitters): New.
3549 (*am33_iorsi3, *mn10300_iorsi3): Merge...
3550 (iorsi3): ... here.
3551 (*iorsi3_flags): New.
3552 (*am33_xorsi3, *mn10300_xorsi3): Merge...
3553 (xorsi3): ... here.
3554 (*xorsi3_flags): New.
3555 (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
3556 (one_cmplsi2): ... here.
3557 (*one_cmplsi2_flags): New.
3558 (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload. Use "r"
3559 instead of "dax" in constraints. Use mn10300_split_cbranch.
3560 (*cmpsi): Rename from cmpsi. Do not use mn10300_output_cmp. Do not
3561 use matching constraints to eliminate a self-comparison.
3562 (*integer_conditional_branch): Rename from integer_conditional_branch.
3563 Use int_mode_flags to match CC_REG.
3564 (*cbranchsi4_btst, *btstsi): New.
3565 (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload. Use
3566 mn10300_split_cbranch.
3567 (*am33_cmpsf): Rename from am33_cmpsf.
3568 (*float_conditional_branch): Rename from float_conditional_branch.
3569 (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
3570 (zero_extendqisi2): ... here.
3571 (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
3572 (zero_extendhisi2): ... here.
3573 (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
3574 (extendqisi2): ... here.
3575 (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
3576 (extendhisi2): ... here.
3577 (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
3578 (ashlsi3): ... here.
3579 (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
3580 (lshrsi3): ... here.
3581 (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
3582 (ashrsi3): ... here.
3583 (consecutive add peephole): Remove.
3584 * config/mn10300/predicates.md (label_ref_operand): New.
3585 (int_mode_flags): New.
3586 (CCZN_comparison_operator): New.
3587
9efb4993
RH
3588 * config/mn10300/mn10300.md (UNSPEC_EXT): New.
3589 (throughput_42_latency_43): New reservation.
3590 (mulsidi3, umulsidi3): New expanders.
3591 (mulsidi3_internal): Rewrite from old mulsidi3 pattern. Expose
3592 the MDR register to allocation; separately allocate the low and
3593 high parts of the DImode result.
3594 (umulsidi3_internal): Similarly.
3595 (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
3596 (*mulsi3): ... here. Clobber MDR as a scratch as necessary.
3597 (udivsi3, umodsi3): Remove.
3598 (udivmodsi4, divmodsi4): New expanders.
3599 (*udivmodsi4): Rename from udivmodsi4. Expose MDR properly.
3600 (*divmodsi4): Simiarly.
3601 (ext_internal): New.
3602
c25a21f5
RH
3603 * config/mn10300/constraints.md ("z"): New constraint.
3604 * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
3605 (FIXED_REGISTERS): Don't fix MDR.
3606 (CALL_USED_REGSITERS): Reformat nicely.
3607 (REG_ALLOC_ORDER): Add MDR.
3608 (enum regclass): Add MDR_REGS.
3609 (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
3610 (IRA_COVER_CLASSES): Add MDR_REGS.
3611 (REGNO_REG_CLASS): Handle MDR_REG.
3612 * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
3613 (mn10300_register_move_cost): Likewise.
3614 * config/mn10300/mn10300.md (MDR_REG): New.
3615 (*movsi_internal): Handle moves to/from MDR_REGS.
3616
36846b26
RH
3617 * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
3618 POST_MODIFY.
3619 (mn10300_secondary_reload): Tidy combination reload classes.
3620 (mn10300_legitimate_address_p): Allow post-modify and reg+reg
3621 addresses for AM33. Allow symbolic offsets for reg+imm.
3622 (mn10300_regno_in_class_p): New.
3623 (mn10300_legitimize_reload_address): New.
3624 * config/mn10300/mn10300.h (enum reg_class): Remove
3625 DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
3626 SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS. Add
3627 SP_OR_GENERAL_REGS.
3628 (REG_CLASS_NAMES): Update to match.
3629 (REG_CLASS_CONTENTS): Likewise.
3630 (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
3631 (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
3632 (REGNO_IN_RANGE_P): Remove.
3633 (REGNO_DATA_P): Use mn10300_regno_in_class_p.
3634 (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
3635 (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
3636 (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
3637 (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
3638 (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
3639 (REGNO_GENERAL_P): New.
3640 (HAVE_POST_MODIFY_DISP): New.
3641 (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
3642 (LEGITIMIZE_RELOAD_ADDRESS): New.
3643 * config/mn10300/mn10300-protos.h: Update.
3644
8b119bb6
RH
3645 * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
3646 DATA_REGS for AM33 stack-pointer destination.
3647 (mn10300_preferred_output_reload_class): Likewise.
3648 (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
3649 into a form appropriate for ...
3650 (TARGET_SECONDARY_RELOAD): New.
3651 * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
3652 * config/mn10300/mn10300-protos.h: Update.
3653 * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
3654 reload_insi; use the "A" constraint for the scratch; handle AM33
3655 moves of sp to non-address registers.
3656
b1efde2a
RH
3657 * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
3658 (*movqi_internal): ... here.
3659 (*am33_movhi, *mn10300_movhi): Merge into...
3660 (*movhi_internal): ... here.
3661 (*movsi_internal): Use "r" instead of "dax" in constraints. Use "A"
3662 as the source/destination of moves from/to SP.
3663 (movsf): Only allow for AM33-2.
1c3ba85b 3664 (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
b1efde2a
RH
3665 any integer constant constraint. Only allow for AM33-2. Tidy
3666 all of the alternative outputs.
3667 (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
3668 (udivmodsi4): Delete expander and promote *udivmodsi4. Disallow
3669 for MN103.
3670 (udivsi3, umodsi3): New patterns for MN103 only.
3671
b899fd78
JR
36722011-01-19 Joern Rennecke <amylaar@spamcop.net>
3673
3674 * doc/tm.texi.in: Spell out that a lack of register class unions
3675 can lead to ICEs.
3676 * doc/tm.texi: Regenerate.
3677
afaaa67d
JJ
36782011-01-19 Jakub Jelinek <jakub@redhat.com>
3679
2e0642cd
JJ
3680 PR rtl-optimization/47337
3681 * dce.c (check_argument_store): New function.
3682 (find_call_stack_args): Ignore debug insns. Use check_argument_store.
3683
afaaa67d
JJ
3684 PR tree-optimization/47290
3685 * tree-eh.c (infinite_empty_loop_p): New function.
3686 (cleanup_empty_eh): Use it.
3687
d2cd871f
SE
36882011-01-18 Steve Ellcey <sje@cup.hp.com>
3689
3690 PR target/46997
3691 * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
3692 (a64_expand_widen_sum): Ditto.
3693 * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
3694 (vec_extract_evenodd_help): Ditto.
3695 (vec_extract_evenv4hi): Ditto.
3696 (vec_extract_oddv4hi): Ditto.
3697 (vec_extract_evenv2si): Ditto.
3698 (vec_extract_oddv2si): Ditto.
3699 (vec_extract_evenv2sf): Ditto.
3700 (vec_extract_oddv2sf): Ditto.
3701 (vec_pack_trunc_v4hi: Ditto.
3702 (vec_pack_trunc_v2si): Ditto.
3703 (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
3704 (vec_interleave_highv8qi): Ditto.
3705 (mix1_r): Ditto.
3706 (vec_extract_oddv8qi): Ditto.
3707 (vec_interleave_lowv4hi): Ditto.
3708 (vec_interleave_highv4hi): Ditto.
3709 (vec_interleave_lowv2si): Ditto.
3710 (vec_interleave_highv2si): Ditto.
3711
41a1208a
JDA
37122011-01-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3713
3714 * doc/extend.texi: Mention __float128 support on hppa HP-UX.
3715 * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
3716 * config/pa/pa.c (pa_expand_builtin): New. Include "langhooks.h".
3717 (pa_c_mode_for_suffix): New.
3718 (TARGET_EXPAND_BUILTIN): Define.
3719 (TARGET_C_MODE_FOR_SUFFIX): Define.
3720 (pa_builtins): Define.
3721 (pa_init_builtins): Register __float128 type and init new support
3722 builtins.
3723 * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
3724 * config/pa/quadlib.c (_U_Qfcopysign): New.
3725
1ecad98e
EB
37262011-01-18 Eric Botcazou <ebotcazou@adacore.com>
3727
3728 PR middle-end/46894
3729 * explow.c (allocate_dynamic_stack_space): Do not assume more than
3730 BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
3731 are defined.
3732
d4f2460a
UW
37332011-01-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3734
3735 PR tree-optimization/47179
3736 * config/spu/spu.c (spu_ref_may_alias_errno): New function.
3737 (TARGET_REF_MAY_ALIAS_ERRNO): Define.
3738
4994da65
RG
37392011-01-18 Richard Guenther <rguenther@suse.de>
3740
3741 PR rtl-optimization/47216
3742 * emit-rtl.c: Include tree-flow.h.
3743 (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
3744 of replicating it with different semantics.
3745 * Makefile.in (emit-rtl.o): Adjust.
3746
1eb458d1
RR
37472011-01-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
3748
38be4072 3749 * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually include.
61052244 3750 (cortex_a9_dp): Handle neon types correctly.
1eb458d1 3751
e7ef91dc
JJ
37522011-01-18 Jakub Jelinek <jakub@redhat.com>
3753
3754 PR rtl-optimization/47299
3755 * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
38be4072 3756 subtarget. Use normal multiplication if both operands are constants.
e7ef91dc
JJ
3757 * expmed.c (expand_widening_mult): Don't try to optimize constant
3758 multiplication if op0 has VOIDmode. Convert op1 constant to mode
3759 before using it.
3760
535b7874
RW
37612011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3762
3763 * doc/lto.texi (LTO): Ensure two spaces after period. Fix
3764 spacing after 'e.g.', typos, comma, hyphenation.
3765
27bf36f3
RH
37662011-01-17 Richard Henderson <rth@redhat.com>
3767
8a5b5449
RH
3768 * config/rx/predicates.md (rx_constshift_operand): Use match_test.
3769 (rx_restricted_mem_operand): New.
3770 (rx_shift_operand): Use register_operand.
3771 (rx_source_operand, rx_compare_operand): Likewise.
3772 * config/rx/rx.md (addsi3_flags): New expander.
3773 (adddi3): Rewrite as expander.
3774 (adc_internal, *adc_flags, adddi3_internal): New patterns.
3775 (subsi3_flags): New expander.
3776 (subdi3): Rewrite as expander.
3777 (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
3778
784f69be
RH
3779 * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
3780 (rx_init_builtins): Remove sat builtin.
3781 (rx_expand_builtin): Likewise.
3782 * config/rx/rx.md (ssaddsi3): New.
3783 (*sat): Rename from sat. Represent the CC_REG input.
3784
f033541c
RH
3785 * config/rx/predicates.md (rshift_operator): New.
3786 * config/rx/rx.c (rx_expand_insv): Remove.
3787 * config/rx/rx-protos.h: Update.
3788 * config/rx/rx.md (*bitset): Rename from bitset. Swap the ashift
3789 operand to the canonical position.
3790 (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
3791 (*bitclr, *bitclr_in_memory): Similarly.
3792 (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
3793 (insv): Retain the zero_extract in the expansion.
3794
34fee389
RH
3795 * config/rx/rx.md (bswapsi2): Use = not + for output reload.
3796 (bswaphi2, bitinvert, revw): Likewise.
3797
265c835f
RH
3798 * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
3799 (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
3800 * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
3801 (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
3802 (bitset, bitset_in_memory): Likewise.
3803 (bitinvert, bitinvert_in_memory): Likewise.
3804 (bitclr, bitclr_in_memory): Likewise.
3805 (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
3806 (rx_strend, rx_cmpstrn): Likewise.
3807 (rx_setmem): Likewise. Make the source BLKmode to match the dest.
3808 (bitop peep2 patterns): Remove.
3809
b4d83be3
RH
3810 * config/rx/rx.c (rx_match_ccmode): New.
3811 * config/rx/rx-protos.h: Update.
3812 * config/rx/rx.md (abssi2): Clobber, don't set flags.
3813 (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
3814 (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
3815 (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
3816 (fix_truncsfsi2, floatsisf2): Likewise.
3817 (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
3818 (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
3819 (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
3820 (*subsi3_flags, *xorsi3_flags): New.
3821
d0acb939
RH
3822 * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
3823
c06fc3d9
RH
3824 * config/rx/rx.c (rx_print_operand): Remove workaround for
3825 unsplit comparison operations.
3826
2882702b
RH
3827 * config/rx/rx.md (movsicc): Split after reload.
3828 (*movsicc): Merge *movsieq and *movsine via match_operator.
3829 (*stcc): New pattern.
3830
6f7310f2
RH
3831 * config/rx/rx.c (rx_float_compare_mode): Remove.
3832 * config/rx/rx.h (rx_float_compare_mode): Remove.
3833 * config/rx/rx.md (cstoresi4): Split after reload.
3834 (*sccc): New pattern.
3835
e963cb1a
RH
3836 * config/rx/predicates.md (label_ref_operand): New.
3837 (rx_z_comparison_operator): New.
3838 (rx_zs_comparison_operator): New.
3839 (rx_fp_comparison_operator): New.
3840 * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
3841 Validate that the flags are set properly for the comparison.
3842 (rx_gen_cond_branch_template): Remove.
3843 (rx_cc_modes_compatible): Remove.
3844 (mode_from_flags): New.
3845 (flags_from_code): Rename from flags_needed_for_conditional.
3846 (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
3847 (rx_select_cc_mode): Likewise.
3848 (rx_split_fp_compare): New.
3849 (rx_split_cbranch): New.
3850 * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
3851 (*cbranchsi4): Use match_operator and rx_split_cbranch.
3852 (*cbranchsf4): Similarly.
3853 (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>. Use
3854 match_operator and rx_split_cbranch.
3855 (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
3856 tstbranchsi4m_ne. Use match_operator and rx_split_cbranch.
3857 (*cmpsi): Rename from cmpsi.
3858 (*tstsi): Rename from tstsi.
3859 (*cmpsf): Rename from cmpsf; use CC_Fmode.
3860 (*conditional_branch): Rename from conditional_branch.
3861 (*reveresed_conditional_branch): Remove.
3862 (b<code>): Remove expander.
3863 * config/rx/rx-protos.h: Update.
3864
af530bb4
RH
3865 * config/rx/rx.c (rx_compare_redundant): Remove.
3866 * config/rx/rx.md (cmpsi): Don't use it.
3867 * config/rx/rx-protos.h: Update.
3868
27bf36f3
RH
3869 * config/rx/rx-modes.def (CC_F): New mode.
3870 * config/rx/rx.c (rx_select_cc_mode): New.
3871 * config/rx/rx.h (SELECT_CC_MODE): Use it.
3872 * config/rx/rx-protos.h: Update.
3873
d7fde127
RH
38742011-01-17 Richard Henderson <rth@redhat.com>
3875
3876 * except.c (dump_eh_tree): Fix stray ; after for statement.
3877
6ff38230
RG
38782011-01-17 Richard Guenther <rguenther@suse.de>
3879
3880 PR tree-optimization/47313
3881 * tree-inline.c (tree_function_versioning): Move DECL_RESULT
3882 handling before copying the body. Properly deal with
3883 by-reference result in SSA form.
3884
114ce554
ILT
38852011-01-17 Ian Lance Taylor <iant@google.com>
3886
bf5cd92b 3887 PR target/47219
114ce554
ILT
3888 * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
3889 (struct_value_alias_set): Don't define.
3890 (sparc_option_override): Don't set sparc_sr_alias_set and
3891 struct_value_alias_set.
3892 (save_or_restore_regs): Use gen_frame_mem rather than calling
3893 set_mem_alias_set.
3894 (sparc_struct_value_rtx): Likewise.
3895
98c6d93c
L
38962011-01-17 H.J. Lu <hongjiu.lu@intel.com>
3897
3898 PR target/47318
3899 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
3900 __m128i.
3901 (_mm_maskstore_pd): Likewise.
3902 (_mm_maskload_ps): Likewise.
3903 (_mm_maskstore_ps): Likewise.
3904 (_mm256_maskload_pd): Change mask to __m256i.
3905 (_mm256_maskstore_pd): Likewise.
3906 (_mm256_maskload_ps): Likewise.
3907 (_mm256_maskstore_ps): Likewise.
3908
3909 * config/i386/i386-builtin-types.def: Updated.
3910 (ix86_expand_special_args_builtin): Likewise.
3911
3912 * config/i386/i386.c (bdesc_special_args): Update
3913 __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
3914 __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
3915 __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
3916 __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
3917
3918 * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
3919 Use <avxpermvecmode> on mask register.
3920 (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
3921
b9361af2 39222011-01-17 Olivier Hainque <hainque@adacore.com>
61052244
AM
3923 Michael Haubenwallner <michael.haubenwallner@salomon.at>
3924 Eric Botcazou <ebotcazou@adacore.com>
b9361af2
OH
3925
3926 PR target/46655
3927 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
3928 if <= USHRT_MAX in 32-bit mode.
3929
b7ae9eb5
RW
39302011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3931
3932 * doc/install.texi (Configuration, Specific): Wrap long
3933 lines in examples. Allow line wrapping in long options
3934 and URLs where beneficial for PDF output.
3935
4377fad9
RS
39362011-01-16 Richard Sandiford <rdsandiford@googlemail.com>
3937
3938 * config/mips/mips.c (mips_classify_symbol): Don't return
3939 SYMBOL_PC_RELATIVE for nonlocal labels.
3940
55959ffa 39412011-01-15 Eric Botcazou <ebotcazou@adacore.com>
be46831f 3942
55959ffa
EB
3943 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
3944
39452011-01-15 Jan Hubicka <jh@suse.cz>
3946
3947 PR tree-optimization/47276
be46831f
JH
3948 * ipa.c (function_and_variable_visibility): Do not try to mark alias
3949 declarations as needed.
3950
05842ff5
MJ
39512011-01-15 Martin Jambor <mjambor@suse.cz>
3952
3953 * common.opt (fdevirtualize): New flag.
3954 * doc/invoke.texi (Option Summary): Document it.
3955 * opts.c (default_options_table): Add devirtualize flag.
3956 * ipa-prop.c (detect_type_change): Return immediately if
3957 devirtualize flag is not set.
3958 (detect_type_change_ssa): Likewise.
3959 (compute_known_type_jump_func): Likewise.
3960 (ipa_analyze_virtual_call_uses): Likewise.
3961
f65cf2b7
MJ
39622011-01-14 Martin Jambor <mjambor@suse.cz>
3963
3964 PR tree-optimization/45934
3965 PR tree-optimization/46302
3966 * ipa-prop.c (type_change_info): New type.
3967 (stmt_may_be_vtbl_ptr_store): New function.
3968 (check_stmt_for_type_change): Likewise.
3969 (detect_type_change): Likewise.
3970 (detect_type_change_ssa): Likewise.
3971 (compute_complex_assign_jump_func): Check for dynamic type change.
3972 (compute_complex_ancestor_jump_func): Likewise.
3973 (compute_known_type_jump_func): Likewise.
3974 (compute_scalar_jump_functions): Likewise.
3975 (ipa_analyze_virtual_call_uses): Likewise.
3976 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
3977
eb5bb0fd
JM
39782011-01-14 Joseph Myers <joseph@codesourcery.com>
3979
3980 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
3981 * config/i386/i386.opt (msse5): New Alias.
3982
f2060fbe
JM
39832011-01-14 Joseph Myers <joseph@codesourcery.com>
3984
3985 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
3986 * config/sparc/linux64.h (CC1_SPEC): Likewise.
3987 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
3988 * config/sparc/sparc.h (CC1_SPEC): Likewise.
3989
3a7b4385
JM
39902011-01-14 Joseph Myers <joseph@codesourcery.com>
3991
3992 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
3993 -mcpu options.
3994 * config/sparc/linux64.h (CC1_SPEC): Likewise.
3995 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
3996 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
3997 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
3998 Likewise.
3999 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
4000
a7b778f8
JM
40012011-01-14 Joseph Myers <joseph@codesourcery.com>
4002
38be4072 4003 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or -fvec-eabi.
a7b778f8 4004
a7edae0a
MS
40052011-01-14 Mike Stump <mikestump@comcast.net>
4006
4007 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
4008 * config/fr30/fr30.md: Likweise
4009 (movsi_push): Likewise.
4010 (movsi_pop): Likewise.
4011 (enter_func): Likewise.
4012 * config/moxie/moxie.md (movsi_push): Likewise.
4013 (movsi_pop): Likewise.
4014
cbabf03f
JM
40152011-01-14 Joseph Myers <joseph@codesourcery.com>
4016
4017 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
4018 %{no_archive} %{exact_version}.
4019 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
4020 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
4021 %{no_archive} %{exact_version}.
4022 * config/mips/openbsd.h (LINK_SPEC): Likewise.
4023 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
4024 * config/mips/vxworks.h: Likewise.
4025
438da41a
JM
40262011-01-14 Joseph Myers <joseph@codesourcery.com>
4027
38be4072 4028 * config/microblaze/microblaze.h (ASM_SPEC): Remove %{microblaze1}.
438da41a 4029
da290a42
JM
40302011-01-14 Joseph Myers <joseph@codesourcery.com>
4031
4032 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
4033 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
4034
8989d00e
JM
40352011-01-14 Joseph Myers <joseph@codesourcery.com>
4036
4037 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
4038 -nodefaultlib.
4039
a3010a69
JM
40402011-01-14 Joseph Myers <joseph@codesourcery.com>
4041
4042 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
4043 for mcpu not cpu.
4044 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
4045 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
4046 not cpu.
4047 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
4048 Don't handle -shlib.
4049
e7f2f537
JM
40502011-01-14 Joseph Myers <joseph@codesourcery.com>
4051
4052 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
4053 (CC1_SPEC): Don't handle -profile.
4054
34830bfd
JM
40552011-01-14 Joseph Myers <joseph@codesourcery.com>
4056
4057 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
4058 * config/mips/mips.h (CC1_SPEC): Likewise.
4059
b2d36e74
JM
40602011-01-14 Joseph Myers <joseph@codesourcery.com>
4061
4062 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
4063 * config/mips/mips.h (CC1_SPEC): Likewise.
4064
dabadc52
JM
40652011-01-14 Joseph Myers <joseph@codesourcery.com>
4066
4067 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
4068 * config/m32r/linux.h (LINK_SPEC): Likewise.
4069 * config/mips/linux.h (LINK_SPEC): Likewise.
4070 * config/mips/linux64.h (LINK_SPEC): Likewise.
4071 * config/sparc/linux.h (LINK_SPEC): Likewise.
4072 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
4073 LINK_SPEC): Likewise.
4074 * config/xtensa/linux.h (LINK_SPEC): Likewise.
4075
43ee6785
JM
40762011-01-14 Joseph Myers <joseph@codesourcery.com>
4077
4078 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
4079 %{version:-v}.
4080 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
4081
45e79dfd
JM
40822011-01-14 Joseph Myers <joseph@codesourcery.com>
4083
4084 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
4085 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
4086
37e9e71d
JM
40872011-01-14 Joseph Myers <joseph@codesourcery.com>
4088
4089 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
4090
bb127cd8
RO
40912011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4092
4093 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
4094 supports -Bstatic/-Bdynamic.
4095 * configure: Regenerate.
4096
89a012ea 40972011-01-14 Jan Hubicka <jh@suse.cz>
509d65dd 4098 Jack Howarth <howarth@bromo.med.uc.edu>
89a012ea
JH
4099
4100 PR target/46037
4101 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
4102 when checking debug_info_level. Test write_symbols instead of
4103 debug_hooks->var_location when setting flag_var_tracking_uninit.
4104
7352c013
RG
41052011-01-14 Richard Guenther <rguenther@suse.de>
4106
4107 PR tree-optimization/47179
4108 * target.def (ref_may_alias_errno): New target hook.
4109 * targhooks.h (default_ref_may_alias_errno): Declare.
4110 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
4111 (default_ref_may_alias_errno): New function.
4112 * target.h (struct ao_ref_s): Declare.
4113 * tree-ssa-alias.c: Include target.h.
4114 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
4115 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
4116 (targhooks.o): Likewise.
4117 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
4118 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
4119
9a6c9288
RG
41202011-01-14 Richard Guenther <rguenther@suse.de>
4121
4122 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
4123
0fdb0d27
RG
41242011-01-14 Richard Guenther <rguenther@suse.de>
4125
4126 PR tree-optimization/47280
4127 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
4128 return CFG changes.
4129 (tree_ssa_forward_propagate_single_use_vars): Deal with
4130 CFG changes from associate_plusminus.
4131
8f66db3b
RG
41322011-01-14 Richard Guenther <rguenther@suse.de>
4133
4134 PR middle-end/47281
4135 Revert
4136 2011-01-11 Richard Guenther <rguenther@suse.de>
4137
280d9630
EB
4138 PR tree-optimization/46076
4139 * tree-ssa.c (useless_type_conversion_p): Conversions from
4140 unprototyped to empty argument list function types are useless.
8f66db3b 4141
6c0c92e6
RG
41422011-01-14 Richard Guenther <rguenther@suse.de>
4143
4144 PR tree-optimization/47286
280d9630 4145 * tree-ssa-structalias.c (new_var_info): Register variables are global.
6c0c92e6 4146
db09f943
MJ
41472011-01-14 Martin Jambor <mjambor@suse.cz>
4148
4149 PR middle-end/46823
4150 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
4151
dde8a3a4
AS
41522011-01-13 Anatoly Sokolov <aesok@post.ru>
4153
4154 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
4155 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
4156 * config/xtensa/xtensa.c (xtensa_libcall_value,
4157 xtensa_function_value_regno_p): New functions.
4158 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
4159
a2b63a20
KT
41602011-01-13 Kai Tietz <kai.tietz@onevision.com>
4161
4162 PR c++/47213
4163 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
4164 PE specific hook.
4165 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
4166 New function prototype.
4167 * config/i386/winnt.c (i386_pe_assemble_visibility):
4168 Warn only if attribute was specified by user.
4169
b41f0b34
MM
41702011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
4171
4172 PR target/47251
4173 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
4174 floating point.
4175 (floatunsdidf2_fcfidu): Ditto.
4176
3f3c098d
AK
41772011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
4178
4179 * config/s390/s390.c (print_operand_address): Replace 'error' with
4180 'output_operand_lossage'.
4181 (print_operand): Likewise.
4182
29fa95ed
JL
41832011-01-13 Jeff Law <law@redhat.com>
4184
280d9630 4185 PR rtl-optimization/39077
29fa95ed
JL
4186 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
4187 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
4188 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
4189 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
4190 * gcse.c (prune_insertions_deletions): New function.
4191 (compute_pre_data): Use it.
4192
71d12276
DS
41932011-01-13 Dodji Seketeli <dodji@redhat.com>
4194
4195 PR debug/PR46973
4196 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
4197 static function.
61052244 4198 (prune_unused_types_mark): Use it.
71d12276 4199
9b0f04e7
AB
42002011-01-13 Andrey Belevantsev <abel@ispras.ru>
4201
4202 PR rtl-optimization/45352
1c3ba85b 4203 * sel-sched.c: Update copyright years.
9b0f04e7 4204 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1c3ba85b 4205 in the advancing loop when we have issued issue_rate insns.
9b0f04e7 4206
d6a3e264
RH
42072011-01-12 Richard Henderson <rth@redhat.com>
4208
a49b692a
RH
4209 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
4210 (TARGET_MD_ASM_CLOBBERS): New.
4211
126b1483
RH
4212 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
4213 (TARGET_DELEGITIMIZE_ADDRESS): New.
4214
f3d9d2e0
RH
4215 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
4216 (clzsi2, *bsch): New patterns.
4217
d84760c9
RH
4218 * config/mn10300/mn10300.md (INT): New mode iterator.
4219 (*mov<INT>_clr): New pattern, and peep2 to generate it.
4220
ec815d65
RH
4221 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
4222 flag_split_wide_types.
4223
d6a3e264
RH
4224 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
4225 (mn10300_trampoline_init): Rewrite without a template, an immediate
4226 load and a direct branch.
4227 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
4228
0f8ab434
AS
42292011-01-12 Anatoly Sokolov <aesok@post.ru>
4230
4231 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
4232 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
4233 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
4234 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
4235
d8a24b65
KT
42362011-01-12 Kai Tietz <kai.tietz@onevision.com>
4237
4238 PR debug/47209
4239 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
4240 of type.
4241
56e22cab
JH
42422011-01-12 Jan Hubicka <jh@suse.cz>
4243
4244 PR driver/47244
4245 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
4246 (PLUGIN_COND_CLOSE): New macro.
4247 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
4248
4b18b3c2
RG
42492011-01-12 Richard Guenther <rguenther@suse.de>
4250
4251 PR lto/47259
4252 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
4253 register variables in a MEM_REF.
4254
8e38461c
JM
42552011-01-12 Joseph Myers <joseph@codesourcery.com>
4256
4257 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
4258 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
4259 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
4260 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
4261 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
4262 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
4263 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
4264 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
4265 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
4266 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
4267 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
4268 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
4269 * config/gnu-user.h: New. Copied from linux.h.
4270 (LINUX_TARGET_STARTFILE_SPEC): Rename to
4271 GNU_USER_TARGET_STARTFILE_SPEC.
4272 (LINUX_TARGET_ENDFILE_SPEC): Rename to
4273 GNU_USER_TARGET_ENDFILE_SPEC.
4274 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
4275 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
4276 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
4277 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
4278 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
4279 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
4280 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
4281 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
4282 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
4283 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
4284 * config/arm/linux-eabi.h (CC1_SPEC): Use
4285 GNU_USER_TARGET_CC1_SPEC.
4286 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
4287 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
4288 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
4289 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
4290 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
4291 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
4292 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
4293 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
4294
a570fc16
RG
42952011-01-12 Richard Guenther <rguenther@suse.de>
4296
4297 PR other/46946
4298 * doc/invoke.texi (ffast-math): Document it is turned on
4299 with -Ofast.
4300
b0223c3e
JH
43012011-01-12 Jan Hubicka <jh@suse.cz>
4302
4303 PR tree-optimization/47233
ca1e00b3
EB
4304 * opts.c (common_handle_option): Disable ipa-reference with profile
4305 feedback.
b0223c3e 4306
1c3ba85b 43072011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
d853ee42
NP
4308
4309 * c-parser.c (c_parser_objc_at_property_declaration): Improved
ca1e00b3
EB
4310 error message.
4311
d853ee42
NP
43122011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
4313
4314 * c-parser.c (c_lex_one_token): Updated and reindented some
4315 comments. No changes in code.
4316
4053a5a0
ILT
43172011-01-11 Ian Lance Taylor <iant@google.com>
4318
4319 * godump.c (go_output_var): Don't output the variable if there is
4320 already a type with the same name.
4321
fa3e04d2
ILT
43222011-01-11 Ian Lance Taylor <iant@google.com>
4323
4324 * godump.c (go_format_type): Don't generate float80.
4325
885fe07c
RH
43262011-01-11 Richard Henderson <rth@redhat.com>
4327
72d6e3c5
RH
4328 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
4329 declaration. Rewrite for both speed and size.
4330 (mn10300_address_cost_1): Remove.
4331 (mn10300_register_move_cost): New.
4332 (mn10300_memory_move_cost): New.
4333 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
4334 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
4335 extensions, shifts, BSWAP, CLZ.
4336 (mn10300_wide_const_load_uses_clr): Remove.
4337 (TARGET_REGISTER_MOVE_COST): New.
4338 (TARGET_MEMORY_MOVE_COST): New.
4339 * config/mn10300/mn10300-protos.h: Update.
4340 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
4341
df37c023
RH
4342 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
4343 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
4344 * config/mn10300/mn10300-protos.h: Update.
4345 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
4346 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
4347 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
4348 (*test_int_bitfield, *test_byte_bitfield): Remove.
4349 (*bit_test, *subreg_bit_test): Remove.
62d3f9b2 4350 * config/mn10300/predicates.md (const_8bit_operand): Remove.
df37c023 4351
85a337b5
RH
4352 * config/mn10300/constraints.md ("c"): Rename from "A".
4353 ("A", "D"): New constraint letters.
4354 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
4355 (fmssf4, fnmasf4, fnmssf4): Likewise.
4356
a5c727e3
RH
4357 * config/mn10300/mn10300.md (isa): New attribute.
4358 (enabled): New attribute.
4359
0d9e23f4
RH
4360 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
4361 (abssf2, negsf2): Define only for hardware fp.
4362 (sqrtsf2): Reformat.
4363 (addsf3, subsf3, mulsf3): Merge expander and insn.
4364
c157b3f0
RH
4365 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
4366 (DEBUGGER_AUTO_OFFSET): Remove.
4367 (DEBUGGER_ARG_OFFSET): Remove.
4368
cc909bba
RH
4369 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
4370 Emit register stores with the same offsets as the hardware.
4371 (mn10300_store_multiple_operation): Don't check that the register
4372 save offsets are monotonic.
4373 * config/mn10300/mn10300-protos.h: Update.
4374
e3b5c2f3
RH
4375 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
4376
885fe07c
RH
4377 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
4378 in terms of the value on the stack, not the MDR register.
4379
6e701822
JH
43802011-01-11 Jan Hubicka <jh@suse.cz>
4381
4382 PR lto/45721
4383 PR lto/45375
4384 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
4385 (symbol_alias_set_destroy, symbol_alias_set_contains,
4386 propagate_aliases_backward): Declare.
4387 * lto-streamer-out.c (struct sets): New sturcture.
4388 (trivally_defined_alias): New function.
4389 (output_alias_pair_p): Rewrite.
4390 (output_unreferenced_globals): Fix output of alias pairs.
4391 (produce_symtab): Likewise.
4392 * ipa.c (function_and_variable_visibility): Set weak alias destination
4393 as needed in lto.
4394 * varasm.c (symbol_alias_set_t): Remove.
4395 (symbol_alias_set_destroy): Export.
4396 (propagate_aliases_forward, propagate_aliases_backward): New functions
4397 based on ...
4398 (compute_visible_aliases): ... this one; remove.
4399 (trivially_visible_alias): New
4400 (trivially_defined_alias): New.
4401 (remove_unreachable_alias_pairs): Rewrite.
4402 (finish_aliases_1): Reorganize code checking if alias is defined.
4403 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
4404 in LTO mode.
4405
1b248907
RG
44062011-01-11 Richard Guenther <rguenther@suse.de>
4407
4408 PR tree-optimization/46076
4409 * tree-ssa.c (useless_type_conversion_p): Conversions from
4410 unprototyped to empty argument list function types are useless.
4411
b1923f0a
RG
44122011-01-11 Richard Guenther <rguenther@suse.de>
4413
4414 PR middle-end/45235
4415 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
4416 volatile MEMs as MEM_READONLY_P.
4417
e98965af
RG
44182011-01-11 Richard Guenther <rguenther@suse.de>
4419
4420 PR tree-optimization/47239
4421 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
4422
9f9ca914
JL
44232011-01-11 Jeff Law <law@redhat.com>
4424
1ee3ea05 4425 PR tree-optimization/47086
9f9ca914
JL
4426 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
4427 IVs from statements that might throw.
4428
345fdcb7
JH
44292011-01-10 Jan Hubicka <jh@suse.cz>
4430
4431 PR lto/45375
4432 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
4433
c459c97b
JH
44342011-01-10 Jan Hubicka <jh@suse.cz>
4435
4436 PR lto/45375
4437 * profile.c (read_profile_edge_counts): Ignore profile inconistency
4438 when correcting profile.
4439
06c9eb51
JH
44402011-01-10 Jan Hubicka <jh@suse.cz>
4441
4442 PR lto/46083
4443 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
4444 DECL_FINI_PRIORITY.
4445 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
4446 Restore DECL_FINI_PRIORITY.
4447
ae9fd815
RW
44482011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4449
4450 * doc/gimple.texi: Fix quoting of multi-word return values in
4451 @deftypefn statements. Ensure presence of return value. Wrap
4452 overlong @deftypefn lines.
4453 (is_gimple_operand, is_gimple_min_invariant_address): Remove
4454 descriptions of removed functions.
4455 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
4456 of multi-word return value in @deftypefn statement.
4457
0ecb4a7c
RW
44582011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4459
4460 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
4461 (Conditional Expressions, Logical Operators)
4462 (Statement and operand traversals): Do not indent smallexample
4463 code. Fix duplicate function argument in example.
4464
2e5e346d
JL
44652011-01-10 Jeff Law <law@redhat.com>
4466
1ee3ea05 4467 PR tree-optimization/47141
2e5e346d
JL
4468 * ipa-split.c (split_function): Handle case where we are
4469 returning a value and the return block has a virtual operand phi.
4470
cf9712cc
JH
44712011-01-10 Jan Hubicka <jh@suse.cz>
4472
1c3ba85b 4473 PR tree-optimization/47234
cf9712cc
JH
4474 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
4475 (pass_feedback_split_functions): Declare.
4476 * passes.c (init_optimization_passes): Add ipa-split as subpass of
4477 tree-profile.
4478 * ipa-split.c (gate_split_functions): Update comments; disable
4479 split-functions for profile_arc_flag and branch_probabilities.
4480 (gate_feedback_split_functions): New function.
4481 (execute_feedback_split_functions): New function.
4482 (pass_feedback_split_functions): New global var.
4483
94cd932c
L
44842011-01-10 H.J. Lu <hongjiu.lu@intel.com>
4485
4486 PR lto/46760
4487 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
4488 calling gimple_call_set_cannot_inline.
4489
fbbfcaf1
IS
44902011-01-10 Iain Sandoe <iains@gcc.gnu.org>
4491
4492 * config/darwin-sections.def: Remove unused section.
4493
d06865bf
DK
44942011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
4495
4496 PR c++/47218
4497 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
4498
96bbfbac
NP
44992011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
4500
4501 PR objc/47232
4502 * c-parser.c (c_parser_declaration_or_fndef): Improved
4503 error message.
4504
1ba6516f
KT
45052011-01-09 Kai Tietz <kai.tietz@onevision.com>
4506
4507 * config/i386/winnt.c (i386_pe_start_function): Make sure
4508 to switch back to function's section.
4509
0c5d770e
IS
45102011-01-09 Iain Sandoe <iains@gcc.gnu.org>
4511
4512 PR gcc/46902
4513 PR testsuite/46912
4514 * plugin.c: Move include of dlfcn.h from here...
4515 * system.h: ... to here.
4516
45172011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4ee1aa2a
RW
4518
4519 * doc/cpp.texi (C++ Named Operators): Fix markup for header
4520 file name.
4521 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
4522 two extra empty pages in PDF output.
4523
046608a3
NP
45242011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
4525
4526 PR objc/47078
4527 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
4528 for error recovery purposes behave as if it was not specified so
4529 that the default type is usd.
4530
8cb114b9
JH
45312011-01-07 Jan Hubicka <jh@suse.cz>
4532
4533 PR tree-optmization/46469
4534 * ipa.c (function_and_variable_visibility): Clear needed flags on
4535 nodes with external decls; handle weakrefs merging correctly.
4536
b294a75e
JM
45372011-01-07 Joseph Myers <joseph@codesourcery.com>
4538
4539 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
4540 not false.
4541
96bdf9b4
JH
45422011-01-07 Jan Hubicka <jh@suse.cz>
4543
4544 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
4545 and no longer claim that gold is required for linker plugin.
4546 * configure: Regenerate.
4547 * gcc.c (PLUGIN_COND): New macro.
4548 (LINK_COMMAND_SPEC): Use it.
4549 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
4550 * config.in (HAVE_LTO_PLUGIN): New.
4551 * configure.ac (--with-lto-plugin): New parameter; autodetect
4552 HAVE_LTO_PLUGIN.
4553
17afc0fe
JH
45542011-01-07 Jan Hubicka <jh@suse.cz>
4555
4556 PR tree-optimization/46367
4557 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
4558 when we can update original.
4559 (cgraph_mark_inline_edge): Sanity check.
4560 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
4561
d4c48c0f
UW
45622011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4563
4564 * config/spu/spu.h (ASM_COMMENT_START): Define.
4565
96f5b137
L
45662011-01-07 H.J. Lu <hongjiu.lu@intel.com>
4567
4568 PR driver/42445
4569 * gcc.c (%>S): New.
4570 (SWITCH_KEEP_FOR_GCC): Likewise.
4571 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
4572 (do_spec_1): Handle "%>".
4573
4574 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
4575
c6a8f6de
JJ
45762011-01-07 Jakub Jelinek <jakub@redhat.com>
4577
c21bbd7a
JJ
4578 PR target/47201
4579 * config/i386/i386.c (ix86_delegitimize_address): If
4580 simplify_gen_subreg fails, return orig_x.
4581
c6a8f6de
JJ
4582 PR bootstrap/47187
4583 * value-prof.c (gimple_stringop_fixed_value): Handle
4584 lhs of the call properly.
4585
fe95fbf9
JH
45862011-01-07 Jan Hubicka <jh@suse.cz>
4587
4588 PR lto/45375
4589 * lto-opt.c (lto_reissue_options): Set flag_shlib.
4590
14d11d40
IS
45912011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4592
72e961c8
EB
4593 * target.def (function_switched_text_sections): New hook.
4594 * doc/tm.texi: Regenerated.
4595 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4596 * final.c (default_function_switched_text_sections): New.
72e961c8
EB
4597 (final_scan_insn): Call function_switched_text_sections when a
4598 mid-function section change occurs.
14d11d40 4599 * output.h (default_function_switched_text_sections): Declare.
72e961c8
EB
4600 * config/darwin-protos.h (darwin_function_switched_text_sections):
4601 Likewise.
14d11d40 4602 * config/darwin.c (darwin_function_switched_text_sections): New.
72e961c8 4603 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
14d11d40 4604
0b764288
IS
46052011-01-07 Iain Sandoe <iains@gcc.gnu.org>
4606
4607 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
4608 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
4609 the secondary code fragment when outputting for DWARF == 2.
4610
2ac6bb04
AS
46112011-01-07 Anatoly Sokolov <aesok@post.ru>
4612
4613 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
4614 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
4615 Remove.
4616 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
4617 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
4618
9f82de11
EB
46192011-01-06 Eric Botcazou <ebotcazou@adacore.com>
4620
4621 PR debug/46704
280d9630
EB
4622 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
4623 when it is not empty.
9f82de11
EB
4624
46252011-01-06 Changpeng Fang <changpeng.fang@amd.com>
14b52538 4626
1ed72abf 4627 Bobcat Enablement
14b52538 4628 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
1ed72abf 4629 (case ${target}): Add btver1.
14b52538 4630 * config/i386/driver-i386.c (host_detect_local_cpu): Let
1ed72abf 4631 -march=native recognize btver1 processors.
14b52538 4632 * config/i386/i386-c.c (ix86_target_macros_internal): Add
1ed72abf 4633 btver1 def_and_undef
14b52538 4634 * config/i386/i386.c (struct processor_costs btver1_cost): New
1ed72abf
CF
4635 btver1 cost table.
4636 (m_BTVER1): New definition.
4637 (m_AMD_MULTIPLE): Includes m_BTVER1.
4638 (initial_ix86_tune_features): Add btver1 tune.
4639 (processor_target_table): Add btver1 entry.
4640 (static const char *const cpu_names): Add btver1 entry.
4641 (software_prefetching_beneficial_p): Add btver1.
4642 (ix86_option_override_internal): Add btver1 instruction sets.
4643 (ix86_issue_rate): Add btver1.
4644 (ix86_adjust_cost): Add btver1.
14b52538 4645 * config/i386/i386.h (TARGET_BTVER1): New definition.
1ed72abf
CF
4646 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
4647 (enum processor_type): Add PROCESSOR_BTVER1.
14b52538
CF
4648 * config/i386/i386.md (define_attr "cpu"): Add btver1.
4649
e1a973d8
RO
46502011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4651
4652 PR target/43309
4653 * config/i386/i386.c (legitimize_tls_address)
4654 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
4655 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
4656 (tls_initial_exec_64_sun): New pattern.
4657
c73f67c5
GP
46582011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
4659
4660 * doc/invoke.texi (Overall Options): Improve wording and markup
4661 of the description of -wrapper.
4662
bc4c6f9c
JM
46632011-01-06 Joseph Myers <joseph@codesourcery.com>
4664
4665 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
4666 rdynamic, threads): New Driver options.
4667
adb75db0
RO
46682011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4669
4670 PR target/38118
4671 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
4672 if coming from .tdata.
4673 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
4674
402c1cb4
JH
46752011-01-06 Jan Hubicka <jh@suse.cz>
4676
4677 PR lto/47188
4678 * collect2.c (main): Do not enable LTOmode when plugin is active.
4679
a4da6485
RO
46802011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4681
4682 PR other/45915
4683 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
4684 --version output if supported.
4685 * configure: Regenerate.
4686
028dbdf4
JM
46872011-01-06 Joseph Myers <joseph@codesourcery.com>
4688
4689 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
4690 Driver options.
4691
dfe776dd
JJ
46922011-01-06 Jakub Jelinek <jakub@redhat.com>
4693
4694 PR c/47150
4695 * c-convert.c (convert): When converting a complex expression
4696 other than COMPLEX_EXPR to a different complex type, ensure
4697 c_save_expr is called instead of save_expr, unless in_late_binary_op.
4698 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
4699 when converting COMPLEX_TYPE.
4700
210dedfe
IR
47012011-01-06 Ira Rosen <irar@il.ibm.com>
4702
4703 PR tree-optimization/47139
4704 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
4705 only the last reduction value is used outside the loop. Update
4706 documentation.
4707
cd33a412
JM
47082011-01-05 Joseph Myers <joseph@codesourcery.com>
4709
4710 * config/rtems.opt: New.
4711 * config.gcc (*-*-rtems*): Use rtems.opt.
4712
819edd94
CF
47132011-01-05 Changpeng Fang <changpeng.fang@amd.com>
4714
4715 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
4716 processors do not support 3DNow instructions.
4717
dc242c4a
UW
47182011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4719
4720 * config/spu/spu.c (spu_option_override): Set parameter
4721 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
4722
be286227
JH
47232011-01-05 Jan Hubicka <jh@suse.cz>
4724
4725 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
4726 at the command line.
4727
644e637f
MJ
47282011-01-05 Martin Jambor <mjambor@suse.cz>
4729
4730 PR lto/47162
4731 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
4732 deltas on streamed outgoing edges.
4733 (output_node_opt_summary): Output info for outgoing edges only when
4734 the node is in new parameter set.
4735 (output_cgraph_opt_summary): New parameter set, passed to the two
4736 aforementioned functions. Update its forward declaration and its
4737 callee too.
4738
7bd11157
TT
47392011-01-05 Tom Tromey <tromey@redhat.com>
4740
4741 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
4742 operator to c_finish_omp_atomic.
4743 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
4744 (build_unary_op): Update.
4745 (build_modify_expr): Update.
4746 (build_asm_expr): Update.
4747
f626b979
UW
47482011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4749
4750 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
4751 newly inserted insns.
4752 (pad_bb): Likewise.
4753 (spu_emit_branch_hint): Likewise.
4754 (insert_hbrp_for_ilb_runout): Likewise.
4755 (spu_machine_dependent_reorg): Call df_finish_pass after
4756 schedule_insns returns.
4757
4c825c02
UW
47582011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4759
4760 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
4761
5e9fba51
EB
47622011-01-05 Eric Botcazou <ebotcazou@adacore.com>
4763
4764 PR tree-optimization/47005
4765 * tree-sra.c (struct access): Add 'non_addressable' bit.
4766 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
4767 (decide_one_param_reduction): Return 0 if the parameter is passed by
4768 reference and one of the accesses in the group is non_addressable.
4769
3ebb5ca6
EB
47702011-01-04 Eric Botcazou <ebotcazou@adacore.com>
4771
4772 PR tree-optimization/47056
4773 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
4774 (mark_load): Likewise. Handle FUNCTION_DECL specially.
4775 (mark_store): Likewise. Pass STMT to ipa_record_reference.
4776
d5d4d14e
EB
47772011-01-04 Eric Botcazou <ebotcazou@adacore.com>
4778
4779 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
4780 initializer. Skip view conversions from aggregate types.
4781
d996ef70
KT
47822011-01-04 Kai Tietz <kai.tietz@onevision.com>
4783
4784 PR bootstrap/47055
4785 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
4786
509d65dd 47872011-01-04 Philipp Thomas <pth@suse.de>
017096ca
PT
4788
4789 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
4790 obvious typo.
4791
55c623b5
UW
47922011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4793
4794 * function.c (thread_prologue_and_epilogue_insns): Do not crash
4795 on empty epilogue sequences.
4796
b98d6b35
JM
47972011-01-04 Joseph Myers <joseph@codesourcery.com>
4798
4799 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
4800 non-static): New Driver options.
4801
a0d43bac
JZ
48022011-01-04 Jie Zhang <jie@codesourcery.com>
4803
4804 PR driver/47137
4805 * gcc.c (default_compilers[]): Set combinable field to 0
4806 for all assembly languages.
4807
2b18eb32
MX
48082011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
4809
4810 * config/mips/loongson3a.md: New file.
4811 * config/mips/mips.md: Include loongson3a.md.
4812 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
4813 TUNE_LOONGSON_3A.
4814
42a48c4f
EB
48152011-01-03 Eric Botcazou <ebotcazou@adacore.com>
4816
4817 PR middle-end/47017
4818 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
4819 instead of convert_memory_address_addr_space on the base expression.
4820
9c1732c4
UW
48212011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4822
4823 * config/spu/spu.c (spu_option_override): Update error text
4824 for bad -march= / -mtune= values.
4825
aa474365
UW
48262011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4827
4828 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
4829 if branch-hint optimization will be performed.
4830
9766135b
JJ
48312011-01-03 Jakub Jelinek <jakub@redhat.com>
4832
371556ee
JJ
4833 PR tree-optimization/47148
4834 * ipa-split.c (split_function): Convert arguments to
4835 DECL_ARG_TYPE if possible.
4836
1ac12fa2
JJ
4837 PR tree-optimization/47155
4838 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
4839 when computing uns.
4840
9766135b
JJ
4841 PR rtl-optimization/47157
4842 * combine.c (try_combine): If undobuf.other_insn becomes
4843 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
4844 and set *new_direct_jump_p too.
4845
f4a2e571
SP
48462011-01-03 Sebastian Pop <sebastian.pop@amd.com>
4847
4848 PR tree-optimization/47021
4849 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
4850
9f8e43c0
JJ
48512011-01-03 Jakub Jelinek <jakub@redhat.com>
4852
4853 * gcc.c (process_command): Update copyright notice dates.
4854 * gcov.c (print_version): Likewise.
4855 * gcov-dump.c (print_version): Likewise.
4856 * mips-tfile.c (main): Likewise.
4857 * mips-tdump.c (main): Likewise.
4858
1a2e38f3
MJ
48592011-01-03 Martin Jambor <mjambor@suse.cz>
4860
4861 PR tree-optimization/46801
4862 * tree-sra.c (type_internals_preclude_sra_p): Check whether
4863 aggregate fields start at byte boundary instead of the bit-field flag.
4864
56b721c5
L
48652011-01-03 H.J. Lu <hongjiu.lu@intel.com>
4866
4867 PR driver/47137
4868 * gcc.c (main): Revert revision 168407.
4869
839d549b
MJ
48702011-01-03 Martin Jambor <mjambor@suse.cz>
4871
4872 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
4873
4ce99a20 48742011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2fa6eeff
UW
4875
4876 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
4877 vector optab to expand vector/scalar shift, update gimple to vector.
4878
76df0ae6
MJ
48792011-01-03 Martin Jambor <mjambor@suse.cz>
4880
4881 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
4882 a thunk.
4883
ce47fda3
MJ
48842011-01-03 Martin Jambor <mjambor@suse.cz>
4885
4886 PR tree-optimization/46984
4887 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
4888 HOST_WIDE_INT.
4889 (cgraph_create_indirect_edge): Fixed line length.
4890 (cgraph_indirect_call_info): Declare.
4891 (cgraph_make_edge_direct) Update declaration.
4892 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
4893 (cgraph_create_indirect_edge): Use it.
4894 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
4895 callees.
4896 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
4897 the new thunk_delta representation.
4898 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
4899 HOST_WIDE_INT.
4900 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
4901 (ipa_read_indirect_edge_info): Likewise.
4902 * lto-cgraph.c (output_edge_opt_summary): New function.
4903 (output_node_opt_summary): Call it on all outgoing edges.
4904 (input_edge_opt_summary): New function.
4905 (input_node_opt_summary): Call it on all outgoing edges.
4906
1e67fa1f
L
49072011-01-02 H.J. Lu <hongjiu.lu@intel.com>
4908
4909 PR driver/47137
4910 * gcc.c (main): Don't check have_o when settting combine_inputs.
4911
6656b2ac
EB
49122011-01-02 Eric Botcazou <ebotcazou@adacore.com>
4913
4914 * regrename.c: Add general comment describing the pass.
4915 (struct du_head): Remove 'length' field.
4916 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
4917 (regrename_optimize): Do not sort chains. Rework comments, add others.
4918 Force renaming to the preferred class (if any) in the first pass and do
4919 not consider registers that belong to it in the second pass.
4920 (create_new_chain): Do not set 'length' field.
4921 (scan_rtx_reg): Likewise.
4922
bc470c24
JJ
49232011-01-02 Jakub Jelinek <jakub@redhat.com>
4924
4e996296
JJ
4925 PR tree-optimization/47140
4926 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
4927 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
4928 to bit_value_binop.
4929
bc470c24 4930 PR rtl-optimization/47028
6656b2ac
EB
4931 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
4932 parm_birth_insn instead of at the beginning of first bb.
bc470c24 4933
5af62fcd 49342011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
0d52f2a8
MX
4935
4936 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
4937 Remove the word "see" before "@pxref".
4938 * doc/rtl.texi: Remove the word "see" before "@pxref".
4939
0e20c89f
JH
49402011-01-01 Jan Hubicka <jh@suse.cz>
4941
6656b2ac
EB
4942 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
4943 memory.
0e20c89f 4944
220e83ca
KT
49452011-01-01 Kai Tietz <kai.tietz@onevision.com>
4946
4947 PR target/38662
6656b2ac 4948 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
220e83ca 4949
ad41bd84 4950\f
797103eb 4951Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
4952
4953Copying and distribution of this file, with or without modification,
4954are permitted in any medium without royalty provided the copyright
4955notice and this notice are preserved.