Fix PR56035.
[official-gcc.git] / gcc / ChangeLog
blob327d2859816da8a168ba287233f12f99886646a8
1 2013-01-25  Marek Polacek  <polacek@redhat.com>
3         PR tree-optimization/56035
4         * cfgloopmanip.c (fix_loop_structure): Remove redundant condition.
6 2012-01-24  Uros Bizjak  <ubizjak@gmail.com>
8         * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
9         (*movtf_internal_rex64): Add (!o,C) alternative
10         (*movxf_internal_rex64): Ditto.
11         (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
13 2013-01-24  Shenghou Ma  <minux.ma@gmail.com>
15         * doc/invoke.texi: fix typo.
16         * doc/objc.texi: fix typo.
18 2013-01-24  Richard Sandiford  <rdsandiford@googlemail.com>
20         * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
21         for the first two alternatives.
23 2013-01-24  Diego Novillo  <dnovillo@google.com>
25         * Makefile.in (GGC): Remove.  Replace all instances with
26         ggc-page.o.
27         (ggc-zone.o): Remove.
28         * configure.ac: Remove option --with-gc.
29         * configure: Re-generate.
30         * doc/install.texi: Remove documentation for --with-gc.
31         * gengtype.c (write_enum_defn): Remove.  Update all users.
32         (write_Types_process_field): Remove generation of gt_e_* argument.
33         (output_type_enum): Remove.  Update all users.
34         (write_enum_defn): Remove.  Update all users.
35         (enum alloc_zone): Remove.  Update all users.
36         (write_splay_tree_allocator_def): Remove generation of gt_e_*
37         argument.
38         * ggc-common.c (ggc_splay_alloc): Remove first argument.
39         Update all callers.
40         (struct ptr_data): Remove field TYPE.  Update all users.
41         (gt_pch_note_object): Remove argument TYPE.  Update all
42         users.
43         * ggc-internal.h (ggc_pch_alloc_object): Remove last argument.
44         Update all users.
45         * ggc-none.c (ggc_alloc_typed_stat): Remove.
46         (struct alloc_zone): Remove.
47         (ggc_internal_alloc_zone_stat): Remove.
48         (ggc_internal_cleared_alloc_zone_stat): Remove.
49         * ggc-page.c (ggc_alloc_typed_stat): Remove.
50         (ggc_pch_count_object): Remove last argument.  Update all
51         users.
52         (ggc_pch_alloc_object): Remove last argument.  Update all
53         users.
54         (struct alloc_zone): Remove.
55         * ggc-zone.c: Remove.
56         * ggc.h (gt_pch_note_object): Remove last argument.  Update
57         all users.
58         (struct alloc_zone): Remove.
59         (ggc_alloc_typed_stat): Remove.
60         (ggc_alloc_typed): Remove.
61         (ggc_splay_alloc): Remove first argument.
62         (rtl_zone): Remove.  Update all users.
63         (tree_zone): Remove.  Update all users.
64         (tree_id_zone): Remove.  Update all users.
65         (ggc_internal_zone_alloc_stat): Remove.  Update all users.
66         (ggc_internal_zone_cleared_alloc_stat): Remove.  Update all
67         users.
68         (ggc_internal_zone_vec_alloc_stat): Remove.  Update all users.
69         * tree-ssanames.c: Remove references to zone allocator in
70         comments.
72 2013-01-24  Georg-Johann Lay  <avr@gjlay.de>
74         * config/avr/avr.c (avr_out_fract): Make register numbers that
75         might be outside of source operand signed.
77 2013-01-24  Uros Bizjak  <ubizjak@gmail.com>
79         * config/i386/constraints.md (Yf): New constraint.
80         * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
81         of f constraint to conditionaly disable x87 register preferences.
82         (*movdf_internal): Ditto.
83         (*movsf_internal): Ditto.
85 2013-01-24  Steven Bosscher  <steven@gcc.gnu.org>
87         PR inline-asm/55934
88         * lra-assigns.c (assign_by_spills): Throw away the pattern of asms
89         that have operands with impossible constraints.
90         Add a FIXME for a speed-up opportunity.
91         * lra-constraints.c (process_alt_operands): Verify that a class
92         selected from constraints on asms is valid for the operand mode.
93         (curr_insn_transform): Remove incorrect comment.
95 2013-01-23  David Edelsohn  <dje.gcc@gmail.com>
97         * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that
98         TOC operand is a valid symbol ref in the constant pool.
100 2013-01-23  Edgar E. Iglesias  <edgar.iglesias@gmail.com>
102         * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS
104 2013-01-23  Georg-Johann Lay  <avr@gjlay.de>
106         PR target/54222
107         * config/avr/stdfix.h: New file.
108         * t-avr (stdfix-gcc.h): New rule to build it.
109         (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h.
111 2013-01-23  Kostya Serebryany  <kcc@google.com>
113         * config/darwin.h: remove dependency on CoreFoundation (asan on Mac OS).
115 2013-01-23  Jakub Jelinek  <jakub@redhat.com>
117         PR target/49069
118         * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
119         instead of cmpdi_operand for first comparison operand.
120         Don't assert that comparison operands aren't both constants.
122 2013-01-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
124         * doc/install.texi (Downloading the Source): Update references to
125         downloading separate components.
127 2013-01-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
129         * doc/extend.texi (__int128): Improve grammar.
131 2013-01-22  Uros Bizjak  <ubizjak@gmail.com>
133         PR target/56028
134         * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
135         alternative to (o,r).
136         (*movdi_internal_rex64): Remove (!o,n) alternative.
137         (DImode immediate->memory splitter): Remove.
138         (DImode immediate->memory peephole2): Remove.
139         (movtf): Enable for TARGET_64BIT || TARGET_SSE.
140         (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
141         alternative to (!o,*r).
142         (*movtf_internal_sse): New pattern.
143         (*movxf_internal_rex64): New pattern.
144         (*movxf_internal): Disable for TARGET_64BIT.
145         (*movdf_internal_rex64): Remove (!o,F) alternative.
147 2013-01-22  Jakub Jelinek  <jakub@redhat.com>
149         PR middle-end/56074
150         * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
151         isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
152         * tree-vect-loop-manip.c (find_loop_location): Also ignore
153         stmt locations where LOCATION_LOCUS of the stmt location is
154         UNKNOWN_LOCATION or BUILTINS_LOCATION.
156         PR target/55686
157         * config/i386/i386.md (UNSPEC_STOS): New.
158         (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
159         *strsetqi_1): Add UNSPEC_STOS.
161 2013-01-22  Paolo Carlini  <paolo.carlini@oracle.com>
163         PR c++/56067
164         * doc/invoke.texi: Remove left over -Wsynth example.
166 2013-01-21  Jakub Jelinek  <jakub@redhat.com>
168         PR tree-optimization/56051
169         * fold-const.c (fold_binary_loc): Don't fold
170         X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
171         a narrowing conversion, or widening conversion from signed
172         to unsigned.
174 2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
176         PR rtl-optimization/56023
177         * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
178         dependent on debug instruction.
180 2013-01-21  Martin Jambor  <mjambor@suse.cz>
182         PR middle-end/56022
183         * function.c (allocate_struct_function): Call
184         invoke_set_current_function_hook earlier.
186 2013-01-21  Jakub Jelinek  <jakub@redhat.com>
188         * reload1.c (init_reload): Only initialize reload_obstack
189         during the first call.
191 2013-01-21  Marek Polacek  <polacek@redhat.com>
193         * cfgloop.c (verify_loop_structure): Fix up grammar.
195 2013-01-21  Yi-Hsiu Hsu  <ahsu@marvell.com>
197         * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift,
198         pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift.
200 2013-01-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
202         PR target/56058
203         * config/arm/marvell-pj4.md: Update copyright year.
204         Fix up use of alu to alu_reg and simple_alu_imm.
206 2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
208         * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
210 2013-01-20  Vladimir Makarov  <vmakarov@redhat.com>
212         PR target/55433
213         * lra-constraints.c (curr_insn_transform): Don't reuse original
214         insn for secondary memory move when memory mode should be different.
216 2013-01-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
218         * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi,
219         atomic_storedi_1): New patterns.
221 2013-01-20  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>
223         btver2 pipeline descriptions.
224         * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline
225         descriptions.
226         * config/i386/i386.md (btver2_decode): New type attributes.
227         * config/i386/sse.md (btver2_decode, btver2_sse_attr): New
228         type attributes.
229         * config/i386/btver2.md: New file describing btver2 pipelines.
231 2013-01-19  Andrew Pinski  <apinski@cavium.com>
233         PR tree-optimization/52631
234         * tree-ssa-sccvn (visit_use): Before looking up the original
235         statement, try looking up the simplified expression.
237 2013-01-19  Anthony Green  <green@moxielogic.com>
239         * config/moxie/moxie.c (moxie_expand_prologue): Set
240         current_function_static_stack_size.
242 2013-01-18  Jakub Jelinek  <jakub@redhat.com>
244         PR tree-optimization/56029
245         * tree-phinodes.c (reserve_phi_args_for_new_edge): Set
246         gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION.
248 2013-01-18  Sharad Singhai  <singhai@google.com>
250         PR tree-optimization/55995
251         * dumpfile.c (dump_loc): Print location only if available.
252         * tree-vectorizer.c (increase_alignment): Intialize vect_location.
254 2013-01-18  Vladimir Makarov  <vmakarov@redhat.com>
256         PR target/55433
257         * lra-constraints.c (curr_insn_transform): Reuse original insn for
258         secondary memory move.
259         (inherit_reload_reg): Use rclass instead of cl for
260         check_secondary_memory_needed_p.
262 2013-01-18  Jakub Jelinek  <jakub@redhat.com>
264         PR middle-end/56015
265         * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
266         the case where writing real complex part of target modifies op1.
268 2013-01-18  James Greenhalgh  <james.greenhalgh@arm.com>
270         * config/aarch64/aarch64-simd.md
271         (aarch64_vcond_internal<mode>): Handle unordered cases.
272         * config/aarch64/iterators.md (v_cmp_result): New.
274 2013-01-18  Yi-Hsiu Hsu  <ahsu@marvell.com>
275             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
277         * config/arm/marvell-pj4.md: New file.
278         * config/arm/arm.c (arm_issue_rate): Add marvell_pj4.
279         * config/arm/arm.md (generic_sched): Add marvell_pj4.
280         (generic_vfp): Likewise.
281         * config/arm/arm-cores.def: Add marvell-pj4.
282         * config/arm/arm-tune.md: Regenerate.
283         * config/arm/arm-tables.opt: Regenerate.
284         * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4.
285         * doc/invoke.texi: Document marvell-pj4.
287 2013-01-18  Tejas Belagod  <tejas.belagod@arm.com>
289         * config/aarch64/arm_neon.h: Map scalar types to standard types.
291 2013-01-18  Alexandre Oliva <aoliva@redhat.com>
293         PR debug/54114
294         PR debug/54402
295         PR debug/49888
296         * var-tracking.c (negative_power_of_two_p): New.
297         (global_get_addr_cache, local_get_addr_cache): New.
298         (get_addr_from_global_cache, get_addr_from_local_cache): New.
299         (vt_canonicalize_addr): Rewrite using the above.  Adjust the
300         heading comment.
301         (vt_stack_offset_p): Remove.
302         (vt_canon_true_dep): Always canonicalize loc's address.
303         (clobber_overlapping_mems): Make sure we have a MEM.
304         (local_get_addr_clear_given_value): New.
305         (val_reset): Clear local cached entries.
306         (compute_bb_dataflow): Create and release the local cache.
307         Disable duplicate MEMs clobbering.
308         (emit_notes_in_bb): Clobber MEMs likewise.
309         (vt_emit_notes): Create and release the local cache.
310         (vt_initialize, vt_finalize): Create and release the global
311         cache, respectively.
312         * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs.
314 2013-01-18  Alexandre Oliva <aoliva@redhat.com>
316         PR libmudflap/53359
317         * tree-mudflap.c (mudflap_finish_file): Skip deferred decls
318         not found in the symtab.
320 2013-01-18  Alexandre Oliva <aoliva@redhat.com>
322         PR debug/56006
323         PR rtl-optimization/55547
324         PR rtl-optimization/53827
325         PR debug/53671
326         PR debug/49888
327         * alias.c (offset_overlap_p): New, factored out of...
328         (memrefs_conflict_p): ... this.  Use absolute sizes.  Retain
329         the conservative special case for symbolic constants.  Don't
330         adjust zero sizes on alignment.
332 2013-01-18  Bernd Schmidt  <bernds@codesourcery.com>
334         PR rtl-optimization/52573
335         * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a
336         REG_UNUSED for the same register.
338 2013-01-17  Richard Biener  <rguenther@suse.de>
339             Marek Polacek  <polacek@redhat.com>
341         PR rtl-optimization/55833
342         * loop-unswitch.c (unswitch_loops): Move loop verification...
343         (unswitch_single_loop): ...here.  Call mark_irreducible_loops.
344         * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter.
345         Set it to true when we're removing a loop from hierarchy tree in
346         an irreducible region.
347         (fix_bb_placements): Adjust caller.
348         (fix_loop_placements): Likewise.
350 2013-01-17  Georg-Johann Lay  <avr@gjlay.de>
352         * config/avr/builtins.def (DEF_BUILTIN): Factor out
353         "__builtin_avr_" from NAME, turn NAME to an uppercase identifier.
354         Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'.
355         Remove ID.  Adjust comments.
356         * config/avr/avr-c.c (avr_builtin_name): Remove.
357         (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop.
358         * config/avr/avr.c (avr_tolower): New static function.
359         (DEF_BUILTIN): Remove parameter ID.  Prefix ICODE by 'CODE_FOR_'.
360         Stringify NAME, prefix it with "__builtin_avr_" and lowercase it.
361         (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for
362         default expansion.
364 2013-01-17  Jan Hubicka  <jh@suse.cz>
366         PR tree-optimization/55273
367         * loop-iv.c (iv_number_of_iterations): Consider zero iteration case.
369 2013-01-17  Uros Bizjak  <ubizjak@gmail.com>
371         PR target/55981
372         * config/i386/sync.md (atomic_store<mode>): Always generate SWImode
373         store through atomic_store<mode>_1.
374         (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
376 2013-01-17  Martin Jambor  <mjambor@suse.cz>
378         PR tree-optimizations/55264
379         * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
380         for virtual methods.
381         * ipa.c (symtab_remove_unreachable_nodes): Never return true for
382         virtual methods before inlining is over.
383         * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for
384         virtual functions.
385         * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as
386         non-virtual.
388 2013-01-16  Vladimir Makarov  <vmakarov@redhat.com>
390         PR rtl-optimization/56005
391         * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
392         pending reads for prefetch.
394 2013-01-16  Ian Bolton  <ian.bolton@arm.com>
396         * config/aarch64/aarch64.md
397         (*cstoresi_neg_uxtw): New pattern.
398         (*cmovsi_insn_uxtw): New pattern.
399         (*<optab>si3_uxtw): New pattern.
400         (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern.
401         (*<optab>si3_insn_uxtw): New pattern.
402         (*bswapsi2_uxtw): New pattern.
404 2013-01-16  Richard Biener  <rguenther@suse.de>
406         * tree-inline.c (tree_function_versioning): Remove set but
407         never used variable.
409 2013-01-16  Richard Biener  <rguenther@suse.de>
411         PR tree-optimization/55964
412         * tree-flow.h (rename_variables_in_loop): Remove.
413         (rename_variables_in_bb): Likewise.
414         * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
415         (copy_loop_before): Adjust and delete update-ssa status.
416         * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
417         (rename_variables_in_bb): Likewise.  Properly walk over predecessors.
418         (rename_variables_in_loop): Remove.
419         (slpeel_update_phis_for_duplicate_loop): Likewise.
420         (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
421         use available cfg machinery instead of duplicating it.
422         Update PHI nodes and perform poor-mans SSA update here.
423         (slpeel_tree_peel_loop_to_edge): Adjust.
425 2013-01-16  Richard Biener  <rguenther@suse.de>
427         PR tree-optimization/54767
428         PR tree-optimization/53465
429         * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
430         (vrp_visit_phi_node): For PHI arguments coming via backedges
431         drop all symbolical range information.
432         (execute_vrp): Compute backedges.
434 2013-01-16  Richard Biener  <rguenther@suse.de>
436         * doc/install.texi: Update CLooG and ISL requirements to
437         0.18.0 and 0.11.1.
439 2013-01-16  Christian Bruel  <christian.bruel@st.com>
441         PR target/55301
442         * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
443         (broken_move): Handle UNSPECV_SP_SWITCH_B.
444         * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
446 2013-01-16  DJ Delorie  <dj@redhat.com>
448         * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
449         (UNSPECV_SP_SWITCH_E): New.
450         (sp_switch_1): Change to an unspec.
451         (sp_switch_2): Change to an unspec.  Don't use post-inc when we
452         replace $r15.
454 2013-01-16  Uros Bizjak  <ubizjak@gmail.com>
456         * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
457         with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
458         * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
459         (expand_mem_thread_fence): Ditto.
460         (expand_mem_signal_fence): Ditto.
461         (expand_atomic_load): Ditto.
462         (expand_atomic_store): Ditto.
464 2013-01-16  Alexandre Oliva <aoliva@redhat.com>
466         PR rtl-optimization/55547
467         PR rtl-optimization/53827
468         PR debug/53671
469         PR debug/49888
470         * alias.c (memrefs_conflict_p): Set sizes to negative after
471         AND adjustments.
473 2013-01-15  Jakub Jelinek  <jakub@redhat.com>
475         PR target/55940
476         * function.c (thread_prologue_and_epilogue_insns): Always
477         add crtl->drap_reg to set_up_by_prologue.set, even if
478         stack_realign_drap is false.
480 2013-01-15  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
482         * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3,
483         and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
484         *call): Fix indention.
486 2013-01-15  Tom de Vries  <tom@codesourcery.com>
488         PR target/55876
489         * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
490         Update comment.
492 2013-01-15  Vladimir Makarov  <vmakarov@redhat.com>
494         PR rtl-optimization/55153
495         * sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
497 2013-01-15  Martin Jambor  <mjambor@suse.cz>
499         PR tree-optimization/55920
500         * tree-sra.c (analyze_access_subtree): Do not mark non-removable
501         accesses as grp_to_be_debug_replaced.
503 2013-01-15  Jakub Jelinek  <jakub@redhat.com>
505         PR tree-optimization/55920
506         * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
507         there is non-useless type conversion needed from debug rhs to lhs,
508         use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
510 2013-01-15  Joseph Myers  <joseph@codesourcery.com>
511             Mikael Pettersson  <mikpe@it.uu.se>
513         PR target/43961
514         * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
515         Thumb.
516         (ASM_OUTPUT_CASE_LABEL): Remove.
517         (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
518         * final.c (shorten_branches): Update alignment of labels before
519         jump tables if CASE_VECTOR_SHORTEN_MODE.
521 2013-01-15  Richard Biener  <rguenther@suse.de>
523         PR bootstrap/55961
524         * system.h: Do not include gmp.h for building host tools.
526 2013-01-15  Richard Biener  <rguenther@suse.de>
528         PR middle-end/55882
529         * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
530         account for bitpos when computing alignment.
532 2013-01-15  Vladimir Yakovlev  <vladimir.b.yakovlev@intel.com>
534         * config/i386/i386-c.c (ix86_target_macros_internal): New case.
535         (ix86_target_macros_internal): Likewise.
537         * config/i386/i386.c (m_CORE2I7): Removed.
538         (m_CORE_HASWELL): New macro.
539         (m_CORE_ALL): Likewise.
540         (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
541         (initial_ix86_arch_features): Likewise.
542         (processor_target_table): Initializations for Core avx2.
543         (cpu_names): New names "core-avx2".
544         (ix86_option_override_internal): Changed PROCESSOR_COREI7 by
545         PROCESSOR_CORE_HASWELL.
546         (ix86_issue_rate): New case.
547         (ia32_multipass_dfa_lookahead): Likewise.
548         (ix86_sched_init_global): Likewise.
550         * config/i386/i386.h (TARGET_HASWELL): New macro.
551         (target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
552         (processor_type): New PROCESSOR_HASWELL.
554 2013-01-15  Jakub Jelinek  <jakub@redhat.com>
556         PR tree-optimization/55955
557         * tree-vect-loop.c (vectorizable_reduction): Give up early on
558         *SHIFT_EXPR and *ROTATE_EXPR codes.
560         PR tree-optimization/48766
561         * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
562         -ftrapv disable -fwrapv.
564 2013-01-14  Georg-Johann Lay  <avr@gjlay.de>
566         PR target/55974
567         * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
568         etc. to 1 and not to __flash.
569         Use LL suffix for __INT24_MAX__ with -mint8.
570         Use ULL suffix for __UINT24_MAX__ with -mint8.
572 2013-01-14  Georg-Johann Lay  <avr@gjlay.de>
574         * config/avr/avr-arch.h
575         (struct base_arch_s): Use typedef avr_arch_t instead.
576         (struct arch_info_s): Use typedef avr_arch_info_t instead.
577         (struct mcu_type_s): Use typedef avr_mcu_t instead.
578         * config/avr/avr.c: Same.
579         * config/avr/avr-devices.c: Same.
580         * config/avr/driver-avr.c: Same.
581         * config/avr/gen-avr-mmcu-texi.c: Same.
582         * config/avr/avr-mcus.def: Adjust comment.
584 2013-01-14  Tejas Belagod  <tejas.belagod@arm.com>
586         * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
587         * config/aarch64/iterators.md (VALLDI): New.
589 2013-01-14  Uros Bizjak  <ubizjak@gmail.com>
590             Andi Kleen  <ak@linux.intel.com>
592         PR target/55948
593         * config/i386/sync.md (atomic_store<mode>_1): New pattern.
594         (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
595         memmodel flag.
597 2013-01-14  Georg-Johann Lay  <avr@gjlay.de>
599         * config/avr/avr-stdint.h: Remove trailing blanks.
600         * config/avr/avr-log.h: Same.
601         * config/avr/avr-arch.h: Same.
602         * config/avr/avr-devices.c: Same.
603         * config/avr/avr-dimode.md: Same.
604         * config/avr/predicates.md: Same.
605         * config/avr/avr-c.c: Same.  And fix typo.
607         * config/avr/avr-protos.h: Same.  And:
608         (function_arg_regno_p): Rename to avr_function_arg_regno_p.
609         (init_cumulative_args): Rename to avr_init_cumulative_args.
610         (expand_prologue): Rename to avr_expand_prologue.
611         (expand_epilogue): Rename to avr_expand_epilogue.
612         (adjust_insn_length): Rename to avr_adjust_insn_length.
613         (notice_update_cc): Rename to avr_notice_update_cc.
614         (final_prescan_insn): Rename to avr_final_prescan_insn.
615         * config/avr/avr.c: Same.
616         * config/avr/avr.h: Same.
617         * config/avr/avr.md: Remove trailing blanks.
618         (prologue): Use avr_expand_prologue.
619         (epilogue, sibcall_epilogue): Use avr_expand_epilogue.
621 2013-01-14  Richard Biener  <rguenther@suse.de>
623         * tree-cfg.c (verify_expr_location, verify_expr_location_1,
624         verify_location, collect_subblocks): New functions.
625         (verify_gimple_in_cfg): Verify that locations only reference
626         BLOCKs in the functions BLOCK tree.
628 2013-01-14  Richard Biener  <rguenther@suse.de>
630         * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
631         PHI argument.
632         * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
633         unshare reference.
634         (insert_out_of_ssa_copy_on_edge): Likewise.
635         (rewrite_close_phi_out_of_ssa): Likewise.
636         * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
637         debug expressions.
638         * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
639         propagated constants.
640         * tree-cfg.c (tree_node_can_be_shared): Handled component-refs
641         can not be shared.
643 2013-01-14  Georg-Johann Lay  <avr@gjlay.de>
645         * config/avr/avr-modes.def: Add GPL copyright notice.
647 2013-01-13  Uros Bizjak  <ubizjak@gmail.com>
649         * config/i386/sync.md (mem_thread_fence): Mask operands[0] with
650         MEMMODEL_MASK to determine memory model.
651         (atomic_store<mode>): Ditto from operands[2].
652         * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
654 2013-01-13  Jakub Jelinek  <jakub@redhat.com>
656         PR fortran/55935
657         * gimple-fold.c (get_symbol_constant_value): Call unshare_expr.
658         (fold_gimple_assign): Don't call unshare_expr here.
659         (fold_ctor_reference): Call unshare_expr.
661 2013-01-13  Terry Guo  <terry.guo@arm.com>
663         * Makefile.in (s-mlib): New argument MULTILIB_REUSE.
664         * doc/fragments.texi: Document MULTILIB_REUSE.
665         * gcc.c (multilib_reuse): New internal spec.
666         (set_multilib_dir): Also search multilib from multilib_reuse.
667         * genmultilib (tmpmultilib3): Refactor code.
668         (tmpmultilib4): Ditto.
669         (multilib_reuse): New multilib argument.
671 2013-01-13  Richard Sandiford  <rdsandiford@googlemail.com>
673         * Makefile.in: Update copyright.
675 2013-01-12  Tom de Vries  <tom@codesourcery.com>
677         PR middle-end/55890
678         * calls.c (expand_call): Check if arg_nr is valid.
680 2013-01-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
682         * doc/extend.texi (X86 Built-in Functions): Add whitespace in
683         __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
684         documentation.  Add missing '__' in front of
685         __builtin_ia32_packssdw256.
687 2013-01-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
689         PR target/55719
690         * config/s390/s390.c (s390_preferred_reload_class): Do not return
691         NO_REGS for larl operands.
692         (s390_reload_larl_operand): Use s390_load_address instead of
693         emit_move_insn.
695 2013-01-11  Richard Biener  <rguenther@suse.de>
697         * tree-cfg.c (verify_node_sharing_1): Split out from ...
698         (verify_node_sharing): ... here.
699         (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
701 2013-01-11  Eric Botcazou  <ebotcazou@adacore.com>
703         * configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
704         Substitute TREECHECKING.
705         * configure: Regenerate.
706         * Makefile.in (TREECHECKING): New.
708 2013-01-11  Richard Guenther  <rguenther@suse.de>
710         PR tree-optimization/44061
711         * tree-vrp.c (extract_range_basic): Compute zero as
712         value-range for __builtin_constant_p of function parameters.
714 2013-01-10  Richard Sandiford  <rdsandiford@googlemail.com>
716         Update copyright years.
718 2013-01-10  Vladimir Makarov  <vmakarov@redhat.com>
720         PR rtl-optimization/55672
721         * lra-eliminations.c (mark_not_eliminable): Permit addition with
722         const to be eliminable.
724 2013-01-10  David Edelsohn  <dje.gcc@gmail.com>
726         * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix.
727         * configure: Regenerate.
729 2013-01-10  Richard Biener  <rguenther@suse.de>
731         * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes.
733 2013-01-10  Richard Biener  <rguenther@suse.de>
735         PR bootstrap/55792
736         * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set
737         locations for virtual PHI arguments.
738         (rewrite_update_phi_arguments): Likewise.
740 2013-01-10  Joel Sherrill  <joel.sherrill@OARcorp.com>
742         * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi
743         on to assembler.
745 2013-01-10  Jakub Jelinek  <jakub@redhat.com>
747         PR tree-optimization/55921
748         * tree-complex.c (expand_complex_asm): New function.
749         (expand_complex_operations_1): Call it for GIMPLE_ASM.
751 2013-01-10  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
753         PR target/55718
754         * config/s390/s390.c (s390_symref_operand_p)
755         (s390_loadrelative_operand_p): Merge the two functions.
756         (s390_check_qrst_address, print_operand_address): Add parameters
757         to s390_loadrelative_operand_p invokation.
758         (s390_check_symref_alignment): Use s390_loadrelative_operand_p.
759         (s390_reload_larl_operand, s390_secondary_reload): Use
760         s390_loadrelative_operand_p instead of s390_symref_operand_p.
761         (legitimize_pic_address): Handle @GOTENT and @PLT + addend.
763 2013-01-09  Mike Stump  <mikestump@comcast.net>
765         * dse.c (record_store): Remove unnecessary assert.
767 2013-01-09  Jan Hubicka  <jh@suse.cz>
769         PR tree-optimization/55569
770         * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
771         * cfgloop.h (scale_loop_profile): Likewise.
773 2013-01-09  Jan Hubicka  <jh@suse.cz>
775         PR lto/45375
776         * ipa-inline.c (ipa_inline): Remove extern inlines and virtual
777         functions.
778         * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
780 2013-01-09  Richard Sandiford  <rdsandiford@googlemail.com>
782         PR middle-end/55114
783         * expr.h (maybe_emit_group_store): Declare.
784         * expr.c (maybe_emit_group_store): New function.
785         * builtins.c (expand_builtin_int_roundingfn): Call it.
786         (expand_builtin_int_roundingfn_2): Likewise.
788 2013-01-09  Vladimir Makarov  <vmakarov@redhat.com>
790         PR rtl-optimization/55829
791         * lra-constraints.c (match_reload): Add code for absent output.
792         (curr_insn_transform): Add code for reloads of matched inputs
793         without output.
795 2013-01-09  Uros Bizjak  <ubizjak@gmail.com>
797         * config/i386/sse.md (*vec_interleave_highv2df): Change mode
798         attribute of movddup insn to DF.
799         (*vec_interleave_lowv2df): Ditto.
800         (vec_dupv2df): Ditto.
802 2013-01-09  Jan Hubicka  <jh@suse.cz>
804         PR tree-optimiation/55875
805         * tree-ssa-loop-niter.c (number_of_iterations_cond): Add
806         EVERY_ITERATION parameter.
807         (number_of_iterations_exit): Check if exit is executed every iteration.
808         (idx_infer_loop_bounds): Similarly here.
809         (n_of_executions_at_most): Simplify
810         to only test for cases where statement is dominated by the
811         particular bound; handle correctly the "postdominance" test.
812         (scev_probably_wraps_p): Use max loop iterations info
813         as a global bound first.
815 2013-01-09  Nguyen Duy Dat  <dat.nguyen.yn@rvc.renesas.com>
816             Nick Clifton  <nickc@redhat.com>
818         * config/v850/v850.md (cbranchsf4): New pattern.
819         (cstoresf4): New pattern.
820         (cbranchdf4): New pattern.
821         (cstoredf4): New pattern.
822         (movsicc): Disallow floating point comparisons.
823         (cmpsf_le_insn): Fix order of operators.
824         (cmpsf_lt_insn): Likewise.
825         (cmpsf_eq_insn): Likewise.
826         (cmpdf_le_insn): Likewise.
827         (cmpdf_lt_insn): Likewise.
828         (cmpdf_eq_insn): Likewise.
829         (cmpsf_ge_insn): Use LE comparison.
830         (cmpdf_ge_insn): Likewise.
831         (cmpsf_gt_insn): Use LT comparison.
832         (cmpdf_gt_insn): Likewise.
833         (cmpsf_ne_insn): Delete pattern.
834         (cmpdf_ne_insn): Delete pattern.
835         * config/v850/v850.c (v850_gen_float_compare): Use
836         gen_cmpdf_eq_insn for NE comparison.
837         (v850_float_z_comparison_operator)
838         (v850_float_nz_comparison_operator): Move from here ...
839         * config/v850/predicates.md: ... to here.  Move GT and GE
840         comparisons into v850_float_z_comparison_operator.
841         * config/v850/v850-protos.h (v850_float_z_comparison_operator):
842         Delete prototype.
843         (v850_float_nz_comparison_operator): Likewise.
845 2013-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
847         * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
848         with calls to gen_insvsi/gen_insvdi.
850 2013-01-09  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>
852         * config/i386/i386.c (initial_ix86_tune_features): Set up
853         X86_TUNE_AVX128_OPTIMAL for m_BTVER2.
855 2013-01-09  Steven Bosscher  <steven@gcc.gnu.org>
856             Jakub Jelinek  <jakub@redhat.com>
858         PR tree-optimization/48189
859         * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
860         If nitercst is 0, don't predict the exit edge.
862 2013-01-08   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
864         * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
865         in asm_fprintf with reg_names.
866         (aarch64_print_operand_address): Likewise.
867         (aarch64_return_addr): Likewise.
868         * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.
870 2013-01-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
872         * config/pa/pa.h (VAL_U6_BITS_P): Define.
873         (INT_U6_BITS): Likewise.
874         * config/pa/predicates.md (uint6_operand): New predicate.
875         (shift5_operand, shift6_operand): Likewise.
876         * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
877         arith32_operand.
878         (lshrdi3): Use shift6_operand.
879         (shrpsi4, shrpdi4): New insn patterns.
880         (extzv): Delete expander.
881         (extzvsi, extzvdi): New expanders.  Use uint5_operand and uint6_operand
882         predicates in unamed zero extract patterns.  Tighten common constraint.
883         (extv): Delete expander.
884         (extvsi, extvdi): New expanders.  Use uint5_operand and uint6_operand
885         predicates in unamed sign extract patterns.  Tighten common constraint.
886         (insv): Delete expander.
887         (insvsi, insvdi): New expanders.  Use uint5_operand and uint6_operand
888         predicates in unamed insert patterns.  Tighten common constraint.
889         Change uint32_operand predicate to uint6_operand predicate in unamed
890         DImode pattern to insert constant values of type 1...1xxxx.
892 2013-01-04  Jan Hubicka  <jh@suse.cz>
894         PR tree-optimization/55823
895         * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering
896         issue.
898 2013-01-08  Jakub Jelinek  <jakub@redhat.com>
899             Uros Bizjak  <ubizjak@gmail.com>
901         PR rtl-optimization/55845
902         * df-problems.c (can_move_insns_across): Stop scanning at
903         volatile_insn_p source instruction or give up if
904         across_from .. across_to range contains any volatile_insn_p
905         instructions.
907 2013-01-08  Tejas Belagod  <tejas.belagod@arm.com>
909         * config/aarch64/aarch64-simd.md (vec_init<mode>): New.
910         * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init):
911         Declare.
912         * config/aarch64/aarch64.c (aarch64_simd_dup_constant,
913         aarch64_simd_make_constant, aarch64_expand_vector_init): New.
915 2013-01-08  Jakub Jelinek  <jakub@redhat.com>
917         PR fortran/55341
918         * asan.c (asan_clear_shadow): New function.
919         (asan_emit_stack_protection): Use it.
921 2013-01-08  Tejas Belagod  <tejas.belagod@arm.com>
923         * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
924         aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
925         with tab instead of space.
927 2013-01-08  Nick Clifton  <nickc@redhat.com>
929         * config/rl78/rl78.c (rl78_expand_prologue): Always select
930         register bank 0 at the start of an interrupt handler.
931         * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
932         MDBH registers.
934 2013-01-08  James Greenhalgh  <james.greenhalgh@arm.com>
936         * config/aarch64/aarch64-simd.md
937         (aarch64_simd_bsl<mode>_internal): Add floating-point modes.
938         (aarch64_simd_bsl): Likewise.
939         (aarch64_vcond_internal<mode>): Likewise.
940         (vcond<mode><mode>): Likewise.
941         (aarch64_cm<cmp><mode>): Fix constraints, add new modes.
942         * config/aarch64/iterators.md (V_cmp_result): Add V2DF.
944 2013-01-08  James Greenhalgh  <james.greenhalgh@arm.com>
946         * config/aarch64/aarch64-builtins.c
947         (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.
949 2013-01-08  Martin Jambor  <mjambor@suse.cz>
951         PR debug/55579
952         * tree-sra.c (analyze_access_subtree): Return true also after
953         potentially creating a debug-only replacement.
955 2013-01-08  Jakub Jelinek  <jakub@redhat.com>
957         PR middle-end/55890
958         * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.
960         PR tree-optimization/54120
961         * tree-vrp.c (range_fits_type_p): Don't allow
962         src_precision < precision from signed vr to unsigned_p
963         if vr->min or vr->max is negative.
964         (simplify_float_conversion_using_ranges): Test can_float_p
965         against CODE_FOR_nothing.
967 2013-01-08  Jakub Jelinek  <jakub@redhat.com>
968             Richard Biener  <rguenther@suse.de>
970         PR middle-end/55851
971         * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
972         types instead of just INTEGER_TYPE types.
974 2013-01-07  Mark Kettenis  <kettenis@openbsd.org>
976         * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT,
977         TF_SIZE): Define.
979 2013-01-07  Steve Ellcey  <sellcey@mips.com>
981         PR target/42661
982         * config/mips/mips.opt: Change mad to mmad to match documentation.
984 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
986         PR target/55897
987         * doc/extend.texi (AVR Named Address Spaces): __memx goes into
988         .progmemx.data now.
990 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
992         PR target/55897
993         * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
994         (avr_addrspace_t): Add .section_name field.
995         * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
996         array size.
997         (avr_addrspace): Same.  Initialize .section_name.  Remove last
998         NULL entry.  Put __memx into .progmemx.data.
999         (progmem_section_prefix): Remove.
1000         (avr_asm_init_sections): No need to initialize progmem_section.
1001         (avr_asm_named_section): Use avr_addrspace[].section_name to get
1002         section name prefix.
1003         (avr_asm_select_section): Ditto.  And use get_unnamed_section to
1004         retrieve the progmem section.
1005         * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
1006         boundary to run over avr_addrspace[].
1007         (avr_register_target_pragmas): Ditto.
1009 2013-01-06  Jakub Jelinek  <jakub@redhat.com>
1011         * varasm.c (output_constant_def_contents): For asan_protect_global
1012         protected strings, adjust DECL_ALIGN if needed, before testing for
1013         anchored symbols.
1014         (place_block_symbol): Adjust size for asan protected STRING_CSTs if
1015         TREE_CONSTANT_POOL_ADDRESS_P.  Increase alignment for asan protected
1016         normal decls.
1017         (output_object_block): For asan protected decls, emit asan padding
1018         after their contents.
1019         * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here.
1020         (asan_finish_file): Test it here instead.
1022 2013-01-07   Nick Clifton  <nickc@redhat.com>
1023              Matthias Klose <doko@debian.org>
1024              Doug Kwan  <dougkwan@google.com>
1025              H.J. Lu  <hongjiu.lu@intel.com>
1027         PR driver/55470
1028         * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold.
1030         * common.opt: Add fuse-ld=bfd and fuse-ld=gold.
1032         * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2.
1034         * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold.
1036         * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold.
1038 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1040         PR target/54461
1041         * doc/install.texi (Cross-Compiler-Specific Options): Document
1042         --with-avrlibc.
1044 2013-01-07  Tejas Belagod  <tejas.belagod@arm.com>
1046         * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
1047         vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
1048         vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
1049         vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
1050         vqmovun_high_s64): Fix source operand number and update copyright.
1052 2013-01-07  Richard Biener  <rguenther@suse.de>
1054         PR middle-end/55890
1055         * gimple.h (gimple_call_builtin_p): New overload.
1056         * gimple.c (validate_call): New function.
1057         (gimple_call_builtin_p): Likewise.
1058         * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
1059         Use gimple_call_builtin_p.
1060         (find_func_clobbers): Likewise.
1061         * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
1062         (strlen_optimize_stmt): Likewise.
1064 2013-01-07  James Greenhalgh  <james.greenhalgh@arm.com>
1066         * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
1067         (vld1q_dup_*): Likewise.
1068         (vld1_*): Likewise.
1069         (vld1q_*): Likewise.
1070         (vld1_lane_*): Likewise.
1071         (vld1q_lane_*): Likewise.
1073 2013-01-07  Richard Biener  <rguenther@suse.de>
1075         * lto-streamer.h (LTO_minor_version): Bump to 2.
1077 2013-01-07  James Greenhalgh  <james.greenhalgh@arm.com>
1079         * config/aarch64/aarch64-protos.h
1080         (aarch64_const_double_zero_rtx_p): Rename to...
1081         (aarch64_float_const_zero_rtx_p): ...this.
1082         (aarch64_float_const_representable_p): New.
1083         (aarch64_output_simd_mov_immediate): Likewise.
1084         * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
1085         move immediate case.
1086         * config/aarch64/aarch64.c
1087         (aarch64_const_double_zero_rtx_p): Rename to...
1088         (aarch64_float_const_zero_rtx_p): ...this.
1089         (aarch64_print_operand): Allow printing of new constants.
1090         (aarch64_valid_floating_const): New.
1091         (aarch64_legitimate_constant_p): Check for valid floating-point
1092         constants.
1093         (aarch64_simd_valid_immediate): Likewise.
1094         (aarch64_vect_float_const_representable_p): New.
1095         (aarch64_float_const_representable_p): Likewise.
1096         (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
1097         (aarch64_output_simd_mov_immediate): New.
1098         * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
1099         (*movdf_aarch64): Likewise.
1100         * config/aarch64/constraints.md (Ufc): New.
1101         (Y): call aarch64_float_const_zero_rtx.
1102         * config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
1104 2013-01-07  Richard Biener  <rguenther@suse.de>
1106         PR tree-optimization/55888
1107         PR tree-optimization/55862
1108         * tree-ssa-pre.c (phi_translate_1): Revert previous change.
1109         (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
1110         not if it is contained therein.
1112 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1114         * config/avr/t-avr: Typo.
1116 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1118         PR55243
1119         * config/avr/t-avr: Don't automatically rebuild
1120         $(srcdir)/config/avr/t-multilib
1121         $(srcdir)/config/avr/avr-tables.opt
1122         $(srcdir)/doc/avr-mmcu.texi
1123         (avr-mcus): New phony target to build them on request.
1124         (s-avr-mlib, s-avr-mmcu-texi): Remove.
1125         * avr/avr-mcus.def: Adjust comments.
1127 2013-01-07  Uros Bizjak  <ubizjak@gmail.com>
1129         * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
1131 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
1133         * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
1135 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
1137         * config/tilepro/gen-mul-tables.cc: Put copyright on one line.
1139 2013-01-05  David Edelsohn  <dje.gcc@gmail.com>
1141         * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
1142         to generate profiling.
1143         * config/rs6000/aix64.h (LIB_SPEC): Same.
1145 2013-01-04  Andrew Pinski  <apinski@cavium.com>
1147         * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
1148         New function.
1149         (TARGET_FIXED_CONDITION_CODE_REGS): Define.
1151 2013-01-04  Uros Bizjak  <ubizjak@gmail.com>
1153         * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
1154         unconditionally.
1155         (ix86_expand_move): Ditto.
1156         (ix86_zero_extend_to_Pmode): Ditto.
1157         (ix86_expand_call): Ditto.
1158         (ix86_expand_special_args_builtin): Ditto.
1159         (ix86_expand_builtin): Ditto.
1161 2013-01-04  Richard Biener  <rguenther@suse.de>
1163         PR tree-optimization/55862
1164         * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
1165         translating them through PHI nodes.
1167 2013-01-04  Martin Jambor  <mjambor@suse.cz>
1169         PR tree-optimization/55755
1170         * tree-sra.c (sra_modify_assign): Do not check that an access has no
1171         children when trying to avoid producing a VIEW_CONVERT_EXPR.
1173 2013-01-04  Marek Polacek  <polacek@redhat.com>
1175         PR middle-end/55859
1176         * opts.c (default_options_optimization): Clarify error message.
1178 2013-01-04  Richard Biener  <rguenther@suse.de>
1180         PR middle-end/55863
1181         * fold-const.c (split_tree): Undo -X - 1 to ~X folding for
1182         reassociation.
1184 2013-01-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1186         PR target/53789
1187         * config/pa/pa.md (movsi): Revert previous change.
1188         * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
1189         references.
1191 2013-01-03  Richard Henderson  <rth@redhat.com>
1193         * config/i386/i386.c (ix86_expand_move): Always assign to op1
1194         after eliminating TLS symbols.
1196 2013-01-03  Marc Glisse  <marc.glisse@inria.fr>
1198         PR bootstrap/50167
1199         * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
1200         * graphite-poly.c (debug_gmp_value): Likewise.
1202 2013-01-03  Uros Bizjak  <ubizjak@gmail.com>
1204         PR target/55712
1205         * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
1206         selected code model, define __code_mode_small__, __code_model_medium__,
1207         __code_model_large__, __code_model_32__ or __code_model_kernel__.
1208         * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
1209         xchg temporary register with %k.  Declare temporary register as
1210         early clobbered.
1211         [__x86_64__]: For medium and large code models, preserve %rbx register.
1213 2013-01-03  Richard Biener  <rguenther@suse.de>
1215         * tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
1216         (dump_subscript): Adjust.
1217         (finalize_ddr_dependent): Do not dump redundant info.
1218         (analyze_siv_subscript): Adjust.
1219         (subscript_dependence_tester): Likewise.
1220         (compute_affine_dependence): Likewise.
1222 2013-01-03  Richard Biener  <rguenther@suse.de>
1224         Revert
1225         2013-01-03  Richard Biener  <rguenther@suse.de>
1227         PR tree-optimization/55857
1228         * tree-vect-stmts.c (vectorizable_load): Do not setup
1229         re-alignment for invariant loads.
1231         2013-01-02  Richard Biener  <rguenther@suse.de>
1233         * tree-vect-stmts.c (vectorizable_load): When vectorizing an
1234         invariant load do not generate a vector load from the scalar location.
1236 2013-01-03  Richard Biener  <rguenther@suse.de>
1238         * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
1239         for not vectorizing.
1240         * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
1241         not build INDIRECT_REFs, call get_name once only.
1242         (vect_create_data_ref_ptr): Likewise.  Dump base object kind
1243         based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
1245 2013-01-03  Richard Biener  <rguenther@suse.de>
1247         PR tree-optimization/55857
1248         * tree-vect-stmts.c (vectorizable_load): Do not setup
1249         re-alignment for invariant loads.
1251 2013-01-03  Richard Biener  <rguenther@suse.de>
1253         PR lto/55848
1254         * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
1255         prefer a built-in decl.
1257 2013-01-03  Jakub Jelinek  <jakub@redhat.com>
1259         * gcc.c (process_command): Update copyright notice dates.
1260         * gcov.c (print_version): Likewise.
1261         * gcov-dump.c (print_version): Likewise.
1263         PR rtl-optimization/55838
1264         * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
1265         iv0.step, iv1.step and step.
1267 2013-01-03  Jakub Jelinek  <jakub@redhat.com>
1268             Marc Glisse  <marc.glisse@inria.fr>
1270         PR tree-optimization/55832
1271         * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
1272         ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
1273         integer_{one,zero}_node.
1275 2013-01-03  Jakub Jelinek  <jakub@redhat.com>
1277         PR debug/54402
1278         * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param.
1279         * var-tracking.c (reverse_op): Don't add reverse ops to
1280         VALUEs that have already
1281         PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list.
1283 2013-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
1285         * doc/contrib.texi: Note years as release manager for Mark Mitchell.
1287 2013-01-02  Teresa Johnson  <tejohnson@google.com>
1289         * dumpfile.c (dump_loc): Print filename with location.
1290         * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use
1291         new location_t parameter to emit complete unroll message with
1292         new dump framework.
1293         (canonicalize_loop_induction_variables): Compute loops location
1294         and pass to try_unroll_loop_completely.
1295         * loop-unroll.c (report_unroll_peel): New function.
1296         (peel_loops_completely): Use new dump format with location
1297         for main dumpfile message, and invoke report_unroll_peel on success.
1298         (decide_unrolling_and_peeling): Ditto.
1299         (decide_peel_once_rolling): Remove old dumpfile message subsumed
1300         by report_unroll_peel.
1301         (decide_peel_completely): Ditto.
1302         (decide_unroll_constant_iterations): Ditto.
1303         (decide_unroll_runtime_iterations): Ditto.
1304         (decide_peel_simple): Ditto.
1305         (decide_unroll_stupid): Ditto.
1306         * cfgloop.c (get_loop_location): New function.
1307         * cfgloop.h (get_loop_location): Declare.
1309 2013-01-02  Sriraman Tallam  <tmsriram@google.com>
1311         * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for
1312         NULL.
1314 2013-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1316         PR middle-end/55198
1317         * expr.c (expand_expr_real_1): Don't use bitfield extraction for non
1318         BLKmode objects when EXPAND_MEMORY is specified.
1320 2013-01-02  Sriraman Tallam  <tmsriram@google.com>
1322         * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug
1323         in loop predicate.
1324         (fold_builtin_cpu): Do not share cpu model decls across statements.
1326 2013-01-02  Jason Merrill  <jason@redhat.com>
1328         PR c++/55804
1329         * tree.c (build_array_type_1): Revert earlier change.
1331 2013-01-02  Yufeng Zhang  <yufeng.zhang@arm.com>
1333         * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and
1334         "cortex-a57".
1335         * config/aarch64/aarch64-tune.md: Re-generate.
1337 2013-01-02  Richard Biener  <rguenther@suse.de>
1339         * tree-vect-stmts.c (vectorizable_load): When vectorizing an
1340         invariant load do not generate a vector load from the scalar location.
1342 2013-01-02  Richard Biener  <rguenther@suse.de>
1344         PR bootstrap/55784
1345         * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS.
1346         * configure: Regenerate.
1348 2013-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1350         * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2)
1351         (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3)
1352         (expand_builtin_int_roundingfn_2): Keep the original target around
1353         for the fallback case.
1355 2013-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1357         * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int
1358         to be clear for sign changes.
1360 2013-01-01  Jan Hubicka  <jh@suse.cz>
1362         * ipa-inline-analysis.c: Fix formatting.
1364 2013-01-01  Jakub Jelinek  <jakub@redhat.com>
1366         PR tree-optimization/55831
1367         * tree-vect-loop.c (get_initial_def_for_induction): Use
1368         gsi_after_labels instead of gsi_start_bb.
1370 Copyright (C) 2013 Free Software Foundation, Inc.
1372 Copying and distribution of this file, with or without modification,
1373 are permitted in any medium without royalty provided the copyright
1374 notice and this notice are preserved.