re PR tree-optimization/52448 (cselim broken with calls)
[gcc.git] / gcc / ChangeLog
1 2013-02-08 Michael Matz <matz@suse.de>
2
3 PR tree-optimization/52448
4 * tree-ssa-phiopt.c (struct name_to_bb): Add phase member.
5 (nt_call_phase): New static.
6 (add_or_mark_expr): Only mark accesses with newer phase than any
7 call seen.
8 (nonfreeing_call_p): New.
9 (nt_init_block): Update nt_call_phase, mark blocks as visited.
10 (nt_fini_block): Keep blocks marked as visited.
11 (get_non_trapping): Initialize nt_call_phase, and reset aux pointer.
12
13 2013-02-08 Richard Biener <rguenther@suse.de>
14
15 * ira.c (ira): Free broken dominator information.
16
17 2013-02-08 Uros Bizjak <ubizjak@gmail.com>
18
19 * config/i386/i386.c (ix86_spill_class): Use INTEGER_CLASS_P macro.
20
21 2013-02-08 Marek Polacek <polacek@redhat.com>
22
23 * cfgloop.c (verify_loop_structure): Add more checking of headers.
24
25 2013-02-08 Richard Biener <rguenther@suse.de>
26
27 PR middle-end/56181
28 * cfgloop.h (flow_loops_find): Adjust.
29 (bb_loop_header_p): Declare.
30 * cfgloop.c (bb_loop_header_p): New function split out from ...
31 (flow_loops_find): ... here. Adjust function signature,
32 support incremental loop structure update.
33 (verify_loop_structure): Cleanup. Verify a loop is a loop.
34 * cfgloopmanip.c (fix_loop_structure): Move ...
35 * loop-init.c (fix_loop_structure): ... here.
36 (apply_loop_flags): Split out from ...
37 (loop_optimizer_init): ... here.
38 (fix_loop_structure): Use apply_loop_flags. Use flow_loops_find
39 in incremental mode, only remove dead loops here.
40
41 2013-02-08 Georg-Johann Lay <avr@gjlay.de>
42
43 PR target/54222
44 * config/avr/avr.md (unspec) <UNSPEC_ROUND>: Add.
45 * config/avr/avr-fixed.md (ALL4QA, ALL124QA): New mode iterators.
46 (round<mode>3, round<mode>3_const): New expanders for fixed-mode.
47 (*round<mode>3.libgcc): New insns for fixed-modes.
48 * config/avr/builtins.def (ABSxx): Use a non-NULL LIBNAME.
49 (ROUNDxx, COUNTLSxx, BITSxx, xxBITS): New DEF_BUILTINs.
50 (ROUNDFX, COUNTLSFX, ABSFX): New DEF_BUILTINs.
51 * config/avr/stdfix.h (absFX, bitsFX, FXbits): Remove inline
52 implementations. Define to __builtin_avr_absFX,
53 __builtin_avr_bitsFX, __builtin_avr_FXbits, respectively.
54 (roundFX, countlsFX): Define to __builtin_avr_roundFX,
55 __builtin_avr_countlsFX, respectively.
56 * config/avr/avr-c.c (target.h): Include it.
57 (enum avr_builtin_id): New enum.
58 (avr_resolve_overloaded_builtin): New static function.
59 (avr_register_target_pragmas): Use it to set
60 targetm.resolve_overloaded_builtin.
61 * config/avr/avr.c (avr_init_builtins): Supply myriads of local
62 tree nodes used by DEF_BUILTIN.
63 (avr_expand_builtin) <AVR_BUILTIN_ROUNDxx>: Sanity-check them.
64 (avr_fold_builtin) <AVR_BUILTIN_BITSxx>: Fold to VIEW_COVERT_EXPR.
65 <AVR_BUILTIN_xxBITS>: Same.
66
67 2013-02-08 Richard Biener <rguenther@suse.de>
68
69 * cfgloop.c (verify_loop_structure): Properly handle
70 a loop exiting to another loop header.
71 * ira-int.h (ira_loops): Remove.
72 * ira.c (ira_loops): Remove.
73 (ira): Use loop_optimizer_init and loop_optimizer_finalize.
74 (do_reload): Use loop_optimizer_finalize.
75 * ira-build.c (create_loop_tree_nodes): Use get_loops and
76 number_of_loops to access the loop tree.
77 (more_one_region_p): Likewise.
78 (finish_loop_tree_nodes): Likewise.
79 (rebuild_regno_allocno_maps): Likewise.
80 (mark_loops_for_removal): Likewise.
81 (mark_all_loops_for_removal): Likewise.
82 (remove_unnecessary_regions): Likewise.
83 (ira_build): Likewise.
84 * ira-emit.c (setup_entered_from_non_parent_p): Likewise.
85
86 2013-02-08 Richard Biener <rguenther@suse.de>
87
88 * Makefile.in (tree-tailcall.o): Add $(CFGLOOP_H) dependency.
89 * ipa-pure-const.c (analyze_function): Avoid calling
90 mark_irreducible_loops twice.
91 * tree-tailcall.c (tree_optimize_tail_calls_1): Mark loops for fixup.
92
93 2013-02-07 David S. Miller <davem@davemloft.net>
94
95 * dwarf2out.c (based_loc_descr): Perform leaf register remapping
96 on 'reg'.
97 * var-tracking.c (vt_add_function_parameter): Test the presence of
98 HAVE_window_save properly and do not remap argument registers when
99 we have a leaf function.
100
101 2013-02-07 Uros Bizjak <ubizjak@gmail.com>
102
103 PR bootstrap/56227
104 * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT
105 instead of "ll".
106 * config/i386/i386.c (ix86_print_operand): Ditto.
107
108 2013-02-07 Vladimir Makarov <vmakarov@redhat.com>
109
110 * lra-constraints.c (process_alt_operands): Fix recently added comment.
111
112 2013-02-07 Vladimir Makarov <vmakarov@redhat.com>
113
114 PR rtl-optimization/56225
115 * lra-constraints.c (process_alt_operands): Check that reload hard
116 reg can hold value for strict_low_part.
117
118 2013-02-07 Jakub Jelinek <jakub@redhat.com>
119
120 PR debug/56154
121 * dwarf2out.c (dwarf2_debug_hooks): Set end_function hook to
122 dwarf2out_end_function.
123 (in_first_function_p, maybe_at_text_label_p,
124 first_loclabel_num_not_at_text_label): New variables.
125 (dwarf2out_var_location): In the first function find out
126 lowest loclabel_num N where .LVLN is known not to be equal to .Ltext0.
127 (find_empty_loc_ranges_at_text_label, dwarf2out_end_function): New
128 functions.
129
130 2013-02-07 Eric Botcazou <ebotcazou@adacore.com>
131
132 PR rtl-optimization/56178
133 * cse.c (cse_insn): Do not create a REG_EQUAL note if the source is a
134 SUBREG of a register. Tidy up related block of code.
135 * fwprop.c (forward_propagate_and_simplify): Do not create a REG_EQUAL
136 note if the source is a register or a SUBREG of a register.
137
138 2013-02-07 Jakub Jelinek <jakub@redhat.com>
139
140 PR target/56228
141 * config/rs6000/rs6000.md (ptrm): New mode attr.
142 (call_indirect_aix<ptrsize>, call_indirect_aix<ptrsize>_nor11,
143 call_value_indirect_aix<pttrsize>,
144 call_value_indirect_aix<pttrsize>_nor11): Use <ptrm> instead of
145 m in constraints.
146
147 2013-02-07 Michael Haubenwallner <michael.haubenwallner@salomon.at>
148
149 * collect2.c (main): Set aix64_flag for -G and -bsvr4 too, disable
150 if -bnortl. Convert to strcmp and strncmp.
151
152 2013-02-07 Alan Modra <amodra@gmail.com>
153
154 PR target/54009
155 * config/rs6000/rs6000.c (mem_operand_gpr): Check that LO_SUM
156 addresses won't wrap when offsetting.
157 (rs6000_secondary_reload): Provide secondary reloads needed for
158 wrapping LO_SUM addresses.
159
160 2013-02-06 Thomas Schwinge <thomas@codesourcery.com>
161
162 * config/gnu.h (GNU_USER_TARGET_OS_CPP_BUILTINS): Never define
163 MACH, just __MACH__.
164
165 2013-02-06 Richard Biener <rguenther@suse.de>
166
167 * tracer.c (tracer): Mark loops with LOOPS_NEED_FIXUP
168 instead of calling fix_loop_structure.
169
170 2013-02-06 Jakub Jelinek <jakub@redhat.com>
171
172 PR middle-end/56217
173 * omp-low.c (use_pointer_for_field): Return false if
174 lower_send_shared_vars doesn't generate any copy-out code.
175
176 2013-02-06 Tom de Vries <tom@codesourcery.com>
177
178 PR rtl-optimization/56131
179 * cfgrtl.c (delete_insn): Use NOTE_BASIC_BLOCK instead of BLOCK_FOR_INSN
180 to get the bb of a NOTE_INSN_BASIC_BLOCK. Handle the case that the bb
181 of the label is NULL. Add comment.
182
183 2013-02-05 Jakub Jelinek <jakub@redhat.com>
184
185 * tree.h (struct tree_decl_with_vis): Remove thread_local field.
186
187 PR sanitizer/55374
188 * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define.
189 (STATIC_LIBTSAN_LIBS): Likewise.
190 * gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define.
191 (LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC
192 is defined, don't add anything else beyond that.
193 (SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define.
194 (LINK_COMMAND_SPEC): Use them.
195
196 PR tree-optimization/56205
197 * tree-stdarg.c (check_all_va_list_escapes): Return true if
198 there are any PHI nodes that set non-va_list_escape_vars SSA_NAME
199 and some va_list_escape_vars SSA_NAME appears in some PHI argument.
200
201 2013-02-05 Richard Biener <rguenther@suse.de>
202
203 PR tree-optimization/53342
204 PR tree-optimization/53185
205 * tree-vectorizer.h (vect_check_strided_load): Remove.
206 * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do
207 not disallow peeling for vectorized strided loads.
208 (vect_check_strided_load): Make static and simplify.
209 (vect_analyze_data_refs): Adjust.
210 * tree-vect-stmts.c (vectorizable_load): Handle peeled loops
211 correctly when vectorizing strided loads.
212
213 2013-02-05 Richard Biener <rguenther@suse.de>
214
215 * doc/install.texi: Refer to ISL, not PPL.
216
217 2013-02-05 Jan Hubicka <jh@suse.cz>
218
219 PR tree-optimization/55789
220 * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1.
221
222 2013-02-05 Jan Hubicka <jh@suse.cz>
223
224 PR tree-optimization/55789
225 * cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove
226 the dead call anyway.
227
228 2013-02-05 Eric Botcazou <ebotcazou@adacore.com>
229
230 PR sanitizer/55374
231 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard.
232
233 2013-02-04 Alexander Potapenko <glider@google.com>
234 Jack Howarth <howarth@bromo.med.uc.edu>
235 Jakub Jelinek <jakub@redhat.com>
236
237 PR sanitizer/55617
238 * config/darwin.c (sort_ctor_records): Stabilized qsort
239 on constructor priority by using original position.
240 (finalize_ctors): New routine to sort constructors by
241 priority before use in assemble_integer.
242 (machopic_asm_out_constructor): Use finalize_ctors if needed.
243
244 2013-02-04 Jakub Jelinek <jakub@redhat.com>
245
246 PR libstdc++/54314
247 * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn
248 about visibility on artificial decls.
249 * config/sol2.c (solaris_assemble_visibility): Likewise.
250
251 2013-02-04 Kai Tietz <ktietz@redhat.com>
252
253 PR target/56186
254 * config/i386/i386.c (function_value_ms_64): Add additional valtype
255 argument and improve checking of return-argument types for 16-byte
256 modes.
257 (ix86_function_value_1): Add additional valtype argument on call
258 of function_value_64.
259 (return_in_memory_ms_64): Sync 16-byte sized mode handling with
260 handling infunction_value_64 function.
261
262 2013-02-04 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>
263
264 * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue.
265
266 2013-02-04 Richard Biener <rguenther@suse.de>
267
268 PR tree-optimization/56188
269 * tree-ssa-structalias.c (label_visit): Consider case with
270 initially non-empty points-to set.
271 (perform_var_substitution): Dump node mapping and clean up.
272
273 2013-02-04 Richard Guenther <rguenther@suse.de>
274
275 PR lto/56168
276 * lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin
277 node prevail as last resort.
278 (lto_symtab_merge_decls): Remove guard on LTRANS here.
279 (lto_symtab_prevailing_decl): Builtins are their own prevailing decl.
280
281 2013-02-04 Richard Biener <rguenther@suse.de>
282
283 PR tree-optimization/56113
284 * tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add):
285 Merge into ...
286 (equiv_class_lookup_or_add): ... this.
287 (label_visit): Adjust and fix error in previous patch.
288 (perform_var_substitution): Adjust.
289
290 2013-02-03 Oleg Endo <olegendo@gcc.gnu.org>
291
292 * config/sh/divtab.c: Fix formatting and comments throughout the file.
293 * config/sh/sh4-300.md: Likewise.
294 * config/sh/sh4a.md: Likewise.
295 * config/sh/constraints.md: Likewise.
296 * config/sh/sh.md: Likewise.
297 * config/sh/netbsd-elf.h: Likewise.
298 * config/sh/predicates.md: Likewise.
299 * config/sh/sh-protos.h: Likewise.
300 * config/sh/ushmedia.h: Likewise.
301 * config/sh/linux.h: Likewise.
302 * config/sh/sh.c: Likewise.
303 * config/sh/superh.h: Likewise.
304 * config/sh/elf.h: Likewise.
305 * config/sh/sh4.md: Likewise.
306 * config/sh/sh.h: Likewise.
307
308 2013-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
309
310 * config/pa/constraints.md: Adjust unused letters. Change "T"
311 constraint to match_test floating_point_store_memory_operand().
312 * config/pa/predicates.md (reg_plus_base_memory_operand): New.
313 (base14_operand): New.
314 (floating_point_store_memory_operand): New.
315 (integer_store_memory_operand): Revise to use base14_operand and
316 reg_plus_base_memory_operand.
317 (move_dest_operand): Allow symbolic_memory_operands.
318 (symbolic_memory_operand): Check for LO_SOM.
319 (symbolic_operand): Change default case to break.
320 * config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force
321 CONST_DOUBLE values to be reloaded by putting them into memory when
322 the destination is a floating point register.
323 (movdf): Remove code to handle CONST_DOUBLE.
324 (movsf): Likewise.
325 (reload_indf_r1): New.
326 (reload_insf_r1): New.
327 Consistently use "Q" and "T" constraints with integer and floating
328 point move instructions, respectively.
329 (movdi): Remove FAIL.
330 Change predicate for source operand unamed DImode move from
331 general_operand to move_src_operand.
332 (umulsidi3): Change predicate for destination operand to
333 register_operand.
334 Likewise for similar unamed patterns.
335 * config/pa/pa-protos.h (pa_legitimize_reload_address): Declare.
336 * config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis.
337 (hppa_legitimize_address): Simplify mask calculation.
338 (pa_emit_move_sequence): Revised handling of secondary reloads from
339 REG+D addresses for floating point loads and stores. Directly handle
340 loading CONST0_RTX (mode) to a floating point register.
341 (pa_secondary_reload): Handle reloading DF and SFmode constant values
342 to floating point registers. Don't restrict secondary reloads to
343 floating point registers to integer modes. Revise some comments and
344 cleanup some code.
345 (TARGET_LEGITIMATE_ADDRESS_P): Define.
346 (pa_legitimate_address_p): New.
347 (pa_legitimize_reload_address): New.
348 * config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New.
349 (STRICT_REG_OK_FOR_BASE_P): New.
350 (GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments.
351 (LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address.
352
353 2013-02-03 David Edelsohn <dje.gcc@gmail.com>
354 Andrew Dixie <andrewd@gentrack.com>
355
356 * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
357 flag set.
358
359 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
360
361 * expmed.c (extract_bit_field_1): Pass the full width of the
362 structure to get_best_reg_extraction_insn.
363
364 2013-02-01 David Edelsohn <dje.gcc@gmail.com>
365
366 PR target/54601
367 * configure.ac (use_cxa_atexit): Add AIX.
368 * configure: Regenerate.
369
370 * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o.
371
372 2013-02-01 Jakub Jelinek <jakub@redhat.com>
373
374 PR debug/54793
375 * final.c (need_profile_function): New variable.
376 (final_start_function): Drop ATTRIBUTE_UNUSED from first argument.
377 If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG
378 is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED
379 notes, targetm.asm_out.function_prologue doesn't emit anything,
380 HAVE_prologue and profiler should be emitted before prologue,
381 set need_profile_function instead of emitting it.
382 (final_scan_insn): If need_profile_function, emit
383 profile_function on the first NOTE_INSN_BASIC_BLOCK or
384 NOTE_INSN_FUNCTION_BEG note.
385
386 2013-02-01 Richard Henderson <rth@redhat.com>
387
388 * config/rs6000/rs6000.md (smulditi3): New.
389 (umulditi3): New.
390
391 * config/alpha/alpha.md (umulditi3): New.
392
393 2013-02-01 David Edelsohn <dje.gcc@gmail.com>
394
395 * config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2.
396 (ASM_OUTPUT_ALIGNED_LOCAL): New.
397
398 2013-02-01 Richard Biener <rguenther@suse.de>
399
400 PR tree-optimization/56113
401 * tree-ssa-structalias.c (label_visit): Reduce work for
402 single-predecessor nodes.
403
404 2013-02-01 Eric Botcazou <ebotcazou@adacore.com>
405
406 * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
407 range isn't testing for zero.
408
409 2013-01-31 Steven Bosscher <steven@gcc.gnu.org>
410
411 PR middle-end/56113
412 * fwprop.c (fwprop_init): Set up loops without CFG modifications.
413
414 2013-01-31 Hiroyuki Ono <hiroyuki.ono.jc@renesas.com>
415 Nick Clifton <nickc@redhat.com>
416
417 * config/v850/constraints.md (Q): Define as a memory constraint.
418 * config/v850/predicates.md (label_ref_operand): New predicate.
419 (e3v5_shift_operand): New predicate.
420 (ior_operator): New predicate.
421 * config/v850/t-v850: Add e3v5 multilib.
422 * config/v850/v850-protos.h (v850_adjust_insn_length): Prototype.
423 (v850_gen_movdi): Prototype.
424 * config/v850/v850.c: Add support for e3v5 architecture.
425 Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to
426 TARGET_V850E_UP.
427 (construct_save_jarl): Add e3v5 long JARL support.
428 (v850_adjust_insn_length): New function. Adjust length of call
429 insns when using e3v5 instructions.
430 (v850_gen_movdi): New function: Generate instructions to move a
431 DImode value.
432 * config/v850/v850.h (TARGET_CPU_v850e3v5): Define.
433 (CPP_SPEC): Define __v850e3v5__ as appropriate.
434 (TARGET_USE_FPU): Enable for e3v5.
435 (CONST_OK_FOR_W): New macro.
436 (ADJUST_INSN_LENGTH): Define.
437 * config/v850/v850.md (UNSPEC_LOOP): Define.
438 (attr cpu): Add v850e3v5.
439 Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP.
440 (movdi): New pattern.
441 (movdi_internal): New pattern.
442 (cbranchsf4): Conditionalize on TARGET_USE_FPU.
443 (cbranchdf4): Conditionalize on TARGET_USE_FPU.
444 (cstoresf4): Likewise.
445 (cstoredf4): Likewise.
446 (insv): New pattern.
447 (rotlso3_a): New pattern.
448 (rotlsi3_b): New pattern
449 (rotlsi3_v850e3v5): New pattern.
450 (doloop_begin): New pattern.
451 (fix_loop_counter): New pattern.
452 (doloop_end): New pattern.
453 (branch_normal): Add e3v5 long branch support.
454 (branch_invert): Likewise.
455 (branch_z_normal): Likewise.
456 (branch_z_invert): Likewise.
457 (branch_nz_normal): Likewise.
458 (branch_nz_invert): Likewise.
459 (call_internal_short): Add e3v5 register-indirect JARL support.
460 (call_internal_long): Likewise.
461 (call_value_internal_short): Likewise.
462 (call_value_internal_long): Likewise.
463 * config/v850/v850.opt (mv850e3v5, mv850e2v4): New options.
464 (mloop): New option.
465 * config.gcc: Add support for configuring v840e3v5 target.
466 * doc/invoke.texi: Document new v850 specific command line options.
467
468 2013-01-31 Paul Koning <ni1d@arrl.net>
469
470 PR debug/55059
471 PR debug/54508
472 * dwarf2out.c (prune_unused_types_mark): Mark all of parent's
473 children if parent is a class.
474 (prune_unused_types_prune): Don't add DW_AT_declaration.
475
476 2013-01-31 Richard Biener <rguenther@suse.de>
477
478 PR tree-optimization/56157
479 * tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to
480 match up operand with SLP child.
481
482 2013-01-31 Jason Merrill <jason@redhat.com>
483
484 PR debug/54410
485 * dwarf2out.c (gen_struct_or_union_type_die): Always schedule template
486 parameters the first time.
487 (gen_scheduled_generic_parms_dies): Check completeness here.
488
489 2013-01-31 Richard Biener <rguenther@suse.de>
490
491 PR middle-end/53073
492 * common.opt (faggressive-loop-optimizations): New flag,
493 enabled by default.
494 * doc/invoke.texi (faggressive-loop-optimizations): Document.
495 * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard
496 infer_loop_bounds_from_undefined by it.
497
498 2013-01-31 Richard Biener <rguenther@suse.de>
499
500 PR tree-optimization/56150
501 * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not
502 visit virtual operands.
503 (find_uses_to_rename_bb): Likewise.
504
505 2013-01-31 Richard Biener <rguenther@suse.de>
506
507 PR tree-optimization/56150
508 * tree-ssa-tail-merge.c (gimple_equal_p): Properly handle
509 mixed store non-store stmts.
510
511 2013-01-30 Jakub Jelinek <jakub@redhat.com>
512
513 PR sanitizer/55374
514 * gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if
515 LIBASAN_EARLY_SPEC is defined.
516 (LIBASAN_EARLY_SPEC): Define to empty string if not already defined.
517 (LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address,
518 before %o.
519 * config/gnu-user.h (LIBASAN_EARLY_SPEC): Define.
520
521 PR c++/55742
522 * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose
523 invalid args instead of ICEing on it.
524 (ix86_valid_target_attribute_tree): Return error_mark_node if
525 ix86_valid_target_attribute_inner_p failed.
526 (ix86_valid_target_attribute_p): Return false only if
527 ix86_valid_target_attribute_tree returned error_mark_node. Allow
528 target("default") attribute.
529 (sorted_attr_string): Change argument from const char * to tree,
530 merge in all target attribute arguments rather than just one.
531 Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC
532 instead of free. Avoid using strcat.
533 (ix86_mangle_function_version_assembler_name): Mangle
534 target("default") as if no target attribute is present. Adjust
535 sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC
536 instead of xmalloc and XDELETEVEC instead of free.
537 (ix86_function_versions): Don't return true if one of the decls
538 doesn't have target attribute. If they don't and one of the decls
539 is DECL_FUNCTION_VERSIONED, report an error. Adjust
540 sorted_attr_string caller. Use XDELETEVEC instead of free.
541 (ix86_supports_function_versions): Remove.
542 (make_name): Fix up formatting.
543 (make_dispatcher_decl): Remove resolver_name and its initialization.
544 Avoid leaking memory.
545 (is_function_default_version): Return true if there is
546 target("default") attribute rather than no target attribute at all.
547 (make_resolver_func): Avoid leaking memory.
548 (ix86_generate_version_dispatcher_body): Likewise.
549 (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove.
550 * target.def (supports_function_versions): Remove.
551 * doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove.
552 * doc/tm.texi: Regenerated.
553
554 2013-01-30 Vladimir Makarov <vmakarov@redhat.com>
555
556 PR rtl-optimization/56144
557 * lra-constraints.c (get_reload_reg): Don't reuse reload pseudo
558 for values with side effects.
559
560 2013-01-30 Richard Biener <rguenther@suse.de>
561
562 * sparseset.h (sparseset_bit_p): Use gcc_checking_assert.
563 (sparseset_pop): Likewise.
564 * cfganal.c (compute_idf): Likewise. Increase work-stack size
565 to be able to use quick_push in the worker loop.
566
567 2013-01-30 Marek Polacek <polacek@redhat.com>
568
569 * cfgcleanup.c (cleanup_cfg): Don't mark affected BBs.
570
571 2013-01-30 Richard Biener <rguenther@suse.de>
572
573 PR lto/56147
574 * lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN check.
575
576 2013-01-30 Georg-Johann Lay <avr@gjlay.de>
577
578 PR tree-optimization/56064
579 * fixed-value.c (fixed_from_double_int): New function.
580 * fixed-value.h (fixed_from_double_int): New prototype.
581 (const_fixed_from_double_int): New static inline function.
582 * fold-const.c (native_interpret_fixed): New static function.
583 (native_interpret_expr) <FIXED_POINT_TYPE>: Use it.
584 (can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true.
585 (native_encode_fixed): New static function.
586 (native_encode_expr) <FIXED_CST>: Use it.
587 (native_interpret_int): Move double_int worker code to...
588 * double-int.c (double_int::from_buffer): ...this new static method.
589 * double-int.h (double_int::from_buffer): Prototype it.
590
591 2013-01-30 Richard Biener <rguenther@suse.de>
592
593 * tree-ssa-structalias.c (final_solutions, final_solutions_obstack):
594 New pointer-map and obstack.
595 (init_alias_vars): Allocate pointer-map and obstack.
596 (delete_points_to_sets): Free them.
597 (find_what_var_points_to): Cache result.
598 (find_what_p_points_to): Adjust for changed interface of
599 find_what_var_points_to.
600 (compute_points_to_sets): Likewise.
601 (ipa_pta_execute): Likewise.
602
603 2013-01-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
604
605 * configure.ac (HAVE_AS_SPARC_NOBITS): New test.
606 * configure: Regenerate.
607 * config.in: Regenerate.
608 * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit
609 #nobits/#progbits if supported.
610
611 2013-01-29 Oleg Endo <olegendo@gcc.gnu.org>
612
613 PR target/56121
614 * config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a,
615 bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a,
616 bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition.
617
618 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
619
620 * config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove.
621 (cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all.
622
623 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
624
625 * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL.
626 * config/arm/cortex-a7.md (cortex_a7_call): Update required units.
627
628 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
629
630 * config/arm/arm-protos.h (arm_mac_accumulator_is_result): New
631 declaration.
632 * config/arm/arm.c (arm_mac_accumulator_is_result): New function.
633 * config/arm/cortex-a7.md: New bypasses using
634 arm_mac_accumulator_is_result.
635
636 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
637
638 * config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation.
639 (cortex_a7_neon_mla): Likewise.
640 (cortex_a7_fpfmad): New reservation.
641 (cortex_a7_fpmacs): Use ffmas and update required units.
642 (cortex_a7_fpmuld): Update required units and latency.
643 (cortex_a7_fpmacd): Likewise.
644 (cortex_a7_fdivs, cortex_a7_fdivd): Likewise.
645 (cortex_a7_neon). Likewise.
646 (bypass) Update participating units.
647
648 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
649
650 * config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute.
651 * config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type
652 from fmac to ffma.
653 * config/arm/vfp11.md (vfp_farith): Use ffmas.
654 (vfp_fmul): Use ffmad.
655 * config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas.
656 (cortex_r4_fmacd): Use ffmad.
657 * config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas.
658 * config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas.
659 (cortex_a9_fmacd): Use ffmad.
660 * config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas.
661 (cortex_a8_vfp_macd): Use ffmad.
662 * config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas.
663 (cortex_a5_fpmacd): Use ffmad.
664 * config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas.
665 (cortex_a15_vfp_macd): Use ffmad.
666 * config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad.
667
668 2013-01-29 Jason Merrill <jason@redhat.com>
669
670 PR libstdc++/54314
671 * varasm.c (default_assemble_visibility): Don't warn about
672 visibility on artificial decls.
673
674 2013-01-29 Richard Biener <rguenther@suse.de>
675
676 PR tree-optimization/56113
677 * tree-ssa-structalias.c (equiv_class_lookup): Also return
678 the bitmap leader.
679 (label_visit): Free duplicate bitmaps and record the leader instead.
680 (perform_var_substitution): Adjust.
681
682 2013-01-29 Richard Biener <rguenther@suse.de>
683
684 PR tree-optimization/55270
685 * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed
686 the CFG, schedule loops for fixup.
687
688 2013-01-29 Nick Clifton <nickc@redhat.com>
689
690 * config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
691 SP_REG.
692
693 2013-01-28 Leif Ekblad <leif@rdos.net>
694
695 * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets.
696 * config/i386/i386.h (TARGET_RDOS): New macro.
697 (DEFAULT_LARGE_SECTION_THRESHOLD): New macro.
698 * config/i386/i386.c (ix86_option_override_internal): For 64bit
699 TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1.
700 * config/i386/i386.opt (mlarge-data-threshold): Initialize to
701 DEFAULT_LARGE_SECTION_THRESHOLD.
702 * config/i386/i386.md (R14_REG, R15_REG): New constants.
703 * config/i386/rdos.h: New file.
704 * config/i386/rdos64.h: New file.
705
706 2013-01-28 Bernd Schmidt <bernds@codesourcery.com>
707
708 PR other/54814
709 * reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of
710 TEST_HARD_REG_BIT.
711
712 2013-01-28 Jakub Jelinek <jakub@redhat.com>
713
714 PR rtl-optimization/56117
715 * sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib
716 call cselib_lookup_from_insn on the MEM before calling
717 add_insn_mem_dependence.
718
719 2013-01-28 Richard Biener <rguenther@suse.de>
720
721 * tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK
722 to a stmt that didn't have one.
723 (copy_phis_for_bb): Likewise for PHI arguments.
724 (copy_debug_stmt): Likewise for debug stmts.
725
726 2013-01-28 Richard Biener <rguenther@suse.de>
727
728 PR tree-optimization/56034
729 * tree-loop-distribution.c (enum partition_kind): Add PKIND_REDUCTION.
730 (partition_builtin_p): Adjust.
731 (generate_code_for_partition): Handle PKIND_REDUCTION. Assert
732 it is the last partition.
733 (rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking
734 up the vertex for the definition.
735 (classify_partition): Classify whether a partition is a
736 PKIND_REDUCTION, thus has uses outside of the loop.
737 (ldist_gen): Inherit PKIND_REDUCTION when merging partitions.
738 Merge all PKIND_REDUCTION partitions into the last partition.
739 (tree_loop_distribution): Seed partitions from reductions as well.
740
741 2013-01-28 Jakub Jelinek <jakub@redhat.com>
742
743 PR tree-optimization/56125
744 * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
745 pow(x,c) into sqrt(x) * powi(x, n/2) or
746 1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
747 optimizing for size.
748 Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
749 1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
750 integer.
751
752 PR tree-optimization/56094
753 * gimplify.c (force_gimple_operand_1): Temporarily set input_location
754 to UNKNOWN_LOCATION while gimplifying expr.
755
756 2013-01-27 Uros Bizjak <ubizjak@gmail.com>
757
758 PR target/56114
759 * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
760 operand 0 in movabs insn template for -masm=intel asm alternative.
761 (*movabs<mode>_2): Ditto for operand 1.
762
763 2013-01-26 David Holsgrove <david.holsgrove@xilinx.com>
764
765 PR target/54663
766 * config.gcc (microblaze*-linux*): Add tmake_file to allow building
767 of microblaze-c.o
768
769 2013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com>
770
771 * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update
772 tm_file.
773
774 2013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
775
776 * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS):
777 Undef to avoid warning.
778
779 2013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at>
780
781 * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
782 * configure: Regenerate.
783
784 2013-01-25 Jakub Jelinek <jakub@redhat.com>
785
786 PR tree-optimization/56098
787 * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
788 for stmts with volatile ops.
789 (cond_store_replacement): Don't optimize if assign has volatile ops.
790 (cond_if_else_store_replacement_1): Don't optimize if either
791 then_assign or else_assign have volatile ops.
792 (hoist_adjacent_loads): Don't optimize if either def1 or def2 have
793 volatile ops.
794
795 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
796
797 * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
798
799 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
800
801 * doc/extend.texi (Example of asm with clobbered asm reg): Fix
802 missing ':' in asm example.
803
804 2013-01-25 Tejas Belagod <tejas.belagod@arm.com>
805
806 * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane
807 entries into lane and laneq entries.
808 * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>):
809 Remove AdvSIMD scalar modes.
810 (aarch64_sq<r>dmulh_laneq<mode>): New.
811 (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD
812 modes.
813 * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics'
814 builtin implementations to relfect changes in RTL in aarch64-simd.md.
815 * config/aarch64/iterators.md (VCOND): New.
816 (VCONQ): New.
817
818 2013-01-25 Georg-Johann Lay <avr@gjlay.de>
819
820 PR target/54222
821 * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
822 Add NULL LIBNAME argument to existing definitions.
823 (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
824 * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
825 * config/avr/avr.c (DEF_BUILTIN): Same.
826 (avr_init_builtins): Pass down LIBNAME to add_builtin_function.
827 (avr_expand_builtin): Expand to a vanilla call if a libgcc
828 implementation is available (DECL_ASSEMBLER_NAME is set).
829 (avr_fold_absfx): New static function.
830 (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
831 AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
832 AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
833 AVR_BUILTIN_ABSLLK.
834 * config/avr/stdfix.h (abshr, absr, abslr, absllr)
835 (abshk, absk, abslk, absllk): Provide as static inline functions.
836
837 2013-01-25 Marek Polacek <polacek@redhat.com>
838
839 PR tree-optimization/56035
840 * cfgloopmanip.c (fix_loop_structure): Remove redundant condition.
841
842 2012-01-24 Uros Bizjak <ubizjak@gmail.com>
843
844 * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
845 (*movtf_internal_rex64): Add (!o,C) alternative
846 (*movxf_internal_rex64): Ditto.
847 (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
848
849 2013-01-24 Shenghou Ma <minux.ma@gmail.com>
850
851 * doc/invoke.texi: fix typo.
852 * doc/objc.texi: fix typo.
853
854 2013-01-24 Richard Sandiford <rdsandiford@googlemail.com>
855
856 * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
857 for the first two alternatives.
858
859 2013-01-24 Diego Novillo <dnovillo@google.com>
860
861 * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o.
862 (ggc-zone.o): Remove.
863 * configure.ac: Remove option --with-gc.
864 * configure: Re-generate.
865 * doc/install.texi: Remove documentation for --with-gc.
866 * gengtype.c (write_enum_defn): Remove. Update all users.
867 (write_Types_process_field): Remove generation of gt_e_* argument.
868 (output_type_enum): Remove. Update all users.
869 (write_enum_defn): Remove. Update all users.
870 (enum alloc_zone): Remove. Update all users.
871 (write_splay_tree_allocator_def): Remove generation of gt_e_* argument.
872 * ggc-common.c (ggc_splay_alloc): Remove first argument.
873 Update all callers.
874 (struct ptr_data): Remove field TYPE. Update all users.
875 (gt_pch_note_object): Remove argument TYPE. Update all users.
876 * ggc-internal.h (ggc_pch_alloc_object): Remove last argument.
877 Update all users.
878 * ggc-none.c (ggc_alloc_typed_stat): Remove.
879 (struct alloc_zone): Remove.
880 (ggc_internal_alloc_zone_stat): Remove.
881 (ggc_internal_cleared_alloc_zone_stat): Remove.
882 * ggc-page.c (ggc_alloc_typed_stat): Remove.
883 (ggc_pch_count_object): Remove last argument. Update all users.
884 (ggc_pch_alloc_object): Remove last argument. Update all users.
885 (struct alloc_zone): Remove.
886 * ggc-zone.c: Remove.
887 * ggc.h (gt_pch_note_object): Remove last argument. Update all users.
888 (struct alloc_zone): Remove.
889 (ggc_alloc_typed_stat): Remove.
890 (ggc_alloc_typed): Remove.
891 (ggc_splay_alloc): Remove first argument.
892 (rtl_zone): Remove. Update all users.
893 (tree_zone): Remove. Update all users.
894 (tree_id_zone): Remove. Update all users.
895 (ggc_internal_zone_alloc_stat): Remove. Update all users.
896 (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users.
897 (ggc_internal_zone_vec_alloc_stat): Remove. Update all users.
898 * tree-ssanames.c: Remove references to zone allocator in comments.
899
900 2013-01-24 Georg-Johann Lay <avr@gjlay.de>
901
902 * config/avr/avr.c (avr_out_fract): Make register numbers that
903 might be outside of source operand signed.
904
905 2013-01-24 Uros Bizjak <ubizjak@gmail.com>
906
907 * config/i386/constraints.md (Yf): New constraint.
908 * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
909 of f constraint to conditionaly disable x87 register preferences.
910 (*movdf_internal): Ditto.
911 (*movsf_internal): Ditto.
912
913 2013-01-24 Steven Bosscher <steven@gcc.gnu.org>
914
915 PR inline-asm/55934
916 * lra-assigns.c (assign_by_spills): Throw away the pattern of asms
917 that have operands with impossible constraints.
918 Add a FIXME for a speed-up opportunity.
919 * lra-constraints.c (process_alt_operands): Verify that a class
920 selected from constraints on asms is valid for the operand mode.
921 (curr_insn_transform): Remove incorrect comment.
922
923 2013-01-23 David Edelsohn <dje.gcc@gmail.com>
924
925 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that
926 TOC operand is a valid symbol ref in the constant pool.
927
928 2013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com>
929
930 * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS
931
932 2013-01-23 Georg-Johann Lay <avr@gjlay.de>
933
934 PR target/54222
935 * config/avr/stdfix.h: New file.
936 * t-avr (stdfix-gcc.h): New rule to build it.
937 (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h.
938
939 2013-01-23 Kostya Serebryany <kcc@google.com>
940
941 * config/darwin.h: remove dependency on
942 CoreFoundation (asan on Mac OS).
943
944 2013-01-23 Jakub Jelinek <jakub@redhat.com>
945
946 PR target/49069
947 * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
948 instead of cmpdi_operand for first comparison operand.
949 Don't assert that comparison operands aren't both constants.
950
951 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
952
953 * doc/install.texi (Downloading the Source): Update references to
954 downloading separate components.
955
956 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com>
957
958 * doc/extend.texi (__int128): Improve grammar.
959
960 2013-01-22 Uros Bizjak <ubizjak@gmail.com>
961
962 PR target/56028
963 * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
964 alternative to (o,r).
965 (*movdi_internal_rex64): Remove (!o,n) alternative.
966 (DImode immediate->memory splitter): Remove.
967 (DImode immediate->memory peephole2): Remove.
968 (movtf): Enable for TARGET_64BIT || TARGET_SSE.
969 (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
970 alternative to (!o,*r).
971 (*movtf_internal_sse): New pattern.
972 (*movxf_internal_rex64): New pattern.
973 (*movxf_internal): Disable for TARGET_64BIT.
974 (*movdf_internal_rex64): Remove (!o,F) alternative.
975
976 2013-01-22 Jakub Jelinek <jakub@redhat.com>
977
978 PR middle-end/56074
979 * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
980 isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
981 * tree-vect-loop-manip.c (find_loop_location): Also ignore
982 stmt locations where LOCATION_LOCUS of the stmt location is
983 UNKNOWN_LOCATION or BUILTINS_LOCATION.
984
985 PR target/55686
986 * config/i386/i386.md (UNSPEC_STOS): New.
987 (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
988 *strsetqi_1): Add UNSPEC_STOS.
989
990 2013-01-22 Paolo Carlini <paolo.carlini@oracle.com>
991
992 PR c++/56067
993 * doc/invoke.texi: Remove left over -Wsynth example.
994
995 2013-01-21 Jakub Jelinek <jakub@redhat.com>
996
997 PR tree-optimization/56051
998 * fold-const.c (fold_binary_loc): Don't fold
999 X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
1000 a narrowing conversion, or widening conversion from signed
1001 to unsigned.
1002
1003 2013-01-21 Uros Bizjak <ubizjak@gmail.com>
1004
1005 PR rtl-optimization/56023
1006 * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
1007 dependent on debug instruction.
1008
1009 2013-01-21 Martin Jambor <mjambor@suse.cz>
1010
1011 PR middle-end/56022
1012 * function.c (allocate_struct_function): Call
1013 invoke_set_current_function_hook earlier.
1014
1015 2013-01-21 Jakub Jelinek <jakub@redhat.com>
1016
1017 * reload1.c (init_reload): Only initialize reload_obstack
1018 during the first call.
1019
1020 2013-01-21 Marek Polacek <polacek@redhat.com>
1021
1022 * cfgloop.c (verify_loop_structure): Fix up grammar.
1023
1024 2013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com>
1025
1026 * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift,
1027 pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift.
1028
1029 2013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1030
1031 PR target/56058
1032 * config/arm/marvell-pj4.md: Update copyright year.
1033 Fix up use of alu to alu_reg and simple_alu_imm.
1034
1035 2013-01-21 Uros Bizjak <ubizjak@gmail.com>
1036
1037 * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
1038
1039 2013-01-20 Vladimir Makarov <vmakarov@redhat.com>
1040
1041 PR target/55433
1042 * lra-constraints.c (curr_insn_transform): Don't reuse original
1043 insn for secondary memory move when memory mode should be different.
1044
1045 2013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1046
1047 * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi,
1048 atomic_storedi_1): New patterns.
1049
1050 2013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
1051
1052 btver2 pipeline descriptions.
1053 * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline
1054 descriptions.
1055 * config/i386/i386.md (btver2_decode): New type attributes.
1056 * config/i386/sse.md (btver2_decode, btver2_sse_attr): New
1057 type attributes.
1058 * config/i386/btver2.md: New file describing btver2 pipelines.
1059
1060 2013-01-19 Andrew Pinski <apinski@cavium.com>
1061
1062 PR tree-optimization/52631
1063 * tree-ssa-sccvn (visit_use): Before looking up the original
1064 statement, try looking up the simplified expression.
1065
1066 2013-01-19 Anthony Green <green@moxielogic.com>
1067
1068 * config/moxie/moxie.c (moxie_expand_prologue): Set
1069 current_function_static_stack_size.
1070
1071 2013-01-18 Jakub Jelinek <jakub@redhat.com>
1072
1073 PR tree-optimization/56029
1074 * tree-phinodes.c (reserve_phi_args_for_new_edge): Set
1075 gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION.
1076
1077 2013-01-18 Sharad Singhai <singhai@google.com>
1078
1079 PR tree-optimization/55995
1080 * dumpfile.c (dump_loc): Print location only if available.
1081 * tree-vectorizer.c (increase_alignment): Intialize vect_location.
1082
1083 2013-01-18 Vladimir Makarov <vmakarov@redhat.com>
1084
1085 PR target/55433
1086 * lra-constraints.c (curr_insn_transform): Reuse original insn for
1087 secondary memory move.
1088 (inherit_reload_reg): Use rclass instead of cl for
1089 check_secondary_memory_needed_p.
1090
1091 2013-01-18 Jakub Jelinek <jakub@redhat.com>
1092
1093 PR middle-end/56015
1094 * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
1095 the case where writing real complex part of target modifies op1.
1096
1097 2013-01-18 James Greenhalgh <james.greenhalgh@arm.com>
1098
1099 * config/aarch64/aarch64-simd.md
1100 (aarch64_vcond_internal<mode>): Handle unordered cases.
1101 * config/aarch64/iterators.md (v_cmp_result): New.
1102
1103 2013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com>
1104 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1105
1106 * config/arm/marvell-pj4.md: New file.
1107 * config/arm/arm.c (arm_issue_rate): Add marvell_pj4.
1108 * config/arm/arm.md (generic_sched): Add marvell_pj4.
1109 (generic_vfp): Likewise.
1110 * config/arm/arm-cores.def: Add marvell-pj4.
1111 * config/arm/arm-tune.md: Regenerate.
1112 * config/arm/arm-tables.opt: Regenerate.
1113 * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4.
1114 * doc/invoke.texi: Document marvell-pj4.
1115
1116 2013-01-18 Tejas Belagod <tejas.belagod@arm.com>
1117
1118 * config/aarch64/arm_neon.h: Map scalar types to standard types.
1119
1120 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
1121
1122 PR debug/54114
1123 PR debug/54402
1124 PR debug/49888
1125 * var-tracking.c (negative_power_of_two_p): New.
1126 (global_get_addr_cache, local_get_addr_cache): New.
1127 (get_addr_from_global_cache, get_addr_from_local_cache): New.
1128 (vt_canonicalize_addr): Rewrite using the above. Adjust the
1129 heading comment.
1130 (vt_stack_offset_p): Remove.
1131 (vt_canon_true_dep): Always canonicalize loc's address.
1132 (clobber_overlapping_mems): Make sure we have a MEM.
1133 (local_get_addr_clear_given_value): New.
1134 (val_reset): Clear local cached entries.
1135 (compute_bb_dataflow): Create and release the local cache.
1136 Disable duplicate MEMs clobbering.
1137 (emit_notes_in_bb): Clobber MEMs likewise.
1138 (vt_emit_notes): Create and release the local cache.
1139 (vt_initialize, vt_finalize): Create and release the global
1140 cache, respectively.
1141 * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs.
1142
1143 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
1144
1145 PR libmudflap/53359
1146 * tree-mudflap.c (mudflap_finish_file): Skip deferred decls
1147 not found in the symtab.
1148
1149 2013-01-18 Alexandre Oliva <aoliva@redhat.com>
1150
1151 PR debug/56006
1152 PR rtl-optimization/55547
1153 PR rtl-optimization/53827
1154 PR debug/53671
1155 PR debug/49888
1156 * alias.c (offset_overlap_p): New, factored out of...
1157 (memrefs_conflict_p): ... this. Use absolute sizes. Retain
1158 the conservative special case for symbolic constants. Don't
1159 adjust zero sizes on alignment.
1160
1161 2013-01-18 Bernd Schmidt <bernds@codesourcery.com>
1162
1163 PR rtl-optimization/52573
1164 * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a
1165 REG_UNUSED for the same register.
1166
1167 2013-01-17 Richard Biener <rguenther@suse.de>
1168 Marek Polacek <polacek@redhat.com>
1169
1170 PR rtl-optimization/55833
1171 * loop-unswitch.c (unswitch_loops): Move loop verification...
1172 (unswitch_single_loop): ...here. Call mark_irreducible_loops.
1173 * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter.
1174 Set it to true when we're removing a loop from hierarchy tree in
1175 an irreducible region.
1176 (fix_bb_placements): Adjust caller.
1177 (fix_loop_placements): Likewise.
1178
1179 2013-01-17 Georg-Johann Lay <avr@gjlay.de>
1180
1181 * config/avr/builtins.def (DEF_BUILTIN): Factor out
1182 "__builtin_avr_" from NAME, turn NAME to an uppercase identifier.
1183 Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'.
1184 Remove ID. Adjust comments.
1185 * config/avr/avr-c.c (avr_builtin_name): Remove.
1186 (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop.
1187 * config/avr/avr.c (avr_tolower): New static function.
1188 (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'.
1189 Stringify NAME, prefix it with "__builtin_avr_" and lowercase it.
1190 (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for
1191 default expansion.
1192
1193 2013-01-17 Jan Hubicka <jh@suse.cz>
1194
1195 PR tree-optimization/55273
1196 * loop-iv.c (iv_number_of_iterations): Consider zero iteration case.
1197
1198 2013-01-17 Uros Bizjak <ubizjak@gmail.com>
1199
1200 PR target/55981
1201 * config/i386/sync.md (atomic_store<mode>): Always generate SWImode
1202 store through atomic_store<mode>_1.
1203 (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
1204
1205 2013-01-17 Martin Jambor <mjambor@suse.cz>
1206
1207 PR tree-optimizations/55264
1208 * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
1209 for virtual methods.
1210 * ipa.c (symtab_remove_unreachable_nodes): Never return true for
1211 virtual methods before inlining is over.
1212 * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for
1213 virtual functions.
1214 * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as
1215 non-virtual.
1216
1217 2013-01-16 Vladimir Makarov <vmakarov@redhat.com>
1218
1219 PR rtl-optimization/56005
1220 * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
1221 pending reads for prefetch.
1222
1223 2013-01-16 Ian Bolton <ian.bolton@arm.com>
1224
1225 * config/aarch64/aarch64.md
1226 (*cstoresi_neg_uxtw): New pattern.
1227 (*cmovsi_insn_uxtw): New pattern.
1228 (*<optab>si3_uxtw): New pattern.
1229 (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern.
1230 (*<optab>si3_insn_uxtw): New pattern.
1231 (*bswapsi2_uxtw): New pattern.
1232
1233 2013-01-16 Richard Biener <rguenther@suse.de>
1234
1235 * tree-inline.c (tree_function_versioning): Remove set but
1236 never used variable.
1237
1238 2013-01-16 Richard Biener <rguenther@suse.de>
1239
1240 PR tree-optimization/55964
1241 * tree-flow.h (rename_variables_in_loop): Remove.
1242 (rename_variables_in_bb): Likewise.
1243 * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
1244 (copy_loop_before): Adjust and delete update-ssa status.
1245 * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
1246 (rename_variables_in_bb): Likewise. Properly walk over predecessors.
1247 (rename_variables_in_loop): Remove.
1248 (slpeel_update_phis_for_duplicate_loop): Likewise.
1249 (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
1250 use available cfg machinery instead of duplicating it.
1251 Update PHI nodes and perform poor-mans SSA update here.
1252 (slpeel_tree_peel_loop_to_edge): Adjust.
1253
1254 2013-01-16 Richard Biener <rguenther@suse.de>
1255
1256 PR tree-optimization/54767
1257 PR tree-optimization/53465
1258 * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
1259 (vrp_visit_phi_node): For PHI arguments coming via backedges
1260 drop all symbolical range information.
1261 (execute_vrp): Compute backedges.
1262
1263 2013-01-16 Richard Biener <rguenther@suse.de>
1264
1265 * doc/install.texi: Update CLooG and ISL requirements to
1266 0.18.0 and 0.11.1.
1267
1268 2013-01-16 Christian Bruel <christian.bruel@st.com>
1269
1270 PR target/55301
1271 * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
1272 (broken_move): Handle UNSPECV_SP_SWITCH_B.
1273 * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
1274
1275 2013-01-16 DJ Delorie <dj@redhat.com>
1276
1277 * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
1278 (UNSPECV_SP_SWITCH_E): New.
1279 (sp_switch_1): Change to an unspec.
1280 (sp_switch_2): Change to an unspec. Don't use post-inc when we
1281 replace $r15.
1282
1283 2013-01-16 Uros Bizjak <ubizjak@gmail.com>
1284
1285 * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
1286 with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
1287 * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
1288 (expand_mem_thread_fence): Ditto.
1289 (expand_mem_signal_fence): Ditto.
1290 (expand_atomic_load): Ditto.
1291 (expand_atomic_store): Ditto.
1292
1293 2013-01-16 Alexandre Oliva <aoliva@redhat.com>
1294
1295 PR rtl-optimization/55547
1296 PR rtl-optimization/53827
1297 PR debug/53671
1298 PR debug/49888
1299 * alias.c (memrefs_conflict_p): Set sizes to negative after
1300 AND adjustments.
1301
1302 2013-01-15 Jakub Jelinek <jakub@redhat.com>
1303
1304 PR target/55940
1305 * function.c (thread_prologue_and_epilogue_insns): Always
1306 add crtl->drap_reg to set_up_by_prologue.set, even if
1307 stack_realign_drap is false.
1308
1309 2013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de>
1310
1311 * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3,
1312 and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
1313 *call): Fix indention.
1314
1315 2013-01-15 Tom de Vries <tom@codesourcery.com>
1316
1317 PR target/55876
1318 * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
1319 Update comment.
1320
1321 2013-01-15 Vladimir Makarov <vmakarov@redhat.com>
1322
1323 PR rtl-optimization/55153
1324 * sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
1325
1326 2013-01-15 Martin Jambor <mjambor@suse.cz>
1327
1328 PR tree-optimization/55920
1329 * tree-sra.c (analyze_access_subtree): Do not mark non-removable
1330 accesses as grp_to_be_debug_replaced.
1331
1332 2013-01-15 Jakub Jelinek <jakub@redhat.com>
1333
1334 PR tree-optimization/55920
1335 * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
1336 there is non-useless type conversion needed from debug rhs to lhs,
1337 use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
1338
1339 2013-01-15 Joseph Myers <joseph@codesourcery.com>
1340 Mikael Pettersson <mikpe@it.uu.se>
1341
1342 PR target/43961
1343 * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
1344 Thumb.
1345 (ASM_OUTPUT_CASE_LABEL): Remove.
1346 (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
1347 * final.c (shorten_branches): Update alignment of labels before
1348 jump tables if CASE_VECTOR_SHORTEN_MODE.
1349
1350 2013-01-15 Richard Biener <rguenther@suse.de>
1351
1352 PR bootstrap/55961
1353 * system.h: Do not include gmp.h for building host tools.
1354
1355 2013-01-15 Richard Biener <rguenther@suse.de>
1356
1357 PR middle-end/55882
1358 * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
1359 account for bitpos when computing alignment.
1360
1361 2013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com>
1362
1363 * config/i386/i386-c.c (ix86_target_macros_internal): New case.
1364 (ix86_target_macros_internal): Likewise.
1365
1366 * config/i386/i386.c (m_CORE2I7): Removed.
1367 (m_CORE_HASWELL): New macro.
1368 (m_CORE_ALL): Likewise.
1369 (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
1370 (initial_ix86_arch_features): Likewise.
1371 (processor_target_table): Initializations for Core avx2.
1372 (cpu_names): New names "core-avx2".
1373 (ix86_option_override_internal): Changed PROCESSOR_COREI7 by
1374 PROCESSOR_CORE_HASWELL.
1375 (ix86_issue_rate): New case.
1376 (ia32_multipass_dfa_lookahead): Likewise.
1377 (ix86_sched_init_global): Likewise.
1378
1379 * config/i386/i386.h (TARGET_HASWELL): New macro.
1380 (target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
1381 (processor_type): New PROCESSOR_HASWELL.
1382
1383 2013-01-15 Jakub Jelinek <jakub@redhat.com>
1384
1385 PR tree-optimization/55955
1386 * tree-vect-loop.c (vectorizable_reduction): Give up early on
1387 *SHIFT_EXPR and *ROTATE_EXPR codes.
1388
1389 PR tree-optimization/48766
1390 * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
1391 -ftrapv disable -fwrapv.
1392
1393 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
1394
1395 PR target/55974
1396 * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
1397 etc. to 1 and not to __flash.
1398 Use LL suffix for __INT24_MAX__ with -mint8.
1399 Use ULL suffix for __UINT24_MAX__ with -mint8.
1400
1401 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
1402
1403 * config/avr/avr-arch.h
1404 (struct base_arch_s): Use typedef avr_arch_t instead.
1405 (struct arch_info_s): Use typedef avr_arch_info_t instead.
1406 (struct mcu_type_s): Use typedef avr_mcu_t instead.
1407 * config/avr/avr.c: Same.
1408 * config/avr/avr-devices.c: Same.
1409 * config/avr/driver-avr.c: Same.
1410 * config/avr/gen-avr-mmcu-texi.c: Same.
1411 * config/avr/avr-mcus.def: Adjust comment.
1412
1413 2013-01-14 Tejas Belagod <tejas.belagod@arm.com>
1414
1415 * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
1416 * config/aarch64/iterators.md (VALLDI): New.
1417
1418 2013-01-14 Uros Bizjak <ubizjak@gmail.com>
1419 Andi Kleen <ak@linux.intel.com>
1420
1421 PR target/55948
1422 * config/i386/sync.md (atomic_store<mode>_1): New pattern.
1423 (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
1424 memmodel flag.
1425
1426 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
1427
1428 * config/avr/avr-stdint.h: Remove trailing blanks.
1429 * config/avr/avr-log.h: Same.
1430 * config/avr/avr-arch.h: Same.
1431 * config/avr/avr-devices.c: Same.
1432 * config/avr/avr-dimode.md: Same.
1433 * config/avr/predicates.md: Same.
1434 * config/avr/avr-c.c: Same. And fix typo.
1435
1436 * config/avr/avr-protos.h: Same. And:
1437 (function_arg_regno_p): Rename to avr_function_arg_regno_p.
1438 (init_cumulative_args): Rename to avr_init_cumulative_args.
1439 (expand_prologue): Rename to avr_expand_prologue.
1440 (expand_epilogue): Rename to avr_expand_epilogue.
1441 (adjust_insn_length): Rename to avr_adjust_insn_length.
1442 (notice_update_cc): Rename to avr_notice_update_cc.
1443 (final_prescan_insn): Rename to avr_final_prescan_insn.
1444 * config/avr/avr.c: Same.
1445 * config/avr/avr.h: Same.
1446 * config/avr/avr.md: Remove trailing blanks.
1447 (prologue): Use avr_expand_prologue.
1448 (epilogue, sibcall_epilogue): Use avr_expand_epilogue.
1449
1450 2013-01-14 Richard Biener <rguenther@suse.de>
1451
1452 * tree-cfg.c (verify_expr_location, verify_expr_location_1,
1453 verify_location, collect_subblocks): New functions.
1454 (verify_gimple_in_cfg): Verify that locations only reference
1455 BLOCKs in the functions BLOCK tree.
1456
1457 2013-01-14 Richard Biener <rguenther@suse.de>
1458
1459 * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
1460 PHI argument.
1461 * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
1462 unshare reference.
1463 (insert_out_of_ssa_copy_on_edge): Likewise.
1464 (rewrite_close_phi_out_of_ssa): Likewise.
1465 * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
1466 debug expressions.
1467 * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
1468 propagated constants.
1469 * tree-cfg.c (tree_node_can_be_shared): Handled component-refs
1470 can not be shared.
1471
1472 2013-01-14 Georg-Johann Lay <avr@gjlay.de>
1473
1474 * config/avr/avr-modes.def: Add GPL copyright notice.
1475
1476 2013-01-13 Uros Bizjak <ubizjak@gmail.com>
1477
1478 * config/i386/sync.md (mem_thread_fence): Mask operands[0] with
1479 MEMMODEL_MASK to determine memory model.
1480 (atomic_store<mode>): Ditto from operands[2].
1481 * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
1482
1483 2013-01-13 Jakub Jelinek <jakub@redhat.com>
1484
1485 PR fortran/55935
1486 * gimple-fold.c (get_symbol_constant_value): Call unshare_expr.
1487 (fold_gimple_assign): Don't call unshare_expr here.
1488 (fold_ctor_reference): Call unshare_expr.
1489
1490 2013-01-13 Terry Guo <terry.guo@arm.com>
1491
1492 * Makefile.in (s-mlib): New argument MULTILIB_REUSE.
1493 * doc/fragments.texi: Document MULTILIB_REUSE.
1494 * gcc.c (multilib_reuse): New internal spec.
1495 (set_multilib_dir): Also search multilib from multilib_reuse.
1496 * genmultilib (tmpmultilib3): Refactor code.
1497 (tmpmultilib4): Ditto.
1498 (multilib_reuse): New multilib argument.
1499
1500 2013-01-13 Richard Sandiford <rdsandiford@googlemail.com>
1501
1502 * Makefile.in: Update copyright.
1503
1504 2013-01-12 Tom de Vries <tom@codesourcery.com>
1505
1506 PR middle-end/55890
1507 * calls.c (expand_call): Check if arg_nr is valid.
1508
1509 2013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com>
1510
1511 * doc/extend.texi (X86 Built-in Functions): Add whitespace in
1512 __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
1513 documentation. Add missing '__' in front of
1514 __builtin_ia32_packssdw256.
1515
1516 2013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1517
1518 PR target/55719
1519 * config/s390/s390.c (s390_preferred_reload_class): Do not return
1520 NO_REGS for larl operands.
1521 (s390_reload_larl_operand): Use s390_load_address instead of
1522 emit_move_insn.
1523
1524 2013-01-11 Richard Biener <rguenther@suse.de>
1525
1526 * tree-cfg.c (verify_node_sharing_1): Split out from ...
1527 (verify_node_sharing): ... here.
1528 (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
1529
1530 2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
1531
1532 * configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
1533 Substitute TREECHECKING.
1534 * configure: Regenerate.
1535 * Makefile.in (TREECHECKING): New.
1536
1537 2013-01-11 Richard Guenther <rguenther@suse.de>
1538
1539 PR tree-optimization/44061
1540 * tree-vrp.c (extract_range_basic): Compute zero as
1541 value-range for __builtin_constant_p of function parameters.
1542
1543 2013-01-10 Richard Sandiford <rdsandiford@googlemail.com>
1544
1545 Update copyright years.
1546
1547 2013-01-10 Vladimir Makarov <vmakarov@redhat.com>
1548
1549 PR rtl-optimization/55672
1550 * lra-eliminations.c (mark_not_eliminable): Permit addition with
1551 const to be eliminable.
1552
1553 2013-01-10 David Edelsohn <dje.gcc@gmail.com>
1554
1555 * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
1556 * configure: Regenerate.
1557
1558 2013-01-10 Richard Biener <rguenther@suse.de>
1559
1560 * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes.
1561
1562 2013-01-10 Richard Biener <rguenther@suse.de>
1563
1564 PR bootstrap/55792
1565 * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set
1566 locations for virtual PHI arguments.
1567 (rewrite_update_phi_arguments): Likewise.
1568
1569 2013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com>
1570
1571 * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi
1572 on to assembler.
1573
1574 2013-01-10 Jakub Jelinek <jakub@redhat.com>
1575
1576 PR tree-optimization/55921
1577 * tree-complex.c (expand_complex_asm): New function.
1578 (expand_complex_operations_1): Call it for GIMPLE_ASM.
1579
1580 2013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1581
1582 PR target/55718
1583 * config/s390/s390.c (s390_symref_operand_p)
1584 (s390_loadrelative_operand_p): Merge the two functions.
1585 (s390_check_qrst_address, print_operand_address): Add parameters
1586 to s390_loadrelative_operand_p invokation.
1587 (s390_check_symref_alignment): Use s390_loadrelative_operand_p.
1588 (s390_reload_larl_operand, s390_secondary_reload): Use
1589 s390_loadrelative_operand_p instead of s390_symref_operand_p.
1590 (legitimize_pic_address): Handle @GOTENT and @PLT + addend.
1591
1592 2013-01-09 Mike Stump <mikestump@comcast.net>
1593
1594 * dse.c (record_store): Remove unnecessary assert.
1595
1596 2013-01-09 Jan Hubicka <jh@suse.cz>
1597
1598 PR tree-optimization/55569
1599 * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
1600 * cfgloop.h (scale_loop_profile): Likewise.
1601
1602 2013-01-09 Jan Hubicka <jh@suse.cz>
1603
1604 PR lto/45375
1605 * ipa-inline.c (ipa_inline): Remove extern inlines and virtual
1606 functions.
1607 * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
1608
1609 2013-01-09 Richard Sandiford <rdsandiford@googlemail.com>
1610
1611 PR middle-end/55114
1612 * expr.h (maybe_emit_group_store): Declare.
1613 * expr.c (maybe_emit_group_store): New function.
1614 * builtins.c (expand_builtin_int_roundingfn): Call it.
1615 (expand_builtin_int_roundingfn_2): Likewise.
1616
1617 2013-01-09 Vladimir Makarov <vmakarov@redhat.com>
1618
1619 PR rtl-optimization/55829
1620 * lra-constraints.c (match_reload): Add code for absent output.
1621 (curr_insn_transform): Add code for reloads of matched inputs
1622 without output.
1623
1624 2013-01-09 Uros Bizjak <ubizjak@gmail.com>
1625
1626 * config/i386/sse.md (*vec_interleave_highv2df): Change mode
1627 attribute of movddup insn to DF.
1628 (*vec_interleave_lowv2df): Ditto.
1629 (vec_dupv2df): Ditto.
1630
1631 2013-01-09 Jan Hubicka <jh@suse.cz>
1632
1633 PR tree-optimiation/55875
1634 * tree-ssa-loop-niter.c (number_of_iterations_cond): Add
1635 EVERY_ITERATION parameter.
1636 (number_of_iterations_exit): Check if exit is executed every iteration.
1637 (idx_infer_loop_bounds): Similarly here.
1638 (n_of_executions_at_most): Simplify
1639 to only test for cases where statement is dominated by the
1640 particular bound; handle correctly the "postdominance" test.
1641 (scev_probably_wraps_p): Use max loop iterations info
1642 as a global bound first.
1643
1644 2013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com>
1645 Nick Clifton <nickc@redhat.com>
1646
1647 * config/v850/v850.md (cbranchsf4): New pattern.
1648 (cstoresf4): New pattern.
1649 (cbranchdf4): New pattern.
1650 (cstoredf4): New pattern.
1651 (movsicc): Disallow floating point comparisons.
1652 (cmpsf_le_insn): Fix order of operators.
1653 (cmpsf_lt_insn): Likewise.
1654 (cmpsf_eq_insn): Likewise.
1655 (cmpdf_le_insn): Likewise.
1656 (cmpdf_lt_insn): Likewise.
1657 (cmpdf_eq_insn): Likewise.
1658 (cmpsf_ge_insn): Use LE comparison.
1659 (cmpdf_ge_insn): Likewise.
1660 (cmpsf_gt_insn): Use LT comparison.
1661 (cmpdf_gt_insn): Likewise.
1662 (cmpsf_ne_insn): Delete pattern.
1663 (cmpdf_ne_insn): Delete pattern.
1664 * config/v850/v850.c (v850_gen_float_compare): Use
1665 gen_cmpdf_eq_insn for NE comparison.
1666 (v850_float_z_comparison_operator)
1667 (v850_float_nz_comparison_operator): Move from here ...
1668 * config/v850/predicates.md: ... to here. Move GT and GE
1669 comparisons into v850_float_z_comparison_operator.
1670 * config/v850/v850-protos.h (v850_float_z_comparison_operator):
1671 Delete prototype.
1672 (v850_float_nz_comparison_operator): Likewise.
1673
1674 2013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1675
1676 * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
1677 with calls to gen_insvsi/gen_insvdi.
1678
1679 2013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
1680
1681 * config/i386/i386.c (initial_ix86_tune_features): Set up
1682 X86_TUNE_AVX128_OPTIMAL for m_BTVER2.
1683
1684 2013-01-09 Steven Bosscher <steven@gcc.gnu.org>
1685 Jakub Jelinek <jakub@redhat.com>
1686
1687 PR tree-optimization/48189
1688 * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
1689 If nitercst is 0, don't predict the exit edge.
1690
1691 2013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
1692
1693 * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
1694 in asm_fprintf with reg_names.
1695 (aarch64_print_operand_address): Likewise.
1696 (aarch64_return_addr): Likewise.
1697 * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.
1698
1699 2013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1700
1701 * config/pa/pa.h (VAL_U6_BITS_P): Define.
1702 (INT_U6_BITS): Likewise.
1703 * config/pa/predicates.md (uint6_operand): New predicate.
1704 (shift5_operand, shift6_operand): Likewise.
1705 * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
1706 arith32_operand.
1707 (lshrdi3): Use shift6_operand.
1708 (shrpsi4, shrpdi4): New insn patterns.
1709 (extzv): Delete expander.
1710 (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand
1711 predicates in unamed zero extract patterns. Tighten common constraint.
1712 (extv): Delete expander.
1713 (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand
1714 predicates in unamed sign extract patterns. Tighten common constraint.
1715 (insv): Delete expander.
1716 (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand
1717 predicates in unamed insert patterns. Tighten common constraint.
1718 Change uint32_operand predicate to uint6_operand predicate in unamed
1719 DImode pattern to insert constant values of type 1...1xxxx.
1720
1721 2013-01-04 Jan Hubicka <jh@suse.cz>
1722
1723 PR tree-optimization/55823
1724 * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering
1725 issue.
1726
1727 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1728 Uros Bizjak <ubizjak@gmail.com>
1729
1730 PR rtl-optimization/55845
1731 * df-problems.c (can_move_insns_across): Stop scanning at
1732 volatile_insn_p source instruction or give up if
1733 across_from .. across_to range contains any volatile_insn_p
1734 instructions.
1735
1736 2013-01-08 Tejas Belagod <tejas.belagod@arm.com>
1737
1738 * config/aarch64/aarch64-simd.md (vec_init<mode>): New.
1739 * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init):
1740 Declare.
1741 * config/aarch64/aarch64.c (aarch64_simd_dup_constant,
1742 aarch64_simd_make_constant, aarch64_expand_vector_init): New.
1743
1744 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1745
1746 PR fortran/55341
1747 * asan.c (asan_clear_shadow): New function.
1748 (asan_emit_stack_protection): Use it.
1749
1750 2013-01-08 Tejas Belagod <tejas.belagod@arm.com>
1751
1752 * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
1753 aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
1754 with tab instead of space.
1755
1756 2013-01-08 Nick Clifton <nickc@redhat.com>
1757
1758 * config/rl78/rl78.c (rl78_expand_prologue): Always select
1759 register bank 0 at the start of an interrupt handler.
1760 * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
1761 MDBH registers.
1762
1763 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
1764
1765 * config/aarch64/aarch64-simd.md
1766 (aarch64_simd_bsl<mode>_internal): Add floating-point modes.
1767 (aarch64_simd_bsl): Likewise.
1768 (aarch64_vcond_internal<mode>): Likewise.
1769 (vcond<mode><mode>): Likewise.
1770 (aarch64_cm<cmp><mode>): Fix constraints, add new modes.
1771 * config/aarch64/iterators.md (V_cmp_result): Add V2DF.
1772
1773 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com>
1774
1775 * config/aarch64/aarch64-builtins.c
1776 (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.
1777
1778 2013-01-08 Martin Jambor <mjambor@suse.cz>
1779
1780 PR debug/55579
1781 * tree-sra.c (analyze_access_subtree): Return true also after
1782 potentially creating a debug-only replacement.
1783
1784 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1785
1786 PR middle-end/55890
1787 * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.
1788
1789 PR tree-optimization/54120
1790 * tree-vrp.c (range_fits_type_p): Don't allow
1791 src_precision < precision from signed vr to unsigned_p
1792 if vr->min or vr->max is negative.
1793 (simplify_float_conversion_using_ranges): Test can_float_p
1794 against CODE_FOR_nothing.
1795
1796 2013-01-08 Jakub Jelinek <jakub@redhat.com>
1797 Richard Biener <rguenther@suse.de>
1798
1799 PR middle-end/55851
1800 * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
1801 types instead of just INTEGER_TYPE types.
1802
1803 2013-01-07 Mark Kettenis <kettenis@openbsd.org>
1804
1805 * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT,
1806 TF_SIZE): Define.
1807
1808 2013-01-07 Steve Ellcey <sellcey@mips.com>
1809
1810 PR target/42661
1811 * config/mips/mips.opt: Change mad to mmad to match documentation.
1812
1813 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1814
1815 PR target/55897
1816 * doc/extend.texi (AVR Named Address Spaces): __memx goes into
1817 .progmemx.data now.
1818
1819 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1820
1821 PR target/55897
1822 * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
1823 (avr_addrspace_t): Add .section_name field.
1824 * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
1825 array size.
1826 (avr_addrspace): Same. Initialize .section_name. Remove last
1827 NULL entry. Put __memx into .progmemx.data.
1828 (progmem_section_prefix): Remove.
1829 (avr_asm_init_sections): No need to initialize progmem_section.
1830 (avr_asm_named_section): Use avr_addrspace[].section_name to get
1831 section name prefix.
1832 (avr_asm_select_section): Ditto. And use get_unnamed_section to
1833 retrieve the progmem section.
1834 * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
1835 boundary to run over avr_addrspace[].
1836 (avr_register_target_pragmas): Ditto.
1837
1838 2013-01-06 Jakub Jelinek <jakub@redhat.com>
1839
1840 * varasm.c (output_constant_def_contents): For asan_protect_global
1841 protected strings, adjust DECL_ALIGN if needed, before testing for
1842 anchored symbols.
1843 (place_block_symbol): Adjust size for asan protected STRING_CSTs if
1844 TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected
1845 normal decls.
1846 (output_object_block): For asan protected decls, emit asan padding
1847 after their contents.
1848 * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here.
1849 (asan_finish_file): Test it here instead.
1850
1851 2013-01-07 Nick Clifton <nickc@redhat.com>
1852 Matthias Klose <doko@debian.org>
1853 Doug Kwan <dougkwan@google.com>
1854 H.J. Lu <hongjiu.lu@intel.com>
1855
1856 PR driver/55470
1857 * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold.
1858
1859 * common.opt: Add fuse-ld=bfd and fuse-ld=gold.
1860
1861 * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2.
1862
1863 * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold.
1864
1865 * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold.
1866
1867 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1868
1869 PR target/54461
1870 * doc/install.texi (Cross-Compiler-Specific Options): Document
1871 --with-avrlibc.
1872
1873 2013-01-07 Tejas Belagod <tejas.belagod@arm.com>
1874
1875 * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
1876 vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
1877 vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
1878 vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
1879 vqmovun_high_s64): Fix source operand number and update copyright.
1880
1881 2013-01-07 Richard Biener <rguenther@suse.de>
1882
1883 PR middle-end/55890
1884 * gimple.h (gimple_call_builtin_p): New overload.
1885 * gimple.c (validate_call): New function.
1886 (gimple_call_builtin_p): Likewise.
1887 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
1888 Use gimple_call_builtin_p.
1889 (find_func_clobbers): Likewise.
1890 * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
1891 (strlen_optimize_stmt): Likewise.
1892
1893 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
1894
1895 * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
1896 (vld1q_dup_*): Likewise.
1897 (vld1_*): Likewise.
1898 (vld1q_*): Likewise.
1899 (vld1_lane_*): Likewise.
1900 (vld1q_lane_*): Likewise.
1901
1902 2013-01-07 Richard Biener <rguenther@suse.de>
1903
1904 * lto-streamer.h (LTO_minor_version): Bump to 2.
1905
1906 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com>
1907
1908 * config/aarch64/aarch64-protos.h
1909 (aarch64_const_double_zero_rtx_p): Rename to...
1910 (aarch64_float_const_zero_rtx_p): ...this.
1911 (aarch64_float_const_representable_p): New.
1912 (aarch64_output_simd_mov_immediate): Likewise.
1913 * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
1914 move immediate case.
1915 * config/aarch64/aarch64.c
1916 (aarch64_const_double_zero_rtx_p): Rename to...
1917 (aarch64_float_const_zero_rtx_p): ...this.
1918 (aarch64_print_operand): Allow printing of new constants.
1919 (aarch64_valid_floating_const): New.
1920 (aarch64_legitimate_constant_p): Check for valid floating-point
1921 constants.
1922 (aarch64_simd_valid_immediate): Likewise.
1923 (aarch64_vect_float_const_representable_p): New.
1924 (aarch64_float_const_representable_p): Likewise.
1925 (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
1926 (aarch64_output_simd_mov_immediate): New.
1927 * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
1928 (*movdf_aarch64): Likewise.
1929 * config/aarch64/constraints.md (Ufc): New.
1930 (Y): call aarch64_float_const_zero_rtx.
1931 * config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
1932
1933 2013-01-07 Richard Biener <rguenther@suse.de>
1934
1935 PR tree-optimization/55888
1936 PR tree-optimization/55862
1937 * tree-ssa-pre.c (phi_translate_1): Revert previous change.
1938 (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
1939 not if it is contained therein.
1940
1941 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1942
1943 * config/avr/t-avr: Typo.
1944
1945 2013-01-07 Georg-Johann Lay <avr@gjlay.de>
1946
1947 PR55243
1948 * config/avr/t-avr: Don't automatically rebuild
1949 $(srcdir)/config/avr/t-multilib
1950 $(srcdir)/config/avr/avr-tables.opt
1951 $(srcdir)/doc/avr-mmcu.texi
1952 (avr-mcus): New phony target to build them on request.
1953 (s-avr-mlib, s-avr-mmcu-texi): Remove.
1954 * avr/avr-mcus.def: Adjust comments.
1955
1956 2013-01-07 Uros Bizjak <ubizjak@gmail.com>
1957
1958 * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
1959
1960 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1961
1962 * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
1963
1964 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1965
1966 * config/tilepro/gen-mul-tables.cc: Put copyright on one line.
1967
1968 2013-01-05 David Edelsohn <dje.gcc@gmail.com>
1969
1970 * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
1971 to generate profiling.
1972 * config/rs6000/aix64.h (LIB_SPEC): Same.
1973
1974 2013-01-04 Andrew Pinski <apinski@cavium.com>
1975
1976 * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
1977 New function.
1978 (TARGET_FIXED_CONDITION_CODE_REGS): Define.
1979
1980 2013-01-04 Uros Bizjak <ubizjak@gmail.com>
1981
1982 * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
1983 unconditionally.
1984 (ix86_expand_move): Ditto.
1985 (ix86_zero_extend_to_Pmode): Ditto.
1986 (ix86_expand_call): Ditto.
1987 (ix86_expand_special_args_builtin): Ditto.
1988 (ix86_expand_builtin): Ditto.
1989
1990 2013-01-04 Richard Biener <rguenther@suse.de>
1991
1992 PR tree-optimization/55862
1993 * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
1994 translating them through PHI nodes.
1995
1996 2013-01-04 Martin Jambor <mjambor@suse.cz>
1997
1998 PR tree-optimization/55755
1999 * tree-sra.c (sra_modify_assign): Do not check that an access has no
2000 children when trying to avoid producing a VIEW_CONVERT_EXPR.
2001
2002 2013-01-04 Marek Polacek <polacek@redhat.com>
2003
2004 PR middle-end/55859
2005 * opts.c (default_options_optimization): Clarify error message.
2006
2007 2013-01-04 Richard Biener <rguenther@suse.de>
2008
2009 PR middle-end/55863
2010 * fold-const.c (split_tree): Undo -X - 1 to ~X folding for
2011 reassociation.
2012
2013 2013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2014
2015 PR target/53789
2016 * config/pa/pa.md (movsi): Revert previous change.
2017 * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
2018 references.
2019
2020 2013-01-03 Richard Henderson <rth@redhat.com>
2021
2022 * config/i386/i386.c (ix86_expand_move): Always assign to op1
2023 after eliminating TLS symbols.
2024
2025 2013-01-03 Marc Glisse <marc.glisse@inria.fr>
2026
2027 PR bootstrap/50167
2028 * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
2029 * graphite-poly.c (debug_gmp_value): Likewise.
2030
2031 2013-01-03 Uros Bizjak <ubizjak@gmail.com>
2032
2033 PR target/55712
2034 * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
2035 selected code model, define __code_mode_small__, __code_model_medium__,
2036 __code_model_large__, __code_model_32__ or __code_model_kernel__.
2037 * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
2038 xchg temporary register with %k. Declare temporary register as
2039 early clobbered.
2040 [__x86_64__]: For medium and large code models, preserve %rbx register.
2041
2042 2013-01-03 Richard Biener <rguenther@suse.de>
2043
2044 * tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
2045 (dump_subscript): Adjust.
2046 (finalize_ddr_dependent): Do not dump redundant info.
2047 (analyze_siv_subscript): Adjust.
2048 (subscript_dependence_tester): Likewise.
2049 (compute_affine_dependence): Likewise.
2050
2051 2013-01-03 Richard Biener <rguenther@suse.de>
2052
2053 Revert
2054 2013-01-03 Richard Biener <rguenther@suse.de>
2055
2056 PR tree-optimization/55857
2057 * tree-vect-stmts.c (vectorizable_load): Do not setup
2058 re-alignment for invariant loads.
2059
2060 2013-01-02 Richard Biener <rguenther@suse.de>
2061
2062 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
2063 invariant load do not generate a vector load from the scalar location.
2064
2065 2013-01-03 Richard Biener <rguenther@suse.de>
2066
2067 * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
2068 for not vectorizing.
2069 * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
2070 not build INDIRECT_REFs, call get_name once only.
2071 (vect_create_data_ref_ptr): Likewise. Dump base object kind
2072 based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
2073
2074 2013-01-03 Richard Biener <rguenther@suse.de>
2075
2076 PR tree-optimization/55857
2077 * tree-vect-stmts.c (vectorizable_load): Do not setup
2078 re-alignment for invariant loads.
2079
2080 2013-01-03 Richard Biener <rguenther@suse.de>
2081
2082 PR lto/55848
2083 * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
2084 prefer a built-in decl.
2085
2086 2013-01-03 Jakub Jelinek <jakub@redhat.com>
2087
2088 * gcc.c (process_command): Update copyright notice dates.
2089 * gcov.c (print_version): Likewise.
2090 * gcov-dump.c (print_version): Likewise.
2091
2092 PR rtl-optimization/55838
2093 * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
2094 iv0.step, iv1.step and step.
2095
2096 2013-01-03 Jakub Jelinek <jakub@redhat.com>
2097 Marc Glisse <marc.glisse@inria.fr>
2098
2099 PR tree-optimization/55832
2100 * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
2101 ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
2102 integer_{one,zero}_node.
2103
2104 2013-01-03 Jakub Jelinek <jakub@redhat.com>
2105
2106 PR debug/54402
2107 * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param.
2108 * var-tracking.c (reverse_op): Don't add reverse ops to
2109 VALUEs that have already
2110 PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list.
2111
2112 2013-01-02 Gerald Pfeifer <gerald@pfeifer.com>
2113
2114 * doc/contrib.texi: Note years as release manager for Mark Mitchell.
2115
2116 2013-01-02 Teresa Johnson <tejohnson@google.com>
2117
2118 * dumpfile.c (dump_loc): Print filename with location.
2119 * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use
2120 new location_t parameter to emit complete unroll message with
2121 new dump framework.
2122 (canonicalize_loop_induction_variables): Compute loops location
2123 and pass to try_unroll_loop_completely.
2124 * loop-unroll.c (report_unroll_peel): New function.
2125 (peel_loops_completely): Use new dump format with location
2126 for main dumpfile message, and invoke report_unroll_peel on success.
2127 (decide_unrolling_and_peeling): Ditto.
2128 (decide_peel_once_rolling): Remove old dumpfile message subsumed
2129 by report_unroll_peel.
2130 (decide_peel_completely): Ditto.
2131 (decide_unroll_constant_iterations): Ditto.
2132 (decide_unroll_runtime_iterations): Ditto.
2133 (decide_peel_simple): Ditto.
2134 (decide_unroll_stupid): Ditto.
2135 * cfgloop.c (get_loop_location): New function.
2136 * cfgloop.h (get_loop_location): Declare.
2137
2138 2013-01-02 Sriraman Tallam <tmsriram@google.com>
2139
2140 * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for
2141 NULL.
2142
2143 2013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2144
2145 PR middle-end/55198
2146 * expr.c (expand_expr_real_1): Don't use bitfield extraction for non
2147 BLKmode objects when EXPAND_MEMORY is specified.
2148
2149 2013-01-02 Sriraman Tallam <tmsriram@google.com>
2150
2151 * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug
2152 in loop predicate.
2153 (fold_builtin_cpu): Do not share cpu model decls across statements.
2154
2155 2013-01-02 Jason Merrill <jason@redhat.com>
2156
2157 PR c++/55804
2158 * tree.c (build_array_type_1): Revert earlier change.
2159
2160 2013-01-02 Yufeng Zhang <yufeng.zhang@arm.com>
2161
2162 * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and
2163 "cortex-a57".
2164 * config/aarch64/aarch64-tune.md: Re-generate.
2165
2166 2013-01-02 Richard Biener <rguenther@suse.de>
2167
2168 * tree-vect-stmts.c (vectorizable_load): When vectorizing an
2169 invariant load do not generate a vector load from the scalar location.
2170
2171 2013-01-02 Richard Biener <rguenther@suse.de>
2172
2173 PR bootstrap/55784
2174 * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.
2175 * configure: Regenerate.
2176
2177 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2178
2179 * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2)
2180 (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3)
2181 (expand_builtin_int_roundingfn_2): Keep the original target around
2182 for the fallback case.
2183
2184 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2185
2186 * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int
2187 to be clear for sign changes.
2188
2189 2013-01-01 Jan Hubicka <jh@suse.cz>
2190
2191 * ipa-inline-analysis.c: Fix formatting.
2192
2193 2013-01-01 Jakub Jelinek <jakub@redhat.com>
2194
2195 PR tree-optimization/55831
2196 * tree-vect-loop.c (get_initial_def_for_induction): Use
2197 gsi_after_labels instead of gsi_start_bb.
2198 \f
2199 Copyright (C) 2013 Free Software Foundation, Inc.
2200
2201 Copying and distribution of this file, with or without modification,
2202 are permitted in any medium without royalty provided the copyright
2203 notice and this notice are preserved.