aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2015-10-13sparc.h (SPARC_STACK_ALIGN): Implement using ROUND_UP macro and ↵Uros Bizjak2-14/+14
UNITS_PER_WORD * 2. * config/sparc/sparc.h (SPARC_STACK_ALIGN): Implement using ROUND_UP macro and UNITS_PER_WORD * 2. * config/sparc/sparc.c (sparc_compute_frame_size): Use ROUND_UP and ROUND_DOWN macros where applicable. (function_arg_record_value, function_arg_record_value_1) (function_arg_record_value_1): Ditto. (emit_save_or_restore_regs): Use ROUND_DOWN to preserve offset alignment to double-word. (sparc_gimplify_va_arg): Use ROUND_UP to calculate rsize. (sparc_emit_probe_stack_range): Use ROUND_DOWN to calculate rounded_size. From-SVN: r228768
2015-10-13Fix parloops gimple_uid usageTom de Vries2-4/+26
2015-10-13 Tom de Vries <tom@codesourcery.com> * tree-parloops.c (reduction_phi): Handle cases that gimple_uid is 0 or -1. Add assert that returned entry matches phi argument. (parallelize_loops): Move calls to init_stmt_vec_info_vec and free_stmt_vec_info_vec ... (gather_scalar_reductions): ... here. Initialize gimple_uids of phis with -1. From-SVN: r228767
2015-10-13Followup to [AArch64_be] Fix vtbl[34] and vtbx4Christophe Lyon2-3/+8
2015-10-13 Christophe Lyon <christophe.lyon@linaro.org> * gcc/testsuite/gcc.target/aarch64/table-intrinsics.c: Fix regexp after r228716 (Fix vtbl[34] and vtbx4). From-SVN: r228762
2015-10-13PR tree-optimization/67909, 67947Yuri Rumyantsev4-1/+51
gcc/ 2014-10-13 Yuri Rumyantsev <ysrumyan@gmail.com> PR tree-optimization/67909, 67947 * tree-ssa-loop-unswitch.c (find_loop_guard): Add check that GUARD_EDGE really skip the inner loop. gcc/testsuite/ 2014-10-13 Yuri Rumyantsev <ysrumyan@gmail.com> PR tree-optimization/67909, 67947 * gcc.dg/torture/pr67947.c: New test. From-SVN: r228760
2015-10-13[PATCH] Allow FSM to thread single block cases tooJeff Law4-4/+79
* tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths): Allow single block jump threading paths. * gcc.dg/tree-ssa/ssa-thread-13.c: New test. From-SVN: r228757
2015-10-13Add param parloops-scheduleTom de Vries4-1/+49
2015-10-13 Tom de Vries <tom@codesourcery.com> PR tree-optimization/67476 * doc/invoke.texi (@item parloops-schedule): New item. * params.def (PARAM_PARLOOPS_SCHEDULE): New DEFPARAMENUM5. * tree-parloops.c: Include params-enum.h. (create_parallel_loop): Handle PARAM_PARLOOPS_SCHEDULE. * testsuite/libgomp.c/autopar-3.c: New test. * testsuite/libgomp.c/autopar-4.c: New test. * testsuite/libgomp.c/autopar-5.c: New test. * testsuite/libgomp.c/autopar-6.c: New test. * testsuite/libgomp.c/autopar-7.c: New test. * testsuite/libgomp.c/autopar-8.c: New test. From-SVN: r228756
2015-10-13Support DEFPARAMENUM in params.defTom de Vries7-32/+150
2015-10-13 Tom de Vries <tom@codesourcery.com> * Makefile.in (PARAMS_H, PLUGIN_HEADERS): Add params-enum.h. * params-enum.h: New file. * opts.c (handle_param): Handle case that param arg is a string. * params-list.h: Handle DEFPARAMENUM5 in params.def. * params.c (find_param): New function, factored out of ... (set_param_value): ... here. (param_string_value_p): New function. * params.h (struct param_info): Add value_names field. (find_param, param_string_value_p): Declare. From-SVN: r228755
2015-10-13Handle original loop tree in expand_omp_for_genericTom de Vries2-9/+26
2015-10-13 Tom de Vries <tom@codesourcery.com> PR tree-optimization/67476 * omp-low.c (expand_omp_for_generic): Handle original loop tree. From-SVN: r228754
2015-10-13tree-vect-data-refs.c (vect_analyze_data_ref_dependences): Allocate the data ↵Richard Biener5-81/+91
dependence vector. 2015-10-13 Richard Biener <rguenther@suse.de> * tree-vect-data-refs.c (vect_analyze_data_ref_dependences): Allocate the data dependence vector. (vect_peeling_hash_insert): Get the peeling hash table as argument. (vect_peeling_hash_get_lowest_cost): Likewise. (vect_enhance_data_refs_alignment): Adjust. (struct _vect_peel_info, struct _vect_peel_extended_info, struct peel_info_hasher): Move from ... * tree-vectorizer.h: ... here. (LOOP_VINFO_COST_MODEL_MIN_ITERS): Remove. (LOOP_VINFO_PEELING_HTAB): Likewise. (struct _loop_vec_info): Remove min_profitable_iters and peeling_htab members. * tree-vect-loop.c (new_loop_vec_info): Do not allocate vectors here. (destroy_loop_vec_info): Adjust. (vect_analyze_loop_2): Do not set LOOP_VINFO_COST_MODEL_MIN_ITERS. (vect_estimate_min_profitable_iters): Use LOOP_VINFO_COMP_ALIAS_DDRS to estimate alias versioning cost. * tree-vect-slp.c (vect_analyze_slp_cost): Dump header. From-SVN: r228751
2015-10-13To...Richard Sandiford4-6/+39
To: gcc-patches@gcc.gnu.org Subject: Add an extra pow rule to match.pd From: Richard Sandiford <richard.sandiford@arm.com> Gcc: private.sent --text follows this line-- Simplify pow(|x|,y) and pow(-x,y) to pow(x,y) if y is an even integer. At the moment this duplicates a case in fold_builtin_pow, but an upcoming patch will move all the fold_builtin_pow rules to match.pd. I'm doing this one early to fix a regression in builtin-10.c for soft-float ARM. gcc/ * real.h (real_isinteger): Declare. * real.c (real_isinteger): New function. * match.pd: Simplify pow(|x|,y) and pow(-x,y) to pow(x,y) if y is an even integer. From-SVN: r228750
2015-10-13Daily bump.GCC Administrator1-1/+1
From-SVN: r228743
2015-10-12[PATCH] Allow FSM threader to thread more complex conditionsJeff Law7-12/+139
* tree-ssa-threadbackward.c (get_gimple_control_stmt): New function. (fsm_find_control_stmt_paths): Change name of first argument to more accurately relfect what it really is. Handle simplification of GIMPLE_COND after finding a thread path for NAME. * tree-ssa-threadedge.c (simplify_control_stmt_condition): Allow nontrivial conditions to be handled by FSM threader. (thread_through_normal_block): Extract the name to looup via FSM threader from COND_EXPR. * gcc.dg/tree-ssa/ssa-thread-12.c: New test. * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Update expected output. * gcc.dg/tree-ssa/ssa-thread-11.c: Renamed from ssa-dom-thread-11.c. From-SVN: r228739
2015-10-12revert: cgraphbuild.c (compute_call_stmt_bb_frequency): Use counts when ↵Jan Hubicka2-11/+12
these are more informative. revert: 2015-10-11 Jan Hubicka <hubicka@ucw.cz> * cgraphbuild.c (compute_call_stmt_bb_frequency): Use counts when these are more informative. From-SVN: r228736
2015-10-12[PATCH] Improve FSM threader to handle compiler temporaries tooJeff Law4-3/+60
* tree-ssa-threadbackward.c (fsm_find_thread_path): Remove restriction that traced SSA_NAME is a user variable. * gcc.dg/tree-ssa/ssa-dom-thread-11.c: New test. From-SVN: r228727
2015-10-12Add missing phis in expand_omp_for_genericTom de Vries2-0/+43
2015-10-12 Tom de Vries <tom@codesourcery.com> PR tree-optimization/67476 * omp-low.c (expand_omp_for_generic): Add missing phis. From-SVN: r228718
2015-10-12Handle simple latch in expand_omp_for_genericTom de Vries2-1/+13
2015-10-12 Tom de Vries <tom@codesourcery.com> PR tree-optimization/67476 * omp-low.c (expand_omp_for_generic): Handle simple latch. From-SVN: r228717
2015-10-12[AArch64_be] Fix vtbl[34] and vtbx4Christophe Lyon5-75/+126
2015-10-12 Christophe Lyon <christophe.lyon@linaro.org> * config/aarch64/aarch64-simd-builtins.def: Update builtins tables: add tbl3 and tbx4. * config/aarch64/aarch64-simd.md (aarch64_tbl3v8qi): New. (aarch64_tbx4v8qi): New. * config/aarch64/arm_neon.h (vtbl3_s8, vtbl3_u8, vtbl3_p8) (vtbl4_s8, vtbl4_u8, vtbl4_p8, vtbx4_s8, vtbx4_u8, vtbx4_p8): Rewrite using builtin functions. * config/aarch64/iterators.md (UNSPEC_TBX): New. From-SVN: r228716
2015-10-12rs6000.h (RS6000_ALIGN): Implement using ROUND_UP macro.Uros Bizjak5-36/+47
* config/rs6000/rs6000.h (RS6000_ALIGN): Implement using ROUND_UP macro. * config/rs6000/rs6000.c (rs6000_darwin64_record_arg_advance_flush): Use ROUND_UP and ROUND_DOWN macros where applicable. (rs6000_darwin64_record_arg_flush): Ditto. (rs6000_function_arg): Use ROUND_UP to calculate align_words. (rs6000_emit_probe_stack_range): Use ROUND_DOWN to calculate rounded_size. * config/aarch/aarch64.h (AARCH64_ROUND_UP): Remove. (AARCH64_ROUND_DOWN): Ditto. * config/aarch64/aarch64.c: Use ROUND_UP instead of AARCH64_ROUND_UP. From-SVN: r228715
2015-10-12re PR ipa/67783 (quadratic time consumption in IPA inlining with -O1 and higher)Richard Biener2-25/+55
2015-10-12 Richard Biener <rguenther@suse.de> PR ipa/67783 * ipa-inline-analysis.c (estimate_function_body_sizes): Re-add code that analyzes IVs on each stmt but in a cheaper way avoiding quadratic behavior. From-SVN: r228710
2015-10-12msp430.c (msp430_mcu_names): Rename to msp430_mcu_data, add fields for ISA ↵Nick Clifton3-153/+653
and hardware multiply support. * config/msp430/msp430.c (msp430_mcu_names): Rename to msp430_mcu_data, add fields for ISA and hardware multiply support. Import latest data from the devices.csv file. (msp430_override_option): Use the data from the new array. (msp430_use_f5_series_hwmult): Likewise. (use_32bit_hwmult): Likewise. (msp430_no_hwmult): Likewise. * config/msp430/t-msp430 (MULTILIB_MATCHES): Add matches for new MCU names. * doc/invoke.texi (MSP430 Options): Note that if the MCU name is not recognised then no hardware multiply support is assumed and that only the MSP430 ISA is allowed. From-SVN: r228707
2015-10-12re PR c++/58566 ([c++11] ICE with invalid expression in lambda body)Ville Voutilainen4-1/+22
PR c++/58566 /cp 2015-10-12 Ville Voutilainen <ville.voutilainen@gmail.com> PR c++/58566 * lambda.c (lambda_return_type): Return error_mark_node instead of void_type_node for the error cases. /testsuite 2015-10-12 Ville Voutilainen <ville.voutilainen@gmail.com> PR c++/58566 * g++.dg/cpp0x/lambda/lambda-58566.C: New. From-SVN: r228706
2015-10-12tree-vect-loop.c (vect_analyze_loop_operations): Move cost related code ...Richard Biener2-98/+101
2015-10-12 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_analyze_loop_operations): Move cost related code ... (vect_analyze_loop_2): ... here. From-SVN: r228705
2015-10-12re PR c++/67557 (Calling copy constructor of base class in constructor of ↵Jason Merrill3-1/+30
derived class produces crashing code) PR c++/67557 * expr.c (store_field): Call store_constructor directly when storing a CONSTRUCTOR into a target smaller than its type. Guard against unsafe bitwise copy. From-SVN: r228704
2015-10-12cgraphbuild.c (compute_call_stmt_bb_frequency): Use counts when these are ↵Jan Hubicka2-5/+16
more informative. * cgraphbuild.c (compute_call_stmt_bb_frequency): Use counts when these are more informative. From-SVN: r228703
2015-10-12tree-profile.c (tree_profiling): Do not clear pure/const when not instrumenting.Jan Hubicka2-15/+22
* tree-profile.c (tree_profiling): Do not clear pure/const when not instrumenting. (pass tree_profile): Add dump of symtab. From-SVN: r228702
2015-10-12fold-const.c (fold_comparsion): Pass OEP_ADDRESS_OF when comparing addresses.Jan Hubicka2-2/+9
* fold-const.c (fold_comparsion): Pass OEP_ADDRESS_OF when comparing addresses. (fold_addr_of_array_ref_difference): Likewise. From-SVN: r228701
2015-10-11[PATCH] Refactoring FSM bits into their own fileJeff Law5-291/+366
[PATCH] Refactoring FSM bits into their own file * tree-ssa-threadedge.c (fsm_find_thread_path): Moved from here into tree-ssa-threadbackward.c. (fsm_find_control_statement_thread_paths): Likewise. (thread_through_normal_block): Break out FSM bits and move them into a new function in tree-ssa-threadbackward.c. Call new function instead. Minimize header file usage. * tree-ssa-threadbackward.h: New file. * tree-ssa-threadbackward.c: Likewise. * Makefile.in (OBJS): Add tree-ssa-threadbackward.o From-SVN: r228700
2015-10-12Daily bump.GCC Administrator1-1/+1
From-SVN: r228699
2015-10-11alpha.h (ALPHA_ROUND): Implement using ROUND_UP macro.Uros Bizjak2-5/+9
* config/alpha/alpha.h (ALPHA_ROUND): Implement using ROUND_UP macro. From-SVN: r228693
2015-10-11bb-reorder: Improve the simple algorithm for -Os (PR67864)Segher Boessenkool2-4/+19
As the PR points out, the "simple" reorder algorithm makes bigger code than the STC algorithm did, for -Os, for x86. I now tested it for many different targets and it turns out to be worse everywhere. This simple patch tunes "simple" a bit; this makes it better than STC almost everywhere. The only exceptions (for the targets where I have results) are x86 and mn10300. For those targets it may be best to switch the default algorithm for -Os to STC. 2015-10-11 Segher Boessenkool <segher@kernel.crashing.org> PR rtl-optimization/67864 * gcc/bb-reorder (reorder_basic_blocks_simple): Prefer existing fallthrough edges for conditional jumps. Don't sort candidate edges if not optimizing for speed. From-SVN: r228692
2015-10-11always define REVERSE_CONDITIONTrevor Saunders3-7/+10
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (REVERSE_CONDITION): New default definition. * jump.c (reversed_comparison_code_parts): Adjust. From-SVN: r228690
2015-10-11remove unneeded #if for HARD_FRAME_POINTER_IS_ARG_POINTERTrevor Saunders2-3/+6
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * builtins.c (expand_builtin_setjmp_receiver): Don't use #if to check HARD_FRAME_POINTER_IS_ARG_POINTER. From-SVN: r228689
2015-10-11always define FRAME_ADDR_RTXTrevor Saunders3-4/+9
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (FRAME_ADDR_RTX): New default definition. * builtins.c (expand_builtin_return_addr): Adjust. From-SVN: r228688
2015-10-11always define DYNAMIC_CHAIN_ADDRESSTrevor Saunders3-2/+9
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (DYNAMIC_CHAIN_ADDRESS): New default definition. * builtins.c (expand_builtin_return_addr): Adjust. From-SVN: r228687
2015-10-11always define SETUP_FRAME_ADDRESSESTrevor Saunders6-11/+16
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (SETUP_FRAME_ADDRESSES): New default definition. * builtins.c (expand_builtin_return_addr): Adjust. * doc/tm.texi: Likewise. * doc/tm.texi.in: Likewise. * except.c (expand_builtin_unwind_init): Likewise. From-SVN: r228686
2015-10-11always define INITIAL_FRAME_ADDRESS_RTXTrevor Saunders3-22/+28
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * builtins.c (expand_builtin_return_addr): Adjust. * defaults.h (INITIAL_FRAME_ADDRESS_RTX): New default definition. From-SVN: r228685
2015-10-11Daily bump.GCC Administrator1-1/+1
From-SVN: r228684
2015-10-10tree.c (type_with_interoperable_signedness): New.Jan Hubicka1-0/+6
* tree.c (type_with_interoperable_signedness): New. (gimple_canonical_types_compatible_p): Use it. * tree.h (type_with_interoperable_signedness): Declare From-SVN: r228681
2015-10-10tree.c (type_with_interoperable_signedness): New.Jan Hubicka13-7/+417
* tree.c (type_with_interoperable_signedness): New. (gimple_canonical_types_compatible_p): Use it. * tree.h (type_with_interoperable_signedness): Declare * lto.c (hash_canonical_type): Honor type_with_interoperable_signedness. * gfortran.dg/lto/bind_c-2_0.f90: New testcase. * gfortran.dg/lto/bind_c-2_1.c: New testcase. * gfortran.dg/lto/bind_c-3_0.f90: New testcase. * gfortran.dg/lto/bind_c-3_1.c: New testcase. * gfortran.dg/lto/bind_c-4_0.f90: New testcase. * gfortran.dg/lto/bind_c-4_1.c: New testcase. * gfortran.dg/lto/bind_c-5_0.f90: New testcase. * gfortran.dg/lto/bind_c-5_1.c: New testcase. From-SVN: r228680
2015-10-10fold-const.c (operand_equal_p): Document OEP_ADDRESS_OF and ↵Jan Hubicka2-47/+92
OEP_CONSTANT_ADDRESS_OF... * fold-const.c (operand_equal_p): Document OEP_ADDRESS_OF and OEP_CONSTANT_ADDRESS_OF; skip type compatibility checks when OEP_ADDRESS_OF is se. From-SVN: r228679
2015-10-10add dump of data dependencesAditya Kumar4-0/+35
2015-10-07 Aditya Kumar <aditya.k7@samsung.com> Sebastian Pop <s.pop@samsung.com> * graphite-dependences.c (scop_get_dependences): Add dump of the data dependence graph. * graphite-poly.c (print_isl_union_map): New. (debug_isl_union_map): New. * graphite-poly.h (print_isl_union_map): Declare. (debug_isl_union_map): Declare. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r228677
2015-10-10clean up debug functionsAditya Kumar4-240/+155
2015-10-07 Aditya Kumar <aditya.k7@samsung.com> Sebastian Pop <s.pop@samsung.com> * graphite-poly.c (print_iteration_domain): Remove verbosity. Remove OpenScop formatting. (print_iteration_domains): Same. (debug_iteration_domain): Same. (debug_iteration_domains): Same. (print_pdr): Same. (debug_pdr): Same. (dump_gbb_cases): Same. (dump_gbb_conditions): Same. (print_pdrs): Same. (debug_pdrs): Same. (print_pbb_body): Same. (print_pbb): Same. (print_scop_params): Same. (print_scop_context): Same. (print_scop): Same. (debug_pbb_domain): Same. (debug_pbb): Same. (debug_scop_context): Same. (debug_scop): Same. (debug_scop_params): Same. * graphite-poly.h: Same. * graphite.c (graphite_transform_loops): Same. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r228676
2015-10-10remove an unneeded as_a<rtx_insn *> ()Trevor Saunders2-3/+8
gcc/ChangeLog: 2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * function.c (stack_protect_epilogue): Remove as_a<rtx_insn *> () call that isn't needed. From-SVN: r228675
2015-10-10Daily bump.GCC Administrator1-1/+1
From-SVN: r228672
2015-10-09Re: [PATCH] Update SSA_NAME manager to use two listsJeff Law2-5/+7
* tree-ssanames.c (flush_ssaname_freelist): Use splice and truncate rather than moving each name to the freelist individually. From-SVN: r228668
2015-10-09mips.exp (mips_option_groups): Add -mframe-header-opt and ↵Steve Ellcey5-0/+73
-mno-frame-header-opt options. 2015-10-09 Steve Ellcey <sellcey@imgtec.com> * gcc.target/mips/mips.exp (mips_option_groups): Add -mframe-header-opt and -mno-frame-header-opt options. * gcc.target/mips/frame-header-1.c: New file. * gcc.target/mips/frame-header-2.c: New file. * gcc.target/mips/frame-header-3.c: New file. From-SVN: r228667
2015-10-09config.gcc (mips*-*-*): Add frame-header-opt.o to extra_objs.Steve Ellcey9-152/+425
2015-10-05 Steve Ellcey <sellcey@imgtec.com> * config.gcc (mips*-*-*): Add frame-header-opt.o to extra_objs. * frame-header-opt.c: New file. * config/mips/mips-proto.h (mips_register_frame_header_opt): Add prototype. * config/mips/mips.c (mips_compute_frame_info): Check optimize_call_stack flag. (mips_option_override): Register new frame_header_opt pass. (mips_frame_info, mips_int_mask, mips_shadow_set, machine_function): Move these types to... * config/mips/mips.h: here. (machine_function): Add does_not_use_frame_header and optimize_call_stack fields. * config/mips/t-mips (frame-header-opt.o): Add new make rule. * doc/invoke.texi (-mframe-header-opt, -mno-frame-header-opt): Document new flags. * config/mips/mips.opt (mframe-header-opt): Add new option. From-SVN: r228666
2015-10-09* config/i386/i386.cUros Bizjak2-4/+12
(expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Use ROUND_DOWN where applicable. From-SVN: r228665
2015-10-09[PATCH] [6/n] Fix minor SSA_NAME leaksJeff Law2-1/+6
* tree-vect-stmts.c (free_stmt_vec_info): Free the LHS of the correct statement. From-SVN: r228663
2015-10-09[PATCH][ARM]Add earlyclobber modifier for neon_(vtrn, vuzp, vzip)<mode>_insn rtxRenlin Li2-6/+13
pattern. gcc/ 2015-10-09 Renlin Li <renlin.li@arm.com> * config/arm/neon.md (neon_vuzp<mode>_insn): Add & modifier for operands[0] and operands[2]. (neon_vtrn<mode>_insn): Likewise. (neon_vzip<mode>_insn): Likewise. From-SVN: r228662