aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2016-11-09* fold-const-call.c (fold_const_call): Fix up type of s0 and s1.Martin Liska2-1/+6
From-SVN: r242011
2016-11-09Fix ICE in gfc_trans_subcomponent_assign due to NULL components.Fritz O. Reese4-1/+35
PR fortran/78259 * gcc/fortran/trans-expr.c (gfc_trans_subcomponent_assign): Guard against NULL values. PR fortran/78259 * gcc/testsuite/gfortran.dg/pr78259.f90: New test. From-SVN: r242010
2016-11-09[multiple changes]Janus Weil4-5/+51
2016-11-09 Steve Kargl <kargl@gcc.gnu.org> Janus Weil <janus@gcc.gnu.org> PR fortran/60777 * expr.c (external_spec_function): Allow recursive specification functions in F03. 2016-11-09 Janus Weil <janus@gcc.gnu.org> PR fortran/60777 * gfortran.dg/spec_expr_7.f90: New test. From-SVN: r242009
2016-11-09re PR middle-end/77718 (expand_builtin_memcmp swaps args)Jakub Jelinek4-2/+34
PR target/77718 * builtins.c (expand_builtin_memcmp): Formatting fix. * gcc.c-torture/execute/pr77718.c: New test. From-SVN: r242007
2016-11-09flag-types.h (enum sanitize_code): Add SANITIZE_SHIFT_BASE and ↵Jakub Jelinek11-23/+173
SANITIZE_SHIFT_EXPONENT... * flag-types.h (enum sanitize_code): Add SANITIZE_SHIFT_BASE and SANITIZE_SHIFT_EXPONENT, change SANITIZE_SHIFT to bitwise or of them, renumber other enumerators. * opts.c (sanitizer_opts): Add shift-base and shift-exponent. * doc/invoke.texi: Document -fsanitize=shift-base and -fsanitize-shift-exponent, document -fsanitize=shift as having those 2 suboptions. c-family/ * c-ubsan.c (ubsan_instrument_shift): Handle split -fsanitize=shift-base and -fsanitize=shift-exponent. testsuite/ * gcc.dg/ubsan/c99-shift-3.c: New test. * gcc.dg/ubsan/c99-shift-4.c: New test. * gcc.dg/ubsan/c99-shift-5.c: New test. * gcc.dg/ubsan/c99-shift-6.c: New test. From-SVN: r242005
2016-11-09fold-const.c (tree_swap_operands_p): Remove unused arg.Richard Biener10-18/+34
2016-11-09 Richard Biener <rguenther@suse.de> * fold-const.c (tree_swap_operands_p): Remove unused arg. * fold-const.c (tree_swap_operands_p): Likewise. (fold_binary_loc): Adjust. (fold_ternary_loc): Likewise. * genmatch.c (dt_operand::gen_gimple_exp): Likewise. * gimple-fold.c (fold_stmt_1): Likewise. * gimple-match-head.c (gimple_resimplify2): Likewise. (gimple_resimplify3): Likewise. (gimple_simplify): Likewise. * tree-ssa-dom.c (record_equality): Likewise. * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Likewise. * tree-ssa-sccvn.c (vn_nary_op_compute_hash): Likewise. * tree-ssa-threadedge.c (simplify_control_stmt_condition_1): Likewise. From-SVN: r242004
2016-11-09tree-ssa-dom.c (canonicalize_comparison): Remove.Richard Biener2-46/+6
2016-11-09 Richard Biener <rguenther@suse.de> * tree-ssa-dom.c (canonicalize_comparison): Remove. (optimize_stmt): Remove redundant pre-propagation canonicalization of comparison operand order. From-SVN: r242003
2016-11-09Fix folding of memcmp("a", "a", 2) (PRMartin Liska5-5/+26
* fold-const-call.c (fold_const_call): Fix the folding. * gcc.dg/tree-ssa/builtins-folding-generic.c (main): Add new test-case for memcmp. * gcc.dg/tree-ssa/builtins-folding-gimple.c: Likewise. From-SVN: r242000
2016-11-09common.opt (flag_evaluation_order): Remove.Richard Biener4-45/+20
2016-11-09 Richard Biener <rguenther@suse.de> * common.opt (flag_evaluation_order): Remove. * expr.c (expand_operands): Remove code guarded by flag_evaluation_order. * fold-const.c (reorder_operands_p): Remove, it always returns true. (negate_expr_p): Remove calls to reorder_operands_p. (fold_negate_expr): Likewise. (tree_swap_operands_p): Likewise. (fold_binary_loc): Likewise. From-SVN: r241998
2016-11-09re PR c++/78269 (FAIL: FAIL: g++.dg/cpp1z/noexcept-type11.C and FAIL: ↵Thomas Preud'homme2-1/+6
g++.dg/cpp1z/noexcept-type9.C) 2016-11-09 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/testsuite/ PR testsuite/78269 * g++.dg/cpp1z/noexcept-type9.C: Make it a compile test. From-SVN: r241997
2016-11-09re PR target/78254 (FAIL: g++.dg/torture/pr77822.C -O3 -g (internal ↵Andreas Schwab2-10/+22
compiler error)) PR target/78254 * config/m68k/m68k.md: Reject out-of-range bit pos in bit-fields insns operating on a register. From-SVN: r241996
2016-11-09check.c (gfc_check_move_alloc): Prevent error that avoids aliasing between ↵Paul Thomas4-6/+67
to and from arguments from rejecting... 2016-11-09 Paul Thomas <pault@gcc.gnu.org> * check.c (gfc_check_move_alloc): Prevent error that avoids aliasing between to and from arguments from rejecting valid code. 2016-11-09 Paul Thomas <pault@gcc.gnu.org> * gfortran.dg/move_alloc_18.f90: New test. From-SVN: r241995
2016-11-09re PR testsuite/78256 (test case gcc.dg/pr35691-1.c fails starting with its ↵Prathamesh Kulkarni3-2/+8
introduction in r241915) 2016-11-09 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> PR middle-end/78256 testsuite/ * gcc.dg/pr35691-1.c (foo): Use & instead of &&. * gcc.dg/pr35691-2.c (foo): Use | instead of ||. From-SVN: r241994
2016-11-09re PR fortran/71894 ([OOP] ICE in gfc_add_component_ref, at fortran/class.c:227)Janus Weil4-1/+37
2016-11-09 Janus Weil <janus@gcc.gnu.org> PR fortran/71894 * class.c (gfc_add_component_ref): Add safety checks to avoid ICE. 2016-11-09 Janus Weil <janus@gcc.gnu.org> PR fortran/71894 * gfortran.dg/class_59.f90: New test. From-SVN: r241993
2016-11-09re PR target/78007 (Important loop from 482.sphinx3 is not vectorized)Richard Biener5-4/+133
2016-11-09 Richard Biener <rguenther@suse.de> PR tree-optimization/78007 * tree-vect-stmts.c (vectorizable_bswap): New function. (vectorizable_call): Call vectorizable_bswap for BUILT_IN_BSWAP{16,32,64} if arguments are not promoted. * gcc.dg/vect/vect-bswap32.c: Adjust. * gcc.dg/vect/vect-bswap64.c: Likewise. From-SVN: r241992
2016-11-09tree-vect-data-refs.c (vect_compute_data_ref_alignment): Look at the ↵Richard Biener2-6/+8
DR_BASE_ADDRESS object for forcing alignment. 2016-11-09 Richard Biener <rguenther@suse.de> * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Look at the DR_BASE_ADDRESS object for forcing alignment. From-SVN: r241991
2016-11-09Handle unary pass-through jump functions for ipa-vrpKugan Vivekanandarajah5-18/+156
Handle unary pass-through jump functions for ipa-vrp gcc/testsuite/ChangeLog: 2016-11-09 Kugan Vivekanandarajah <kuganv@linaro.org> * gcc.dg/ipa/vrp7.c: New test. gcc/ChangeLog: 2016-11-09 Kugan Vivekanandarajah <kuganv@linaro.org> * ipa-cp.c (ipa_get_jf_pass_through_result): Handle unary expressions. (propagate_vr_accross_jump_function): Likewise. * ipa-prop.c (ipa_set_jf_unary_pass_through): New. (load_from_param_1): New. (load_from_unmodified_param): Factor common part into load_from_param_1. (load_from_param): New. (compute_complex_assign_jump_func): Handle unary expressions. (ipa_write_jump_function): Likewise. (ipa_read_jump_function): Likewise. From-SVN: r241990
2016-11-09Fix ice in set_value_rangeKugan Vivekanandarajah6-4/+48
Fix ice in set_value_range gcc/ChangeLog: 2016-11-09 Kugan Vivekanandarajah <kuganv@linaro.org> PR ipa/78121 * ipa-cp.c (propagate_vr_accross_jump_function): Pass param type. Also fold constant passed as argument while computing value range. (propagate_constants_accross_call): Pass param type. * ipa-prop.c: export ipa_get_callee_param_type. * ipa-prop.h: export ipa_get_callee_param_type. gcc/testsuite/ChangeLog: 2016-11-09 Kugan Vivekanandarajah <kuganv@linaro.org> PR ipa/78121 * gcc.dg/ipa/pr78121.c: New test. From-SVN: r241989
2016-11-09Daily bump.GCC Administrator1-1/+1
From-SVN: r241987
2016-11-09asan.h (asan_intercepted_p): Handle BUILT_IN_STRCSPN, BUILT_IN_STRPBRK, ↵Maxim Ostapenko3-0/+24
BUILT_IN_STRSPN and BUILT_IN_STRSTR. gcc/ * asan.h (asan_intercepted_p): Handle BUILT_IN_STRCSPN, BUILT_IN_STRPBRK, BUILT_IN_STRSPN and BUILT_IN_STRSTR. gcc/testsuite/ * c-c++-common/asan/default_options.h: New file. * c-c++-common/asan/strcasestr-1.c: New test. * c-c++-common/asan/strcasestr-2.c: Likewise. * c-c++-common/asan/strcspn-1.c: Likewise. * c-c++-common/asan/strcspn-2.c: Likewise. * c-c++-common/asan/strpbrk-1.c: Likewise. * c-c++-common/asan/strpbrk-2.c: Likewise. * c-c++-common/asan/strspn-1.c: Likewise. * c-c++-common/asan/strspn-2.c: Likewise. * c-c++-common/asan/strstr-1.c: Likewise. * c-c++-common/asan/strstr-2.c: Likewise. * c-c++-common/asan/halt_on_error_suppress_equal_pcs-1.c: Likewise. From-SVN: r241984
2016-11-09asan.h (ASAN_STACK_MAGIC_PARTIAL): Remove.Maxim Ostapenko6-10/+26
gcc/ * asan.h (ASAN_STACK_MAGIC_PARTIAL): Remove. * asan.c (ASAN_STACK_MAGIC_PARTIAL): Replace with ASAN_STACK_MAGIC_MIDDLE. (asan_global_struct): Increase the size of fields. (asan_add_global): Add new field constructor. * sanitizer.def (__asan_version_mismatch_check_v6): Replace with __asan_version_mismatch_check_v8. gcc/testsuite/ * c-c++-common/asan/null-deref-1.c: Adjust testcase. From-SVN: r241983
2016-11-08re PR fortran/68440 ([OOP] ICE on declaring class variable with wrong attribute)Janus Weil5-1/+34
2016-11-08 Janus Weil <janus@gcc.gnu.org> PR fortran/68440 * expr.c (check_alloc_comp_init): Loosen an assert. * resolve.c (resolve_fl_parameter): Reject class parameters. 2016-11-08 Janus Weil <janus@gcc.gnu.org> PR fortran/68440 * gfortran.dg/class_58.f90: New test. From-SVN: r241979
2016-11-08dwarf2asm.c (USE_LINKONCE_INDIRECT): Test XCOFF_DEBUGGING_INFO at runtime.David Edelsohn2-2/+7
* dwarf2asm.c (USE_LINKONCE_INDIRECT): Test XCOFF_DEBUGGING_INFO at runtime. From-SVN: r241975
2016-11-08re PR target/70799 (STV pass does not convert DImode shifts)Uros Bizjak4-9/+60
PR target/70799 * config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Handle ASHIFT and LSHIFTRT. (dimode_scalar_chain::compute_convert_gain): Ditto. (dimode_scalar_chain::convert_insn): Ditto. testsuite/ChangeLog: PR target/70799 * gcc.target/i386/pr70799-2.c: New test. From-SVN: r241974
2016-11-08re PR fortran/77596 ([F03] procedure pointer component with implicit ↵Janus Weil4-9/+58
interface can point to a function) 2016-11-08 Janus Weil <janus@gcc.gnu.org> PR fortran/77596 * expr.c (gfc_check_pointer_assign): Add special check for procedure- pointer component with absent interface. 2016-11-08 Janus Weil <janus@gcc.gnu.org> PR fortran/77596 * gfortran.dg/proc_ptr_comp_46.f90: New test. From-SVN: r241972
2016-11-08[2/2] Add store merging unit testsKyrylo Tkachov4-0/+155
* gimple-ssa-store-merging.c: Include selftest.h (verify_array_eq): New function. (verify_shift_bytes_in_array): Likewise. (verify_shift_bytes_in_array_right): Likewise. (verify_clear_bit_region): Likewise. (verify_clear_bit_region_be): Likewise. (store_merging_c_tests): Likewise. * selftest.h (store_merging_c_tests): Declare prototype. * selftest-run-tests.c (selftest::run_tests): Run store_merging_c_tests. From-SVN: r241971
2016-11-08pr56541.c: Xfail on !vect_cond_mixed targets.Bin Cheng2-1/+5
gcc/testsuite * gcc.dg/vect/pr56541.c: Xfail on !vect_cond_mixed targets. From-SVN: r241969
2016-11-08pr71347.c: Drop xfail.Bin Cheng2-1/+5
gcc/testsuite * gcc.dg/tree-ssa/pr71347.c: Drop xfail. From-SVN: r241968
2016-11-08vect-cond-2.c: Drop xfail.Bin Cheng2-3/+5
gcc/testsuite * gcc.dg/vect/vect-cond-2.c: Drop xfail. From-SVN: r241967
2016-11-08[ARM][2/2] Remove old rtx costsKyrylo Tkachov4-1222/+32
* config/arm/arm.opt (mold-rtx-costs): Delete. (mnew-generic-costs): Delete. * config/arm/arm-protos.h (struct tune_params): Delete rtx_costs field. * config/arm/arm.c (arm_rtx_costs_1): Delete. (arm_size_rtx_costs): Likewise. (arm_slowmul_rtx_costs): Likewise. (arm_fastmul_rtx_costs): Likewise. (arm_xscale_rtx_costs): Likewise. (arm_9e_rtx_costs): Likewise. (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune, arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune, arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune, arm_cortex_a53_tune, arm_cortex_a57_tune, arm_cortex_a9_tune, arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune arm_cortex_a5_tune, arm_xgene1_tune, arm_marvell_pj4_tune, arm_cortex_a35_tune, arm_exynosm1_tune, arm_cortex_a73_tune, arm_cortex_m7_tune): Delete rtx_costs field. (arm_new_rtx_costs): Rename to... (arm_rtx_costs_internal): ... This. (arm_rtx_costs): Remove old way of doing rtx costs. From-SVN: r241966
2016-11-08[ARM][1/2] Use generic_extra_costs in all remaining tuning structsKyrylo Tkachov2-9/+21
* config/arm/arm.c (arm_slowmul_tune): Use generic_extra_costs. (arm_fastmul_tune): Likewise. (arm_strongarm_tune): Likewise. (arm_xscale_tune): Likewise. (arm_9e_tune): Likewise. (arm_marvell_pj4_tune): Likewise. (arm_v6t2_tune): Likewise. (arm_v6m_tune): Likewise. (arm_fa726te_tune): Likewise. From-SVN: r241965
2016-11-08[1/2] Fix off-by-one error in clear_bit_region in store merging (PR ↵Kyrylo Tkachov2-1/+7
tree-optimization/78234 ?) PR tree-optimization/78234 * gimple-ssa-store-merging.c (clear_bit_region): Fix off-by-one error in start != 0 case. From-SVN: r241962
2016-11-08use-after-scope falloutMartin Liska9-21/+67
PR testsuite/78242 * g++.dg/asan/use-after-scope-4.C: New test. * g++.dg/asan/use-after-scope-types-4.C: Update scanned pattern. * gcc.dg/asan/use-after-scope-8.c: Remove. PR testsuite/78242 * dbgcnt.def: Add new debug counter asan_use_after_scope. * gimplify.c (gimplify_decl_expr): Do not sanitize vars with a value expr. Do not add artificial variables to live_switch_vars. Use the debug counter. (gimplify_target_expr): Use the debug counter. * internal-fn.def: Remove ECF_TM_PURE from ASAN_MARK builtin. * sanitizer.def: Set ATTR_NOTHROW_LEAF_LIST to BUILT_IN_ASAN_CLOBBER_N and BUILT_IN_ASAN_UNCLOBBER_N. From-SVN: r241961
2016-11-08tree-vect-stmts.c (get_group_load_store_type): If the access is aligned do ↵Richard Biener5-1/+34
not trigger peeling for gaps. 2016-11-08 Richard Biener <rguenther@suse.de> * tree-vect-stmts.c (get_group_load_store_type): If the access is aligned do not trigger peeling for gaps. * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Do not force alignment of vars with DECL_USER_ALIGN. * gcc.dg/vect/vect-nb-iter-ub-2.c: Adjust. From-SVN: r241959
2016-11-08[Patch AArch64] aarch64-c.o should depend on TARGET_HJames Greenhalgh2-1/+5
gcc/ * config/aarch64/t-aarch64 (aarch64-c.o): Depend on TARGET_H. From-SVN: r241958
2016-11-08Fix traditional cpp test failureTamar Christina3-9/+10
* gcc.dg/cpp/trad/trad.exp (dg-runtest): Added $srcdir/$subdir/ to Include dirs. * gcc.dg/cpp/trad/include.c: Use local header file. From-SVN: r241957
2016-11-08re PR tree-optimization/78205 (BB vectorization confused by too large load ↵Richard Biener5-12/+57
groups) 2016-11-08 Richard Biener <rguenther@suse.de> PR tree-optimization/78205 * tree-vect-stmts.c (vectorizable_load): Move check whether we may run into gaps when BB vectorizing SLP permutations ... * tree-vect-slp.c (vect_supported_load_permutation_p): ... here where we can do a more precise check. * gcc.dg/vect/bb-slp-pr78205.c: New testcase. From-SVN: r241956
2016-11-08re PR tree-optimization/78224 (g++ ICE at -O2(-O1 on gcc6) and above in ↵Richard Biener4-4/+72
verify_loop_structure, at cfgloop.c:1646) 2016-11-08 Richard Biener <rguenther@suse.de> PR tree-optimization/78224 * tree-call-cdce.c (shrink_wrap_one_built_in_call_with_conds): Split the fallthru edge in case its successor may have PHIs. Do not free dominance info. * g++.dg/torture/pr78224.C: New testcase. From-SVN: r241955
2016-11-08Fix bogus store_merging_x.c failures for avr.Senthil Kumar Selvaraj9-7/+32
Store merging isn't profitable for the avr. Add a new effective target keyword "store_merge", and turn it on only if non_strict_align *and* int32plus, as targets with smallish word sizes are unlikely to profit from this optimization. gcc/testsuite/ChangeLog 2016-11-03 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> * gcc.dg/store_merging_1.c: Require store_merge. * gcc.dg/store_merging_2.c: Likewise. * gcc.dg/store_merging_4.c: Likewise. * gcc.dg/store_merging_5.c: Likewise. * gcc.dg/store_merging_6.c: Likewise. * gcc.dg/store_merging_7.c: Likewise. * gcc.dg/store_merging_8.c: Likewise. * lib/target-supports.exp (check_effective_target_store_merge): New. From-SVN: r241953
2016-11-08Daily bump.GCC Administrator1-1/+1
From-SVN: r241949
2016-11-07fold-vec-add-1.c: Add dg-options -maltivec.David Edelsohn8-1/+20
* gcc.target/powerpc/fold-vec-add-1.c: Add dg-options -maltivec. * gcc.target/powerpc/fold-vec-add-2.c: Add dg-options -maltivec. * gcc.target/powerpc/fold-vec-add-3.c: Add dg-options -maltivec. * gcc.target/powerpc/fold-vec-add-4.c: Add dg-options -maltivec -mvsx -mpower8-vector. * gcc.target/powerpc/fold-vec-add-5.c: Add dg-options -maltivec -mno-vs\ x. * gcc.target/powerpc/fold-vec-add-6.c: Add dg-options -maltivec -mvsx. * gcc.target/powerpc/fold-vec-add-7.c: Add dg-options -maltivec -mvsx -mpower8-vector. From-SVN: r241945
2016-11-07Implement P0012R1, Make exception specifications part of the type system.Jason Merrill30-78/+579
gcc/cp/ * cp-tree.h (enum tsubst_flags): Add tf_fndecl_type. (flag_noexcept_type, ce_type): New. * call.c (build_conv): Add ck_fnptr. (enum conversion_kind): Change ck_tsafe to ck_fnptr. (convert_like_real): Likewise. (standard_conversion): Likewise. Allow function pointer conversions for pointers to member functions. (reference_compatible_p): Allow function pointer conversions. (direct_reference_binding): Likewise. (reference_binding): Reference-compatible is no longer a subset of reference-related. (is_subseq): Also strip ck_lvalue after next_conversion. * class.c (instantiate_type): Check fnptr_conv_p. (resolve_address_of_overloaded_function): Likewise. * cvt.c (can_convert_tx_safety): Now static. (noexcept_conv_p, fnptr_conv_p, strip_fnptr_conv): New. * decl.c (flag_noexcept_type): Define. (cxx_init_decl_processing): Set it. (bad_specifiers): Check it. (grokdeclarator) [cdk_function]: Add exception-spec to type here. * lambda.c (maybe_add_lambda_conv_op): Add exception-spec to returned pointer. * mangle.c (struct globals): Add need_cxx1z_warning. (mangle_decl): Check it. (write_exception_spec): New. (write_function_type): Call it. (canonicalize_for_substitution): Handle exception spec. (write_type): Likewise. (write_encoding): Set processing_template_decl across mangling of partially-instantiated type. * pt.c (determine_specialization): Pass tf_fndecl_type. (tsubst_decl, fn_type_unification): Likewise. (tsubst): Strip tf_fndecl_type, pass it to tsubst_exception_specification. (convert_nontype_argument_function): Handle function pointer conversion. (convert_nontype_argument): Likewise. (unify, for_each_template_parm_r): Walk into noexcept-specifier. * rtti.c (ptr_initializer): Encode noexcept. * tree.c (canonical_eh_spec): New. (build_exception_variant): Use it. * typeck.c (composite_pointer_type): Handle fnptr conversion. (comp_except_specs): Compare canonical EH specs. (structural_comptypes): Call it. gcc/c-family/ * c.opt (Wc++1z-compat): New. * c-cppbuiltin.c (c_cpp_builtins): Add __cpp_noexcept_function_type. libstdc++-v3/ * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM) (_GLIBCXX_NOEXCEPT_QUAL): New. * include/std/type_traits (is_function): Use them. * libsubc++/new (launder): Likewise. * libsupc++/cxxabi.h (__pbase_type_info::__masks): Add __noexcept_mask. * libsupc++/pbase_type_info.cc (__do_catch): Handle function pointer conversion. libiberty/ * cp-demangle.c (is_fnqual_component_type): New. (d_encoding, d_print_comp_inner, d_print_mod_list): Use it. (FNQUAL_COMPONENT_CASE): New. (d_make_comp, has_return_type, d_print_comp_inner) (d_print_function_type): Use it. (next_is_type_qual): New. (d_cv_qualifiers, d_print_mod): Handle noexcept and throw-spec. include/ * demangle.h (enum demangle_component_type): Add DEMANGLE_COMPONENT_NOEXCEPT, DEMANGLE_COMPONENT_THROW_SPEC. From-SVN: r241944
2016-11-07C++ cleanups before C++17 noexcept in types.Jason Merrill5-41/+70
* call.c (standard_conversion): Reorganize pointer conversions. * pt.c (convert_nontype_argument_function): Convert to ref here. (convert_nontype_argument): Not here. (convert_template_argument): Add original type to error message. (RECUR_AND_CHECK_FAILURE): Remove trailing semicolon. (unify): Compare function-qualifiers. * typeck.c (same_type_ignoring_top_level_qualifiers_p): Use cp_build_qualified_type rather than TYPE_MAIN_VARIANT. From-SVN: r241943
2016-11-07re PR target/78229 (ICE in redirect_eh_edge_1, at tree-eh.c:2305)Jakub Jelinek2-2/+8
PR target/78229 * config/i386/i386.c (ix86_gimple_fold_builtin): Do not adjust EH info even for bzhi and pdep/pext. From-SVN: r241942
2016-11-07Fix dates.David Edelsohn1-2/+2
From-SVN: r241941
2016-11-07Add missing ChangeLog entry.Peter Bergner1-0/+5
* config.gcc (powerpc*-*-*, rs6000*-*-*): Remove setting of INCLUDE_EXTRA_SPEC for Advance Toolchain builds. From-SVN: r241939
2016-11-07config.gcc (powerpc*-*-*, [...]): Remove setting of INCLUDE_EXTRA_SPEC for ↵Peter Bergner1-10/+0
Advance Toolchain builds. * config.gcc (powerpc*-*-*, rs6000*-*-*): Remove setting of INCLUDE_EXTRA_SPEC for Advance Toolchain builds. From-SVN: r241937
2016-11-07rs6000: Do swdiv at expand timeSegher Boessenkool3-2/+24
We transform floating point divide instructions to a faster series of simple instructions, "swdiv". Currently we do not do that until the first splitter pass, which is much too late for most optimisations that can happen on those new instructions, e.g. the constant loads are not CSEd inside an unrolled loop. This patch changes things so those divide instructions are expanded during expand already. * config/rs6000/rs6000.md (div<mode>3): Expand using rs6000_emit_swdiv if appropriate. * config/rs6000/vector.md (div<mode>3): Ditto. From-SVN: r241935
2016-11-07scanasm.exp (hidden-scan-for): Add XCOFF support.David Edelsohn13-10/+28
* lib/scanasm.exp (hidden-scan-for): Add XCOFF support. * gfortran.dg/implicit_class_1.f90: Skip on AIX. * gcc.dg/visibility-14.c: XFAIL AIX. * gcc.dg/visibility-15.c: XFAIL AIX. * gcc.dg/visibility-16.c: XFAIL AIX. * gcc.dg/visibility-17.c: XFAIL AIX. * gcc.dg/visibility-18.c: XFAIL AIX. * gcc.dg/visibility-19.c: XFAIL AIX. * g++.dg/ext/visibility/anon1.C: XFAIL AIX. * g++.dg/ext/visibility/anon2.C: XFAIL AIX. * g++.dg/ext/visibility/pragma-override1.C: XFAIL AIX. * g++.dg/ext/visibility/pragma-override2.C: XFAIL AIX. From-SVN: r241934
2016-11-07Fix typo.David Edelsohn1-2/+2
From-SVN: r241932