| 2013-10-16 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com> |
| |
| Backport from mainline |
| 2013-10-16 Ganesh Gopalasubramanian |
| <Ganesh.Gopalasubramanian@amd.com> |
| |
| * config/i386/i386.c (ix86_option_override_internal): Enable FMA4 |
| for AMD bdver3. |
| |
| 2013-10-16 Jakub Jelinek <jakub@redhat.com> |
| |
| * BASE-VER: Set to 4.8.3. |
| * DEV-PHASE: Set to prerelease. |
| |
| 2013-10-16 Release Manager |
| |
| * GCC 4.8.2 released. |
| |
| 2013-10-12 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| Backport from mainline. |
| 2013-10-12 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/arm_neon.h |
| (vtbx<1,3>_<psu>8): Fix register constriants. |
| |
| 2013-10-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/58670 |
| * stmt.c (expand_asm_operands): Add FALLTHRU_BB argument, |
| if any labels are in FALLTHRU_BB, use a special label emitted |
| immediately after the asm goto insn rather than label_rtx |
| of the LABEL_DECL. |
| (expand_asm_stmt): Adjust caller. |
| * cfgrtl.c (commit_one_edge_insertion): Force splitting of |
| edge if the last insn in predecessor is a jump with single successor, |
| but it isn't simplejump_p. |
| |
| 2013-10-09 Jakub Jelinek <jakub@redhat.com> |
| |
| Backport from mainline |
| 2013-09-26 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/58539 |
| * tree-vect-loop.c (vect_create_epilog_for_reduction): Honor |
| the fact that debug statements are not taking part in loop-closed |
| SSA construction. |
| |
| 2013-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.c (s390_register_info): Make the call-saved FPR |
| loop to work also for 31bit ABI. |
| Save the stack pointer for frame_size > 0. |
| |
| 2013-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.md ("tbegin", "tbegin_nofloat", "tbegin_retry") |
| ("tbegin_retry_nofloat", "tend", "tabort", "tx_assist"): Remove |
| constraint letters from expanders. |
| ("tbegin_retry", "tbegin_retry_nofloat"): Change predicate of the |
| retry count to general_operand. |
| ("tabort"): Give operand 0 a mode. |
| ("tabort_1"): Add mode and constraint letter for operand 0. |
| * doc/extend.texi: Fix protoype of __builtin_non_tx_store. |
| |
| 2013-10-04 Marcus Shawcroft <marcus.shawcroft@arm.com> |
| |
| Backport from mainline. |
| |
| PR target/58460 |
| * config/aarch64/aarch64.md (*add_<shift>_<mode>) |
| (*add_<shift>_si_uxtw,*add_mul_imm_<mode>) |
| (*sub_<shift>_<mode>) |
| (*sub_<shift>_si_uxtw,*sub_mul_imm_<mode>, *sub_mul_imm_si_uxtw): |
| Remove k constraint. |
| |
| 2013-10-02 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file. |
| |
| 2013-10-01 Jakub Jelinek <jakub@redhat.com> |
| Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| PR target/58574 |
| * config/s390/s390.c (s390_chunkify_start): Handle tablejump_p first, |
| continue when done, for other jumps look through PARALLEL |
| unconditionally. |
| |
| 2013-09-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/58564 |
| * fold-const.c (fold_ternary_loc): For A < 0 : <sign bit of A> : 0 |
| optimization, punt if sign_bit_p looked through any zero extension. |
| |
| 2013-09-27 Paulo Matos <pmatos@broadcom.com> |
| |
| Backport from mainline. |
| |
| PR middle-end/58463 |
| 2013-03-27 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56716 |
| * tree-ssa-structalias.c (perform_var_substitution): Adjust |
| dumping for ref nodes. |
| |
| 2013-09-27 Paulo Matos <pmatos@broadcom.com> |
| |
| Backport from mainline. |
| |
| 2013-09-27 Paulo Matos <pmatos@broadcom.com> |
| PR middle-end/58463 |
| * gcc.dg/pr58463.c: New test. |
| |
| 2013-09-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy |
| assignment statements. |
| |
| 2013-09-23 Alan Modra <amodra@gmail.com> |
| |
| PR target/58330 |
| * config/rs6000/rs6000.md (bswapdi2_64bit): Disable for volatile mems. |
| |
| 2013-09-23 Alan Modra <amodra@gmail.com> |
| |
| * config/rs6000/predicates.md (add_cint_operand): New. |
| (reg_or_add_cint_operand, small_toc_ref): Use add_cint_operand. |
| * config/rs6000/rs6000.md (largetoc_high_plus): Restrict offset |
| using add_cint_operand. |
| (largetoc_high_plus_aix): Likewise. |
| * config/rs6000/rs6000.c (toc_relative_expr_p): Use add_cint_operand. |
| |
| 2013-09-20 John David Anglin <danglin@gcc.gnu.org> |
| |
| PR middle-end/56791 |
| * config/pa/pa.c (pa_option_override): Disable auto increment and |
| decrement instructions until reload is completed. |
| |
| * config/pa/pa.md: In "scc" insn patterns, change output template to |
| handle const0_rtx in reg_or_0_operand operands. |
| |
| 2013-09-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * omp-low.c (expand_omp_sections): Always pass len - 1 to |
| GOMP_sections_start, even if !exit_reachable. |
| |
| 2013-09-18 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.c (arm_expand_prologue): Validate architecture supports |
| LDRD/STRD before accepting tuning preferences. |
| (arm_expand_epilogue): Likewise. |
| |
| 2013-09-18 Daniel Morris <danielm@ecoscentric.com> |
| Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR c++/58458 |
| * doc/implement-cxx.texi: Fix references to the C++ standards. |
| |
| 2013-09-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| PR tree-optimization/58088 |
| * fold-const.c (mask_with_trailing_zeros): New function. |
| (fold_binary_loc): Make sure we don't recurse infinitely |
| when the X in (X & C1) | C2 is a tree of the form (Y * K1) & K2. |
| Use mask_with_trailing_zeros where appropriate. |
| |
| 2013-09-14 John David Anglin <danglin@gcc.gnu.org> |
| |
| PR target/58382 |
| * config/pa/pa.c (pa_expand_prologue): Change mode in gen_rtx_POST_INC |
| calls to word_mode. |
| |
| 2013-09-13 Christian Bruel <christian.bruel@st.com> |
| |
| PR target/58314 |
| * config/sh/sh.md (mov<mode>_reg_reg): Allow memory reloads. |
| |
| 2013-09-11 Andi Kleen <ak@linux.intel.com> |
| |
| Backport from mainline |
| * doc/extend.texi: Use __atomic_store_n instead of |
| __atomic_store in HLE example. |
| |
| 2013-09-11 Andi Kleen <ak@linux.intel.com> |
| |
| Backport from mainline |
| * doc/extend.texi: Dont use __atomic_clear in HLE |
| example. Fix typo. |
| |
| 2013-09-11 Andi Kleen <ak@linux.intel.com> |
| |
| Backport from mainline |
| * doc/extend.texi: Document that __atomic_clear and |
| __atomic_test_and_set should only be used with bool. |
| |
| 2013-09-11 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/58377 |
| * passes.c (init_optimization_passes): Split critical edges |
| before late uninit warning pass in the -Og pipeline. |
| |
| 2013-09-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58385 |
| * fold-const.c (build_range_check): If both low and high are NULL, |
| use omit_one_operand_loc to preserve exp side-effects. |
| |
| 2013-09-10 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/58361 |
| * arm/vfp.md (combine_vcvt_f32_<FCVTI32typename>): Fix pattern to |
| support conditional execution. |
| (combine_vcvt_f64_<FCVTI32typename>): Likewise. |
| |
| 2013-09-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/58365 |
| * cfgcleanup.c (merge_memattrs): Also clear MEM_READONLY_P |
| resp. MEM_NOTRAP_P if they differ, or set MEM_VOLATILE_P if |
| it differs. |
| |
| 2013-09-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58364 |
| * tree-ssa-reassoc.c (init_range_entry): For BIT_NOT_EXPR on |
| BOOLEAN_TYPE, only invert in_p and continue with arg0 if |
| the current range can't be an unconditional true or false. |
| |
| 2013-09-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| PR target/57735 |
| Backport from mainline |
| 2013-04-30 Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
| |
| * explow.c (plus_constant): Pass "mode" to immed_double_int_const. |
| Use gen_int_mode rather than GEN_INT. |
| |
| 2013-09-09 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-27 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57521 |
| * tree-if-conv.c (if_convertible_bb_p): Verify that at least |
| one edge is non-critical. |
| (find_phi_replacement_condition): Make sure to use a non-critical |
| edge. Cleanup and remove old bug workarounds. |
| (bb_postdominates_preds): Remove. |
| (if_convertible_loop_p_1): Do not compute post-dominators. |
| (combine_blocks): Do not free post-dominators. |
| (main_tree_if_conversion): Likewise. |
| |
| 2013-09-09 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-09-03 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/57656 |
| * fold-const.c (negate_expr_p): Fix division case. |
| (negate_expr): Likewise. |
| |
| 2013-09-09 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57685 |
| * tree-vrp.c (register_edge_assert_for_1): Recurse only for |
| single-use operands to avoid exponential complexity. |
| |
| 2013-09-09 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/58223 |
| * tree-loop-distribution.c (has_anti_dependence): Rename to ... |
| (has_anti_or_output_dependence): ... this and adjust to also |
| look for output dependences. |
| (mark_nodes_having_upstream_mem_writes): Adjust. |
| (rdg_flag_uses): Likewise. |
| |
| 2013-09-03 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/58246 |
| * tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Properly |
| handle the dominance check inside a basic-block. |
| |
| 2013-09-03 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/58228 |
| * tree-vect-data-refs.c (vect_analyze_data_ref_access): Do not |
| allow invariant loads in nested loop vectorization. |
| |
| 2013-09-03 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-08-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/58010 |
| * tree-vect-loop.c (vect_create_epilog_for_reduction): Remove |
| assert that we have a loop-closed PHI. |
| |
| 2013-09-01 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-08-31 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/alpha/alpha.c (alpha_emit_conditional_move): Update |
| "cmp" RTX before signed_comparison_operator check to account |
| for "code" changes. |
| |
| 2013-09-01 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns. |
| |
| 2013-08-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58277 |
| * tree-ssa-strlen.c (strlen_enter_block): If do_invalidate gave up |
| after seeing too many stmts with vdef in between dombb and current |
| bb, invalidate everything. |
| |
| 2013-08-29 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| Backport from mainline |
| 2013-08-05 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR other/12081 |
| * recog.h (rtx (*insn_gen_fn) (rtx, ...)): Replace typedef with new |
| class insn_gen_fn. |
| * expr.c (move_by_pieces_1, store_by_pieces_2): Replace argument |
| rtx (*) (rtx, ...) with insn_gen_fn. |
| * genoutput.c (output_insn_data): Cast gen_? function pointers to |
| insn_gen_fn::stored_funcptr. Add initializer braces. |
| |
| Backport from mainline |
| 2013-08-07 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR other/12081 |
| * config/rs6000/rs6000.c (gen_2arg_fn_t): Remove typedef. |
| (rs6000_emit_swdiv_high_precision, rs6000_emit_swdiv_low_precision, |
| rs6000_emit_swrsqrt): Don't cast result of GEN_FCN to gen_2arg_fn_t. |
| |
| 2013-08-29 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from mainline |
| 2013-05-27 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/57381 |
| PR tree-optimization/57417 |
| * tree-ssa-sccvn.c (vn_reference_fold_indirect): Fix test |
| for unchanged base. |
| (set_ssa_val_to): Compare addresses using |
| get_addr_base_and_unit_offset. |
| |
| PR tree-optimization/57396 |
| * tree-affine.c (double_int_constant_multiple_p): Properly |
| return false for val == 0 and div != 0. |
| |
| PR tree-optimization/57343 |
| * tree-ssa-loop-niter.c (number_of_iterations_ne_max): Do not |
| use multiple_of_p if not TYPE_OVERFLOW_UNDEFINED. |
| (number_of_iterations_cond): Do not build the folded tree. |
| |
| 2013-08-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/58257 |
| * omp-low.c (copy_var_decl): Copy over TREE_NO_WARNING flag. |
| |
| 2013-08-28 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-06-24 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56977 |
| * passes.c (init_optimization_passes): Move pass_fold_builtins |
| and pass_dce earlier with -Og. |
| |
| 2013-08-28 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-08-27 H.J. Lu <hongjiu.lu@intel.com> |
| |
| * config/i386/driver-i386.c (host_detect_local_cpu): Update |
| Haswell processor detection. |
| |
| Backport from mainline |
| 2013-08-27 Christian Widmer <shadow@umbrox.de> |
| |
| PR target/57927 |
| * config/i386/driver-i386.c (host_detect_local_cpu): Add detection |
| of Ivy Bridge and Haswell processors. Assume core-avx2 for unknown |
| AVX2 capable processors. |
| |
| 2013-08-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/58218 |
| * config/i386/x86-64.h (TARGET_SECTION_TYPE_FLAGS): Define. |
| * config/i386/i386.c (x86_64_elf_section_type_flags): New function. |
| |
| PR tree-optimization/58209 |
| * tree-tailcall.c (find_tail_calls): Give up for pointer result types |
| if m or a is non-NULL. |
| |
| 2013-08-21 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/56979 |
| * arm.c (aapcs_vfp_allocate): Decompose the argument if the |
| suggested mode for the assignment isn't compatible with the |
| registers required. |
| |
| 2013-08-20 Alan Modra <amodra@gmail.com> |
| |
| PR target/57865 |
| * config/rs6000/rs6000.c (rs6000_emit_prologue): Correct ool_adjust. |
| (rs6000_emit_epilogue): Likewise. |
| |
| 2013-08-19 Peter Bergner <bergner@vnet.ibm.com> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| Backport from mainline |
| * config/rs6000/dfp.md (*negtd2_fpr): Handle non-overlapping |
| destination and source operands. |
| |
| 2013-08-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58006 |
| * tree-parloops.c (take_address_of): Don't ICE if get_name |
| returns NULL. |
| (eliminate_local_variables_stmt): Remove clobber stmts. |
| |
| 2013-08-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58164 |
| * gimple.c (walk_stmt_load_store_addr_ops): For visit_addr |
| walk gimple_goto_dest of GIMPLE_GOTO. |
| |
| PR tree-optimization/58165 |
| * tree-call-cdce.c (shrink_wrap_one_built_in_call): If |
| bi_call must be the last stmt in a bb, don't split_block, instead |
| use fallthru edge from it and give up if there is none. |
| Release conds vector when returning early. |
| |
| 2013-08-15 David Given <dg@cowlark.com> |
| |
| Backport from mainline |
| 2013-04-26 Vladimir Makarov <vmakarov@redhat.com> |
| |
| * lra-constraints.c (process_alt_operands): Use #if HAVE_ATTR_enable |
| instead of #ifdef. |
| |
| 2013-08-14 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/58145 |
| * tree-sra.c (build_ref_for_offset): If prev_base has |
| TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS, propagate it to MEM_REF. |
| |
| 2013-08-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/htmxlintrin.h: Add file missing from last commit. |
| * config/s390/htmintrin.h: Likewise. |
| * config/s390/s390intrin.h: Likewise. |
| |
| 2013-08-14 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-08-13 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sse.md (*sse2_maskmovdqu): Emit addr32 prefix |
| when Pmode != word_mode. Add length_address attribute. |
| (sse3_monitor_<mode>): Merge from sse3_monitor and |
| sse3_monitor64_<mode> insn patterns. Emit addr32 prefix when |
| Pmode != word_mode. Update insn length attribute. |
| * config/i386/i386.c (ix86_option_override_internal): Update |
| ix86_gen_monitor selection for merged sse3_monitor insn. |
| |
| 2013-08-14 Jakub Jelinek <jakub@redhat.com> |
| Alexandre Oliva <aoliva@redhat.com> |
| |
| PR target/58067 |
| * config/i386/i386.c (ix86_delegitimize_address): For CM_MEDIUM_PIC |
| and CM_LARGE_PIC ix86_cmodel fall thru into the -m32 code, handle |
| there also UNSPEC_PLTOFF. |
| |
| 2013-08-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/56417 |
| * asan.c (instrument_strlen_call): Fix typo in comment. |
| Use char * type even for the lhs of POINTER_PLUS_EXPR. |
| |
| 2013-08-13 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-06-06 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/57459 |
| * lra-constraints.c (update_ebb_live_info): Fix typo for operand |
| type when setting live regs. |
| |
| 2013-08-13 Marek Polacek <polacek@redhat.com> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57980 |
| * tree-tailcall.c (process_assignment): Return false |
| when not dealing with integers or floats. |
| |
| 2013-08-12 Andrew Haley <aph@redhat.com> |
| |
| Backport from mainline: |
| * 2013-07-11 Andreas Schwab <schwab@suse.de> |
| |
| * config/aarch64/aarch64-linux.h (CPP_SPEC): Define. |
| |
| 2013-08-13 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-08-12 Perez Read <netfirewall@gmail.com> |
| |
| PR target/58132 |
| * config/i386/i386.md (*movabs<mode>_1): Add <ptrsize> PTR before |
| operand 0 for intel asm alternative. |
| (*movabs<mode>_2): Ditto for operand 1. |
| |
| 2013-08-09 Zhenqiang Chen <zhenqiang.chen@linaro.org> |
| |
| Backport from mainline: |
| 2013-08-09 Zhenqiang Chen <zhenqiang.chen@linaro.org> |
| |
| * config/arm/neon.md (vcond): Fix floating-point vector |
| comparisons against 0. |
| |
| 2013-08-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| Backport from mainline: |
| 2013-08-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/arm/neon.md (movmisalign<mode>): Disable when we |
| don't allow unaligned accesses. |
| (*movmisalign<mode>_neon_store): Likewise. |
| (*movmisalign<mode>_neon_load): Likewise. |
| (*movmisalign<mode>_neon_store): Likewise. |
| (*movmisalign<mode>_neon_load): Likewise. |
| |
| 2013-08-06 Martin Jambor <mjambor@suse.cz> |
| |
| PR middle-end/58041 |
| * gimple-ssa-strength-reduction.c (replace_ref): Make sure built |
| MEM_REF has proper alignment information. |
| |
| 2013-08-05 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR rtl-optimization/57708 |
| * recog.c (peep2_find_free_register): Validate all regs in a |
| multi-reg mode. |
| |
| 2013-08-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * config/sparc/sparc.c (sparc_emit_membar_for_model) <SMM_TSO>: Add |
| the implied StoreLoad barrier for atomic operations if before. |
| |
| 2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| Backports from mainline: |
| 2013-06-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.c: Rename UNSPEC_CCU_TO_INT to |
| UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT. |
| (struct machine_function): Add tbegin_p. |
| (s390_canonicalize_comparison): Fold CC mode compares to |
| conditional jump if possible. |
| (s390_emit_jump): Return the emitted jump. |
| (s390_branch_condition_mask, s390_branch_condition_mnemonic): |
| Handle CCRAWmode compares. |
| (s390_option_override): Default to -mhtm if available. |
| (s390_reg_clobbered_rtx): Handle floating point regs as well. |
| (s390_regs_ever_clobbered): Use s390_regs_ever_clobbered also for |
| FPRs instead of df_regs_ever_live_p. |
| (s390_optimize_nonescaping_tx): New function. |
| (s390_init_frame_layout): Extend clobbered_regs array to cover |
| FPRs as well. |
| (s390_emit_prologue): Call s390_optimize_nonescaping_tx. |
| (s390_expand_tbegin): New function. |
| (enum s390_builtin): New enum definition. |
| (code_for_builtin): New array definition. |
| (s390_init_builtins): New function. |
| (s390_expand_builtin): New function. |
| (TARGET_INIT_BUILTINS): Define. |
| (TARGET_EXPAND_BUILTIN): Define. |
| * common/config/s390/s390-common.c (processor_flags_table): Add PF_TX. |
| * config/s390/predicates.md (s390_comparison): Handle CCRAWmode. |
| (s390_alc_comparison): Likewise. |
| * config/s390/s390-modes.def: Add CCRAWmode. |
| * config/s390/s390.h (processor_flags): Add PF_TX. |
| (TARGET_CPU_HTM): Define macro. |
| (TARGET_HTM): Define macro. |
| (TARGET_CPU_CPP_BUILTINS): Define __HTM__ for htm. |
| * config/s390/s390.md: Rename UNSPEC_CCU_TO_INT to |
| UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT. |
| (UNSPECV_TBEGIN, UNSPECV_TBEGINC, UNSPECV_TEND, UNSPECV_TABORT) |
| (UNSPECV_ETND, UNSPECV_NTSTG, UNSPECV_PPA): New unspecv enum |
| values. |
| (TBEGIN_MASK, TBEGINC_MASK): New constants. |
| ("*cc_to_int"): Move up. |
| ("*mov<mode>cc", "*cjump_64", "*cjump_31"): Accept integer |
| constants other than 0. |
| ("*ccraw_to_int"): New insn and splitter definition. |
| ("tbegin", "tbegin_nofloat", "tbegin_retry") |
| ("tbegin_retry_nofloat", "tbeginc", "tend", "tabort") |
| ("tx_assist"): New expander. |
| ("tbegin_1", "tbegin_nofloat_1", "*tbeginc_1", "*tend_1") |
| ("*tabort_1", "etnd", "ntstg", "*ppa"): New insn definition. |
| * config/s390/s390.opt: Add -mhtm option. |
| * config/s390/s390-protos.h (s390_emit_jump): Add return type. |
| * config/s390/htmxlintrin.h: New file. |
| * config/s390/htmintrin.h: New file. |
| * config/s390/s390intrin.h: New file. |
| * doc/extend.texi: Document htm builtins. |
| * config.gcc: Add the new header files to extra_headers. |
| |
| 2013-07-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.c: (s390_expand_builtin): Allow -mhtm to be |
| enabled without -march=zEC12. |
| * config/s390/s390.h (TARGET_HTM): Do not require EC12 machine |
| flags to be set. |
| |
| 2013-08-01 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com> |
| |
| Backport from mainline |
| 2013-05-13 Ganesh Gopalasubramanian |
| <Ganesh.Gopalasubramanian@amd.com> |
| |
| * config/i386/i386.c (processor_target_table): Modified default |
| alignment values for AMD BD and BT architectures. |
| |
| 2013-07-31 Sriraman Tallam <tmsriram@google.com> |
| |
| * config/i386/i386.c (dispatch_function_versions): Fix array |
| indexing of function_version_info to match actual_versions. |
| |
| 2013-07-31 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config.gcc (*-*-rtems*): Use __cxa_atexit by default. |
| * config/rs6000/rtems.h (TARGET_LIBGCC_SDATA_SECTION): Define. |
| |
| 2013-07-31 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| Backport from mainline |
| 2013-03-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.h (TARGET_FLT_EVAL_METHOD): Define. |
| |
| 2013-07-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/linux-unwind.h: Use the proper dwarf to hard reg |
| mapping for FPRs when creating the fallback framestate. |
| |
| 2013-07-29 Dominik Vogt <vogt@linux.vnet.ibm.com> |
| |
| * config/s390/s390.md ("movcc"): Swap load and store instructions. |
| |
| 2013-07-25 Terry Guo <terry.guo@arm.com> |
| |
| Backport from mainline: |
| 2013-07-25 Terry Guo <terry.guo@arm.com> |
| |
| * config/arm/arm.c (thumb1_size_rtx_costs): Assign proper cost for |
| shift_add/shift_sub0/shift_sub1 RTXs. |
| |
| 2013-07-22 Iain Sandoe <iain@codesourcery.com> |
| |
| Backport from mainline: |
| 2013-07-22 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.md (nonlocal_goto_receiver): Delete insn if |
| it is not needed after split. |
| |
| 2013-07-20 Iain Sandoe <iain@codesourcery.com> |
| |
| PR target/51784 |
| * config/i386/i386.c (output_set_got) [TARGET_MACHO]: Adjust to emit a |
| second label for nonlocal goto receivers. Don't output pic base labels |
| unless we're producing PIC; mark that action unreachable(). |
| (ix86_save_reg): If the function contains a nonlocal label, save the |
| PIC base reg. |
| * config/darwin-protos.h (machopic_should_output_picbase_label): New. |
| * gcc/config/darwin.c (emitted_pic_label_num): New GTY. |
| (update_pic_label_number_if_needed): New. |
| (machopic_output_function_base_name): Adjust for nonlocal receiver |
| case. |
| (machopic_should_output_picbase_label): New. |
| * config/i386/i386.md (enum unspecv): UNSPECV_NLGR: New. |
| (nonlocal_goto_receiver): New insn and split. |
| |
| 2013-07-19 Wei Mi <wmi@google.com> |
| |
| Backport from mainline: |
| 2013-07-18 Vladimir Makarov <vmakarov@redhat.com> |
| Wei Mi <wmi@google.com> |
| |
| PR rtl-optimization/57878 |
| * lra-assigns.c (assign_by_spills): Move non_reload_pseudos to the |
| top. Promote lra_assert to gcc_assert. |
| (reload_pseudo_compare_func): Check regs first for reload pseudos. |
| |
| 2013-07-11 Georg-Johann Lay <avr@gjlay.de> |
| |
| Backport from 2013-07-19 trunk r201051. |
| |
| PR target/57516 |
| * config/avr/avr-fixed.md (round<mode>3_const): Turn expander to insn. |
| * config/avr/avr.md (adjust_len): Add `round'. |
| * config/avr/avr-protos.h (avr_out_round): New prototype. |
| (avr_out_plus): Add `out_label' argument. |
| * config/avr/avr.c (avr_out_plus_1): Add `out_label' argument. |
| (avr_out_plus): Pass down `out_label' to avr_out_plus_1. |
| Handle the case where `insn' is just a pattern. |
| (avr_out_bitop): Handle the case where `insn' is just a pattern. |
| (avr_out_round): New function. |
| (avr_adjust_insn_length): Handle ADJUST_LEN_ROUND. |
| |
| 2013-07-19 Kirill Yukhin <kirill.yukhin@intel.com> |
| |
| * config/i386/bmiintrin.h (_bextr_u32): New. |
| (_bextr_u64): Ditto. |
| (_blsi_u32): New. |
| (_blsi_u64): Ditto. |
| (_blsr_u32): Ditto. |
| (_blsr_u64): Ditto. |
| (_blsmsk_u32): Ditto. |
| (_blsmsk_u64): Ditto. |
| (_tzcnt_u32): Ditto. |
| (_tzcnt_u64): Ditto. |
| |
| 2013-07-17 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| Backport From mainline: |
| 2013-07-03 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-builtins.c |
| (aarch64_simd_expand_builtin): Handle AARCH64_SIMD_STORE1. |
| * config/aarch64/aarch64-simd-builtins.def (ld1): New. |
| (st1): Likewise. |
| * config/aarch64/aarch64-simd.md |
| (aarch64_ld1<VALL:mode>): New. |
| (aarch64_st1<VALL:mode>): Likewise. |
| * config/aarch64/arm_neon.h |
| (vld1<q>_<fpsu><8, 16, 32, 64>): Convert to RTL builtins. |
| |
| 2013-07-11 Georg-Johann Lay <avr@gjlay.de> |
| |
| Backport from 2013-07-11 trunk r200901. |
| |
| PR target/57631 |
| * config/avr/avr.c (avr_set_current_function): Sanity-check signal |
| name seen by assembler/linker if available. |
| |
| 2013-07-10 Georg-Johann Lay <avr@gjlay.de> |
| |
| Backport from 2013-07-10 trunk r200872. |
| |
| PR target/57844 |
| * config/avr/avr.c (avr_prologue_setup_frame): Trunk -size to mode |
| of my_fp. |
| |
| 2013-07-10 Georg-Johann Lay <avr@gjlay.de> |
| |
| Backport from 2013-07-10 trunk r200870. |
| |
| PR target/57506 |
| * config/avr/avr-mcus.def (atmega16hva, atmega16hva2, atmega16hvb) |
| (atmega16m1, atmega16u4, atmega32a, atmega32c1, atmega32hvb) |
| (atmega32m1, atmega32u4, atmega32u6, atmega64c1, atmega64m1): |
| Remove duplicate devices. |
| * config/avr/gen-avr-mmcu-texi.c (print_mcus): Fail on duplicate MCUs. |
| * config/avr/t-multilib: Regenerate. |
| * config/avr/avr-tables.opt: Regenerate. |
| * doc/avr-mmcu.texi: Regenerate. |
| |
| 2013-07-10 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/56987 |
| * config/avr/avr.opt (Waddr-space-convert): Fix typo. |
| |
| 2013-07-09 Joseph Myers <joseph@codesourcery.com> |
| |
| * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Only |
| adjust register size for TDmode and TFmode for VSX registers. |
| |
| 2013-07-08 Kai Tietz <ktietz@redhat.com> |
| |
| Backport from mainline |
| PR target/56892 |
| * config/i386/i386.c (TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): Define as |
| hook_bool_const_tree_true. |
| |
| 2013-07-08 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-07-07 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/driver-i386.c (host_detect_local_cpu): Do not check |
| signature_TM2_ebx, it interferes with signature_INTEL_ebx. |
| |
| Backport from mainline |
| 2013-07-06 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sse.md (sse_movlhps): Change alternative 3 |
| of operand 2 to "m". |
| |
| 2013-07-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * Makefile.in (tree-ssa-reassoc.o): Add dependency on $(PARAMS_H). |
| |
| 2013-07-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/57829 |
| * simplify-rtx.c (simplify_binary_operation_1) <case IOR>: Ensure that |
| mask bits outside of mode are just sign-extension from mode to HWI. |
| |
| 2013-07-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/57777 |
| * config/i386/predicates.md (vsib_address_operand): Disallow |
| SYMBOL_REF or LABEL_REF in parts.disp if TARGET_64BIT && flag_pic. |
| |
| 2013-06-30 Terry Guo <terry.guo@arm.com> |
| |
| Backport from mainline |
| 2013-03-27 Bin Cheng <bin.cheng@arm.com> |
| |
| PR target/56102 |
| * config/arm/arm.c (thumb1_rtx_costs, thumb1_size_rtx_costs): Fix |
| rtx costs for SET/ASHIFT/ASHIFTRT/LSHIFTRT/ROTATERT patterns with |
| mult-word mode. |
| |
| 2013-06-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/57736 |
| * config/i386/i386.c (ix86_expand_builtin): If target == NULL |
| and mode is VOIDmode, don't create a VOIDmode pseudo to copy result |
| into. |
| |
| 2013-06-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/57623 |
| * config/i386/i386.md (bmi_bextr_<mode>): Swap predicates and |
| constraints of operand 1 and 2. |
| |
| PR target/57623 |
| * config/i386/i386.md (bmi2_bzhi_<mode>3): Swap AND arguments |
| to match RTL canonicalization. Swap predicates and |
| constraints of operand 1 and 2. |
| |
| * tree-vect-stmts.c (vectorizable_store): Move ptr_incr var |
| decl before the loop, initialize to NULL. |
| (vectorizable_load): Initialize ptr_incr to NULL. |
| |
| 2013-06-24 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/57358 |
| * ipa-prop.c (parm_ref_data_preserved_p): Always return true when |
| not optimizing. |
| |
| 2013-06-24 Alan Modra <amodra@gmail.com> |
| |
| * config/rs6000/rs6000.c (vspltis_constant): Correct for little-endian. |
| (gen_easy_altivec_constant): Likewise. |
| * config/rs6000/predicates.md (easy_vector_constant_add_self, |
| easy_vector_constant_msb): Likewise. |
| |
| 2013-06-21 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-06-20 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/57655 |
| * config/i386/i386.c (construct_container): Report error if |
| long double is used with disabled x87 float returns. |
| |
| 2013-06-20 Wei Mi <wmi@google.com> |
| |
| Backport from mainline |
| 2013-06-19 Wei Mi <wmi@google.com> |
| |
| PR rtl-optimization/57518 |
| * ira.c (set_paradoxical_subreg): Set pdx_subregs[regno] |
| if regno is used in paradoxical subreg. |
| (update_equiv_regs): Check pdx_subregs[regno] before |
| set a reg to be equivalent with a mem. |
| |
| |
| 2013-06-20 David Edelsohn <dje.gcc@gmail.com> |
| |
| Backport from mainline |
| 2013-06-19 David Edelsohn <dje.gcc@gmail.com> |
| |
| PR driver/57652 |
| * collect2.c (collect_atexit): New. |
| (collect_exit): Delete. |
| (main): Register collect_atexit with atexit. |
| (collect_wait): Change collect_exit to exit. |
| (do_wait): Same. |
| * collect2.h (collect_exit): Delete. |
| * tlink.c (do_tlink): Rename exit to ret. Change collect_exit to exit. |
| |
| 2013-06-19 Matthias Klose <doko@ubuntu.com> |
| |
| PR driver/57651 |
| * file-find.h (find_a_file): Add a mode parameter. |
| * file-find.c (find_a_file): Likewise. |
| * gcc-ar.c (main): Call find_a_file with R_OK for the plugin, |
| with X_OK for the executables. |
| * collect2.c (main): Call find_a_file with X_OK. |
| |
| 2013-06-19 Igor Zamyatin <igor.zamyatin@intel.com> |
| |
| * doc/invoke.texi (core-avx2): Document. |
| (atom): Updated with MOVBE. |
| |
| 2013-06-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR driver/57651 |
| * gcc-ar.c (main): If not CROSS_DIRECTORY_STRUCTURE, look for |
| PERSONALITY in $PATH derived prefixes. |
| |
| 2013-06-19 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR c++/56544 |
| * doc/cpp.texi [Standard Predefined Macros, __cplusplus]: Document |
| that now in C++ the value is correct per the C++ standards. |
| |
| 2013-06-19 Alan Modra <amodra@gmail.com> |
| |
| Apply mainline patches |
| 2013-06-13 Alan Modra <amodra@gmail.com> |
| * config/rs6000/rs6000.h (LONG_DOUBLE_LARGE_FIRST): Define. |
| * config/rs6000/rs6000.md (signbittf2): New insn. |
| (extenddftf2_internal): Use LONG_DOUBLE_LARGE_FIRST. |
| (abstf2_internal, cmptf_internal2): Likewise. |
| * config/rs6000/spe.md (spe_abstf2_cmp, spe_abstf2_tst): Likewise. |
| |
| 2013-06-11 Anton Blanchard <anton@samba.org> |
| * config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Calculate |
| correct shift value in little-endian mode. |
| |
| 2013-06-07 Alan Modra <amodra@gmail.com> |
| * config/rs6000/rs6000.c (setup_incoming_varargs): Round up |
| va_list_gpr_size. |
| |
| 2013-06-04 Alan Modra <amodra@gmail.com> |
| * config/rs6000/rs6000.c (output_toc): Correct little-endian float |
| constant output. |
| |
| 2013-05-10 Alan Modra <amodra@gmail.com> |
| * configure.ac (HAVE_AS_TLS): Swap powerpc64 and powerpc cases. |
| (HAVE_LD_LARGE_TOC): Don't mention AIX in help text. |
| * configure: Regenerate. |
| |
| 2013-05-09 Alan Modra <amodra@gmail.com> |
| * configure.ac (HAVE_AS_TLS): Enable tests for powerpcle and |
| powerpc64le. |
| * configure: Regenerate. |
| |
| 2013-05-07 Anton Blanchard <anton@samba.org> |
| * configure.ac (HAVE_LD_LARGE_TOC): Use right linker emulation |
| for powerpc64 little endian. |
| * configure: Regenerate. |
| |
| 2013-05-06 Alan Modra <amodra@gmail.com> |
| * config/rs6000/linux.h (DEFAULT_ASM_ENDIAN): Define. |
| (LINK_OS_LINUX_EMUL): Use ENDIAN_SELECT. |
| * config/rs6000/linux64.h (DEFAULT_ASM_ENDIAN): Define. |
| * config/rs6000/sysv4le.h (DEFAULT_ASM_ENDIAN): Define. |
| (LINK_TARGET_SPEC): Use ENDIAN_SELECT. |
| * config/rs6000/sysv4.h (DEFAULT_ASM_ENDIAN): Define as -mbig. |
| |
| 2013-05-06 Alan Modra <amodra@gmail.com> |
| * config/rs6000/sysv4.h (ENDIAN_SELECT): Define, extracted from |
| (ASM_SPEC): ..here. Emit DEFAULT_ASM_ENDIAN too. |
| (DEFAULT_ASM_ENDIAN): Define. |
| (CC1_SPEC, LINK_TARGET_SPEC): Use ENDIAN_SELECT. |
| * config/rs6000/linux64.h (ASM_SPEC32): Remove endian options. |
| Update -K PIC clause from sysv4.h. |
| (ASM_SPEC_COMMON): Use ENDIAN_SELECT. |
| (LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Likewise. |
| |
| 2013-05-06 Alan Modra <amodra@gmail.com> |
| * config/rs6000/rs6000.md (bswapdi 2nd splitter): Don't swap words |
| twice for little-endian. |
| (ashrdi3_no_power, ashrdi3): Support little-endian. |
| |
| 2013-04-25 Alan Modra <amodra@gmail.com> |
| * config.gcc: Support little-endian powerpc-linux targets. |
| * config/rs6000/linux.h (LINK_OS_LINUX_EMUL): Define. |
| (LINK_OS_LINUX_SPEC): Define. |
| * config/rs6000/linuxspe.h (TARGET_DEFAULT): |
| Preserve MASK_LITTLE_ENDIAN. |
| * config/rs6000/default64.h (TARGET_DEFAULT): Likewise. |
| * config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Likewise. |
| * config/rs6000/linux64.h (OPTION_LITTLE_ENDIAN): Don't zero. |
| (LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Define. |
| (LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Use above. |
| * config/rs6000/rs6000.c (output_toc): Don't use .tc for TARGET_ELF. |
| Correct fp word order for little-endian. Don't shift toc entries |
| smaller than a word for little-endian. |
| * config/rs6000/rs6000.md (bswaphi2, bswapsi2 split): Comment. |
| (bswapdi2 splits): Correct low-part subreg for little-endian. |
| Remove wrong BYTES_BIG_ENDIAN tests, and rename vars to remove |
| low/high where such is correct only for be. |
| * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Allow |
| little-endian for -mcall-aixdesc. |
| |
| 2013-06-12 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-cp.c (ipa_get_indirect_edge_target_1): Check that param_index is |
| within bounds at the beginning of the function. |
| |
| 2013-06-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57537 |
| * tree-vect-patterns.c (vect_recog_widen_mult_pattern): If |
| vect_handle_widen_op_by_const, convert oprnd1 to half_type1. |
| |
| 2013-06-10 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-06-10 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/alpha/alpha.c (alpha_emit_xfloating_compare): Also use |
| cmp_code to construct REG_EQUAL note. |
| |
| 2013-06-10 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| Backport from mainline |
| 2013-05-20 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR target/56547 |
| * config/sh/sh.md (fmasf4): Remove empty constraints strings. |
| (*fmasf4, *fmasf4_media): New insns. |
| |
| 2013-06-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/57568 |
| * config/i386/i386.md (TARGET_READ_MODIFY_WRITE peepholes): Ensure |
| that operands[2] doesn't overlap with operands[0]. |
| |
| 2013-06-07 Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
| |
| * recog.c (offsettable_address_addr_space_p): Fix calculation of |
| address mode. Move pointer mode initialization to the same place. |
| |
| 2013-06-07 Sofiane Naci <sofiane.naci@arm.com> |
| |
| Backport from mainline |
| * config/aarch64/aarch64.md (*movdi_aarch64): Define "simd" attribute. |
| |
| 2013-06-07 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-06-05 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/alpha/alpha.c (alpha_emit_conditional_move): Swap all |
| GE, GT, GEU and GTU compares, modulo DImode compares with zero. |
| |
| Backport from mainline |
| 2013-05-23 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/57379 |
| * config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE. |
| * config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct |
| REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec. |
| |
| 2013-06-04 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
| |
| Backport from mainline. |
| 2013-05-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
| |
| * config/rs6000/rs6000.h (MALLOC_ABI_ALIGNMENT): New #define. |
| |
| 2013-06-03 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| Backport from mainline. |
| 2013-04-25 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_print_operand): Fix asm_fprintf |
| format specifier in 'X' case. |
| |
| 2013-05-31 Richard Henderson <rth@redhat.com> |
| |
| PR target/56742 |
| * config/i386/i386.c (ix86_seh_fixup_eh_fallthru): New. |
| (ix86_reorg): Call it. |
| |
| 2012-05-31 Jakub Jelinek <jakub@redhat.com> |
| |
| * BASE-VER: Set to 4.8.2. |
| * DEV-PHASE: Set to prerelease. |
| |
| 2013-05-31 Release Manager |
| |
| * GCC 4.8.1 released. |
| |
| 2013-05-24 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| Backport from mainline |
| 2013-05-02 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| PR target/56732 |
| * config/arm/arm.c (arm_expand_epilogue): Check really_return before |
| generating simple_return for naked functions. |
| |
| 2013-05-24 Alexander Ivchenko <alexander.ivchenko@intel.com> |
| |
| PR tree-ssa/57385 |
| * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Check |
| that index is not negative. |
| |
| 2013-05-23 Martin Jambor <mjambor@suse.cz> |
| |
| PR middle-end/57347 |
| * tree.h (contains_bitfld_component_ref_p): Declare. |
| * tree-sra.c (contains_bitfld_comp_ref_p): Move... |
| * tree.c (contains_bitfld_component_ref_p): ...here. Adjust its caller. |
| * ipa-prop.c (determine_known_aggregate_parts): Check that LHS does |
| not access a bit-field. Assert all final offsets are byte-aligned. |
| |
| 2013-05-23 Richard Biener <rguenther@suse.de> |
| |
| PR rtl-optimization/57341 |
| * ira.c (validate_equiv_mem_from_store): Use anti_dependence |
| instead of true_dependence. |
| |
| 2013-05-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/57344 |
| * expmed.c (store_split_bit_field): If op0 is a REG or |
| SUBREG of a REG, don't lower unit. Handle unit not being |
| always BITS_PER_WORD. |
| |
| 2013-05-22 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/57356 |
| * config/i386/i386.md (*movti_internal_rex64): Emit movaps/movups |
| for non-sse2 targets. |
| (*movti_internal): Simplify mode attribute calculation. |
| |
| 2013-05-22 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-05-21 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57318 |
| * tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Do not |
| estimate stmts with side-effects as likely eliminated. |
| |
| 2013-05-21 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57330 |
| * cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Properly |
| preserve the call stmts fntype. |
| |
| 2013-05-21 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57303 |
| * tree-ssa-sink.c (statement_sink_location): Properly handle |
| self-assignments. |
| |
| 2013-05-21 Magnus Granberg <baldrick@free.fr> |
| |
| PR plugins/56754 |
| * Makefile.in (PLUGIN_HEADERS): Add $(TARGET_H). |
| |
| 2013-05-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| Backport from mainline |
| 2013-05-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * config/sparc/sp64-elf.h (CPP_SUBTARGET_SPEC): Delete. |
| * config/sparc/openbsd64.h (CPP_SUBTARGET_SPEC): Likewise. |
| |
| 2013-05-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/57281 |
| PR rtl-optimization/57300 |
| * config/i386/i386.md (extendsidi2_1 dead reg splitter): Remove. |
| (extendsidi2_1 peephole2s): Add instead 2 new peephole2s, that undo |
| what the other splitter did if the registers are dead. |
| |
| 2013-05-17 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-05-16 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/driver-i386.c (host_detect_local_cpu): Determine |
| cache parameters using detect_caches_amd also for CYRIX, |
| NSC and TM2 signatures. |
| |
| 2013-05-16 Uros Bizjak <ubizjak@gmail.com> |
| Dzianis Kahanovich <mahatma@eu.by> |
| |
| PR target/45359 |
| PR target/46396 |
| * config/i386/driver-i386.c (host_detect_local_cpu): Detect |
| VIA/Centaur processors and determine their cache parameters |
| using detect_caches_amd. |
| |
| 2013-05-15 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.c (ix86_option_override_internal): Update |
| processor_alias_table for missing PTA_PRFCHW and PTA_FXSR flags. Add |
| PTA_POPCNT to corei7 entry. Do not enable SSE prefetch on |
| non-SSE 3dNow! targets. Enable TARGET_PRFCHW for TARGET_3DNOW targets. |
| * config/i386/i386.md (prefetch): Enable for TARGET_PRFCHW instead |
| of TARGET_3DNOW. |
| (*prefetch_3dnow): Enable for TARGET_PRFCHW only. |
| |
| 2013-05-17 Jakub Jelinek <jakub@redhat.com> |
| |
| * gcc.c (SANITIZER_SPEC): Reject -fsanitize=address -fsanitize=thread |
| linking. |
| |
| PR tree-optimization/57051 |
| * fold-const.c (const_binop) <case VEC_LSHIFT_EXPR, |
| case VEC_RSHIFT_EXPR>: Fix BYTES_BIG_ENDIAN handling. |
| |
| 2013-05-16 Jakub Jelinek <jakub@redhat.com> |
| |
| * omp-low.c (extract_omp_for_data): For collapsed loops, |
| if at least one of the loops is known at compile time to |
| iterate zero times, set count to 0. |
| (expand_omp_regimplify_p): New function. |
| (expand_omp_for_generic): For collapsed loops, if at least |
| one of the loops isn't known to iterate at least once, |
| add runtime check with setting count to 0. |
| (expand_omp_for_static_nochunk, expand_omp_for_static_chunk): |
| For unsigned types if it isn't known at compile time that |
| the loop will iterate at least once, add runtime check to bypass |
| the whole loop if initial condition isn't true. |
| |
| 2013-05-14 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/57251 |
| * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Handle |
| the case when both op0 and op1 have VOIDmode. |
| |
| 2013-05-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57230 |
| * tree-ssa-strlen.c (handle_char_store): Add missing integer_zerop |
| check. |
| |
| 2013-05-12 Joern Rennecke <joern.rennecke@embecosm.com> |
| |
| * config/epiphany/epiphany.c (epiphany_init): Check size of |
| NUM_MODES_FOR_MODE_SWITCHING. |
| (epiphany_expand_prologue): |
| Remove CONFIG_REGNUM initial value handling code. |
| (epiphany_optimize_mode_switching): Handle EPIPHANY_MSW_ENTITY_CONFIG. |
| (epiphany_mode_needed, epiphany_mode_entry_exit): Likewise. |
| (emit_set_fp_mode, epiphany_mode_after): Likewise. |
| (epiphany_mode_needed) <Handle EPIPHANY_MSW_ENTITY_AND>: |
| Don't return 1 for FP_MODE_NONE. |
| * config/epiphany/epiphany.h (NUM_MODES_FOR_MODE_SWITCHING): |
| Add value for EPIPHANY_MSW_ENTITY_CONFIG. |
| (EPIPHANY_MSW_ENTITY_CONFIG, EPIPHANY_MSW_ENTITY_NUM): Define. |
| * config/epiphany/epiphany.md (save_config): New pattern. |
| |
| 2013-05-10 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/arm/t-rtems-eabi: Remove mthumb/march=armv7 multilib. |
| Add mthumb/march=armv7-a multilib. |
| Add mthumb/march=armv7-r multilib. |
| Add mthumb/march=armv7-a/mfpu=neon/mfloat-abi=hard multilib. |
| |
| 2013-05-10 Ralf Corsépius <ralf.corsepius@rtems.org> |
| |
| PR target/57237 |
| * config/v850/t-rtems: Add more multilibs. |
| |
| 2013-05-10 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57214 |
| * tree-ssa-loop-ivcanon.c (propagate_constants_for_unrolling): Do |
| not propagate from SSA names that occur in abnormal PHI nodes. |
| |
| 2013-05-10 Alan Modra <amodra@gmail.com> |
| |
| PR target/55033 |
| * varasm.c (default_elf_select_section): Move !DECL_P check.. |
| (get_named_section): ..to here before calling get_section_name. |
| Adjust assertion. |
| (default_section_type_flags): Add DECL_P check. |
| * config/i386/winnt.c (i386_pe_section_type_flags): Likewise. |
| * config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags): Likewise. |
| |
| 2013-05-09 Joern Rennecke <joern.rennecke@embecosm.com> |
| |
| * config/epiphany/epiphany.c (epiphany_expand_prologue): |
| When using gen_stack_adjust_str with a register offset, add a |
| REG_FRAME_RELATED_EXPR note. |
| |
| 2013-05-09 Martin Jambor <mjambor@suse.cz> |
| |
| PR middle-end/56988 |
| * ipa-prop.h (ipa_agg_replacement_value): New flag by_ref. |
| * ipa-cp.c (find_aggregate_values_for_callers_subset): Fill in the |
| by_ref flag of ipa_agg_replacement_value structures. |
| (known_aggs_to_agg_replacement_list): Likewise. |
| * ipa-prop.c (write_agg_replacement_chain): Stream by_ref flag. |
| (read_agg_replacement_chain): Likewise. |
| (ipcp_transform_function): Also check that by_ref flags match. |
| |
| 2013-05-08 Diego Novillo <dnovillo@google.com> |
| |
| PR bootstrap/54659 |
| |
| Revert: |
| |
| 2012-08-17 Diego Novillo <dnovillo@google.com> |
| |
| PR bootstrap/54281 |
| * configure.ac: Add libintl.h to AC_CHECK_HEADERS list. |
| * config.in: Regenerate. |
| * configure: Regenerate. |
| * intl.h: Always include libintl.h if HAVE_LIBINTL_H is |
| set. |
| |
| 2013-05-08 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR tree-optimization/57200 |
| * tree-ssa-loop-niter.c (do_warn_aggressive_loop_optimizations): |
| Only call inform if the preceding warning_at returns true. |
| |
| 2013-05-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57149 |
| * tree-ssa-uninit.c (uninit_undefined_value_p): New inline. |
| (can_skip_redundant_opnd, compute_uninit_opnds_pos, |
| collect_phi_def_edges, execute_late_warn_uninitialized): Use |
| uninit_undefined_value_p instead of ssa_undefined_value_p. |
| |
| PR debug/57184 |
| * expr.c (expand_expr_addr_expr_1): Handle COMPOUND_LITERAL_EXPR |
| for modifier == EXPAND_INITIALIZER. |
| |
| 2013-05-07 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2013-05-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57185 |
| * tree-parloops.c (add_field_for_reduction): Handle anonymous |
| SSA names properly. |
| |
| 2013-04-19 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/57000 |
| * tree-ssa-reassoc.c (pass_reassoc): Add TODO_update_ssa_only_virtuals. |
| |
| 2013-05-06 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| Backport from trunk |
| 2013-05-03 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| PR target/57150 |
| * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Use DFmode |
| to save TFmode registers and DImode to save TImode registers for |
| caller save operations. |
| (HARD_REGNO_CALL_PART_CLOBBERED): TFmode and TDmode do not need to |
| mark being partially clobbered since they only use the first |
| double word. |
| |
| * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): TFmode |
| and TDmode only use the upper 64-bits of each VSX register. |
| |
| 2013-05-06 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR target/57108 |
| * config/sh/sh.md (tstsi_t_zero_extract_eq): Use QIHISIDI mode iterator. |
| |
| 2013-05-06 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-05-06 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/57106 |
| * config/i386/i386.c (add_parameter_dependencies): Add dependence |
| between "first_arg" and "insn", not "last" and "insn". |
| |
| 2013-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/57130 |
| * combine.c (make_compound_operation) <case SUBREG>: Pass |
| SET instead of COMPARE as in_code to the recursive call |
| if needed. |
| |
| Backported from mainline |
| 2013-04-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57051 |
| * fold-const.c (const_binop): Handle VEC_LSHIFT_EXPR |
| and VEC_RSHIFT_EXPR if shift count is a multiple of element |
| bitsize. |
| |
| 2013-04-12 Marc Glisse <marc.glisse@inria.fr> |
| |
| * fold-const.c (fold_binary_loc): Call const_binop also for mixed |
| vector-scalar operations. |
| |
| 2013-05-03 Marek Polacek <polacek@redhat.com> |
| |
| Backport from mainline |
| 2013-04-25 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/57066 |
| * builtins.c (fold_builtin_logb): Return +Inf for -Inf. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| * lra-constraints.c (process_alt_operands): Add checking alt |
| number to choose the best alternative. |
| |
| 2013-05-01 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/57091 |
| * lra-constraints.c (best_small_class_operands_num): Remove. |
| (process_alt_operands): Remove small_class_operands_num. Take |
| small classes operands into losers and only if the operand is not |
| matched. Modify debugging output. |
| (curr_insn_transform): Remove best_small_class_operands_num. |
| Print insn name. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-04-29 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/57097 |
| * lra-constraints.c (process_alt_operands): Discourage a bit more |
| using memory for pseudos. Print cost dump for alternatives. |
| Modify cost values for conflicts with early clobbers. |
| (curr_insn_transform): Spill pseudos reassigned to NO_REGS. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-04-24 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimizations/57046 |
| * lra-constraints (split_reg): Set up lra_risky_transformations_p |
| for multi-reg splits. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-04-22 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/57018 |
| * lra-eliminations.c (mark_not_eliminable): Prevent elimination of |
| a set sp if no stack realignment. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-04-18 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56999 |
| * lra-coalesce.c (coalescable_pseudo_p): Remove 2nd parameter and |
| related code. |
| (lra_coalesce): Remove split_origin_bitmap and related code. |
| * lra.c (lra): Coalesce after undoing inheritance. Recreate live |
| ranges if necessary. |
| |
| 2013-05-02 Vladimir Makarov <vmakarov@redhat.com> |
| |
| Backport from mainline |
| 2013-04-19 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56847 |
| * lra-constraints.c (process_alt_operands): Discourage alternative |
| with non-matche doffsettable memory constraint fro memory with |
| known offset. |
| |
| 2013-05-02 Ian Bolton <ian.bolton@arm.com> |
| |
| Backport from mainline |
| 2013-03-28 Ian Bolton <ian.bolton@arm.com> |
| |
| * config/aarch64/aarch64.md (aarch64_can_eliminate): Keep frame |
| record only when desired or required. |
| |
| 2013-04-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57104 |
| * tsan.c (instrument_expr): Don't instrument accesses to |
| DECL_HARD_REGISTER VAR_DECLs. |
| |
| 2013-04-30 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backport from mainline |
| 2013-04-29 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/44578 |
| * config/i386/i386.md (*zero_extendsidi2_rex64): Add "!" to m->?*y |
| alternative. |
| (*zero_extendsidi2): Ditto. |
| |
| Backport from mainline |
| 2013-04-29 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/57098 |
| * config/i386/i386.c (ix86_expand_vec_perm): Validize constant memory. |
| |
| 2013-04-29 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/57103 |
| * tree-cfg.c (move_stmt_op): Fix condition under which to update |
| TREE_BLOCK. |
| (move_stmt_r): Remove redundant checking. |
| |
| 2013-04-29 Christian Bruel <christian.bruel@st.com> |
| |
| PR target/57108 |
| * sh.md (tstsi_t_zero_extract_eq): Set mode for operand 0. |
| |
| 2013-04-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/57083 |
| * tree-vrp.c (extract_range_from_binary_expr_1): For LSHIFT_EXPR with |
| non-singleton shift count range, zero extend low_bound for uns case. |
| |
| 2013-04-28 Eric Botcazou <ebotcazou@gcc.gnu.org> |
| |
| * stor-layout.c (finalize_size_functions): Allocate a structure and |
| reset cfun before dumping the functions. |
| |
| 2013-04-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/56866 |
| * config/i386/i386.c (ix86_expand_mul_widen_evenodd): Don't |
| use xop_pmacsdqh if uns_p. |
| * config/i386/sse.md (xop_rotr<mode>3): Fix up computation of |
| the immediate rotate count. |
| |
| 2013-04-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/57003 |
| * regcprop.c (copyprop_hardreg_forward_1): If ksvd.ignore_set_reg, |
| call note_stores with kill_clobbered_value callback again after |
| killing regs_invalidated_by_call. |
| |
| 2013-04-25 Ian Bolton <ian.bolton@arm.com> |
| |
| Backported from mainline. |
| 2013-03-22 Ian Bolton <ian.bolton@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_print_operand): New |
| format specifier for printing a constant in hex. |
| * config/aarch64/aarch64.md (insv_imm<mode>): Use the X |
| format specifier for printing second operand. |
| |
| 2013-04-24 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| Backported from mainline. |
| 2013-04-24 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/arm_neon.h (vld1<q>_lane*): Fix constraints. |
| (vld1<q>_dup_<sufp><8, 16, 32, 64>): Likewise. |
| (vld1<q>_<sufp><8, 16, 32, 64>): Likewise. |
| |
| 2013-04-24 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| Backported from mainline. |
| PR target/56797 |
| * config/arm/arm.c (load_multiple_sequence): Require SP |
| as base register for loads if SP is in the register list. |
| |
| 2013-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
| Steven Bosscher <steven@gcc.gnu.org> |
| |
| Backported from mainline. |
| PR rtl-optimization/56605 |
| * loop-iv.c (implies_p): Handle equal RTXs and subregs. |
| |
| 2013-04-22 Marek Polacek <polacek@redhat.com> |
| |
| Backported from mainline. |
| 2013-04-22 Marek Polacek <polacek@redhat.com> |
| |
| PR sanitizer/56990 |
| * tsan.c (instrument_expr): Don't instrument expression |
| in case its size is zero. |
| |
| 2013-04-22 Yufeng Zhang <yufeng.zhang@arm.com> |
| |
| Backported from mainline. |
| 2013-04-10 Yufeng Zhang <yufeng.zhang@arm.com> |
| * config/aarch64/aarch64.c (aarch64_print_extension): New function. |
| (aarch64_start_file): Use the new function. |
| |
| 2013-04-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56984 |
| * tree-vrp.c (register_edge_assert_for_2): For (x >> M) < N |
| and (x >> M) >= N don't register any assertion if N << M is the |
| minimum value. |
| |
| 2013-04-17 David Edelsohn <dje.gcc@gmail.com> |
| |
| PR target/56948 |
| * config/rs6000/vsx.md (vsx_mov<mode>): Add j->r alternative. |
| |
| 2013-04-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56962 |
| * gimple-ssa-strength-reduction.c (record_increment): Only set |
| initializer if gimple_assign_rhs_code is {,POINTER_}PLUS_EXPR and |
| either rhs1 or rhs2 is equal to c->base_expr. |
| |
| 2013-04-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * emit-rtl.c (reset_all_used_flags): New function. |
| (verify_rtl_sharing): Call reset_all_used_flags before and after |
| performing the checks. |
| |
| 2013-04-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/56890 |
| * config/sparc/sparc.c (enum sparc_mode_class): Add H_MODE value. |
| (S_MODES): Set H_MODE bit. |
| (SF_MODES): Set only S_MODE and SF_MODE bits. |
| (DF_MODES): Set SF_MODES and only D_MODE and DF_MODE bits. |
| (sparc_init_modes) <MODE_INT>: Set H_MODE bit for sub-word modes. |
| <MODE_VECTOR_INT>: Do not set SF_MODE for sub-word modes. |
| <MODE_FLOAT>: Likewise. |
| |
| 2013-04-12 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/56903 |
| * config/i386/i386.c (ix86_hard_regno_mode_ok): Add |
| lra_in_progress for return. |
| |
| 2013-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56918 |
| PR tree-optimization/56920 |
| * fold-const.c (int_const_binop_1): Use op1.mul_with_sign (op2, ...) |
| instead of op1 - op2. Pass 2 * TYPE_PRECISION (type) as second |
| argument to rshift method. |
| |
| 2013-04-12 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * ifcvt.c (end_ifcvt_sequence): Mark a and b for unsharing as |
| well. |
| |
| 2013-04-11 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/48184 |
| * params.def (PARAM_ALIGN_THRESHOLD): Increase the minimum |
| value to 1. |
| |
| 2013-04-11 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| Backported from mainline. |
| 2013-04-11 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (aarch64_vcond_internal): Fix |
| floating-point vector comparisons against 0. |
| |
| 2013-04-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56899 |
| * fold-const.c (extract_muldiv_1): Apply distributive law |
| only if TYPE_OVERFLOW_WRAPS (ctype). |
| |
| 2013-04-10 David S. Miller <davem@davemloft.net> |
| |
| * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=supersparc |
| or -mcpu=hypersparc. |
| |
| 2013-04-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from mainline |
| 2013-04-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56883 |
| * omp-low.c (expand_omp_for_generic, expand_omp_for_static_nochunk, |
| expand_omp_for_static_chunk): Use simple_p = true in |
| force_gimple_operand_gsi calls when assigning to addressable decls. |
| |
| 2013-04-09 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/48762 |
| * params.def (PARAM_MAX_CSE_INSNS): Increase the minimum |
| value to 1. |
| |
| 2013-04-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.c (s390_expand_insv): Only accept insertions |
| within mode size. |
| |
| 2013-04-08 Marek Polacek <polacek@redhat.com> |
| |
| PR rtl-optimization/48182 |
| * params.def (PARAM_MIN_CROSSJUMP_INSNS): Increase the minimum |
| value to 1. |
| |
| 2013-04-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR target/55487 |
| * config/pa/pa.c (legitimize_pic_address): Before incrementing label |
| nuses, make sure we have a label. |
| |
| 2013-04-04 Ian Lance Taylor <iant@google.com> |
| |
| Backport from mainline: |
| * doc/standards.texi (Standards): The Go frontend supports the Go |
| 1 language standard. |
| |
| 2013-04-04 Marek Polacek <polacek@redhat.com> |
| |
| Backport from mainline: |
| 2013-04-04 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/48186 |
| * predict.c (maybe_hot_frequency_p): Return false if |
| HOT_BB_FREQUENCY_FRACTION is 0. |
| (cgraph_maybe_hot_edge_p): Likewise. |
| |
| 2013-04-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| Backport from mainline: |
| 2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| PR target/56720 |
| * config/arm/iterators.md (v_cmp_result): New mode attribute. |
| * config/arm/neon.md (vcond<mode><mode>): Handle unordered cases. |
| |
| 2013-04-04 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56837 |
| * tree-loop-distribution.c (classify_partition): For non-zero |
| values require that the value has the same precision as its |
| mode to be useful as memset value. |
| |
| 2013-04-03 Roland McGrath <mcgrathr@google.com> |
| |
| Backport from mainline: |
| 2013-03-26 Roland McGrath <mcgrathr@google.com> |
| |
| * config/arm/arm.c (arm_print_operand: case 'w'): Use fputs rather |
| than fprintf with a non-constant, non-format string. |
| |
| 2013-04-03 Marek Polacek <polacek@redhat.com> |
| |
| Backport from mainline: |
| 2013-04-03 Marek Polacek <polacek@redhat.com> |
| |
| PR sanitizer/55702 |
| * tsan.c (instrument_func_exit): Allow BUILT_IN_RETURN |
| functions. |
| |
| 2013-04-03 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56817 |
| * tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): |
| Split out ... |
| (tree_unroll_loops_completely_1): ... new function to manually |
| walk the loop tree, properly defering outer loops of unrolled |
| loops to later iterations. |
| |
| 2013-04-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/56745 |
| * ifcvt.c (cond_exec_find_if_block): Don't try to optimize |
| if then_bb has no successors and else_bb is EXIT_BLOCK_PTR. |
| |
| 2013-04-02 Wei Mi <wmi@google.com> |
| |
| * config/i386/i386.c (ix86_rtx_costs): Set proper rtx cost for |
| ashl<mode>3_mask, *<shift_insn><mode>3_mask and |
| *<rotate_insn><mode>3_mask in i386.md. |
| |
| 2013-04-01 Wei Mi <wmi@google.com> |
| |
| * config/i386/i386.md (*ashl<mode>3_mask): Rewrite as define_insn. |
| Truncate operand 2 using %b asm operand modifier. |
| (*<shift_insn><mode>3_mask): Ditto. |
| (*<rotate_insn><mode>3_mask): Ditto. |
| |
| 2013-04-01 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.md (*movsf_internal): Change type of |
| alternatives 3,4 to imov. |
| |
| 2013-03-29 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR lto/56777 |
| * doc/invoke.texi ([-fwhole-program]): Fix typo. |
| |
| 2013-03-29 Kirill Yukhin <kirill.yukhin@intel.com> |
| |
| * config/i386/avx2intrin.h (_mm256_broadcastsi128_si256): |
| Fix declaration name. |
| |
| 2013-03-28 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * doc/invoke.texi (AVR Options): Tweak link for AVR-LibC user manual. |
| * doc/extend.texi (Named Address Spaces): Ditto. |
| (Variable Attributes): Ditto. |
| |
| 2013-03-28 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * toplev.c (process_options): Do not disable -fomit-frame-pointer on a |
| general basis if unwind info is requested and ACCUMULATE_OUTGOING_ARGS |
| is not enabled. |
| |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.c (tilegx_expand_prologue): Avoid |
| double-decrement of next_scratch_regno. |
| |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.md (insn_v1mulu): Fix predicates on |
| input operands. |
| (insn_v1mulus): Ditto. |
| (insn_v2muls): Ditto. |
| |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.h (ASM_OUTPUT_ADDR_VEC_ELT): Delete |
| extra tab. |
| (ASM_OUTPUT_ADDR_DIFF_ELT): Ditto. |
| |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.md (*sibcall_insn): Fix type atribute for jr. |
| (*sibcall_value): Ditto. |
| |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-27 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.md (insn_mnz_<mode>): Replaced by ... |
| (insn_mnz_v8qi): ... this ... |
| (insn_mnz_v4hi): ... and this. Replace (const_int 0) with the |
| vector equivalent. |
| (insn_v<n>mnz): Replaced by ... |
| (insn_v1mnz): ... this ... |
| (insn_v2mnz): ... and this. Replace (const_int 0) with the vector |
| equivalent. |
| (insn_mz_<mode>): Replaced by ... |
| (insn_mz_v8qi): ... this ... |
| (insn_mz_v4hi): ... and this. Replace (const_int 0) with the |
| vector equivalent. |
| (insn_v<n>mz): Replaced by ... |
| (insn_v1mz): ... this ... |
| (insn_v2mz): ... and this. Replace (const_int 0) with the vector |
| equivalent. |
| |
| 2013-03-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * doc/invoke.texi (SPARC options): Remove -mlittle-endian. |
| |
| 2013-03-26 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/rtems.opt: Add -pthread option. |
| |
| 2013-03-26 Sofiane Naci <sofiane.naci@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_classify_address): Support |
| PC-relative load in SI modes and above only. |
| |
| 2013-03-26 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-26 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.h (PROFILE_BEFORE_PROLOGUE): Define. |
| * config/tilegx/tilepro.h (PROFILE_BEFORE_PROLOGUE): Define. |
| |
| 2013-03-26 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-25 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx-builtins.h (enum tilegx_builtin): Add |
| TILEGX_INSN_SHUFFLEBYTES1. |
| * config/tilegx/tilegx.c (tilegx_builtin_info): Add entry for |
| shufflebytes1. |
| (tilegx_builtins): Ditto. |
| * config/tilegx/tilegx.md (insn_shufflebytes1): New pattern. |
| |
| 2013-03-26 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-25 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.c (expand_set_cint64_one_inst): Inline |
| tests for constraint J, K, N, P. |
| |
| 2013-03-26 Walter Lee <walt@tilera.com> |
| |
| Backport from mainline: |
| 2013-03-25 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/tilegx.c (tilegx_asm_preferred_eh_data_format): |
| Use indirect/pcrel encoding. |
| * config/tilepro/tilepro.c (tilepro_asm_preferred_eh_data_format): |
| Ditto. |
| |
| 2013-03-25 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56694 |
| * tree-eh.c (lower_eh_must_not_throw): Strip BLOCKs from the |
| must-not-throw stmt location. |
| |
| 2012-03-22 Jakub Jelinek <jakub@redhat.com> |
| |
| * BASE-VER: Set to 4.8.1. |
| * DEV-PHASE: Set to prerelease. |
| |
| 2013-03-22 Release Manager |
| |
| * GCC 4.8.0 released. |
| |
| 2013-03-21 Walter Lee <walt@tilera.com> |
| |
| * config/tilegx/sync.md (atomic_test_and_set): New pattern. |
| |
| 2013-03-21 Mark Wielaard <mjw@redhat.com> |
| |
| * dwarf2out.c (size_of_aranges): Skip DECL_IGNORED_P functions. |
| |
| 2013-03-20 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56661 |
| * tree-ssa-sccvn.c (visit_use): Only value-number calls if |
| the result does not have to be distinct. |
| |
| 2013-03-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56635 |
| * tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Give up |
| if lhs of then_assign and else_assign don't have compatible types. |
| |
| 2013-03-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/56640 |
| * config/arm/arm.h (REG_CLASS_NAMES): Add "SFP_REG" and "AFP_REG" |
| class names. Remove trailing comma after "ALL_REGS". |
| |
| 2013-03-16 Jakub Jelinek <jakub@redhat.com> |
| |
| * DEV-PHASE: Set to prerelease. |
| |
| 2013-03-14 Andi Kleen <ak@linux.intel.com> |
| |
| PR target/56619 |
| * doc/extend.texi: Document __ATOMIC_HLE_ACQUIRE, |
| __ATOMIC_HLE_RELEASE. Document __builtin_ia32 TSX intrincs. |
| Document _x* TSX intrinsics. |
| |
| 2013-03-14 Edgar E. Iglesias <edgar.iglesias@xilinx.com> |
| David Holsgrove <david.holsgrove@xilinx.com> |
| |
| * configure.ac: Add MicroBlaze TLS support detection. |
| * configure: Regenerate. |
| * config/microblaze/microblaze-protos.h |
| (microblaze_cannot_force_const_mem, microblaze_tls_referenced_p, |
| symbol_mentioned_p, label_mentioned_p): Add prototypes. |
| * config/microblaze/microblaze.c (microblaze_address_type): Add |
| ADDRESS_TLS and tls_reloc address types. |
| (microblaze_address_info): Add tls_reloc. |
| (TARGET_HAVE_TLS): Define. |
| (get_tls_get_addr, microblaze_tls_symbol_p, microblaze_tls_operand_p_1, |
| microblaze_tls_referenced_p, microblaze_cannot_force_const_mem, |
| symbol_mentioned_p, label_mentioned_p, tls_mentioned_p, |
| load_tls_operand, microblaze_call_tls_get_addr, |
| microblaze_legitimize_tls_address): New functions. |
| (microblaze_classify_unspec): Handle UNSPEC_TLS. |
| (get_base_reg): Use microblaze_tls_symbol_p. |
| (microblaze_classify_address): Handle TLS. |
| (microblaze_legitimate_pic_operand): Use symbol_mentioned_p, |
| label_mentioned_p and microblaze_tls_referenced_p. |
| (microblaze_legitimize_address): Handle TLS. |
| (microblaze_address_insns): Handle ADDRESS_TLS. |
| (pic_address_needs_scratch): Handle TLS. |
| (print_operand_address): Handle TLS. |
| (microblaze_expand_prologue): Check TLS_NEEDS_GOT. |
| (microblaze_expand_move): Handle TLS. |
| (microblaze_legitimate_constant_p): Check |
| microblaze_cannot_force_const_mem and microblaze_tls_symbol_p. |
| (TARGET_CANNOT_FORCE_CONST_MEM): Define. |
| * config/microblaze/microblaze.h (TLS_NEEDS_GOT): Define |
| (PIC_OFFSET_TABLE_REGNUM): Set. |
| * config/microblaze/linux.h (TLS_NEEDS_GOT): Define. |
| * config/microblaze/microblaze.md (UNSPEC_TLS): Define. |
| (addsi3, movsi_internal2, movdf_internal): Update constraints |
| * config/microblaze/predicates.md (arith_plus_operand): Define |
| (move_operand): Redefine as move_src_operand, check |
| microblaze_tls_referenced_p. |
| |
| 2013-03-14 Ian Bolton <ian.bolton@arm.com> |
| |
| * config/aarch64/aarch64.md: (*and<mode>3nr_compare0): Use CC_NZ. |
| (*and_<SHIFT:optab><mode>3nr_compare0): Likewise. |
| |
| 2013-03-14 Ian Bolton <ian.bolton@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_select_cc_mode): Return correct |
| CC mode for AND. |
| |
| 2013-03-14 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/53265 |
| * common.opt (Waggressive-loop-optimizations): New option. |
| * tree-ssa-loop-niter.c: Include tree-pass.h. |
| (do_warn_aggressive_loop_optimizations): New function. |
| (record_estimate): Call it. Don't add !is_exit bounds to loop->bounds |
| if number_of_latch_executions returned constant. |
| (estimate_numbers_of_iterations_loop): Call number_of_latch_executions |
| early. If number_of_latch_executions returned constant, set |
| nb_iterations_upper_bound back to it. |
| * cfgloop.h (struct loop): Add warned_aggressive_loop_optimizations |
| field. |
| * Makefile.in (tree-ssa-loop-niter.o): Depend on $(TREE_PASS_H). |
| * doc/invoke.texi (-Wno-aggressive-loop-optimizations): Document. |
| |
| * config/aarch64/t-aarch64-linux (MULTARCH_DIRNAME): Remove. |
| (MULTILIB_OSDIRNAMES): Set. |
| * genmultilib: If defaultosdirname doesn't start with :: , set |
| defaultosdirname2 instead, clear it and emit two . multilib_raw |
| entries instead of just one. |
| |
| 2013-03-14 Kaz Kojima <kkojima@gcc.gnu.org> |
| |
| * config/sh/linux.h (TARGET_DEFAULT): Remove MASK_USERMODE. |
| (SUBTARGET_OVERRIDE_OPTIONS): Set TARGET_USERMODE as default. |
| * config/sh/netbsd-elf.h (TARGET_DEFAULT): Remove MASK_USERMODE. |
| (SUBTARGET_OVERRIDE_OPTIONS): New. |
| |
| 2013-03-13 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR target/49880 |
| * config/sh/sh.opt (FPU_SINGLE_ONLY): New mask. |
| (musermode): Convert to Var(TARGET_USERMODE). |
| * config/sh/sh.h (SELECT_SH2A_SINGLE_ONLY, SELECT_SH4_SINGLE_ONLY, |
| MASK_ARCH): Add MASK_FPU_SINGLE_ONLY. |
| * config/sh/sh.c (sh_option_override): Use |
| TARGET_FPU_DOUBLE || TARGET_FPU_SINGLE_ONLY for call-fp case. |
| * config/sh/sh.md (udivsi3_i1, divsi3_i1): Remove ! TARGET_SH4 |
| condition. |
| (udivsi3_i4, divsi3_i4): Use TARGET_FPU_DOUBLE condition instead of |
| TARGET_SH4. |
| (udivsi3_i4_single, divsi3_i4_single): Use |
| TARGET_FPU_SINGLE_ONLY || TARGET_FPU_DOUBLE instead of TARGET_HARD_SH4. |
| |
| 2013-03-13 Dave Korn <dave.korn.cygwin@....> |
| |
| * config/i386/cygwin.h (SHARED_LIBGCC_SPEC): Make shared libgcc the |
| default setting. |
| |
| 2013-03-13 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56608 |
| * tree-vect-slp.c (vect_schedule_slp): Do not remove scalar |
| calls when vectorizing basic-blocks. |
| |
| 2013-03-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR plugins/45078 |
| * config.gcc: On arm, mips, sh and sparc add vxworks-dummy.h to |
| tm_file. |
| |
| 2013-03-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * doc/invoke.texi (-Waddr-space-convert): Move into the table earlier. |
| |
| 2013-03-11 Jan Hubicka <jh@suse.cz> |
| |
| PR lto/56557 |
| * lto-streamer-out.c (output_symbol_p): Skip references from |
| constructors of external variables. |
| |
| 2013-03-11 Jan Hubicka <jh@suse.cz> |
| |
| PR middle-end/56571 |
| * valtrack.c (cleanup_auto_inc_dec): Unshare clobbers originating |
| from pseudos. |
| * emit-rtl.c (verify_rtx_sharing): Likewise. |
| (copy_insn_1): Likewise. |
| * rtl.c (copy_rtx): Likewise. |
| |
| 2013-03-11 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/56591 |
| * config/avr/avr.c (avr_print_operand): Add space after '%c' in |
| output_operand_lossage message. |
| |
| 2013-03-11 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/56470 |
| * arm.c (shift_op): Validate RTL pattern on the fly. |
| (arm_print_operand, case 'S'): Don't use shift_operator to validate |
| the RTL. |
| |
| 2013-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR target/56347 |
| * config/pa/pa.md (call_value): Check for calls to powf and direct to |
| new call patterns that clobber %fr12. |
| (call_val_powf, call_val_powf_pic, call_val_powf_64bit): New insn, |
| split and postreload patterns. |
| * config/pa/pa.c (pa_conditional_register_usage): Revert marking |
| registers %fr12 and %fr12R as call used. |
| |
| 2013-03-09 Steven Bosscher <steven@gcc.gnu.org> |
| |
| * dse.c (delete_dead_store_insn): Respect TDF_DETAILS. |
| (canon_address, record_store, replace_read, check_mem_read_rtx, |
| scan_insn, dse_step1, dse_step2_init, dse_step2_spill, |
| dse_step4, dse_step5_nospill, dse_step5_spill, dse_step6, |
| rest_of_handle_dse): Likewise. |
| |
| 2013-03-09 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| PR middle-end/56524 |
| * tree.h (tree_optimization_option): Rename target_optabs to optabs. |
| Add base_optabs. |
| (TREE_OPTIMIZATION_OPTABS): Update after previous field change. |
| (TREE_OPTIMIZATION_BASE_OPTABS): New macro. |
| (save_optabs_if_changed): Replace with... |
| (init_tree_optimization_optabs): ...this. |
| * optabs.c (save_optabs_if_changed): Rename to... |
| (init_tree_optimization_optabs): ...this. Take the optimization node |
| as argument. Do nothing if the base optabs are already correct. |
| Reuse the existing TREE_OPTIMIZATION_OPTABS memory if we need |
| to recompute optabs. |
| * function.h (function): Remove optabs field. |
| * function.c (invoke_set_current_function_hook): Call |
| init_tree_optimization_optabs. Use the result to initialize |
| this_fn_optabs. |
| |
| 2013-02-27 Aldy Hernandez <aldyh@redhat.com> |
| |
| * trans-mem.c (expand_transaction): Do not set PR_INSTRUMENTEDCODE |
| if GTMA_HAS_NO_INSTRUMENTATION. |
| (generate_tm_state): Keep GTMA_HAS_NO_INSTRUMENTATION bit. |
| (ipa_tm_transform_transaction): Set GTMA_HAS_NO_INSTRUMENTATION. |
| * gimple.h (GTMA_HAS_NO_INSTRUMENTATION): Define. |
| * gimple-pretty-print.c (dump_gimple_transaction): Handle |
| GTMA_HAS_NO_INSTRUMENTATION. |
| |
| 2013-03-08 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Don't link against |
| libasan_preinit.o. |
| |
| 2013-03-08 Marek Polacek <polacek@redhat.com> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56478 |
| * predict.c (is_comparison_with_loop_invariant_p): Change the |
| type of loop_step to tree. |
| (predict_loops): Adjust. |
| (predict_iv_comparison): Perform the computations on double_ints. |
| |
| 2013-03-08 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56570 |
| * tree-cfg.c (verify_expr_location_1): Verify locations for |
| DECL_DEBUG_EXPR. |
| * tree-sra.c (create_access_replacement): Strip locations |
| from DECL_DEBUG_EXPRs. |
| |
| 2013-03-08 Richard Biener <rguenther@suse.de> |
| |
| * tree-inline.c (expand_call_inline): Do not associate |
| a BLOCK with the location in BLOCK_SOURCE_LOCATION. |
| * tree-cfg.c (verify_location): Verify BLOCK_SOURCE_LOCATION. |
| |
| 2013-03-08 Richard Biener <rguenther@suse.de> |
| |
| * tree-ssa-ter.c (is_replaceable_p): Do not TER across location |
| or block changes with -Og. Fix for location / block encoding |
| changes and PHI arguments with locations. |
| |
| 2013-03-07 Steven Bosscher <steven@gcc.gnu.org> |
| |
| * bitmap.c (struct bitmap_descriptor_d): Use unsigned HOST_WIDEST_INT |
| for all counters. |
| (struct output_info): Likewise. |
| (register_overhead): Remove bad gcc_assert. |
| (bitmap_find_bit): If there is only a single bitmap element, do not |
| count a miss as a search. |
| (print_statistics): Update for counter type changes. |
| (dump_bitmap_statistics): Likewise. Print headers such that they |
| are properly lined up with the printed counters. |
| |
| 2013-03-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56559 |
| * tree-ssa-reassoc.c (zero_one_operation): When looking at rhs2, |
| check that it has only a single use. |
| |
| 2013-03-07 Richard Biener <rguenther@suse.de> |
| |
| * doc/invoke.texi (fwhole-program): Discourage use in combination |
| with -flto. |
| |
| 2013-03-06 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/arm/t-arm (TM_H, OPTIONS_H_EXTRA): Add arm-cores.def. |
| |
| PR tree-optimization/56539 |
| * tree-tailcall.c (adjust_return_value_with_ops): Use GSI_SAME_STMT |
| instead of GSI_CONTINUE_LINKING as last argument to |
| force_gimple_operand_gsi. Adjust function comment. |
| |
| * config/aarch64/t-aarch64 (TM_H, OPTIONS_H_EXTRA): Add |
| aarch64-cores.def. |
| |
| PR middle-end/56548 |
| * expr.c (expand_cond_expr_using_cmove): When expanding cmove in |
| promoted mode, convert the result back to the original mode. |
| |
| 2013-03-06 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56294 |
| * tree-into-ssa.c (insert_phi_nodes_for): Add dumping. |
| (insert_updated_phi_nodes_compare_uids): New function. |
| (update_ssa): Sort symbols_to_rename after UID before |
| traversing it to insert PHI nodes. |
| |
| 2013-03-06 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/50494 |
| * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): |
| Do not adjust alignment of DECL_IN_CONSTANT_POOL decls. |
| |
| Revert |
| 2013-02-13 Richard Biener <rguenther@suse.de> |
| |
| PR lto/50494 |
| * varasm.c (output_constant_def_1): Get the decl representing |
| the constant as argument. |
| (output_constant_def): Wrap output_constant_def_1. |
| (make_decl_rtl): Use output_constant_def_1 with the decl |
| representing the constant. |
| (build_constant_desc): Optionally re-use a decl already |
| representing the constant. |
| (tree_output_constant_def): Adjust. |
| |
| 2013-03-06 Joey Ye <joey.ye@arm.com> |
| |
| PR lto/50293 |
| * gcc.c (convert_white_space): New function. |
| (main): Handles white space in function name. |
| |
| 2013-03-06 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR target/56529 |
| * config/sh/sh.c (sh_option_override): Check for TARGET_DYNSHIFT |
| instead of TARGET_SH2 for call-table case. Do not set sh_div_strategy |
| to SH_DIV_CALL_TABLE for TARGET_SH2. |
| * config.gcc (sh_multilibs): Add m2 and m2a to sh*-*-linux* multilib |
| list. |
| * doc/invoke.texi (SH options): Document mdiv= call-div1, call-fp, |
| call-table options. |
| |
| 2013-03-05 Sterling Augustine <saugustine@google.com> |
| Cary Coutant <ccoutant@google.com> |
| |
| PR debug/55364 |
| * dwarf2out.c (resolve_addr): Don't call |
| remove_loc_list_addr_table_entries a second time for the same |
| expression. |
| |
| 2013-03-05 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/56510 |
| * cfgexpand.c (expand_debug_parm_decl): Call copy_rtx on incoming. |
| (avoid_complex_debug_insns): New function. |
| (expand_debug_locations): Call it. |
| |
| PR rtl-optimization/56484 |
| * ifcvt.c (noce_process_if_block): If else_bb is NULL, avoid extending |
| lifetimes of hard registers on small register class machines. |
| |
| 2013-03-05 David Holsgrove <david.holsgrove@xilinx.com> |
| |
| * config/microblaze/microblaze-protos.h: Rename |
| microblaze_is_interrupt_handler to microblaze_is_interrupt_variant. |
| * config/microblaze/microblaze.c (microblaze_attribute_table): Add |
| fast_interrupt. |
| (microblaze_fast_interrupt_function_p): New function. |
| (microblaze_is_interrupt_handler): Rename to |
| microblaze_is_interrupt_variant and add fast_interrupt check. |
| (microblaze_must_save_register): Use microblaze_is_interrupt_variant. |
| (save_restore_insns): Likewise. |
| (compute_frame_size): Likewise. |
| (microblaze_function_prologue): Add FAST_INTERRUPT_NAME. |
| (microblaze_globalize_label): Likewise. |
| * config/microblaze/microblaze.h: Define FAST_INTERRUPT_NAME. |
| * config/microblaze/microblaze.md: Use wrapper |
| microblaze_is_interrupt_variant. |
| |
| 2013-03-05 Kai Tietz <ktietz@redhat.com> |
| |
| * sdbout.c (sdbout_one_type): Switch to current function's section |
| supporting cold/hot. |
| |
| 2013-03-05 David Holsgrove <david.holsgrove@xilinx.com> |
| |
| * doc/invoke.texi (MicroBlaze): Add -mbig-endian, -mlittle-endian, |
| -mxl-reorder. |
| |
| 2013-03-05 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * ggc-common.c (gt_pch_save): For ENABLE_VALGRIND_CHECKING, |
| if VALGRIND_GET_VBITS is defined, temporarily make object |
| memory all defined, and restore previous valgrind addressability |
| and definability afterwards. Free this_object at the end. |
| |
| PR middle-end/56461 |
| * lra.c (lra): Call lra_clear_live_ranges if live_p, |
| right before calling lra_create_live_ranges, also call it |
| when clearing live_p. Only call lra_clear_live_ranges |
| at the end if live_p. |
| |
| PR middle-end/56461 |
| * sched-deps.c (delete_dep_node): Free DEP_REPLACE. |
| |
| 2013-03-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56521 |
| * tree-ssa-sccvn.c (set_value_id_for_result): Always initialize |
| value-id. |
| |
| 2013-03-05 Steven Bosscher <steven@gcc.gnu.org> |
| |
| PR c++/55135 |
| * except.h (remove_unreachable_eh_regions): New prototype. |
| * except.c (remove_eh_handler_splicer): New function, split out |
| of remove_eh_handler. |
| (remove_eh_handler): Use remove_eh_handler_splicer. Add comment |
| warning about running it on many EH regions one at a time. |
| (remove_unreachable_eh_regions_worker): New function, walk the |
| EH tree in depth-first order and remove non-marked regions. |
| (remove_unreachable_eh_regions): New function. |
| * tree-eh.c (mark_reachable_handlers): New function, split out |
| from remove_unreachable_handlers. |
| (remove_unreachable_handlers): Use mark_reachable_handlers and |
| remove_unreachable_eh_regions. |
| (remove_unreachable_handlers_no_lp): Use mark_reachable_handlers |
| and remove_unreachable_eh_regions. |
| |
| 2013-03-05 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56525 |
| * loop-init.c (fix_loop_structure): Remove loops in two stages, |
| not freeing them until the end. |
| |
| 2013-03-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| * config/s390/s390.h: Define DWARF2_ASM_LINE_DEBUG_INFO. |
| |
| 2013-03-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56270 |
| * tree-vect-slp.c (vect_schedule_slp): Clear vectorized stmts |
| of loads after scheduling an SLP instance. |
| |
| 2013-03-05 Jakub Jelinek <jakub@redhat.com> |
| |
| * Makefile.in (dg_target_exps): Add aarch64.exp, epiphany.exp and |
| tic6x.exp. |
| (check_gcc_parallelize): Run guality.exp as a separate job from |
| vect.exp with unsorted.exp and $(dg_target_exps) separately from |
| struct-layout-1.exp with stackalign.exp. |
| |
| * alias.c (init_alias_analysis): Clear reg_known_equiv_p bitmap. |
| |
| PR middle-end/56461 |
| * tree-vect-slp.c (vect_supported_load_permutation_p): Free |
| load_index sbitmap even if some bit in it isn't set. |
| |
| PR middle-end/56461 |
| * tree-ssa-loop-niter.c (bb_queue): Remove typedef. |
| (discover_iteration_bound_by_body_walk): Change queues to |
| vec<vec<basic_block> > and queue to vec<basic_block>. Fix up |
| spelling in comment. Call safe_push on queues[bound_index] directly. |
| Release queues[queue_index] in every iteration unconditionally. |
| Release bounds vector. |
| |
| PR middle-end/56461 |
| * tree-vect-stmts.c (free_stmt_vec_info_vec): Call |
| free_stmt_vec_info on any left-over stmt_vec_info in the vector. |
| * tree-vect-loop.c (vect_create_epilog_for_reduction): Release |
| inner_phis vector. |
| |
| 2013-03-05 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56515 |
| * tree-inline.c (remap_blocks_to_null): New function. |
| (expand_call_inline): When expanding a call stmt without |
| an associated block inline remap all callee blocks to NULL. |
| |
| 2013-03-05 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/56494 |
| * simplify-rtx.c (simplify_truncation): If C is narrower than A, |
| optimize (truncate:A (subreg:B (truncate:C X) 0)) into |
| (subreg:A (truncate:C X) 0) instead of (truncate:A X). |
| |
| PR middle-end/56461 |
| * sel-sched-ir.c (free_sched_pools): Release |
| succs_info_pool.stack[succs_info_pool.max_top] vectors too |
| if succs_info_pool.max_top isn't -1. |
| |
| PR bootstrap/56509 |
| * opts.c (opts_obstack, opts_concat): Moved to... |
| * opts-common.c (opts_obstack, opts_concat): ... here. |
| |
| 2013-03-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * diagnostic.c (diagnostic_append_note): Save and restore old prefix. |
| |
| 2013-03-04 Martin Jambor <mjambor@suse.cz> |
| |
| * tree-dfa.c (get_or_create_ssa_default_def): Use parameter fn in |
| all appropriate places. |
| |
| 2013-01-04 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR tree-optimization/56424 |
| * ipa-split.c (split_function): Do not set the RSO flag if result is |
| not by reference and its type is a register type. |
| |
| 2013-03-04 David Holsgrove <david.holsgrove@xilinx.com> |
| |
| * config/microblaze/microblaze.c (microblaze_valid_pic_const): New. |
| (microblaze_legitimate_pic_operand): Likewise. |
| * config/microblaze/microblaze.h (LEGITIMATE_PIC_OPERAND_P): Call |
| new function microblaze_legitimate_pic_operand. |
| * config/microblaze/microblaze-protos.h |
| (microblaze_legitimate_pic_operand): Declare. |
| |
| 2013-03-04 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/predicates.md (call_insn_simple_operand): |
| New predicate for supported rtx code types. |
| * config/microblaze/microblaze.md (call_internal1): Use |
| call_insn_simple_operand predicate. |
| |
| 2013-03-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * tree-loop-distribution.c (ldist_gen): Call partition_free after each |
| partitions.ordered_remove. |
| |
| PR middle-end/56461 |
| * tree-vect-stmts.c (vectorizable_conversion): Don't call |
| vec_oprnds0.create (1) for modifier == NONE. |
| |
| PR middle-end/56461 |
| * tree-vect-stmts.c (vectorizable_shift): Don't call create methods |
| on vec_oprnds0 or vec_oprnds1 before loop, only call it on |
| vec_oprnds1 right before pushing anything to it for |
| scalar_shift_arg. |
| |
| PR middle-end/56461 |
| * tree-vect-loop.c (destroy_loop_vec_info): For !clean_stmts, just |
| set nbbs to 0 instead of having separate code path. |
| (vect_analyze_loop_form): Call destroy_loop_vec_info with true |
| instead of false as last argument if returning NULL. |
| |
| 2013-03-03 Sandra Loosemore <sandra@codesourcery.com> |
| |
| * target.def (TARGET_OPTION_VALID_ATTRIBUTE_P): Update comments; |
| the attribute is now called "target" instead of "option". |
| (TARGET_OPTION_PRAGMA_PARSE): Likewise, for the pragma. |
| * doc/tm.texi.in (Target Attributes): Likewise document the correct |
| attribute/pragma name for TARGET_OPTION_VALID_P and |
| TARGET_OPTION_PRAGMA_PARSE. Also copy-edit and correct markup. |
| * doc/tm.texi: Regenerated. |
| |
| 2013-03-02 David Holsgrove <david.holsgrove@xilinx.com> |
| |
| * config/microblaze/microblaze.c: |
| Check mcpu, pcmp requirement and set TARGET_REORDER to 0 if not met. |
| * config/microblaze/microblaze.h: Add -mxl-reorder to |
| DRIVER_SELF_SPECS. |
| * config/microblaze/microblaze.md: New bswapsi2 and bswaphi2. |
| instructions emitted if TARGET_REORDER. |
| * config/microblaze/microblaze.opt: New option -mxl-reorder set to 1 |
| or 0 for -m/-mno case, but initialises as 2 to detect default use case |
| separately. |
| |
| 2013-03-01 Xinliang David Li <davidxl@google.com> |
| |
| * tree-ssa-uninit.c (compute_control_dep_chain): Limit post-dom |
| walk length. |
| |
| 2013-03-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Release path |
| vector even when returning true. Fix up function comment formatting. |
| |
| PR middle-end/56461 |
| * ira-build.c (ira_loop_nodes_count): New variable. |
| (create_loop_tree_nodes): Initialize it. |
| (finish_loop_tree_nodes): Use it instead of looking at current_loops. |
| |
| PR middle-end/56461 |
| * tree-vect-data-refs.c (vect_permute_store_chain): Avoid using copy |
| method on dr_chain and result_chain. |
| * tree-vect-stmts.c (vectorizable_store): Only call |
| result_chain.create if j == 0. |
| |
| PR middle-end/56461 |
| * tree-vect-stmts.c (vect_create_vectorized_promotion_stmts): Call |
| vec_oprnds0->release (); rather than vec_oprnds0->truncate (0) |
| before overwriting it. |
| |
| 2013-03-01 Tobias Burnus <burnus@net-b.de> |
| |
| * doc/extended.texi (C Extensions): Change order in @menu |
| to match @node. |
| (Other MIPS Built-in Functions): Move last MIPS entry before |
| "picoChip Built-in Functions". |
| (SH Built-in Functions): Move after RX Built-in Functions. |
| * doc/gcc.texi (Introduction): Change order in @menu to match @node. |
| * doc/md.texi (Constraints): Ditto. |
| * gty.texi (Type Information): Ditto. |
| (User-provided marking routines for template types): Make subsection. |
| * doc/invoke.texi (AArch64 Options): Move before |
| "Adapteva Epiphany Options". |
| |
| 2013-02-28 Konstantin Serebryany <konstantin.s.serebryany@gmail.com> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/56454 |
| * asan.c (gate_asan): Lookup no_sanitize_address instead of |
| no_address_safety_analysis attribute. |
| * doc/extend.texi (no_address_safety_attribute): Rename to |
| no_sanitize_address attribute, mention no_address_safety_analysis |
| attribute as deprecated alias. |
| |
| 2013-02-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * tree-vectorizer.h (vect_get_slp_defs): Change 3rd argument |
| type to vec<vec<tree> > *. |
| * tree-vect-slp.c (vect_get_slp_defs): Likewise. Change vec_defs |
| to be vec<tree> instead of vec<tree> *, set vec_defs |
| to vNULL and call vec_defs.create (number_of_vects), adjust other |
| uses of vec_defs. |
| * tree-vect-stmts.c (vect_get_vec_defs, vectorizable_call, |
| vectorizable_condition): Adjust vect_get_slp_defs callers. |
| |
| 2013-02-28 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64.c |
| (aarch64_float_const_representable): Remove unused variable. |
| |
| 2013-02-28 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_mangle_type): Make static. |
| |
| 2013-02-28 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-builtins.c |
| (aarch64_init_simd_builtins): Make static. |
| |
| 2013-02-28 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64.c |
| (aarch64_simd_make_constant): Make static. |
| |
| 2013-02-28 Martin Jambor <mjambor@suse.cz> |
| |
| * tree-sra.c (load_assign_lhs_subreplacements): Do not put replacements |
| with no initialization to the RHS of debug statements. |
| |
| 2013-02-28 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/56294 |
| * tree-sra.c (analyze_access_subtree): Create replacement declarations. |
| Adjust dumping. |
| (get_access_replacement): Do not call create_access_replacement. |
| Assert a replacement exists. |
| (get_repl_default_def_ssa_name): Create the replacement declaration |
| itself. |
| |
| 2013-02-28 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
| |
| * config/arm/arm.c (arm_output_mi_thunk): Call final_start_function and |
| final_end_function. |
| |
| 2013-02-28 Marek Polacek <polacek@redhat.com> |
| |
| PR rtl-optimization/56466 |
| * loop-unroll.c (unroll_and_peel_loops): Call fix_loop_structure |
| if we're changing a loop. |
| (peel_loops_completely): Likewise. |
| |
| 2013-02-28 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR c++/55813 |
| * doc/invoke.texi ([-Wctor-dtor-privacy]): Complete. |
| |
| 2013-02-28 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/56445 |
| * config/avr/avr.c (avr_init_builtins): Use 'n' instead of empty |
| macro parameters with: FX_FTYPE_FX, FX_FTYPE_FX_INT, INT_FTYPE_FX, |
| INTX_FTYPE_FX, FX_FTYPE_INTX. |
| * config/avr/builtins.def: Adjust respective DEF_BUILTIN. |
| |
| 2013-02-28 Georg-Johann Lay <avr@gjlay.de> |
| |
| * avr/avr-mcus.def (ata5272, ata5505, attiny1634, ata6285) |
| (ata6286, atmega8a, atmega48pa, ata5790, ata5790n, ata5795) |
| (atmega164pa, atmega165pa, atmega168pa, atmega16hva, atmega16hvb) |
| (atmega16hvbrevb, atmega16m1, atmega16u4, atmega26hvg, atmega32a) |
| (atmega32a, atmega3250pa, atmega3290pa, atmega32c1, atmega32m1) |
| (atmega32u4, atmega32u6, atmega64a, atmega6490a, atmega6490p) |
| (atmega64c1, atmega64m1, atmega64rfa2, atmega64rfr2, atmega32hvb) |
| (atmega32hvbrevb, atmega16hva2, atmega48hvf, at90pwm161) |
| (atmega128a, atmega1284, atmxt112sl, atmxt224, atmxt224e) |
| (atmxt336s, atxmega16a4u, atxmega16c4, atxmega32a4u, atxmega32c4) |
| (atxmega32e5, atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3) |
| (atxmega64c3, atxmega64d4, atxmega128a3u, atxmega128b1) |
| (atxmega128b3, atxmega128c3, atxmega128d4, atmxt540s, atmxt540sreva) |
| (atxmega192a3u, atxmega192c3, atxmega256a3u, atxmega256c3) |
| (atxmega384c3, atxmega384d3, atxmega128a4u): New AVR_MCU. |
| (avrxmega6): Increase max flash segments from 5 to 6. |
| * config/avr/t-multilib: Regenerate. |
| * config/avr/avr-tables.opt: Regenerate. |
| * doc/avr-mmcu.texi: Regenerate. |
| |
| 2013-02-28 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/avr.h (device_to_arch): Rename to device_to_ld. |
| (avr_device_to_arch): Rename to avr_device_to_ld. |
| (avr_device_to_as): New prototype. |
| (EXTRA_SPEC_FUNCTIONS): Add device_to_as. |
| (ASM_SPEC): Use device_to_as to get -mmcu= and -mno-skip-bug=. |
| * config/avr/driver-avr.c (avr_device_to_as): New. |
| (avr_device_to_arch): Rename to avr_device_to_ld. |
| |
| 2013-02-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * tree-vect-data-refs.c (vect_permute_load_chain): Avoid using copy |
| method on dr_chain and result_chain. |
| |
| PR middle-end/56461 |
| * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Call |
| pointer_set_destroy on not_executed_last_iteration. |
| |
| PR middle-end/56461 |
| * tree-vect-loop.c (vectorizable_reduction): Release vect_defs vector. |
| |
| PR middle-end/56461 |
| * ipa-pure-const.c (propagate): Use FOR_EACH_FUNCTION instead of |
| FOR_EACH_DEFINED_FUNCTION when freeing state. |
| |
| PR middle-end/56461 |
| * df-scan.c (df_insn_delete): Use df_scan_free_mws_vec before |
| pool_free. |
| (df_insn_rescan_debug_internal): Use df_scan_free_mws_vec before |
| overwriting it. |
| |
| PR middle-end/56461 |
| * ipa-cp.c (decide_whether_version_node): Call vec_free on |
| known_aggs[i].items and release known_aggs vector. |
| |
| PR middle-end/56461 |
| * ipa-reference.c (propagate): Free node_info even for alias nodes. |
| |
| 2013-02-27 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/microblaze.c (microblaze_emit_compare): |
| Use xor for EQ/NE comparisions. |
| * config/microblaze/microblaze.md (cstoresf4): Add constraints |
| (cbranchsf4): Adjust operator to comparison_operator. |
| |
| 2013-02-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * tree-flow.h (edge_var_map_vector): Change into va_heap, vl_embed |
| vector. |
| * tree-ssa.c (redirect_edge_var_map_add): Use vec_safe_reserve and |
| vec_safe_push, always update *slot. |
| (redirect_edge_var_map_clear): Use vec_free. |
| (redirect_edge_var_map_dup): Use vec_safe_copy and vec_safe_reserve. |
| (free_var_map_entry): Use vec_free. |
| * tree-cfgcleanup.c (remove_forwarder_block_with_phi): Use |
| FOR_EACH_VEC_SAFE_ELT instead of FOR_EACH_VEC_ELT. |
| |
| 2013-02-27 Andrey Belevantsev <abel@ispras.ru> |
| |
| PR middle-end/45472 |
| * sel-sched-ir.c (merge_expr): Also change vinsn of merged expr |
| when the may_trap_p bit of the exprs being merged differs. |
| Reorder tests for speculativeness in the logical and operator. |
| |
| 2013-02-27 Jakub Jelinek <jakub@redhat.com> |
| |
| * incpath.c (add_standard_paths): Use reconcat instead of concat |
| where appropriate and avoid leaking memory. |
| |
| * opts.h: Include obstack.h. |
| (opts_concat): New prototype. |
| (opts_obstack): New declaration. |
| * opts.c (opts_concat): New function. |
| (opts_obstack): New variable. |
| (init_options_struct): Call gcc_init_obstack on opts_obstack. |
| (finish_options): Use opts_concat instead of concat |
| and XOBNEWVEC instead of XNEWVEC. |
| * opts-common.c (generate_canonical_option, decode_cmdline_option, |
| generate_option): Likewise. |
| * Makefile.in (OPTS_H): Depend on $(OBSTACK_H). |
| * lto-wrapper.c (main): Call gcc_init_obstack on opts_obstack. |
| |
| PR target/56455 |
| * stmt.c (expand_switch_as_decision_tree_p): If flag_pic |
| and ASM_OUTPUT_ADDR_DIFF_ELT isn't defined, return true. |
| |
| 2013-02-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56461 |
| * lra-spills.c (lra_spill): Free spill_hard_reg at the end. |
| |
| 2013-02-26 Joern Rennecke <joern.rennecke@embecosm.com> |
| |
| * config/arm/arm.c (const_ok_for_dimode_op): Back out last change. |
| (arm_block_move_unaligned_straight): Likewise. |
| (arm_adjust_block_mem): Likewise. |
| |
| 2013-02-26 Joern Rennecke <joern.rennecke@embecosm.com> |
| |
| PR target/48901 |
| * config/lm32/lm32.c (gen_int_relational): Remove unused variables |
| temp, cond and label. |
| * config/lm32/lm32.md (ashlsi3): Remove unused variable one. |
| |
| PR target/52500 |
| * config/c6x/c6x.c (dbx_register_map): Change to unsigned. |
| * config/c6x/c6x.h (dbx_register_map): Update declaration. |
| |
| PR target/52501 |
| * config/cr16/cr16-protos.h: Move end of RTX_CODE guard below end |
| of prologue/epilogue functions. |
| |
| PR target/52550 |
| * config/tilegx/tilegx.c (tilegx_expand_prologue): |
| Remove unused variable cfa_offset. |
| * config/tilepro/tilepro.c (tilepro_expand_prologue): Likewise. |
| |
| PR target/54639 |
| * config/mn10300/mn10300.c (mn10300_expand_epilogue): Avoid offset |
| type promotion to unsigned. |
| |
| PR target/54640 |
| * config/arm/arm.c (const_ok_for_dimode_op): Make code consistent |
| for HOST_WIDE_INT of 32 bit / same size as int. |
| (arm_block_move_unaligned_straight): Likewise. |
| (arm_adjust_block_mem): Likewise. |
| |
| PR target/54662 |
| * config/mep/t-mep (mep-pragma.o): Use ALL_COMPILERFLAGS instead of |
| ALL_CFLAGS. |
| |
| 2013-02-26 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/56426 |
| * tree-ssa-loop.c (tree_ssa_loop_init): Always call |
| scev_initialize. |
| |
| 2013-02-26 Richard Biener <rguenther@suse.de> |
| |
| PR target/56444 |
| * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc): Remove |
| unused variable loops. |
| |
| 2013-02-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56448 |
| * fold-const.c (operand_equal_p) <case tcc_reference>: Don't look at |
| TREE_SIDE_EFFECTS if flags contain OEP_CONSTANT_ADDRESS_OF. |
| Clear OEP_CONSTANT_ADDRESS_OF from flags before recursing on second or |
| later operands of the references, or even first operand for |
| INDIRECT_REF, TARGET_MEM_REF or MEM_REF. |
| |
| PR tree-optimization/56443 |
| * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For |
| overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument |
| to type_for_mode langhook. |
| |
| 2013-02-25 Matt Turner <mattst88@gmail.com> |
| |
| * doc/invoke.texi: Document r4700. |
| |
| 2013-02-25 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56175 |
| * tree-ssa-forwprop.c (hoist_conversion_for_bitop_p): New predicate, |
| split out from ... |
| (simplify_bitwise_binary): ... here. Also guard the conversion |
| of (type) X op CST to (type) (X op ((type-x) CST)) with it. |
| |
| 2013-02-25 Catherine Moore <clm@codesourcery.com> |
| |
| Revert: |
| 2013-02-24 Catherine Moore <clm@codesourcery.com> |
| Maciej W. Rozycki <macro@codesourcery.com> |
| Tom de Vries <tom@codesourcery.com> |
| Nathan Sidwell <nathan@codesourcery.com> |
| Iain Sandoe <iain@codesourcery.com> |
| Nathan Froyd <froydnj@codesourcery.com> |
| Chao-ying Fu <fu@mips.com> |
| |
| * doc/extend.texi (micromips, nomicromips, nocompression): |
| Document new function attributes. |
| * doc/invoke.texi (minterlink-compressed, mmicromips, |
| m14k, m14ke, m14kec): Document new options. |
| (minterlink-mips16): Update documentation. |
| * doc/md.texi (ZC, ZD): Document new constraints. |
| * configure.ac (gcc_cv_as_micromips): Check if linker |
| supports the .set micromips directive. |
| * configure: Regenerate. |
| * config.in: Regenerate. |
| * config/mips/mips-tables.opt: Regenerate. |
| * config/mips/micromips.md: New file. |
| * constraints.md (ZC, AD): New constraints. |
| * config/mips/predicates.md (movep_src_register): New predicate. |
| (movep_src_operand): New predicate. |
| (non_volatile_mem_operand): New predicate. |
| * config/mips/mips.md (multimem): New type. |
| (length): Differentiate between 17-bit and 18-bit branch offsets. |
| (MOVEP1, MOVEP2): New mode iterator. |
| (mov_<load>l): Use ZC constraint. |
| (mov_<load>r): Likewise. |
| (mov_<store>l): Likewise. |
| (mov_<store>r): Likewise. |
| (*branch_equality<mode>_inverted): Add microMIPS support. |
| (*branch_equality<mode>): Likewise. |
| (*jump_absolute): Likewise. |
| (indirect_jump_<mode>): Likewise. |
| (tablejump_<mode>): Likewise. |
| (<optab>_internal): Likewise. |
| (sibcall_internal): Likewise. |
| (sibcall_value_internal): Likewise. |
| (prefetch): Use constraint ZD. |
| * config/mips/mips.opt (minterlink-compressed): New option. |
| (minterlink-mips16): Now an alias for minterlink-compressed. |
| (mmicromips): New option. |
| * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZR constraint. |
| (compare_and_swap_12): Likewise. |
| (sync_add<mode>): Likewise. |
| (sync_<optab>_12): Likewise. |
| (sync_old_<optab>_12): Likewise. |
| (sync_new_<optab>_12): Likewise. |
| (sync_nand_12): Likewise. |
| (sync_old_nand_12): Likewise. |
| (sync_new_nand_12): Likewise. |
| (sync_sub<mode>): Likewise. |
| (sync_old_add<mode>): Likewise. |
| (sync_old_sub<mode>): Likewise. |
| (sync_new_add<mode>): Likewise. |
| (sync_new_sub<mode>): Likewise. |
| (sync_<optab><mode>): Likewise. |
| (sync_old_<optab><mode>): Likewise. |
| (sync_new_<optab><mode>): Likewise. |
| (sync_nand<mode>): Likewise. |
| (sync_old_nand<mode>): Likewise. |
| (sync_new_nand<mode>): Likewise. |
| (sync_lock_test_and_set<mode>): Likewise. |
| (test_and_set_12): Likewise. |
| (atomic_compare_and_swap<mode>): Likewise. |
| (atomic_exchange<mode>_llsc): Likewise. |
| (atomic_fetch_add<mode>_llsc): Likewise. |
| * config/mips/mips-cpus.def (m14kc, m14k): New processors. |
| * config/mips/mips-protos.h (umips_output_save_restore): New prototype. |
| (umips_save_restore_pattern_p): Likewise. |
| (umips_load_store_pair_p): Likewise. |
| (umips_output_load_store_pair): Likewise. |
| (umips_movep_target_p): Likewise. |
| (umips_12bit_offset_address_p): Likewise. |
| * config/mips/mips.c (MIPS_MAX_FIRST_STEP): Update for microMIPS. |
| (mips_base_mips16): Rename this... |
| (mips_base_compression_flags): ...to this. Update all uses. |
| (mips_attribute_table): Add micromips, nomicromips and nocompression. |
| (mips_mips16_decl_p): Delete. |
| (mips_nomips16_decl_p): Delete. |
| (mips_get_compress_on_flags): New function. |
| (mips_get_compress_off_flags): New function. |
| (mips_get_compress_mode): New function. |
| (mips_get_compress_on_name): New function. |
| (mips_get_compress_off_name): New function. |
| (mips_insert_attributes): Support multiple compression types. |
| (mips_merge_decl_attributes): Likewise. |
| (umips_12bit_offset_address_p): New function. |
| (mips_start_function_definition): Emit .set micromips directive. |
| (mips_call_may_need_jalx_p): New function. |
| (mips_function_ok_for_sibcall): Add microMIPS support. |
| (mips_print_operand_punctuation): Support short delay slots and |
| compact jumps. |
| (umips_swm_mask, umips_swm_encoding): New. |
| (umips_build_save_restore): New function. |
| (mips_for_each_saved_gpr_and_fpr): Add microMIPS support. |
| (was_mips16_p): Remove. |
| (old_compression_mode): New. |
| (mips_set_compression_mode): New function. |
| (mips_set_current_function): Add microMIPS support. |
| (mips_option_override): Likewise. |
| (umips_save_restore_pattern_p): New function. |
| (umips_output_save_restore): New function. |
| (umips_load_store_pair_p_1): New function. |
| (umips_load_store_pair_p): New function. |
| (umips_output_load_store_pair_1): New function. |
| (umips_output_load_store_pair): New function. |
| (umips_movep_target_p) New function. |
| (mips_prepare_pch_save): Add microMIPS support. |
| * config/mips/mips.h (TARGET_COMPRESSION): New. |
| (TARGET_CPU_CPP_BUILTINS): Update macro |
| to use new compression flags and to support microMIPS. |
| (MIPS_ISA_LEVEL_SPEC): Add m14k processors. |
| (MIPS_ARCH_FLOAT_SPEC): Likewise. |
| (ISA_HAS_LWXS): Include TARGET_MICROMIPS. |
| (ISA_HAS_LOAD_DELAY): Exclude TARGET_MICROMIPS. |
| (ASM_SPEC): Support mmicromips and mno-micromips. |
| (M16STORE_REG_P): New macro. |
| (MIPS_CALL): Support TARGET_MICROMIPS. |
| (MICROMIPS_J): New macro. |
| (mips_base_mips16): Rename this... |
| (mips_base_compression_flags): ...to this. |
| (UMIPS_12BIT_OFFSET_P): New macro. |
| * config/mips/t-sde: (MULTILIB_OPTIONS): Add microMIPS. |
| (MULTILIB_DIRNAMES): Likewise. |
| |
| 2013-02-25 Tom de Vries <tom@codesourcery.com> |
| |
| PR rtl-optimization/56131 |
| * insn-notes.def (INSN_NOTE_BASIC_BLOCK): Update comment. |
| * cfgrtl.c (delete_insn): Don't reorder NOTE_INSN_DELETED_LABEL and |
| NOTE_INSN_BASIC_BLOCK if BLOCK_FOR_INSN == NULL. |
| |
| 2013-02-25 Tobias Burnus <burnus@net-b.de> |
| |
| * doc/invoke.texi (-fsanitize=): Move from optimization |
| to debugging options. |
| |
| 2013-02-25 Andrey Belevantsev <abel@ispras.ru> |
| |
| * sched-deps.c (sched_analyze_insn): Fix typo in comment. |
| |
| 2013-02-25 Andrey Belevantsev <abel@ispras.ru> |
| Alexander Monakov <amonakov@ispras.ru> |
| |
| PR middle-end/56077 |
| * sched-deps.c (sched_analyze_insn): When reg_pending_barrier, |
| flush pending lists also on non-jumps. Adjust comment. |
| |
| 2013-02-24 Catherine Moore <clm@codesourcery.com> |
| Maciej W. Rozycki <macro@codesourcery.com> |
| Tom de Vries <tom@codesourcery.com> |
| Nathan Sidwell <nathan@codesourcery.com> |
| Iain Sandoe <iain@codesourcery.com> |
| Nathan Froyd <froydnj@codesourcery.com> |
| Chao-ying Fu <fu@mips.com> |
| |
| * doc/extend.texi (micromips, nomicromips, nocompression): |
| Document new function attributes. |
| * doc/invoke.texi (minterlink-compressed, mmicromips, |
| m14k, m14ke, m14kec): Document new options. |
| (minterlink-mips16): Update documentation. |
| * doc/md.texi (ZC, ZD): Document new constraints. |
| * configure.ac (gcc_cv_as_micromips): Check if linker |
| supports the .set micromips directive. |
| * configure: Regenerate. |
| * config.in: Regenerate. |
| * config/mips/mips-tables.opt: Regenerate. |
| * config/mips/micromips.md: New file. |
| * constraints.md (ZC, AD): New constraints. |
| * config/mips/predicates.md (movep_src_register): New predicate. |
| (movep_src_operand): New predicate. |
| (non_volatile_mem_operand): New predicate. |
| * config/mips/mips.md (multimem): New type. |
| (length): Differentiate between 17-bit and 18-bit branch offsets. |
| (MOVEP1, MOVEP2): New mode iterator. |
| (mov_<load>l): Use ZC constraint. |
| (mov_<load>r): Likewise. |
| (mov_<store>l): Likewise. |
| (mov_<store>r): Likewise. |
| (*branch_equality<mode>_inverted): Add microMIPS support. |
| (*branch_equality<mode>): Likewise. |
| (*jump_absolute): Likewise. |
| (indirect_jump_<mode>): Likewise. |
| (tablejump_<mode>): Likewise. |
| (<optab>_internal): Likewise. |
| (sibcall_internal): Likewise. |
| (sibcall_value_internal): Likewise. |
| (prefetch): Use constraint ZD. |
| * config/mips/mips.opt (minterlink-compressed): New option. |
| (minterlink-mips16): Now an alias for minterlink-compressed. |
| (mmicromips): New option. |
| * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZR constraint. |
| (compare_and_swap_12): Likewise. |
| (sync_add<mode>): Likewise. |
| (sync_<optab>_12): Likewise. |
| (sync_old_<optab>_12): Likewise. |
| (sync_new_<optab>_12): Likewise. |
| (sync_nand_12): Likewise. |
| (sync_old_nand_12): Likewise. |
| (sync_new_nand_12): Likewise. |
| (sync_sub<mode>): Likewise. |
| (sync_old_add<mode>): Likewise. |
| (sync_old_sub<mode>): Likewise. |
| (sync_new_add<mode>): Likewise. |
| (sync_new_sub<mode>): Likewise. |
| (sync_<optab><mode>): Likewise. |
| (sync_old_<optab><mode>): Likewise. |
| (sync_new_<optab><mode>): Likewise. |
| (sync_nand<mode>): Likewise. |
| (sync_old_nand<mode>): Likewise. |
| (sync_new_nand<mode>): Likewise. |
| (sync_lock_test_and_set<mode>): Likewise. |
| (test_and_set_12): Likewise. |
| (atomic_compare_and_swap<mode>): Likewise. |
| (atomic_exchange<mode>_llsc): Likewise. |
| (atomic_fetch_add<mode>_llsc): Likewise. |
| * config/mips/mips-cpus.def (m14kc, m14k): New processors. |
| * config/mips/mips-protos.h (umips_output_save_restore): New prototype. |
| (umips_save_restore_pattern_p): Likewise. |
| (umips_load_store_pair_p): Likewise. |
| (umips_output_load_store_pair): Likewise. |
| (umips_movep_target_p): Likewise. |
| (umips_12bit_offset_address_p): Likewise. |
| * config/mips/mips.c (MIPS_MAX_FIRST_STEP): Update for microMIPS. |
| (mips_base_mips16): Rename this... |
| (mips_base_compression_flags): ...to this. Update all uses. |
| (mips_attribute_table): Add micromips, nomicromips and nocompression. |
| (mips_mips16_decl_p): Delete. |
| (mips_nomips16_decl_p): Delete. |
| (mips_get_compress_on_flags): New function. |
| (mips_get_compress_off_flags): New function. |
| (mips_get_compress_mode): New function. |
| (mips_get_compress_on_name): New function. |
| (mips_get_compress_off_name): New function. |
| (mips_insert_attributes): Support multiple compression types. |
| (mips_merge_decl_attributes): Likewise. |
| (umips_12bit_offset_address_p): New function. |
| (mips_start_function_definition): Emit .set micromips directive. |
| (mips_call_may_need_jalx_p): New function. |
| (mips_function_ok_for_sibcall): Add microMIPS support. |
| (mips_print_operand_punctuation): Support short delay slots and |
| compact jumps. |
| (umips_swm_mask, umips_swm_encoding): New. |
| (umips_build_save_restore): New function. |
| (mips_for_each_saved_gpr_and_fpr): Add microMIPS support. |
| (was_mips16_p): Remove. |
| (old_compression_mode): New. |
| (mips_set_compression_mode): New function. |
| (mips_set_current_function): Add microMIPS support. |
| (mips_option_override): Likewise. |
| (umips_save_restore_pattern_p): New function. |
| (umips_output_save_restore): New function. |
| (umips_load_store_pair_p_1): New function. |
| (umips_load_store_pair_p): New function. |
| (umips_output_load_store_pair_1): New function. |
| (umips_output_load_store_pair): New function. |
| (umips_movep_target_p) New function. |
| (mips_prepare_pch_save): Add microMIPS support. |
| * config/mips/mips.h (TARGET_COMPRESSION): New. |
| (TARGET_CPU_CPP_BUILTINS): Update macro |
| to use new compression flags and to support microMIPS. |
| (MIPS_ISA_LEVEL_SPEC): Add m14k processors. |
| (MIPS_ARCH_FLOAT_SPEC): Likewise. |
| (ISA_HAS_LWXS): Include TARGET_MICROMIPS. |
| (ISA_HAS_LOAD_DELAY): Exclude TARGET_MICROMIPS. |
| (ASM_SPEC): Support mmicromips and mno-micromips. |
| (M16STORE_REG_P): New macro. |
| (MIPS_CALL): Support TARGET_MICROMIPS. |
| (MICROMIPS_J): New macro. |
| (mips_base_mips16): Rename this... |
| (mips_base_compression_flags): ...to this. |
| (UMIPS_12BIT_OFFSET_P): New macro. |
| * config/mips/t-sde: (MULTILIB_OPTIONS): Add microMIPS. |
| (MULTILIB_DIRNAMES): Likewise. |
| |
| 2013-02-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/52555 |
| * target-globals.c (save_target_globals): For init_reg_sets and |
| target_reinit remporarily set this_fn_optabs to this_target_optabs. |
| |
| 2013-02-22 James Grennahlgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-simd-builtins.def: Add copyright header. |
| * config/aarch64/t-aarch64 |
| (aarch64-builtins.o): Depend on aarch64-simd-builtins.def. |
| |
| 2013-02-22 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR inline-asm/56148 |
| * lra-constraints.c (process_alt_operands): Reload operand |
| conflicting with earlier clobber only if no more other conflicting |
| operands. |
| |
| 2013-02-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/56393 |
| * config/gnu-user.h (LIBASAN_EARLY_SPEC): Link in libasan_preinit.o |
| if not linking a shared library. |
| |
| 2013-02-22 Seth LaForge <sethml@google.com> |
| |
| * config.gcc (arm*-*-eabi*): Treat arm*eb as big-endian. |
| |
| 2013-02-22 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/arm.md (split for extendsidi): Update condition. |
| (zero_extend<mode>di2,extend<mode>di2): Add an alternative. |
| * config/arm/iterators.md (qhs_extenddi_cstr): Likewise. |
| (qhs_zextenddi_cstr): Likewise. |
| |
| 2013-02-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56420 |
| * expmed.c (EXACT_POWER_OF_2_OR_ZERO_P): Do subtraction in uhwi, to |
| avoid signed wrapping. |
| (expand_mult): Handle properly multiplication by |
| ((dword_type) -1) << (BITS_PER_WORD - 1). Improve multiplication by |
| ((dword_type) 1) << (BITS_PER_WORD - 1). Avoid undefined behavior |
| in the compiler if coeff is HOST_WIDE_INT_MIN. |
| (expand_divmod): Don't make ext_op1 static, change it's type to uhwi. |
| Avoid undefined behavior in -INTVAL (op1). |
| |
| PR rtl-optimization/50339 |
| * lower-subreg.h (struct lower_subreg_choices): Add splitting_ashiftrt |
| field. |
| * lower-subreg.c (compute_splitting_shift): Handle ASHIFTRT. |
| (compute_costs): Call compute_splitting_shift also for ASHIFTRT |
| into splitting_ashiftrt field. |
| (find_decomposable_shift_zext, resolve_shift_zext): Handle also |
| ASHIFTRT. |
| (dump_choices): Fix up printing LSHIFTRT choices, print ASHIFTRT |
| choices. |
| |
| 2013-02-20 Aldy Hernandez <aldyh@redhat.com> |
| |
| PR middle-end/56108 |
| * trans-mem.c (execute_tm_mark): Do not expand transactions that |
| are sure to go irrevocable. |
| |
| 2013-02-21 Hans-Peter Nilsson <hp@axis.com> |
| |
| * doc/rtl.texi (vec_concat, vec_duplicate): Mention that |
| scalars are valid operands. |
| |
| 2013-02-21 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/56310 |
| * ipa-cp.c (agg_replacements_to_vector): New parameter index, copy |
| only matching indices and non-negative final offsets. |
| (intersect_aggregates_with_edge): Pass src_idx to |
| agg_replacements_to_vector. Pass src_idx insstead of index to |
| intersect_with_agg_replacements. |
| |
| 2013-02-21 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-cp.c (good_cloning_opportunity_p): Dump the real threshold |
| instead of hard-wired defaults. |
| |
| 2013-02-21 Maciej W. Rozycki <macro@codesourcery.com> |
| |
| * doc/invoke.texi (MIPS Options): Update documentation of the |
| floating-point multiply-accumulate instruction restrictions. |
| |
| 2013-02-21 Kostya Serebryany <kcc@google.com> |
| |
| * config/i386/i386.c (ix86_asan_shadow_offset): Use 0x7fff8000 as |
| asan_shadow_offset on x86_64 linux. |
| |
| 2013-02-21 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56415 |
| Revert |
| 2013-02-11 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56273 |
| * tree-vrp.c (simplify_cond_using_ranges): Disable for the |
| first VRP run. |
| |
| 2013-02-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR bootstrap/56258 |
| * doc/invoke.texi (-fdump-rtl-pro_and_epilogue): Use @item |
| instead of @itemx. |
| |
| PR inline-asm/56405 |
| * expr.c (expand_expr_real_1) <case TARGET_MEM_REF, MEM_REF>: Don't |
| use movmisalign or extract_bit_field for EXPAND_MEMORY modifier. |
| |
| 2013-02-20 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/56265 |
| * ipa-prop.c (ipa_make_edge_direct_to_target): Fixup callgraph when |
| target is referenced for first time. |
| |
| 2013-02-20 Richard Biener <rguenther@suse.de> |
| |
| * tree-call-cdce.c (tree_call_cdce): Do not remove unused locals. |
| * tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise. |
| * tree-ssa-dce.c (perform_tree_ssa_dce): Likewise. |
| * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do |
| not return anything. |
| (rename_ssa_copies): Do not remove unused locals. |
| * tree-ssa-ccp.c (do_ssa_ccp): Likewise. |
| * tree-ssanames.c (pass_release_ssa_names): Remove unused locals first. |
| * passes.c (execute_function_todo): Do not schedule unused locals |
| removal if cleanup_tree_cfg did something. |
| * tree-ssa-live.c (remove_unused_locals): Dump statistics |
| about the number of removed locals. |
| |
| 2013-02-20 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56398 |
| * tree-vect-loop-manip.c (adjust_debug_stmts): Skip |
| SSA default defs. |
| |
| 2013-02-20 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/55334 |
| * ipa-cp.c (initialize_node_lattices): Disable IPA-CP through and to |
| restricted pointers to arrays. |
| |
| 2013-02-20 Richard Biener <rguenther@suse.de> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56396 |
| * tree-ssa-ccp.c (n_const_val): New static variable. |
| (get_value): Return NULL for SSA names we don't have a lattice |
| entry for. |
| (ccp_initialize): Initialize n_const_val. |
| * tree-ssa-copy.c (n_copy_of): New static variable. |
| (init_copy_prop): Initialize n_copy_of. |
| (get_value): Return NULL_TREE for SSA names we don't have a |
| lattice entry for. |
| |
| 2013-02-20 Martin Jambor <mjambor@suse.cz> |
| |
| * ipa-cp.c (initialize_node_lattices): Fix dumping condition. |
| |
| 2013-02-20 Richard Biener <rguenther@suse.de> |
| |
| * genpreds.c (write_lookup_constraint): Do not compare first |
| letter of the constraint again. |
| |
| 2013-02-20 Richard Biener <rguenther@suse.de> |
| |
| * tree-ssa-loop-ivopts.c (alloc_use_cost_map): Use bitmap_count_bits |
| and ceil_log2. |
| (get_use_iv_cost): Terminate hashtable walk when coming across |
| an empty entry. |
| |
| 2013-02-20 Igor Zamyatin <igor.zamyatin@intel.com> |
| |
| * config/i386/i386.c (initial_ix86_tune_features): Turn on fp |
| reassociation for avx2 targets. |
| |
| 2012-02-19 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/microblaze.c: microblaze_has_clz = 0 |
| Add version check for v8.10.a to enable microblaze_has_clz |
| * config/microblaze/microblaze.h: Add TARGET_HAS_CLZ as combined |
| version and TARGET_PATTERN_COMPARE check |
| * config/microblaze/microblaze.md: New clzsi2 instruction |
| |
| 2012-02-19 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/microblaze.md (call_value_intern): Check symbol is |
| function before branching. |
| |
| 2012-02-19 Andrey Belevantsev <abel@ispras.ru> |
| |
| * sel-sched-dump.c (dump_insn_rtx_flags): Explicitly set |
| DUMP_INSN_RTX_UID. |
| (dump_insn_rtx_1): Pass PATTERN (insn) to str_pattern_slim. |
| |
| 2012-02-19 Andrey Belevantsev <abel@ispras.ru> |
| |
| PR middle-end/55889 |
| * sel-sched.c: Include ira.h. |
| (implicit_clobber_conflict_p): New function. |
| (moveup_expr): Use it. |
| * Makefile.in (sel-sched.o): Depend on ira.h. |
| |
| 2013-02-19 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56384 |
| * tree-ssa-sccvn.h (struct vn_phi_s): Add type member. |
| (vn_hash_type): Split out from ... |
| (vn_hash_constant_with_type): ... here. |
| * tree-ssa-sccvn.c (vn_phi_compute_hash): Use vn_hash_type. |
| (vn_phi_eq): Compare types from vn_phi_s structure. |
| (vn_phi_lookup): Populate vn_phi_s type. |
| (vn_phi_insert): Likewise. |
| |
| 2013-02-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56350 |
| * tree-vect-loop.c (vectorizable_reduction): If orig_stmt, return false |
| if haven't found reduction or nested cycle operand, rather than |
| asserting we must find it. |
| |
| PR tree-optimization/56381 |
| * tree-ssa-pre.c (create_expression_by_pieces): Fix up last argument |
| to fold_build3. |
| |
| 2013-02-18 Aldy Hernandez <aldyh@redhat.com> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/52555 |
| * genopinit.c (raw_optab_handler): Use this_fn_optabs. |
| (swap_optab_enable): Same. |
| (init_all_optabs): Use argument instead of global. |
| * tree.h (struct tree_optimization_option): New field target_optabs. |
| * expr.h (init_all_optabs): Add argument to prototype. |
| (TREE_OPTIMIZATION_OPTABS): New. |
| (save_optabs_if_changed): Protoize. |
| * optabs.h: Declare this_fn_optabs. |
| * optabs.c (save_optabs_if_changed): New. |
| Declare this_fn_optabs. |
| (init_optabs): Add argument to init_all_optabs() call. |
| * function.c (invoke_set_current_function_hook): Handle per |
| function optabs. |
| * function.h (struct function): New field optabs. |
| * config/mips/mips.c (mips_set_mips16_mode): Handle when |
| optimization_current_node has changed. |
| * target-globals.h (save_target_globals_default_opts): Protoize. |
| * target-globals.c (save_target_globals_default_opts): New. |
| |
| 2013-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR target/56347 |
| * config/pa/pa.c (pa_conditional_register_usage): On HP-UX, mark |
| registers %fr12 and %fr12R as call used. |
| |
| PR target/56214 |
| * config/pa/predicates.md (base14_operand): Except for BLKmode, QImode |
| and HImode, require all displacements to be an integer multiple of |
| their mode size. |
| * config/pa/pa.c (pa_legitimate_address_p): For REG+BASE addresses, |
| only allow QImode and HImode when reload is in progress and strict is |
| true. Likewise for symbolic addresses. Use base14_operand to check |
| displacements in REG+BASE addresses. |
| |
| 2013-02-18 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56366 |
| * tree-vect-loop.c (get_initial_def_for_induction): Properly |
| handle sign-conversion of outer-loop initial induction value. |
| |
| 2013-02-18 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56349 |
| * cfghooks.c (merge_blocks): If we merge a latch into another |
| block adjust references to it. |
| * cfgloop.c (flow_loops_find): Reset latch before recomputing it. |
| (verify_loop_structure): Verify that a recorded latch is in fact |
| a latch. |
| |
| 2013-02-18 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56321 |
| * tree-ssa-reassoc.c (propagate_op_to_single_use): Properly |
| order SSA name release and virtual operand unlinking. |
| |
| 2013-02-17 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/microblaze.md (save_stack_block): Define. |
| (restore_stack_block): Likewise. |
| |
| 2013-02-16 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/linux.h (TARGET_SUPPORTS_PIC): Define as 1. |
| * config/microblaze/microblaze.h (TARGET_SUPPORTS_PIC): Define as 1. |
| * config/microblaze/microblaze.c (microblaze_option_override): |
| Bail out early for PIC modes when target does not support PIC. |
| |
| 2013-02-16 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/microblaze.c (microblaze_asm_trampoline_template): |
| Replace with a microblaze version. |
| (microblaze_trampoline_init): Adapt for microblaze. |
| * config/microblaze/microblaze.h (TRAMPOLINE_SIZE): Adapt for |
| microblaze. |
| |
| 2013-02-16 Jakub Jelinek <jakub@redhat.com> |
| Dodji Seketeli <dodji@redhat.com> |
| |
| PR asan/56330 |
| * asan.c (get_mem_refs_of_builtin_call): White space and style |
| cleanup. |
| (instrument_mem_region_access): Do not forget to always put |
| instrumentation of the of 'base' and 'base + len' in a "if (len != |
| 0) statement, even for cases where either 'base' or 'base + len' |
| are not instrumented -- because they have been previously |
| instrumented. Simplify the logic by putting all the statements |
| instrument 'base + len' inside a sequence, and then insert that |
| sequence right before the current insertion point. Then, to |
| instrument 'base + len', just get an iterator on that statement. |
| And do not forget to update the pointer to iterator the function |
| received as argument. |
| |
| 2013-02-15 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56348 |
| * lra-assigns.c (reload_pseudo_compare_func): Prefer bigger pseudos. |
| |
| 2013-02-15 Steven Bosscher <steven@gcc.gnu.org> |
| |
| * graph.c (start_graph_dump): Print dumpfile base as digraph label. |
| (clean_graph_dump_file): Pass base to start_graph_dump. |
| |
| 2013-02-14 Richard Henderson <rth@redhat.com> |
| |
| PR target/55941 |
| * lower-subreg.c (simple_move): Check dest mode instead of src mode. |
| |
| 2013-02-14 Steven Bosscher <steven@gcc.gnu.org> |
| |
| * collect2-aix.h: Define F_LOADONLY. |
| |
| 2013-02-14 Richard Biener <rguenther@suse.de> |
| |
| PR lto/50494 |
| * varasm.c (output_constant_def_1): Get the decl representing |
| the constant as argument. |
| (output_constant_def): Wrap output_constant_def_1. |
| (make_decl_rtl): Use output_constant_def_1 with the decl |
| representing the constant. |
| (build_constant_desc): Optionally re-use a decl already |
| representing the constant. |
| (tree_output_constant_def): Adjust. |
| |
| 2013-02-14 Dodji Seketeli <dodji@redhat.com> |
| |
| Fix an asan crash |
| * asan.c (instrument_builtin_call): Really put the length of the |
| second source argument into src1_len. |
| |
| 2013-02-13 Jakub Jelinek <jakub@redhat.com> |
| |
| * asan.c (create_cond_insert_point): Add create_then_fallthru_edge |
| argument. If it is false, don't create edge from then_bb to |
| fallthru_bb. |
| (insert_if_then_before_iter): Pass true to it. |
| (build_check_stmt): Pass false to it. |
| (transform_statements): Flush hash table only on extended basic |
| block boundaries, rather than at the beginning of every bb. |
| Don't flush hash table on nonfreeing_call_p calls. |
| * tree-flow.h (nonfreeing_call_p): New prototype. |
| * tree-ssa-phiopt.c (nonfreeing_call_p): No longer static. |
| |
| 2013-02-13 David S. Miller <davem@davemloft.net> |
| |
| * expmed.c (expand_shift_1): Only strip scalar integer subregs. |
| |
| 2013-02-13 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/56184 |
| * ira.c (max_regno_before_ira): Move from ... |
| (ira): ... here. |
| (fix_reg_equiv_init): Use max_regno_before_ira instead of |
| vec_safe_length. |
| |
| 2013-02-13 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/i386/i386.c (ix86_asan_shadow_offset): Revert last change. |
| |
| 2013-02-13 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56295 |
| * gimple-streamer-out.c (output_gimple_stmt): Undo wrapping |
| globals in MEM_REFs. |
| |
| 2013-02-13 Richard Biener <rguenther@suse.de> |
| |
| * loop-init.c (loop_optimizer_init): Clear loop state when |
| re-initializing preserved loops. |
| * loop-unswitch.c (unswitch_single_loop): Return whether |
| we unswitched the loop. Do not verify loop state here. |
| (unswitch_loops): When we unswitched a loop discover new |
| loops. |
| |
| 2013-02-13 Kostya Serebryany <kcc@google.com> |
| |
| * config/i386/i386.c: Use 0x7fff8000 as asan_shadow_offset on x86_64 |
| linux. |
| * sanitizer.def: Rename __asan_init to __asan_init_v1. |
| |
| 2013-02-12 Dodji Seketeli <dodji@redhat.com> |
| |
| Avoid instrumenting duplicated memory access in the same basic block |
| * Makefile.in (asan.o): Add new dependency on hash-table.h |
| * asan.c (struct asan_mem_ref, struct mem_ref_hasher): New types. |
| (asan_mem_ref_init, asan_mem_ref_get_end, get_mem_ref_hash_table) |
| (has_stmt_been_instrumented_p, empty_mem_ref_hash_table) |
| (free_mem_ref_resources, has_mem_ref_been_instrumented) |
| (has_stmt_been_instrumented_p, update_mem_ref_hash_table) |
| (get_mem_ref_of_assignment): New functions. |
| (get_mem_refs_of_builtin_call): Extract from |
| instrument_builtin_call and tweak a little bit to make it fit with |
| the new signature. |
| (instrument_builtin_call): Use the new |
| get_mem_refs_of_builtin_call. Use gimple_call_builtin_p instead |
| of is_gimple_builtin_call. |
| (instrument_derefs, instrument_mem_region_access): Insert the |
| instrumented memory reference into the hash table. |
| (maybe_instrument_assignment): Renamed instrument_assignment into |
| this, and change it to advance the iterator when instrumentation |
| actually happened and return true in that case. This makes it |
| homogeneous with maybe_instrument_assignment, and thus give a |
| chance to callers to be more 'regular'. |
| (transform_statements): Clear the memory reference hash table |
| whenever we enter a new BB, when we cross a function call, or when |
| we are done transforming statements. Use |
| maybe_instrument_assignment instead of instrumentation. No more |
| need to special case maybe_instrument_assignment and advance the |
| iterator after calling it; it's now handled just like |
| maybe_instrument_call. Update comment. |
| |
| 2013-02-13 Richard Biener <rguenther@suse.de> |
| |
| * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc): |
| Fix loop discovery code. |
| |
| 2013-02-12 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR inline-asm/56148 |
| * lra-constraints.c (process_alt_operands): Match early clobber |
| operand with itself. Check conflicts with earlyclobber only if |
| the operand is not reloaded. Prefer to reload conflicting operand |
| if earlyclobber and matching operands are the same. |
| |
| 2013-02-12 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56297 |
| * lto-streamer-out.c (write_symbol): Do not output symbols |
| for hard register variables. |
| |
| 2013-02-12 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/54222 |
| * config/avr/avr-dimode.md (umulsidi3, mulsidi3): New expanders. |
| (umulsidi3_insn, mulsidi3_insn): New insns. |
| |
| 2013-02-12 Christophe Lyon <christophe.lyon@linaro.org> |
| |
| * config/arm/arm-protos.h (struct cpu_vec_costs): New struct type. |
| (struct tune_params): Add vec_costs field. |
| * config/arm/arm.c (arm_builtin_vectorization_cost) |
| (arm_add_stmt_cost): New functions. |
| (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST) |
| (TARGET_VECTORIZE_ADD_STMT_COST): Define. |
| (arm_default_vec_cost): New struct of type cpu_vec_costs. |
| (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune) |
| (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune) |
| (arm_cortex_a15_tune, arm_cortex_a5_tune, arm_cortex_a9_tune) |
| (arm_v6m_tune, arm_fa726te_tune): Define new vec_costs field. |
| |
| 2013-02-12 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56295 |
| * gimple-streamer-in.c (input_gimple_stmt): Strip MEM_REFs off |
| decls again if possible. |
| |
| 2013-02-12 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56288 |
| * tree-ssa.c (verify_ssa_name): Fix check, move |
| SSA_NAME_IN_FREE_LIST check up. |
| |
| 2013-02-12 Jakub Jelinek <jakub@redhat.com> |
| Steven Bosscher <steven@gcc.gnu.org> |
| |
| PR rtl-optimization/56151 |
| * optabs.c (add_equal_note): Don't return 0 if target is a MEM, |
| equal to op0 or op1, and last_insn pattern is CODE operation |
| with MEM dest and one of the operands matches that MEM. |
| |
| 2013-02-11 Sriraman Tallam <tmsriramgoogle.com> |
| |
| * doc/extend.texi: Document Function Multiversioning and "default" |
| parameter string to target attribute. |
| * config/i386/i386.c (get_builtin_code_for_version): Return 0 if |
| target attribute parameter is "default". |
| (ix86_compare_version_priority): Remove checks for target attribute. |
| (ix86_mangle_function_version_assembler_name): Change error to sorry. |
| Remove check for target attribute equal to NULL. Add assert. |
| (ix86_generate_version_dispatcher_body): Change error to sorry. |
| |
| 2013-02-11 Iain Sandoe <iain@codesourcery.com> |
| Jack Howarth <howarth@bromo.med.uc.edu> |
| Patrick Marlier <patrick.marlier@gmail.com> |
| |
| PR libitm/55693 |
| * config/darwin.h: Replace ENDFILE_SPEC with TM_DESTRUCTOR and |
| define ENDFILE_SPEC as TM_DESTRUCTOR. |
| * config/i386/darwin.h (ENDFILE_SPEC): Use TM_DESTRUCTOR. |
| |
| 2013-02-11 Alexander Potapenko <glider@google.com> |
| Jack Howarth <howarth@bromo.med.uc.edu> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/55617 |
| * config/darwin.c (cdtor_record): Rename ctor_record. |
| (sort_cdtor_records): Rename sort_ctor_records. |
| (finalize_dtors): New routine to sort destructors by |
| priority before use in assemble_integer. |
| (machopic_asm_out_destructor): Use finalize_dtors if needed. |
| |
| 2013-02-11 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR rtl-optimization/56275 |
| * simplify-rtx.c (avoid_constant_pool_reference): Check that |
| offset is non-negative and less than cmode size before |
| calling simplify_subreg. |
| |
| 2013-02-11 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56264 |
| * cfgloop.h (fix_loop_structure): Adjust prototype. |
| * loop-init.c (fix_loop_structure): Return the number of |
| newly discovered loops. |
| * tree-cfgcleanup.c (repair_loop_structures): When new loops |
| are discovered, do a full loop-closed SSA rewrite. |
| |
| 2013-02-11 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56273 |
| * tree-vrp.c (simplify_cond_using_ranges): Disable for the |
| first VRP run. |
| (check_array_ref): Fix missing newline in dumps. |
| (search_for_addr_array): Likewise. |
| |
| 2013-02-09 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/aix61.h (OS_MISSING_ALTIVEC): Undefine. |
| |
| 2013-02-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/56256 |
| * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define. |
| |
| 2013-02-08 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56246 |
| * lra-constraints.c (simplify_operand_subreg): Try to reuse |
| reload pseudo. |
| * lra.c (lra): Clear lra_optional_reload_pseudos only when all |
| constraints are satisfied. |
| |
| 2013-02-08 Jeff Law <law@redhat.com> |
| |
| PR debug/53948 |
| * emit-rtl.c (reg_is_parm_p): New function. |
| * regs.h (reg_is_parm_p): New prototype. |
| * ira-conflicts.c (ira_build_conflicts): Allow parameters in |
| callee-clobbered registers. |
| |
| 2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| PR target/56043 |
| * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass): |
| If there is no implicit builtin declaration, just return NULL. |
| |
| 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sse.md (FMAMODEM): New mode iterator. |
| (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM |
| mode iterator. Do not use TARGET_SSE_MATH in insn constraint. |
| |
| 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only |
| when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set. |
| * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto. |
| |
| 2013-02-08 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT. |
| (microblaze*-*-elf): Likewise. |
| * config/microblaze/linux.h: Add -mbig-endian / -mlittle-endian to |
| LINK_SPEC. |
| * config/microblaze/microblaze-c.c: Add builtin defines for |
| _LITTLE_ENDIAN and _BIG_ENDIAN. |
| * config/microblaze/microblaze.h: Add TARGET_ENDIAN_DEFAULT and |
| add to TARGET_DEFAULT flags. |
| Expand ASM_SPEC and LINK_SPEC. |
| Update BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN. |
| * config/microblaze/microblaze.md: Update extendsidi2 and |
| movdi_internal instructions to use low-order / high-order reg |
| print_operands. |
| * config/microblaze/microblaze.opt: Add mbig-endian and mlittle-endian |
| options and inversemask / mask of LITTLE_ENDIAN. |
| * config/microblaze/t-microblaze: Expand multilib options to |
| include mlittle-endian (le) and update exceptions patterns. |
| |
| 2013-02-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/56195 |
| * lra-constraints.c (get_reload_reg): Don't reuse regs |
| if they have smaller mode than requested, if they have |
| wider mode than requested, try to return a SUBREG. |
| |
| PR tree-optimization/56250 |
| * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize |
| if type is unsigned and code isn't MULT_EXPR. |
| |
| 2013-02-08 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR tree-optimization/56064 |
| * fixed-value.c (fixed_from_double_int): Sign/zero extend payload |
| bits according to mode. |
| * fixed-value.h (fixed_from_double_int) |
| (const_fixed_from_double_int): Adjust comments. |
| |
| 2013-02-08 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56231 |
| * lto-streamer.h (struct data_in): Remove current_file, current_line |
| and current_col members. |
| * lto-streamer-out.c (lto_output_location): Stream changed bits |
| en-block for efficiency. |
| * lto-streamer-in.c (clear_line_info): Remove. |
| (lto_input_location): Cache current file, line and column |
| globally via local statics. Read changed bits en-block. |
| (input_function): Do not call clear_line_info. |
| (lto_read_body): Likewise. |
| (lto_input_toplevel_asms): Likewise. |
| |
| 2013-02-08 Michael Matz <matz@suse.de> |
| |
| PR tree-optimization/52448 |
| * tree-ssa-phiopt.c (struct name_to_bb): Add phase member. |
| (nt_call_phase): New static. |
| (add_or_mark_expr): Only mark accesses with newer phase than any |
| call seen. |
| (nonfreeing_call_p): New. |
| (nt_init_block): Update nt_call_phase, mark blocks as visited. |
| (nt_fini_block): Keep blocks marked as visited. |
| (get_non_trapping): Initialize nt_call_phase, and reset aux pointer. |
| |
| 2013-02-08 Richard Biener <rguenther@suse.de> |
| |
| * ira.c (ira): Free broken dominator information. |
| |
| 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.c (ix86_spill_class): Use INTEGER_CLASS_P macro. |
| |
| 2013-02-08 Marek Polacek <polacek@redhat.com> |
| |
| * cfgloop.c (verify_loop_structure): Add more checking of headers. |
| |
| 2013-02-08 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/56181 |
| * cfgloop.h (flow_loops_find): Adjust. |
| (bb_loop_header_p): Declare. |
| * cfgloop.c (bb_loop_header_p): New function split out from ... |
| (flow_loops_find): ... here. Adjust function signature, |
| support incremental loop structure update. |
| (verify_loop_structure): Cleanup. Verify a loop is a loop. |
| * cfgloopmanip.c (fix_loop_structure): Move ... |
| * loop-init.c (fix_loop_structure): ... here. |
| (apply_loop_flags): Split out from ... |
| (loop_optimizer_init): ... here. |
| (fix_loop_structure): Use apply_loop_flags. Use flow_loops_find |
| in incremental mode, only remove dead loops here. |
| |
| 2013-02-08 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/54222 |
| * config/avr/avr.md (unspec) <UNSPEC_ROUND>: Add. |
| * config/avr/avr-fixed.md (ALL4QA, ALL124QA): New mode iterators. |
| (round<mode>3, round<mode>3_const): New expanders for fixed-mode. |
| (*round<mode>3.libgcc): New insns for fixed-modes. |
| * config/avr/builtins.def (ABSxx): Use a non-NULL LIBNAME. |
| (ROUNDxx, COUNTLSxx, BITSxx, xxBITS): New DEF_BUILTINs. |
| (ROUNDFX, COUNTLSFX, ABSFX): New DEF_BUILTINs. |
| * config/avr/stdfix.h (absFX, bitsFX, FXbits): Remove inline |
| implementations. Define to __builtin_avr_absFX, |
| __builtin_avr_bitsFX, __builtin_avr_FXbits, respectively. |
| (roundFX, countlsFX): Define to __builtin_avr_roundFX, |
| __builtin_avr_countlsFX, respectively. |
| * config/avr/avr-c.c (target.h): Include it. |
| (enum avr_builtin_id): New enum. |
| (avr_resolve_overloaded_builtin): New static function. |
| (avr_register_target_pragmas): Use it to set |
| targetm.resolve_overloaded_builtin. |
| * config/avr/avr.c (avr_init_builtins): Supply myriads of local |
| tree nodes used by DEF_BUILTIN. |
| (avr_expand_builtin) <AVR_BUILTIN_ROUNDxx>: Sanity-check them. |
| (avr_fold_builtin) <AVR_BUILTIN_BITSxx>: Fold to VIEW_COVERT_EXPR. |
| <AVR_BUILTIN_xxBITS>: Same. |
| |
| 2013-02-08 Richard Biener <rguenther@suse.de> |
| |
| * cfgloop.c (verify_loop_structure): Properly handle |
| a loop exiting to another loop header. |
| * ira-int.h (ira_loops): Remove. |
| * ira.c (ira_loops): Remove. |
| (ira): Use loop_optimizer_init and loop_optimizer_finalize. |
| (do_reload): Use loop_optimizer_finalize. |
| * ira-build.c (create_loop_tree_nodes): Use get_loops and |
| number_of_loops to access the loop tree. |
| (more_one_region_p): Likewise. |
| (finish_loop_tree_nodes): Likewise. |
| (rebuild_regno_allocno_maps): Likewise. |
| (mark_loops_for_removal): Likewise. |
| (mark_all_loops_for_removal): Likewise. |
| (remove_unnecessary_regions): Likewise. |
| (ira_build): Likewise. |
| * ira-emit.c (setup_entered_from_non_parent_p): Likewise. |
| |
| 2013-02-08 Richard Biener <rguenther@suse.de> |
| |
| * Makefile.in (tree-tailcall.o): Add $(CFGLOOP_H) dependency. |
| * ipa-pure-const.c (analyze_function): Avoid calling |
| mark_irreducible_loops twice. |
| * tree-tailcall.c (tree_optimize_tail_calls_1): Mark loops for fixup. |
| |
| 2013-02-07 David S. Miller <davem@davemloft.net> |
| |
| * dwarf2out.c (based_loc_descr): Perform leaf register remapping |
| on 'reg'. |
| * var-tracking.c (vt_add_function_parameter): Test the presence of |
| HAVE_window_save properly and do not remap argument registers when |
| we have a leaf function. |
| |
| 2013-02-07 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR bootstrap/56227 |
| * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT |
| instead of "ll". |
| * config/i386/i386.c (ix86_print_operand): Ditto. |
| |
| 2013-02-07 Vladimir Makarov <vmakarov@redhat.com> |
| |
| * lra-constraints.c (process_alt_operands): Fix recently added comment. |
| |
| 2013-02-07 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56225 |
| * lra-constraints.c (process_alt_operands): Check that reload hard |
| reg can hold value for strict_low_part. |
| |
| 2013-02-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/56154 |
| * dwarf2out.c (dwarf2_debug_hooks): Set end_function hook to |
| dwarf2out_end_function. |
| (in_first_function_p, maybe_at_text_label_p, |
| first_loclabel_num_not_at_text_label): New variables. |
| (dwarf2out_var_location): In the first function find out |
| lowest loclabel_num N where .LVLN is known not to be equal to .Ltext0. |
| (find_empty_loc_ranges_at_text_label, dwarf2out_end_function): New |
| functions. |
| |
| 2013-02-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR rtl-optimization/56178 |
| * cse.c (cse_insn): Do not create a REG_EQUAL note if the source is a |
| SUBREG of a register. Tidy up related block of code. |
| * fwprop.c (forward_propagate_and_simplify): Do not create a REG_EQUAL |
| note if the source is a register or a SUBREG of a register. |
| |
| 2013-02-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/56228 |
| * config/rs6000/rs6000.md (ptrm): New mode attr. |
| (call_indirect_aix<ptrsize>, call_indirect_aix<ptrsize>_nor11, |
| call_value_indirect_aix<pttrsize>, |
| call_value_indirect_aix<pttrsize>_nor11): Use <ptrm> instead of |
| m in constraints. |
| |
| 2013-02-07 Michael Haubenwallner <michael.haubenwallner@salomon.at> |
| |
| * collect2.c (main): Set aix64_flag for -G and -bsvr4 too, disable |
| if -bnortl. Convert to strcmp and strncmp. |
| |
| 2013-02-07 Alan Modra <amodra@gmail.com> |
| |
| PR target/54009 |
| * config/rs6000/rs6000.c (mem_operand_gpr): Check that LO_SUM |
| addresses won't wrap when offsetting. |
| (rs6000_secondary_reload): Provide secondary reloads needed for |
| wrapping LO_SUM addresses. |
| |
| 2013-02-06 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * config/gnu.h (GNU_USER_TARGET_OS_CPP_BUILTINS): Never define |
| MACH, just __MACH__. |
| |
| 2013-02-06 Richard Biener <rguenther@suse.de> |
| |
| * tracer.c (tracer): Mark loops with LOOPS_NEED_FIXUP |
| instead of calling fix_loop_structure. |
| |
| 2013-02-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56217 |
| * omp-low.c (use_pointer_for_field): Return false if |
| lower_send_shared_vars doesn't generate any copy-out code. |
| |
| 2013-02-06 Tom de Vries <tom@codesourcery.com> |
| |
| PR rtl-optimization/56131 |
| * cfgrtl.c (delete_insn): Use NOTE_BASIC_BLOCK instead of BLOCK_FOR_INSN |
| to get the bb of a NOTE_INSN_BASIC_BLOCK. Handle the case that the bb |
| of the label is NULL. Add comment. |
| |
| 2013-02-05 Jakub Jelinek <jakub@redhat.com> |
| |
| * tree.h (struct tree_decl_with_vis): Remove thread_local field. |
| |
| PR sanitizer/55374 |
| * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define. |
| (STATIC_LIBTSAN_LIBS): Likewise. |
| * gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define. |
| (LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC |
| is defined, don't add anything else beyond that. |
| (SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define. |
| (LINK_COMMAND_SPEC): Use them. |
| |
| PR tree-optimization/56205 |
| * tree-stdarg.c (check_all_va_list_escapes): Return true if |
| there are any PHI nodes that set non-va_list_escape_vars SSA_NAME |
| and some va_list_escape_vars SSA_NAME appears in some PHI argument. |
| |
| 2013-02-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/53342 |
| PR tree-optimization/53185 |
| * tree-vectorizer.h (vect_check_strided_load): Remove. |
| * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do |
| not disallow peeling for vectorized strided loads. |
| (vect_check_strided_load): Make static and simplify. |
| (vect_analyze_data_refs): Adjust. |
| * tree-vect-stmts.c (vectorizable_load): Handle peeled loops |
| correctly when vectorizing strided loads. |
| |
| 2013-02-05 Richard Biener <rguenther@suse.de> |
| |
| * doc/install.texi: Refer to ISL, not PPL. |
| |
| 2013-02-05 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/55789 |
| * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1. |
| |
| 2013-02-05 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/55789 |
| * cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove |
| the dead call anyway. |
| |
| 2013-02-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR sanitizer/55374 |
| * config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard. |
| |
| 2013-02-04 Alexander Potapenko <glider@google.com> |
| Jack Howarth <howarth@bromo.med.uc.edu> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/55617 |
| * config/darwin.c (sort_ctor_records): Stabilized qsort |
| on constructor priority by using original position. |
| (finalize_ctors): New routine to sort constructors by |
| priority before use in assemble_integer. |
| (machopic_asm_out_constructor): Use finalize_ctors if needed. |
| |
| 2013-02-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR libstdc++/54314 |
| * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn |
| about visibility on artificial decls. |
| * config/sol2.c (solaris_assemble_visibility): Likewise. |
| |
| 2013-02-04 Kai Tietz <ktietz@redhat.com> |
| |
| PR target/56186 |
| * config/i386/i386.c (function_value_ms_64): Add additional valtype |
| argument and improve checking of return-argument types for 16-byte |
| modes. |
| (ix86_function_value_1): Add additional valtype argument on call |
| of function_value_64. |
| (return_in_memory_ms_64): Sync 16-byte sized mode handling with |
| handling infunction_value_64 function. |
| |
| 2013-02-04 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org> |
| |
| * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue. |
| |
| 2013-02-04 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56188 |
| * tree-ssa-structalias.c (label_visit): Consider case with |
| initially non-empty points-to set. |
| (perform_var_substitution): Dump node mapping and clean up. |
| |
| 2013-02-04 Richard Guenther <rguenther@suse.de> |
| |
| PR lto/56168 |
| * lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin |
| node prevail as last resort. |
| (lto_symtab_merge_decls): Remove guard on LTRANS here. |
| (lto_symtab_prevailing_decl): Builtins are their own prevailing decl. |
| |
| 2013-02-04 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56113 |
| * tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add): |
| Merge into ... |
| (equiv_class_lookup_or_add): ... this. |
| (label_visit): Adjust and fix error in previous patch. |
| (perform_var_substitution): Adjust. |
| |
| 2013-02-03 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| * config/sh/divtab.c: Fix formatting and comments throughout the file. |
| * config/sh/sh4-300.md: Likewise. |
| * config/sh/sh4a.md: Likewise. |
| * config/sh/constraints.md: Likewise. |
| * config/sh/sh.md: Likewise. |
| * config/sh/netbsd-elf.h: Likewise. |
| * config/sh/predicates.md: Likewise. |
| * config/sh/sh-protos.h: Likewise. |
| * config/sh/ushmedia.h: Likewise. |
| * config/sh/linux.h: Likewise. |
| * config/sh/sh.c: Likewise. |
| * config/sh/superh.h: Likewise. |
| * config/sh/elf.h: Likewise. |
| * config/sh/sh4.md: Likewise. |
| * config/sh/sh.h: Likewise. |
| |
| 2013-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| * config/pa/constraints.md: Adjust unused letters. Change "T" |
| constraint to match_test floating_point_store_memory_operand(). |
| * config/pa/predicates.md (reg_plus_base_memory_operand): New. |
| (base14_operand): New. |
| (floating_point_store_memory_operand): New. |
| (integer_store_memory_operand): Revise to use base14_operand and |
| reg_plus_base_memory_operand. |
| (move_dest_operand): Allow symbolic_memory_operands. |
| (symbolic_memory_operand): Check for LO_SOM. |
| (symbolic_operand): Change default case to break. |
| * config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force |
| CONST_DOUBLE values to be reloaded by putting them into memory when |
| the destination is a floating point register. |
| (movdf): Remove code to handle CONST_DOUBLE. |
| (movsf): Likewise. |
| (reload_indf_r1): New. |
| (reload_insf_r1): New. |
| Consistently use "Q" and "T" constraints with integer and floating |
| point move instructions, respectively. |
| (movdi): Remove FAIL. |
| Change predicate for source operand unamed DImode move from |
| general_operand to move_src_operand. |
| (umulsidi3): Change predicate for destination operand to |
| register_operand. |
| Likewise for similar unamed patterns. |
| * config/pa/pa-protos.h (pa_legitimize_reload_address): Declare. |
| * config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis. |
| (hppa_legitimize_address): Simplify mask calculation. |
| (pa_emit_move_sequence): Revised handling of secondary reloads from |
| REG+D addresses for floating point loads and stores. Directly handle |
| loading CONST0_RTX (mode) to a floating point register. |
| (pa_secondary_reload): Handle reloading DF and SFmode constant values |
| to floating point registers. Don't restrict secondary reloads to |
| floating point registers to integer modes. Revise some comments and |
| cleanup some code. |
| (TARGET_LEGITIMATE_ADDRESS_P): Define. |
| (pa_legitimate_address_p): New. |
| (pa_legitimize_reload_address): New. |
| * config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New. |
| (STRICT_REG_OK_FOR_BASE_P): New. |
| (GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments. |
| (LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address. |
| |
| 2013-02-03 David Edelsohn <dje.gcc@gmail.com> |
| Andrew Dixie <andrewd@gentrack.com> |
| |
| * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY |
| flag set. |
| |
| 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * expmed.c (extract_bit_field_1): Pass the full width of the |
| structure to get_best_reg_extraction_insn. |
| |
| 2013-02-01 David Edelsohn <dje.gcc@gmail.com> |
| |
| PR target/54601 |
| * configure.ac (use_cxa_atexit): Add AIX. |
| * configure: Regenerate. |
| |
| * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o. |
| |
| 2013-02-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/54793 |
| * final.c (need_profile_function): New variable. |
| (final_start_function): Drop ATTRIBUTE_UNUSED from first argument. |
| If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG |
| is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED |
| notes, targetm.asm_out.function_prologue doesn't emit anything, |
| HAVE_prologue and profiler should be emitted before prologue, |
| set need_profile_function instead of emitting it. |
| (final_scan_insn): If need_profile_function, emit |
| profile_function on the first NOTE_INSN_BASIC_BLOCK or |
| NOTE_INSN_FUNCTION_BEG note. |
| |
| 2013-02-01 Richard Henderson <rth@redhat.com> |
| |
| * config/rs6000/rs6000.md (smulditi3): New. |
| (umulditi3): New. |
| |
| * config/alpha/alpha.md (umulditi3): New. |
| |
| 2013-02-01 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2. |
| (ASM_OUTPUT_ALIGNED_LOCAL): New. |
| |
| 2013-02-01 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56113 |
| * tree-ssa-structalias.c (label_visit): Reduce work for |
| single-predecessor nodes. |
| |
| 2013-02-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the |
| range isn't testing for zero. |
| |
| 2013-01-31 Steven Bosscher <steven@gcc.gnu.org> |
| |
| PR middle-end/56113 |
| * fwprop.c (fwprop_init): Set up loops without CFG modifications. |
| |
| 2013-01-31 Hiroyuki Ono <hiroyuki.ono.jc@renesas.com> |
| Nick Clifton <nickc@redhat.com> |
| |
| * config/v850/constraints.md (Q): Define as a memory constraint. |
| * config/v850/predicates.md (label_ref_operand): New predicate. |
| (e3v5_shift_operand): New predicate. |
| (ior_operator): New predicate. |
| * config/v850/t-v850: Add e3v5 multilib. |
| * config/v850/v850-protos.h (v850_adjust_insn_length): Prototype. |
| (v850_gen_movdi): Prototype. |
| * config/v850/v850.c: Add support for e3v5 architecture. |
| Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to |
| TARGET_V850E_UP. |
| (construct_save_jarl): Add e3v5 long JARL support. |
| (v850_adjust_insn_length): New function. Adjust length of call |
| insns when using e3v5 instructions. |
| (v850_gen_movdi): New function: Generate instructions to move a |
| DImode value. |
| * config/v850/v850.h (TARGET_CPU_v850e3v5): Define. |
| (CPP_SPEC): Define __v850e3v5__ as appropriate. |
| (TARGET_USE_FPU): Enable for e3v5. |
| (CONST_OK_FOR_W): New macro. |
| (ADJUST_INSN_LENGTH): Define. |
| * config/v850/v850.md (UNSPEC_LOOP): Define. |
| (attr cpu): Add v850e3v5. |
| Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP. |
| (movdi): New pattern. |
| (movdi_internal): New pattern. |
| (cbranchsf4): Conditionalize on TARGET_USE_FPU. |
| (cbranchdf4): Conditionalize on TARGET_USE_FPU. |
| (cstoresf4): Likewise. |
| (cstoredf4): Likewise. |
| (insv): New pattern. |
| (rotlso3_a): New pattern. |
| (rotlsi3_b): New pattern |
| (rotlsi3_v850e3v5): New pattern. |
| (doloop_begin): New pattern. |
| (fix_loop_counter): New pattern. |
| (doloop_end): New pattern. |
| (branch_normal): Add e3v5 long branch support. |
| (branch_invert): Likewise. |
| (branch_z_normal): Likewise. |
| (branch_z_invert): Likewise. |
| (branch_nz_normal): Likewise. |
| (branch_nz_invert): Likewise. |
| (call_internal_short): Add e3v5 register-indirect JARL support. |
| (call_internal_long): Likewise. |
| (call_value_internal_short): Likewise. |
| (call_value_internal_long): Likewise. |
| * config/v850/v850.opt (mv850e3v5, mv850e2v4): New options. |
| (mloop): New option. |
| * config.gcc: Add support for configuring v840e3v5 target. |
| * doc/invoke.texi: Document new v850 specific command line options. |
| |
| 2013-01-31 Paul Koning <ni1d@arrl.net> |
| |
| PR debug/55059 |
| PR debug/54508 |
| * dwarf2out.c (prune_unused_types_mark): Mark all of parent's |
| children if parent is a class. |
| (prune_unused_types_prune): Don't add DW_AT_declaration. |
| |
| 2013-01-31 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56157 |
| * tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to |
| match up operand with SLP child. |
| |
| 2013-01-31 Jason Merrill <jason@redhat.com> |
| |
| PR debug/54410 |
| * dwarf2out.c (gen_struct_or_union_type_die): Always schedule template |
| parameters the first time. |
| (gen_scheduled_generic_parms_dies): Check completeness here. |
| |
| 2013-01-31 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/53073 |
| * common.opt (faggressive-loop-optimizations): New flag, |
| enabled by default. |
| * doc/invoke.texi (faggressive-loop-optimizations): Document. |
| * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard |
| infer_loop_bounds_from_undefined by it. |
| |
| 2013-01-31 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56150 |
| * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not |
| visit virtual operands. |
| (find_uses_to_rename_bb): Likewise. |
| |
| 2013-01-31 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56150 |
| * tree-ssa-tail-merge.c (gimple_equal_p): Properly handle |
| mixed store non-store stmts. |
| |
| 2013-01-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/55374 |
| * gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if |
| LIBASAN_EARLY_SPEC is defined. |
| (LIBASAN_EARLY_SPEC): Define to empty string if not already defined. |
| (LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address, |
| before %o. |
| * config/gnu-user.h (LIBASAN_EARLY_SPEC): Define. |
| |
| PR c++/55742 |
| * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose |
| invalid args instead of ICEing on it. |
| (ix86_valid_target_attribute_tree): Return error_mark_node if |
| ix86_valid_target_attribute_inner_p failed. |
| (ix86_valid_target_attribute_p): Return false only if |
| ix86_valid_target_attribute_tree returned error_mark_node. Allow |
| target("default") attribute. |
| (sorted_attr_string): Change argument from const char * to tree, |
| merge in all target attribute arguments rather than just one. |
| Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC |
| instead of free. Avoid using strcat. |
| (ix86_mangle_function_version_assembler_name): Mangle |
| target("default") as if no target attribute is present. Adjust |
| sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC |
| instead of xmalloc and XDELETEVEC instead of free. |
| (ix86_function_versions): Don't return true if one of the decls |
| doesn't have target attribute. If they don't and one of the decls |
| is DECL_FUNCTION_VERSIONED, report an error. Adjust |
| sorted_attr_string caller. Use XDELETEVEC instead of free. |
| (ix86_supports_function_versions): Remove. |
| (make_name): Fix up formatting. |
| (make_dispatcher_decl): Remove resolver_name and its initialization. |
| Avoid leaking memory. |
| (is_function_default_version): Return true if there is |
| target("default") attribute rather than no target attribute at all. |
| (make_resolver_func): Avoid leaking memory. |
| (ix86_generate_version_dispatcher_body): Likewise. |
| (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove. |
| * target.def (supports_function_versions): Remove. |
| * doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove. |
| * doc/tm.texi: Regenerated. |
| |
| 2013-01-30 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56144 |
| * lra-constraints.c (get_reload_reg): Don't reuse reload pseudo |
| for values with side effects. |
| |
| 2013-01-30 Richard Biener <rguenther@suse.de> |
| |
| * sparseset.h (sparseset_bit_p): Use gcc_checking_assert. |
| (sparseset_pop): Likewise. |
| * cfganal.c (compute_idf): Likewise. Increase work-stack size |
| to be able to use quick_push in the worker loop. |
| |
| 2013-01-30 Marek Polacek <polacek@redhat.com> |
| |
| * cfgcleanup.c (cleanup_cfg): Don't mark affected BBs. |
| |
| 2013-01-30 Richard Biener <rguenther@suse.de> |
| |
| PR lto/56147 |
| * lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN check. |
| |
| 2013-01-30 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR tree-optimization/56064 |
| * fixed-value.c (fixed_from_double_int): New function. |
| * fixed-value.h (fixed_from_double_int): New prototype. |
| (const_fixed_from_double_int): New static inline function. |
| * fold-const.c (native_interpret_fixed): New static function. |
| (native_interpret_expr) <FIXED_POINT_TYPE>: Use it. |
| (can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true. |
| (native_encode_fixed): New static function. |
| (native_encode_expr) <FIXED_CST>: Use it. |
| (native_interpret_int): Move double_int worker code to... |
| * double-int.c (double_int::from_buffer): ...this new static method. |
| * double-int.h (double_int::from_buffer): Prototype it. |
| |
| 2013-01-30 Richard Biener <rguenther@suse.de> |
| |
| * tree-ssa-structalias.c (final_solutions, final_solutions_obstack): |
| New pointer-map and obstack. |
| (init_alias_vars): Allocate pointer-map and obstack. |
| (delete_points_to_sets): Free them. |
| (find_what_var_points_to): Cache result. |
| (find_what_p_points_to): Adjust for changed interface of |
| find_what_var_points_to. |
| (compute_points_to_sets): Likewise. |
| (ipa_pta_execute): Likewise. |
| |
| 2013-01-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * configure.ac (HAVE_AS_SPARC_NOBITS): New test. |
| * configure: Regenerate. |
| * config.in: Regenerate. |
| * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit |
| #nobits/#progbits if supported. |
| |
| 2013-01-29 Oleg Endo <olegendo@gcc.gnu.org> |
| |
| PR target/56121 |
| * config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a, |
| bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a, |
| bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition. |
| |
| 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove. |
| (cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all. |
| |
| 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL. |
| * config/arm/cortex-a7.md (cortex_a7_call): Update required units. |
| |
| 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/arm-protos.h (arm_mac_accumulator_is_result): New |
| declaration. |
| * config/arm/arm.c (arm_mac_accumulator_is_result): New function. |
| * config/arm/cortex-a7.md: New bypasses using |
| arm_mac_accumulator_is_result. |
| |
| 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation. |
| (cortex_a7_neon_mla): Likewise. |
| (cortex_a7_fpfmad): New reservation. |
| (cortex_a7_fpmacs): Use ffmas and update required units. |
| (cortex_a7_fpmuld): Update required units and latency. |
| (cortex_a7_fpmacd): Likewise. |
| (cortex_a7_fdivs, cortex_a7_fdivd): Likewise. |
| (cortex_a7_neon). Likewise. |
| (bypass) Update participating units. |
| |
| 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
| |
| * config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute. |
| * config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type |
| from fmac to ffma. |
| * config/arm/vfp11.md (vfp_farith): Use ffmas. |
| (vfp_fmul): Use ffmad. |
| * config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas. |
| (cortex_r4_fmacd): Use ffmad. |
| * config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas. |
| * config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas. |
| (cortex_a9_fmacd): Use ffmad. |
| * config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas. |
| (cortex_a8_vfp_macd): Use ffmad. |
| * config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas. |
| (cortex_a5_fpmacd): Use ffmad. |
| * config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas. |
| (cortex_a15_vfp_macd): Use ffmad. |
| * config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad. |
| |
| 2013-01-29 Jason Merrill <jason@redhat.com> |
| |
| PR libstdc++/54314 |
| * varasm.c (default_assemble_visibility): Don't warn about |
| visibility on artificial decls. |
| |
| 2013-01-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56113 |
| * tree-ssa-structalias.c (equiv_class_lookup): Also return |
| the bitmap leader. |
| (label_visit): Free duplicate bitmaps and record the leader instead. |
| (perform_var_substitution): Adjust. |
| |
| 2013-01-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55270 |
| * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed |
| the CFG, schedule loops for fixup. |
| |
| 2013-01-29 Nick Clifton <nickc@redhat.com> |
| |
| * config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow |
| SP_REG. |
| |
| 2013-01-28 Leif Ekblad <leif@rdos.net> |
| |
| * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets. |
| * config/i386/i386.h (TARGET_RDOS): New macro. |
| (DEFAULT_LARGE_SECTION_THRESHOLD): New macro. |
| * config/i386/i386.c (ix86_option_override_internal): For 64bit |
| TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1. |
| * config/i386/i386.opt (mlarge-data-threshold): Initialize to |
| DEFAULT_LARGE_SECTION_THRESHOLD. |
| * config/i386/i386.md (R14_REG, R15_REG): New constants. |
| * config/i386/rdos.h: New file. |
| * config/i386/rdos64.h: New file. |
| |
| 2013-01-28 Bernd Schmidt <bernds@codesourcery.com> |
| |
| PR other/54814 |
| * reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of |
| TEST_HARD_REG_BIT. |
| |
| 2013-01-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/56117 |
| * sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib |
| call cselib_lookup_from_insn on the MEM before calling |
| add_insn_mem_dependence. |
| |
| 2013-01-28 Richard Biener <rguenther@suse.de> |
| |
| * tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK |
| to a stmt that didn't have one. |
| (copy_phis_for_bb): Likewise for PHI arguments. |
| (copy_debug_stmt): Likewise for debug stmts. |
| |
| 2013-01-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/56034 |
| * tree-loop-distribution.c (enum partition_kind): Add PKIND_REDUCTION. |
| (partition_builtin_p): Adjust. |
| (generate_code_for_partition): Handle PKIND_REDUCTION. Assert |
| it is the last partition. |
| (rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking |
| up the vertex for the definition. |
| (classify_partition): Classify whether a partition is a |
| PKIND_REDUCTION, thus has uses outside of the loop. |
| (ldist_gen): Inherit PKIND_REDUCTION when merging partitions. |
| Merge all PKIND_REDUCTION partitions into the last partition. |
| (tree_loop_distribution): Seed partitions from reductions as well. |
| |
| 2013-01-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56125 |
| * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize |
| pow(x,c) into sqrt(x) * powi(x, n/2) or |
| 1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when |
| optimizing for size. |
| Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or |
| 1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an |
| integer. |
| |
| PR tree-optimization/56094 |
| * gimplify.c (force_gimple_operand_1): Temporarily set input_location |
| to UNKNOWN_LOCATION while gimplifying expr. |
| |
| 2013-01-27 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/56114 |
| * config/i386/i386.md (*movabs<mode>_1): Add square brackets around |
| operand 0 in movabs insn template for -masm=intel asm alternative. |
| (*movabs<mode>_2): Ditto for operand 1. |
| |
| 2013-01-26 David Holsgrove <david.holsgrove@xilinx.com> |
| |
| PR target/54663 |
| * config.gcc (microblaze*-linux*): Add tmake_file to allow building |
| of microblaze-c.o |
| |
| 2013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update |
| tm_file. |
| |
| 2013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> |
| |
| * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS): |
| Undef to avoid warning. |
| |
| 2013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at> |
| |
| * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld. |
| * configure: Regenerate. |
| |
| 2013-01-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56098 |
| * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr |
| for stmts with volatile ops. |
| (cond_store_replacement): Don't optimize if assign has volatile ops. |
| (cond_if_else_store_replacement_1): Don't optimize if either |
| then_assign or else_assign have volatile ops. |
| (hoist_adjacent_loads): Don't optimize if either def1 or def2 have |
| volatile ops. |
| |
| 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
| |
| * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__. |
| |
| 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
| |
| * doc/extend.texi (Example of asm with clobbered asm reg): Fix |
| missing ':' in asm example. |
| |
| 2013-01-25 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane |
| entries into lane and laneq entries. |
| * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>): |
| Remove AdvSIMD scalar modes. |
| (aarch64_sq<r>dmulh_laneq<mode>): New. |
| (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD |
| modes. |
| * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics' |
| builtin implementations to relfect changes in RTL in aarch64-simd.md. |
| * config/aarch64/iterators.md (VCOND): New. |
| (VCONQ): New. |
| |
| 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/54222 |
| * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument. |
| Add NULL LIBNAME argument to existing definitions. |
| (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New. |
| * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument. |
| * config/avr/avr.c (DEF_BUILTIN): Same. |
| (avr_init_builtins): Pass down LIBNAME to add_builtin_function. |
| (avr_expand_builtin): Expand to a vanilla call if a libgcc |
| implementation is available (DECL_ASSEMBLER_NAME is set). |
| (avr_fold_absfx): New static function. |
| (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR, |
| AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR, |
| AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK, |
| AVR_BUILTIN_ABSLLK. |
| * config/avr/stdfix.h (abshr, absr, abslr, absllr) |
| (abshk, absk, abslk, absllk): Provide as static inline functions. |
| |
| 2013-01-25 Marek Polacek <polacek@redhat.com> |
| |
| PR tree-optimization/56035 |
| * cfgloopmanip.c (fix_loop_structure): Remove redundant condition. |
| |
| 2012-01-24 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative. |
| (*movtf_internal_rex64): Add (!o,C) alternative |
| (*movxf_internal_rex64): Ditto. |
| (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives. |
| |
| 2013-01-24 Shenghou Ma <minux.ma@gmail.com> |
| |
| * doc/invoke.texi: fix typo. |
| * doc/objc.texi: fix typo. |
| |
| 2013-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint |
| for the first two alternatives. |
| |
| 2013-01-24 Diego Novillo <dnovillo@google.com> |
| |
| * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o. |
| (ggc-zone.o): Remove. |
| * configure.ac: Remove option --with-gc. |
| * configure: Re-generate. |
| * doc/install.texi: Remove documentation for --with-gc. |
| * gengtype.c (write_enum_defn): Remove. Update all users. |
| (write_Types_process_field): Remove generation of gt_e_* argument. |
| (output_type_enum): Remove. Update all users. |
| (write_enum_defn): Remove. Update all users. |
| (enum alloc_zone): Remove. Update all users. |
| (write_splay_tree_allocator_def): Remove generation of gt_e_* argument. |
| * ggc-common.c (ggc_splay_alloc): Remove first argument. |
| Update all callers. |
| (struct ptr_data): Remove field TYPE. Update all users. |
| (gt_pch_note_object): Remove argument TYPE. Update all users. |
| * ggc-internal.h (ggc_pch_alloc_object): Remove last argument. |
| Update all users. |
| * ggc-none.c (ggc_alloc_typed_stat): Remove. |
| (struct alloc_zone): Remove. |
| (ggc_internal_alloc_zone_stat): Remove. |
| (ggc_internal_cleared_alloc_zone_stat): Remove. |
| * ggc-page.c (ggc_alloc_typed_stat): Remove. |
| (ggc_pch_count_object): Remove last argument. Update all users. |
| (ggc_pch_alloc_object): Remove last argument. Update all users. |
| (struct alloc_zone): Remove. |
| * ggc-zone.c: Remove. |
| * ggc.h (gt_pch_note_object): Remove last argument. Update all users. |
| (struct alloc_zone): Remove. |
| (ggc_alloc_typed_stat): Remove. |
| (ggc_alloc_typed): Remove. |
| (ggc_splay_alloc): Remove first argument. |
| (rtl_zone): Remove. Update all users. |
| (tree_zone): Remove. Update all users. |
| (tree_id_zone): Remove. Update all users. |
| (ggc_internal_zone_alloc_stat): Remove. Update all users. |
| (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users. |
| (ggc_internal_zone_vec_alloc_stat): Remove. Update all users. |
| * tree-ssanames.c: Remove references to zone allocator in comments. |
| |
| 2013-01-24 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/avr.c (avr_out_fract): Make register numbers that |
| might be outside of source operand signed. |
| |
| 2013-01-24 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/constraints.md (Yf): New constraint. |
| * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead |
| of f constraint to conditionaly disable x87 register preferences. |
| (*movdf_internal): Ditto. |
| (*movsf_internal): Ditto. |
| |
| 2013-01-24 Steven Bosscher <steven@gcc.gnu.org> |
| |
| PR inline-asm/55934 |
| * lra-assigns.c (assign_by_spills): Throw away the pattern of asms |
| that have operands with impossible constraints. |
| Add a FIXME for a speed-up opportunity. |
| * lra-constraints.c (process_alt_operands): Verify that a class |
| selected from constraints on asms is valid for the operand mode. |
| (curr_insn_transform): Remove incorrect comment. |
| |
| 2013-01-23 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that |
| TOC operand is a valid symbol ref in the constant pool. |
| |
| 2013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
| |
| * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS |
| |
| 2013-01-23 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/54222 |
| * config/avr/stdfix.h: New file. |
| * t-avr (stdfix-gcc.h): New rule to build it. |
| (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h. |
| |
| 2013-01-23 Kostya Serebryany <kcc@google.com> |
| |
| * config/darwin.h: remove dependency on |
| CoreFoundation (asan on Mac OS). |
| |
| 2013-01-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/49069 |
| * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand |
| instead of cmpdi_operand for first comparison operand. |
| Don't assert that comparison operands aren't both constants. |
| |
| 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com> |
| |
| * doc/install.texi (Downloading the Source): Update references to |
| downloading separate components. |
| |
| 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com> |
| |
| * doc/extend.texi (__int128): Improve grammar. |
| |
| 2013-01-22 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/56028 |
| * config/i386/i386.md (*movti_internal_rex64): Change (o,riF) |
| alternative to (o,r). |
| (*movdi_internal_rex64): Remove (!o,n) alternative. |
| (DImode immediate->memory splitter): Remove. |
| (DImode immediate->memory peephole2): Remove. |
| (movtf): Enable for TARGET_64BIT || TARGET_SSE. |
| (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r) |
| alternative to (!o,*r). |
| (*movtf_internal_sse): New pattern. |
| (*movxf_internal_rex64): New pattern. |
| (*movxf_internal): Disable for TARGET_64BIT. |
| (*movdf_internal_rex64): Remove (!o,F) alternative. |
| |
| 2013-01-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56074 |
| * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc) |
| isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION. |
| * tree-vect-loop-manip.c (find_loop_location): Also ignore |
| stmt locations where LOCATION_LOCUS of the stmt location is |
| UNKNOWN_LOCATION or BUILTINS_LOCATION. |
| |
| PR target/55686 |
| * config/i386/i386.md (UNSPEC_STOS): New. |
| (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1, |
| *strsetqi_1): Add UNSPEC_STOS. |
| |
| 2013-01-22 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR c++/56067 |
| * doc/invoke.texi: Remove left over -Wsynth example. |
| |
| 2013-01-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56051 |
| * fold-const.c (fold_binary_loc): Don't fold |
| X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either |
| a narrowing conversion, or widening conversion from signed |
| to unsigned. |
| |
| 2013-01-21 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR rtl-optimization/56023 |
| * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions, |
| dependent on debug instruction. |
| |
| 2013-01-21 Martin Jambor <mjambor@suse.cz> |
| |
| PR middle-end/56022 |
| * function.c (allocate_struct_function): Call |
| invoke_set_current_function_hook earlier. |
| |
| 2013-01-21 Jakub Jelinek <jakub@redhat.com> |
| |
| * reload1.c (init_reload): Only initialize reload_obstack |
| during the first call. |
| |
| 2013-01-21 Marek Polacek <polacek@redhat.com> |
| |
| * cfgloop.c (verify_loop_structure): Fix up grammar. |
| |
| 2013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com> |
| |
| * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift, |
| pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift. |
| |
| 2013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
| |
| PR target/56058 |
| * config/arm/marvell-pj4.md: Update copyright year. |
| Fix up use of alu to alu_reg and simple_alu_imm. |
| |
| 2013-01-21 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA. |
| |
| 2013-01-20 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/55433 |
| * lra-constraints.c (curr_insn_transform): Don't reuse original |
| insn for secondary memory move when memory mode should be different. |
| |
| 2013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi, |
| atomic_storedi_1): New patterns. |
| |
| 2013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
| |
| btver2 pipeline descriptions. |
| * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline |
| descriptions. |
| * config/i386/i386.md (btver2_decode): New type attributes. |
| * config/i386/sse.md (btver2_decode, btver2_sse_attr): New |
| type attributes. |
| * config/i386/btver2.md: New file describing btver2 pipelines. |
| |
| 2013-01-19 Andrew Pinski <apinski@cavium.com> |
| |
| PR tree-optimization/52631 |
| * tree-ssa-sccvn (visit_use): Before looking up the original |
| statement, try looking up the simplified expression. |
| |
| 2013-01-19 Anthony Green <green@moxielogic.com> |
| |
| * config/moxie/moxie.c (moxie_expand_prologue): Set |
| current_function_static_stack_size. |
| |
| 2013-01-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/56029 |
| * tree-phinodes.c (reserve_phi_args_for_new_edge): Set |
| gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION. |
| |
| 2013-01-18 Sharad Singhai <singhai@google.com> |
| |
| PR tree-optimization/55995 |
| * dumpfile.c (dump_loc): Print location only if available. |
| * tree-vectorizer.c (increase_alignment): Intialize vect_location. |
| |
| 2013-01-18 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/55433 |
| * lra-constraints.c (curr_insn_transform): Reuse original insn for |
| secondary memory move. |
| (inherit_reload_reg): Use rclass instead of cl for |
| check_secondary_memory_needed_p. |
| |
| 2013-01-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/56015 |
| * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle |
| the case where writing real complex part of target modifies op1. |
| |
| 2013-01-18 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-simd.md |
| (aarch64_vcond_internal<mode>): Handle unordered cases. |
| * config/aarch64/iterators.md (v_cmp_result): New. |
| |
| 2013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com> |
| Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
| |
| * config/arm/marvell-pj4.md: New file. |
| * config/arm/arm.c (arm_issue_rate): Add marvell_pj4. |
| * config/arm/arm.md (generic_sched): Add marvell_pj4. |
| (generic_vfp): Likewise. |
| * config/arm/arm-cores.def: Add marvell-pj4. |
| * config/arm/arm-tune.md: Regenerate. |
| * config/arm/arm-tables.opt: Regenerate. |
| * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4. |
| * doc/invoke.texi: Document marvell-pj4. |
| |
| 2013-01-18 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/arm_neon.h: Map scalar types to standard types. |
| |
| 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
| |
| PR debug/54114 |
| PR debug/54402 |
| PR debug/49888 |
| * var-tracking.c (negative_power_of_two_p): New. |
| (global_get_addr_cache, local_get_addr_cache): New. |
| (get_addr_from_global_cache, get_addr_from_local_cache): New. |
| (vt_canonicalize_addr): Rewrite using the above. Adjust the |
| heading comment. |
| (vt_stack_offset_p): Remove. |
| (vt_canon_true_dep): Always canonicalize loc's address. |
| (clobber_overlapping_mems): Make sure we have a MEM. |
| (local_get_addr_clear_given_value): New. |
| (val_reset): Clear local cached entries. |
| (compute_bb_dataflow): Create and release the local cache. |
| Disable duplicate MEMs clobbering. |
| (emit_notes_in_bb): Clobber MEMs likewise. |
| (vt_emit_notes): Create and release the local cache. |
| (vt_initialize, vt_finalize): Create and release the global |
| cache, respectively. |
| * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs. |
| |
| 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
| |
| PR libmudflap/53359 |
| * tree-mudflap.c (mudflap_finish_file): Skip deferred decls |
| not found in the symtab. |
| |
| 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
| |
| PR debug/56006 |
| PR rtl-optimization/55547 |
| PR rtl-optimization/53827 |
| PR debug/53671 |
| PR debug/49888 |
| * alias.c (offset_overlap_p): New, factored out of... |
| (memrefs_conflict_p): ... this. Use absolute sizes. Retain |
| the conservative special case for symbolic constants. Don't |
| adjust zero sizes on alignment. |
| |
| 2013-01-18 Bernd Schmidt <bernds@codesourcery.com> |
| |
| PR rtl-optimization/52573 |
| * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a |
| REG_UNUSED for the same register. |
| |
| 2013-01-17 Richard Biener <rguenther@suse.de> |
| Marek Polacek <polacek@redhat.com> |
| |
| PR rtl-optimization/55833 |
| * loop-unswitch.c (unswitch_loops): Move loop verification... |
| (unswitch_single_loop): ...here. Call mark_irreducible_loops. |
| * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter. |
| Set it to true when we're removing a loop from hierarchy tree in |
| an irreducible region. |
| (fix_bb_placements): Adjust caller. |
| (fix_loop_placements): Likewise. |
| |
| 2013-01-17 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/builtins.def (DEF_BUILTIN): Factor out |
| "__builtin_avr_" from NAME, turn NAME to an uppercase identifier. |
| Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'. |
| Remove ID. Adjust comments. |
| * config/avr/avr-c.c (avr_builtin_name): Remove. |
| (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop. |
| * config/avr/avr.c (avr_tolower): New static function. |
| (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'. |
| Stringify NAME, prefix it with "__builtin_avr_" and lowercase it. |
| (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for |
| default expansion. |
| |
| 2013-01-17 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/55273 |
| * loop-iv.c (iv_number_of_iterations): Consider zero iteration case. |
| |
| 2013-01-17 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/55981 |
| * config/i386/sync.md (atomic_store<mode>): Always generate SWImode |
| store through atomic_store<mode>_1. |
| (atomic_store<mode>_1): Macroize insn using SWI mode iterator. |
| |
| 2013-01-17 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimizations/55264 |
| * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true |
| for virtual methods. |
| * ipa.c (symtab_remove_unreachable_nodes): Never return true for |
| virtual methods before inlining is over. |
| * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for |
| virtual functions. |
| * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as |
| non-virtual. |
| |
| 2013-01-16 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/56005 |
| * sched-deps.c (sched_analyze_2): Check deps->readonly for adding |
| pending reads for prefetch. |
| |
| 2013-01-16 Ian Bolton <ian.bolton@arm.com> |
| |
| * config/aarch64/aarch64.md |
| (*cstoresi_neg_uxtw): New pattern. |
| (*cmovsi_insn_uxtw): New pattern. |
| (*<optab>si3_uxtw): New pattern. |
| (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern. |
| (*<optab>si3_insn_uxtw): New pattern. |
| (*bswapsi2_uxtw): New pattern. |
| |
| 2013-01-16 Richard Biener <rguenther@suse.de> |
| |
| * tree-inline.c (tree_function_versioning): Remove set but |
| never used variable. |
| |
| 2013-01-16 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55964 |
| * tree-flow.h (rename_variables_in_loop): Remove. |
| (rename_variables_in_bb): Likewise. |
| * tree-loop-distribution.c (update_phis_for_loop_copy): Remove. |
| (copy_loop_before): Adjust and delete update-ssa status. |
| * tree-vect-loop-manip.c (rename_variables_in_bb): Make static. |
| (rename_variables_in_bb): Likewise. Properly walk over predecessors. |
| (rename_variables_in_loop): Remove. |
| (slpeel_update_phis_for_duplicate_loop): Likewise. |
| (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops, |
| use available cfg machinery instead of duplicating it. |
| Update PHI nodes and perform poor-mans SSA update here. |
| (slpeel_tree_peel_loop_to_edge): Adjust. |
| |
| 2013-01-16 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/54767 |
| PR tree-optimization/53465 |
| * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465. |
| (vrp_visit_phi_node): For PHI arguments coming via backedges |
| drop all symbolical range information. |
| (execute_vrp): Compute backedges. |
| |
| 2013-01-16 Richard Biener <rguenther@suse.de> |
| |
| * doc/install.texi: Update CLooG and ISL requirements to |
| 0.18.0 and 0.11.1. |
| |
| 2013-01-16 Christian Bruel <christian.bruel@st.com> |
| |
| PR target/55301 |
| * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol. |
| (broken_move): Handle UNSPECV_SP_SWITCH_B. |
| * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG). |
| |
| 2013-01-16 DJ Delorie <dj@redhat.com> |
| |
| * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New. |
| (UNSPECV_SP_SWITCH_E): New. |
| (sp_switch_1): Change to an unspec. |
| (sp_switch_2): Change to an unspec. Don't use post-inc when we |
| replace $r15. |
| |
| 2013-01-16 Uros Bizjak <ubizjak@gmail.com> |
| |
| * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument |
| with MEMMODEL_MASK before comparing with MEMMODEL_* memory types. |
| * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto. |
| (expand_mem_thread_fence): Ditto. |
| (expand_mem_signal_fence): Ditto. |
| (expand_atomic_load): Ditto. |
| (expand_atomic_store): Ditto. |
| |
| 2013-01-16 Alexandre Oliva <aoliva@redhat.com> |
| |
| PR rtl-optimization/55547 |
| PR rtl-optimization/53827 |
| PR debug/53671 |
| PR debug/49888 |
| * alias.c (memrefs_conflict_p): Set sizes to negative after |
| AND adjustments. |
| |
| 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/55940 |
| * function.c (thread_prologue_and_epilogue_insns): Always |
| add crtl->drap_reg to set_up_by_prologue.set, even if |
| stack_realign_drap is false. |
| |
| 2013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
| |
| * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3, |
| and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3, |
| *call): Fix indention. |
| |
| 2013-01-15 Tom de Vries <tom@codesourcery.com> |
| |
| PR target/55876 |
| * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG. |
| Update comment. |
| |
| 2013-01-15 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/55153 |
| * sched-deps.c (sched_analyze_2): Add pending reads for prefetch. |
| |
| 2013-01-15 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/55920 |
| * tree-sra.c (analyze_access_subtree): Do not mark non-removable |
| accesses as grp_to_be_debug_replaced. |
| |
| 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/55920 |
| * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced |
| there is non-useless type conversion needed from debug rhs to lhs, |
| use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR. |
| |
| 2013-01-15 Joseph Myers <joseph@codesourcery.com> |
| Mikael Pettersson <mikpe@it.uu.se> |
| |
| PR target/43961 |
| * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for |
| Thumb. |
| (ASM_OUTPUT_CASE_LABEL): Remove. |
| (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty. |
| * final.c (shorten_branches): Update alignment of labels before |
| jump tables if CASE_VECTOR_SHORTEN_MODE. |
| |
| 2013-01-15 Richard Biener <rguenther@suse.de> |
| |
| PR bootstrap/55961 |
| * system.h: Do not include gmp.h for building host tools. |
| |
| 2013-01-15 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/55882 |
| * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly |
| account for bitpos when computing alignment. |
| |
| 2013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com> |
| |
| * config/i386/i386-c.c (ix86_target_macros_internal): New case. |
| (ix86_target_macros_internal): Likewise. |
| |
| * config/i386/i386.c (m_CORE2I7): Removed. |
| (m_CORE_HASWELL): New macro. |
| (m_CORE_ALL): Likewise. |
| (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL. |
| (initial_ix86_arch_features): Likewise. |
| (processor_target_table): Initializations for Core avx2. |
| (cpu_names): New names "core-avx2". |
| (ix86_option_override_internal): Changed PROCESSOR_COREI7 by |
| PROCESSOR_CORE_HASWELL. |
| (ix86_issue_rate): New case. |
| (ia32_multipass_dfa_lookahead): Likewise. |
| (ix86_sched_init_global): Likewise. |
| |
| * config/i386/i386.h (TARGET_HASWELL): New macro. |
| (target_cpu_default): New TARGET_CPU_DEFAULT_haswell. |
| (processor_type): New PROCESSOR_HASWELL. |
| |
| 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/55955 |
| * tree-vect-loop.c (vectorizable_reduction): Give up early on |
| *SHIFT_EXPR and *ROTATE_EXPR codes. |
| |
| PR tree-optimization/48766 |
| * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for |
| -ftrapv disable -fwrapv. |
| |
| 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/55974 |
| * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH |
| etc. to 1 and not to __flash. |
| Use LL suffix for __INT24_MAX__ with -mint8. |
| Use ULL suffix for __UINT24_MAX__ with -mint8. |
| |
| 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/avr-arch.h |
| (struct base_arch_s): Use typedef avr_arch_t instead. |
| (struct arch_info_s): Use typedef avr_arch_info_t instead. |
| (struct mcu_type_s): Use typedef avr_mcu_t instead. |
| * config/avr/avr.c: Same. |
| * config/avr/avr-devices.c: Same. |
| * config/avr/driver-avr.c: Same. |
| * config/avr/gen-avr-mmcu-texi.c: Same. |
| * config/avr/avr-mcus.def: Adjust comment. |
| |
| 2013-01-14 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New. |
| * config/aarch64/iterators.md (VALLDI): New. |
| |
| 2013-01-14 Uros Bizjak <ubizjak@gmail.com> |
| Andi Kleen <ak@linux.intel.com> |
| |
| PR target/55948 |
| * config/i386/sync.md (atomic_store<mode>_1): New pattern. |
| (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE |
| memmodel flag. |
| |
| 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/avr-stdint.h: Remove trailing blanks. |
| * config/avr/avr-log.h: Same. |
| * config/avr/avr-arch.h: Same. |
| * config/avr/avr-devices.c: Same. |
| * config/avr/avr-dimode.md: Same. |
| * config/avr/predicates.md: Same. |
| * config/avr/avr-c.c: Same. And fix typo. |
| |
| * config/avr/avr-protos.h: Same. And: |
| (function_arg_regno_p): Rename to avr_function_arg_regno_p. |
| (init_cumulative_args): Rename to avr_init_cumulative_args. |
| (expand_prologue): Rename to avr_expand_prologue. |
| (expand_epilogue): Rename to avr_expand_epilogue. |
| (adjust_insn_length): Rename to avr_adjust_insn_length. |
| (notice_update_cc): Rename to avr_notice_update_cc. |
| (final_prescan_insn): Rename to avr_final_prescan_insn. |
| * config/avr/avr.c: Same. |
| * config/avr/avr.h: Same. |
| * config/avr/avr.md: Remove trailing blanks. |
| (prologue): Use avr_expand_prologue. |
| (epilogue, sibcall_epilogue): Use avr_expand_epilogue. |
| |
| 2013-01-14 Richard Biener <rguenther@suse.de> |
| |
| * tree-cfg.c (verify_expr_location, verify_expr_location_1, |
| verify_location, collect_subblocks): New functions. |
| (verify_gimple_in_cfg): Verify that locations only reference |
| BLOCKs in the functions BLOCK tree. |
| |
| 2013-01-14 Richard Biener <rguenther@suse.de> |
| |
| * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated |
| PHI argument. |
| * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly |
| unshare reference. |
| (insert_out_of_ssa_copy_on_edge): Likewise. |
| (rewrite_close_phi_out_of_ssa): Likewise. |
| * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare |
| debug expressions. |
| * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare |
| propagated constants. |
| * tree-cfg.c (tree_node_can_be_shared): Handled component-refs |
| can not be shared. |
| |
| 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/avr-modes.def: Add GPL copyright notice. |
| |
| 2013-01-13 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sync.md (mem_thread_fence): Mask operands[0] with |
| MEMMODEL_MASK to determine memory model. |
| (atomic_store<mode>): Ditto from operands[2]. |
| * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool. |
| |
| 2013-01-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/55935 |
| * gimple-fold.c (get_symbol_constant_value): Call unshare_expr. |
| (fold_gimple_assign): Don't call unshare_expr here. |
| (fold_ctor_reference): Call unshare_expr. |
| |
| 2013-01-13 Terry Guo <terry.guo@arm.com> |
| |
| * Makefile.in (s-mlib): New argument MULTILIB_REUSE. |
| * doc/fragments.texi: Document MULTILIB_REUSE. |
| * gcc.c (multilib_reuse): New internal spec. |
| (set_multilib_dir): Also search multilib from multilib_reuse. |
| * genmultilib (tmpmultilib3): Refactor code. |
| (tmpmultilib4): Ditto. |
| (multilib_reuse): New multilib argument. |
| |
| 2013-01-13 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * Makefile.in: Update copyright. |
| |
| 2013-01-12 Tom de Vries <tom@codesourcery.com> |
| |
| PR middle-end/55890 |
| * calls.c (expand_call): Check if arg_nr is valid. |
| |
| 2013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| * doc/extend.texi (X86 Built-in Functions): Add whitespace in |
| __builtin_ia32_paddb256 and __builtin_ia32_pavgb256 |
| documentation. Add missing '__' in front of |
| __builtin_ia32_packssdw256. |
| |
| 2013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| PR target/55719 |
| * config/s390/s390.c (s390_preferred_reload_class): Do not return |
| NO_REGS for larl operands. |
| (s390_reload_larl_operand): Use s390_load_address instead of |
| emit_move_insn. |
| |
| 2013-01-11 Richard Biener <rguenther@suse.de> |
| |
| * tree-cfg.c (verify_node_sharing_1): Split out from ... |
| (verify_node_sharing): ... here. |
| (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree. |
| |
| 2013-01-11 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * configure.ac (Tree checking): Set TREECHECKING to yes if enabled. |
| Substitute TREECHECKING. |
| * configure: Regenerate. |
| * Makefile.in (TREECHECKING): New. |
| |
| 2013-01-11 Richard Guenther <rguenther@suse.de> |
| |
| PR tree-optimization/44061 |
| * tree-vrp.c (extract_range_basic): Compute zero as |
| value-range for __builtin_constant_p of function parameters. |
| |
| 2013-01-10 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| Update copyright years. |
| |
| 2013-01-10 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/55672 |
| * lra-eliminations.c (mark_not_eliminable): Permit addition with |
| const to be eliminable. |
| |
| 2013-01-10 David Edelsohn <dje.gcc@gmail.com> |
| |
| * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix. |
| * configure: Regenerate. |
| |
| 2013-01-10 Richard Biener <rguenther@suse.de> |
| |
| * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes. |
| |
| 2013-01-10 Richard Biener <rguenther@suse.de> |
| |
| PR bootstrap/55792 |
| * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set |
| locations for virtual PHI arguments. |
| (rewrite_update_phi_arguments): Likewise. |
| |
| 2013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com> |
| |
| * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi |
| on to assembler. |
| |
| 2013-01-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/55921 |
| * tree-complex.c (expand_complex_asm): New function. |
| (expand_complex_operations_1): Call it for GIMPLE_ASM. |
| |
| 2013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
| |
| PR target/55718 |
| * config/s390/s390.c (s390_symref_operand_p) |
| (s390_loadrelative_operand_p): Merge the two functions. |
| (s390_check_qrst_address, print_operand_address): Add parameters |
| to s390_loadrelative_operand_p invokation. |
| (s390_check_symref_alignment): Use s390_loadrelative_operand_p. |
| (s390_reload_larl_operand, s390_secondary_reload): Use |
| s390_loadrelative_operand_p instead of s390_symref_operand_p. |
| (legitimize_pic_address): Handle @GOTENT and @PLT + addend. |
| |
| 2013-01-09 Mike Stump <mikestump@comcast.net> |
| |
| * dse.c (record_store): Remove unnecessary assert. |
| |
| 2013-01-09 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/55569 |
| * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type. |
| * cfgloop.h (scale_loop_profile): Likewise. |
| |
| 2013-01-09 Jan Hubicka <jh@suse.cz> |
| |
| PR lto/45375 |
| * ipa-inline.c (ipa_inline): Remove extern inlines and virtual |
| functions. |
| * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data. |
| |
| 2013-01-09 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| PR middle-end/55114 |
| * expr.h (maybe_emit_group_store): Declare. |
| * expr.c (maybe_emit_group_store): New function. |
| * builtins.c (expand_builtin_int_roundingfn): Call it. |
| (expand_builtin_int_roundingfn_2): Likewise. |
| |
| 2013-01-09 Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/55829 |
| * lra-constraints.c (match_reload): Add code for absent output. |
| (curr_insn_transform): Add code for reloads of matched inputs |
| without output. |
| |
| 2013-01-09 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sse.md (*vec_interleave_highv2df): Change mode |
| attribute of movddup insn to DF. |
| (*vec_interleave_lowv2df): Ditto. |
| (vec_dupv2df): Ditto. |
| |
| 2013-01-09 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimiation/55875 |
| * tree-ssa-loop-niter.c (number_of_iterations_cond): Add |
| EVERY_ITERATION parameter. |
| (number_of_iterations_exit): Check if exit is executed every iteration. |
| (idx_infer_loop_bounds): Similarly here. |
| (n_of_executions_at_most): Simplify |
| to only test for cases where statement is dominated by the |
| particular bound; handle correctly the "postdominance" test. |
| (scev_probably_wraps_p): Use max loop iterations info |
| as a global bound first. |
| |
| 2013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com> |
| Nick Clifton <nickc@redhat.com> |
| |
| * config/v850/v850.md (cbranchsf4): New pattern. |
| (cstoresf4): New pattern. |
| (cbranchdf4): New pattern. |
| (cstoredf4): New pattern. |
| (movsicc): Disallow floating point comparisons. |
| (cmpsf_le_insn): Fix order of operators. |
| (cmpsf_lt_insn): Likewise. |
| (cmpsf_eq_insn): Likewise. |
| (cmpdf_le_insn): Likewise. |
| (cmpdf_lt_insn): Likewise. |
| (cmpdf_eq_insn): Likewise. |
| (cmpsf_ge_insn): Use LE comparison. |
| (cmpdf_ge_insn): Likewise. |
| (cmpsf_gt_insn): Use LT comparison. |
| (cmpdf_gt_insn): Likewise. |
| (cmpsf_ne_insn): Delete pattern. |
| (cmpdf_ne_insn): Delete pattern. |
| * config/v850/v850.c (v850_gen_float_compare): Use |
| gen_cmpdf_eq_insn for NE comparison. |
| (v850_float_z_comparison_operator) |
| (v850_float_nz_comparison_operator): Move from here ... |
| * config/v850/predicates.md: ... to here. Move GT and GE |
| comparisons into v850_float_z_comparison_operator. |
| * config/v850/v850-protos.h (v850_float_z_comparison_operator): |
| Delete prototype. |
| (v850_float_nz_comparison_operator): Likewise. |
| |
| 2013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv |
| with calls to gen_insvsi/gen_insvdi. |
| |
| 2013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
| |
| * config/i386/i386.c (initial_ix86_tune_features): Set up |
| X86_TUNE_AVX128_OPTIMAL for m_BTVER2. |
| |
| 2013-01-09 Steven Bosscher <steven@gcc.gnu.org> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/48189 |
| * predict.c (predict_loops): If max is 0, don't call compare_tree_int. |
| If nitercst is 0, don't predict the exit edge. |
| |
| 2013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> |
| |
| * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r |
| in asm_fprintf with reg_names. |
| (aarch64_print_operand_address): Likewise. |
| (aarch64_return_addr): Likewise. |
| * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove. |
| |
| 2013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| * config/pa/pa.h (VAL_U6_BITS_P): Define. |
| (INT_U6_BITS): Likewise. |
| * config/pa/predicates.md (uint6_operand): New predicate. |
| (shift5_operand, shift6_operand): Likewise. |
| * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of |
| arith32_operand. |
| (lshrdi3): Use shift6_operand. |
| (shrpsi4, shrpdi4): New insn patterns. |
| (extzv): Delete expander. |
| (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand |
| predicates in unamed zero extract patterns. Tighten common constraint. |
| (extv): Delete expander. |
| (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand |
| predicates in unamed sign extract patterns. Tighten common constraint. |
| (insv): Delete expander. |
| (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand |
| predicates in unamed insert patterns. Tighten common constraint. |
| Change uint32_operand predicate to uint6_operand predicate in unamed |
| DImode pattern to insert constant values of type 1...1xxxx. |
| |
| 2013-01-04 Jan Hubicka <jh@suse.cz> |
| |
| PR tree-optimization/55823 |
| * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering |
| issue. |
| |
| 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
| Uros Bizjak <ubizjak@gmail.com> |
| |
| PR rtl-optimization/55845 |
| * df-problems.c (can_move_insns_across): Stop scanning at |
| volatile_insn_p source instruction or give up if |
| across_from .. across_to range contains any volatile_insn_p |
| instructions. |
| |
| 2013-01-08 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (vec_init<mode>): New. |
| * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init): |
| Declare. |
| * config/aarch64/aarch64.c (aarch64_simd_dup_constant, |
| aarch64_simd_make_constant, aarch64_expand_vector_init): New. |
| |
| 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/55341 |
| * asan.c (asan_clear_shadow): New function. |
| (asan_emit_stack_protection): Use it. |
| |
| 2013-01-08 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>, |
| aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand |
| with tab instead of space. |
| |
| 2013-01-08 Nick Clifton <nickc@redhat.com> |
| |
| * config/rl78/rl78.c (rl78_expand_prologue): Always select |
| register bank 0 at the start of an interrupt handler. |
| * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and |
| MDBH registers. |
| |
| 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-simd.md |
| (aarch64_simd_bsl<mode>_internal): Add floating-point modes. |
| (aarch64_simd_bsl): Likewise. |
| (aarch64_vcond_internal<mode>): Likewise. |
| (vcond<mode><mode>): Likewise. |
| (aarch64_cm<cmp><mode>): Fix constraints, add new modes. |
| * config/aarch64/iterators.md (V_cmp_result): Add V2DF. |
| |
| 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-builtins.c |
| (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf. |
| |
| 2013-01-08 Martin Jambor <mjambor@suse.cz> |
| |
| PR debug/55579 |
| * tree-sra.c (analyze_access_subtree): Return true also after |
| potentially creating a debug-only replacement. |
| |
| 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/55890 |
| * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p. |
| |
| PR tree-optimization/54120 |
| * tree-vrp.c (range_fits_type_p): Don't allow |
| src_precision < precision from signed vr to unsigned_p |
| if vr->min or vr->max is negative. |
| (simplify_float_conversion_using_ranges): Test can_float_p |
| against CODE_FOR_nothing. |
| |
| 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
| Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/55851 |
| * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P |
| types instead of just INTEGER_TYPE types. |
| |
| 2013-01-07 Mark Kettenis <kettenis@openbsd.org> |
| |
| * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT, |
| TF_SIZE): Define. |
| |
| 2013-01-07 Steve Ellcey <sellcey@mips.com> |
| |
| PR target/42661 |
| * config/mips/mips.opt: Change mad to mmad to match documentation. |
| |
| 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/55897 |
| * doc/extend.texi (AVR Named Address Spaces): __memx goes into |
| .progmemx.data now. |
| |
| 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/55897 |
| * config/avr/avr.h (ADDR_SPACE_COUNT): New enum. |
| (avr_addrspace_t): Add .section_name field. |
| * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as |
| array size. |
| (avr_addrspace): Same. Initialize .section_name. Remove last |
| NULL entry. Put __memx into .progmemx.data. |
| (progmem_section_prefix): Remove. |
| (avr_asm_init_sections): No need to initialize progmem_section. |
| (avr_asm_named_section): Use avr_addrspace[].section_name to get |
| section name prefix. |
| (avr_asm_select_section): Ditto. And use get_unnamed_section to |
| retrieve the progmem section. |
| * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop |
| boundary to run over avr_addrspace[]. |
| (avr_register_target_pragmas): Ditto. |
| |
| 2013-01-06 Jakub Jelinek <jakub@redhat.com> |
| |
| * varasm.c (output_constant_def_contents): For asan_protect_global |
| protected strings, adjust DECL_ALIGN if needed, before testing for |
| anchored symbols. |
| (place_block_symbol): Adjust size for asan protected STRING_CSTs if |
| TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected |
| normal decls. |
| (output_object_block): For asan protected decls, emit asan padding |
| after their contents. |
| * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here. |
| (asan_finish_file): Test it here instead. |
| |
| 2013-01-07 Nick Clifton <nickc@redhat.com> |
| Matthias Klose <doko@debian.org> |
| Doug Kwan <dougkwan@google.com> |
| H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR driver/55470 |
| * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold. |
| |
| * common.opt: Add fuse-ld=bfd and fuse-ld=gold. |
| |
| * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2. |
| |
| * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold. |
| |
| * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold. |
| |
| 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR target/54461 |
| * doc/install.texi (Cross-Compiler-Specific Options): Document |
| --with-avrlibc. |
| |
| 2013-01-07 Tejas Belagod <tejas.belagod@arm.com> |
| |
| * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32, |
| vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64, |
| vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16, |
| vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32, |
| vqmovun_high_s64): Fix source operand number and update copyright. |
| |
| 2013-01-07 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/55890 |
| * gimple.h (gimple_call_builtin_p): New overload. |
| * gimple.c (validate_call): New function. |
| (gimple_call_builtin_p): Likewise. |
| * tree-ssa-structalias.c (find_func_aliases_for_builtin_call): |
| Use gimple_call_builtin_p. |
| (find_func_clobbers): Likewise. |
| * tree-ssa-strlen.c (adjust_last_stmt): Likewise. |
| (strlen_optimize_stmt): Likewise. |
| |
| 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const. |
| (vld1q_dup_*): Likewise. |
| (vld1_*): Likewise. |
| (vld1q_*): Likewise. |
| (vld1_lane_*): Likewise. |
| (vld1q_lane_*): Likewise. |
| |
| 2013-01-07 Richard Biener <rguenther@suse.de> |
| |
| * lto-streamer.h (LTO_minor_version): Bump to 2. |
| |
| 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com> |
| |
| * config/aarch64/aarch64-protos.h |
| (aarch64_const_double_zero_rtx_p): Rename to... |
| (aarch64_float_const_zero_rtx_p): ...this. |
| (aarch64_float_const_representable_p): New. |
| (aarch64_output_simd_mov_immediate): Likewise. |
| * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor |
| move immediate case. |
| * config/aarch64/aarch64.c |
| (aarch64_const_double_zero_rtx_p): Rename to... |
| (aarch64_float_const_zero_rtx_p): ...this. |
| (aarch64_print_operand): Allow printing of new constants. |
| (aarch64_valid_floating_const): New. |
| (aarch64_legitimate_constant_p): Check for valid floating-point |
| constants. |
| (aarch64_simd_valid_immediate): Likewise. |
| (aarch64_vect_float_const_representable_p): New. |
| (aarch64_float_const_representable_p): Likewise. |
| (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0. |
| (aarch64_output_simd_mov_immediate): New. |
| * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative. |
| (*movdf_aarch64): Likewise. |
| * config/aarch64/constraints.md (Ufc): New. |
| (Y): call aarch64_float_const_zero_rtx. |
| * config/aarch64/predicates.md (aarch64_fp_compare_operand): New. |
| |
| 2013-01-07 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55888 |
| PR tree-optimization/55862 |
| * tree-ssa-pre.c (phi_translate_1): Revert previous change. |
| (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT, |
| not if it is contained therein. |
| |
| 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
| |
| * config/avr/t-avr: Typo. |
| |
| 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
| |
| PR55243 |
| * config/avr/t-avr: Don't automatically rebuild |
| $(srcdir)/config/avr/t-multilib |
| $(srcdir)/config/avr/avr-tables.opt |
| $(srcdir)/doc/avr-mmcu.texi |
| (avr-mcus): New phony target to build them on request. |
| (s-avr-mlib, s-avr-mmcu-texi): Remove. |
| * avr/avr-mcus.def: Adjust comments. |
| |
| 2013-01-07 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove. |
| |
| 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder. |
| |
| 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * config/tilepro/gen-mul-tables.cc: Put copyright on one line. |
| |
| 2013-01-05 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling |
| to generate profiling. |
| * config/rs6000/aix64.h (LIB_SPEC): Same. |
| |
| 2013-01-04 Andrew Pinski <apinski@cavium.com> |
| |
| * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs): |
| New function. |
| (TARGET_FIXED_CONDITION_CODE_REGS): Define. |
| |
| 2013-01-04 Uros Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode |
| unconditionally. |
| (ix86_expand_move): Ditto. |
| (ix86_zero_extend_to_Pmode): Ditto. |
| (ix86_expand_call): Ditto. |
| (ix86_expand_special_args_builtin): Ditto. |
| (ix86_expand_builtin): Ditto. |
| |
| 2013-01-04 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55862 |
| * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after |
| translating them through PHI nodes. |
| |
| 2013-01-04 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/55755 |
| * tree-sra.c (sra_modify_assign): Do not check that an access has no |
| children when trying to avoid producing a VIEW_CONVERT_EXPR. |
| |
| 2013-01-04 Marek Polacek <polacek@redhat.com> |
| |
| PR middle-end/55859 |
| * opts.c (default_options_optimization): Clarify error message. |
| |
| 2013-01-04 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/55863 |
| * fold-const.c (split_tree): Undo -X - 1 to ~X folding for |
| reassociation. |
| |
| 2013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR target/53789 |
| * config/pa/pa.md (movsi): Revert previous change. |
| * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol |
| references. |
| |
| 2013-01-03 Richard Henderson <rth@redhat.com> |
| |
| * config/i386/i386.c (ix86_expand_move): Always assign to op1 |
| after eliminating TLS symbols. |
| |
| 2013-01-03 Marc Glisse <marc.glisse@inria.fr> |
| |
| PR bootstrap/50167 |
| * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf. |
| * graphite-poly.c (debug_gmp_value): Likewise. |
| |
| 2013-01-03 Uros Bizjak <ubizjak@gmail.com> |
| |
| PR target/55712 |
| * config/i386/i386-c.c (ix86_target_macros_internal): Depending on |
| selected code model, define __code_mode_small__, __code_model_medium__, |
| __code_model_large__, __code_model_32__ or __code_model_kernel__. |
| * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix |
| xchg temporary register with %k. Declare temporary register as |
| early clobbered. |
| [__x86_64__]: For medium and large code models, preserve %rbx register. |
| |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| * tree-data-ref.c (dump_conflict_function): Use less vertical spacing. |
| (dump_subscript): Adjust. |
| (finalize_ddr_dependent): Do not dump redundant info. |
| (analyze_siv_subscript): Adjust. |
| (subscript_dependence_tester): Likewise. |
| (compute_affine_dependence): Likewise. |
| |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| Revert |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55857 |
| * tree-vect-stmts.c (vectorizable_load): Do not setup |
| re-alignment for invariant loads. |
| |
| 2013-01-02 Richard Biener <rguenther@suse.de> |
| |
| * tree-vect-stmts.c (vectorizable_load): When vectorizing an |
| invariant load do not generate a vector load from the scalar location. |
| |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason |
| for not vectorizing. |
| * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do |
| not build INDIRECT_REFs, call get_name once only. |
| (vect_create_data_ref_ptr): Likewise. Dump base object kind |
| based on DR_BASE_OBJECT, not DR_BASE_ADDRESS. |
| |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/55857 |
| * tree-vect-stmts.c (vectorizable_load): Do not setup |
| re-alignment for invariant loads. |
| |
| 2013-01-03 Richard Biener <rguenther@suse.de> |
| |
| PR lto/55848 |
| * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always |
| prefer a built-in decl. |
| |
| 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
| |
| * gcc.c (process_command): Update copyright notice dates. |
| * gcov.c (print_version): Likewise. |
| * gcov-dump.c (print_version): Likewise. |
| |
| PR rtl-optimization/55838 |
| * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on |
| iv0.step, iv1.step and step. |
| |
| 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
| Marc Glisse <marc.glisse@inria.fr> |
| |
| PR tree-optimization/55832 |
| * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and |
| ABS_EXPR<x> < 0 folding use constant_boolean_node instead of |
| integer_{one,zero}_node. |
| |
| 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/54402 |
| * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param. |
| * var-tracking.c (reverse_op): Don't add reverse ops to |
| VALUEs that have already |
| PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list. |
| |
| 2013-01-02 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * doc/contrib.texi: Note years as release manager for Mark Mitchell. |
| |
| 2013-01-02 Teresa Johnson <tejohnson@google.com> |
| |
| * dumpfile.c (dump_loc): Print filename with location. |
| * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use |
| new location_t parameter to emit complete unroll message with |
| new dump framework. |
| (canonicalize_loop_induction_variables): Compute loops location |
| and pass to try_unroll_loop_completely. |
| * loop-unroll.c (report_unroll_peel): New function. |
| (peel_loops_completely): Use new dump format with location |
| for main dumpfile message, and invoke report_unroll_peel on success. |
| (decide_unrolling_and_peeling): Ditto. |
| (decide_peel_once_rolling): Remove old dumpfile message subsumed |
| by report_unroll_peel. |
| (decide_peel_completely): Ditto. |
| (decide_unroll_constant_iterations): Ditto. |
| (decide_unroll_runtime_iterations): Ditto. |
| (decide_peel_simple): Ditto. |
| (decide_unroll_stupid): Ditto. |
| * cfgloop.c (get_loop_location): New function. |
| * cfgloop.h (get_loop_location): Declare. |
| |
| 2013-01-02 Sriraman Tallam <tmsriram@google.com> |
| |
| * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for |
| NULL. |
| |
| 2013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| |
| PR middle-end/55198 |
| * expr.c (expand_expr_real_1): Don't use bitfield extraction for non |
| BLKmode objects when EXPAND_MEMORY is specified. |
| |
| 2013-01-02 Sriraman Tallam <tmsriram@google.com> |
| |
| * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug |
| in loop predicate. |
| (fold_builtin_cpu): Do not share cpu model decls across statements. |
| |
| 2013-01-02 Jason Merrill <jason@redhat.com> |
| |
| PR c++/55804 |
| * tree.c (build_array_type_1): Revert earlier change. |
| |
| 2013-01-02 Yufeng Zhang <yufeng.zhang@arm.com> |
| |
| * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and |
| "cortex-a57". |
| * config/aarch64/aarch64-tune.md: Re-generate. |
| |
| 2013-01-02 Richard Biener <rguenther@suse.de> |
| |
| * tree-vect-stmts.c (vectorizable_load): When vectorizing an |
| invariant load do not generate a vector load from the scalar location. |
| |
| 2013-01-02 Richard Biener <rguenther@suse.de> |
| |
| PR bootstrap/55784 |
| * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS. |
| * configure: Regenerate. |
| |
| 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2) |
| (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3) |
| (expand_builtin_int_roundingfn_2): Keep the original target around |
| for the fallback case. |
| |
| 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
| |
| * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int |
| to be clear for sign changes. |
| |
| 2013-01-01 Jan Hubicka <jh@suse.cz> |
| |
| * ipa-inline-analysis.c: Fix formatting. |
| |
| 2013-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/55831 |
| * tree-vect-loop.c (get_initial_def_for_induction): Use |
| gsi_after_labels instead of gsi_start_bb. |
| |
| Copyright (C) 2013 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |