- 09 Nov, 2016 4 commits
-
-
tree-vect-data-refs.c (vect_compute_data_ref_alignment): Look at the 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
Richard Biener committed -
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
Kugan Vivekanandarajah committed -
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
Kugan Vivekanandarajah committed -
From-SVN: r241987
GCC Administrator committed
-
- 08 Nov, 2016 26 commits
-
-
asan.h (asan_intercepted_p): Handle BUILT_IN_STRCSPN, BUILT_IN_STRPBRK, 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
Maxim Ostapenko committed -
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
Maxim Ostapenko committed -
libsanitizer/ * asan/asan_globals.cc (RegisterGlobal): Do not call CheckODRViolationViaPoisoning. (CheckODRViolationViaPoisoning): Remove. From-SVN: r241981
Maxim Ostapenko committed -
sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC when extracting the caller PC for ARM if... libsanitizer/ * sanitizer_common/sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC when extracting the caller PC for ARM if no valid frame pointer is available. From-SVN: r241980
Maxim Ostapenko committed -
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
Janus Weil committed -
PR sanitizer/63958 Reapply: 2014-10-14 David S. Miller <davem@davemloft.net> * sanitizer_common/sanitizer_platform_limits_linux.cc (time_t): Define at __kernel_time_t, as needed for sparc. (struct __old_kernel_stat): Don't check if __sparc__ is defined. * libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h (__sanitizer): Define struct___old_kernel_stat_sz, struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc. (__sanitizer_ipc_perm): Adjust for sparc targets. (__sanitizer_shmid_ds): Likewsie. (__sanitizer_sigaction): Likewise. (IOC_SIZE): Likewsie. From-SVN: r241978
Maxim Ostapenko committed -
libsanitizer/ * All source files: Merge from upstream 285547. * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): New variable. * configure.ac (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Handle it. * asan/Makefile.am (asan_files): Add new files. * asan/Makefile.in: Regenerate. * ubsan/Makefile.in: Likewise. * lsan/Makefile.in: Likewise. * tsan/Makefile.am (tsan_files): Add new files. * tsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am (sanitizer_common_files): Add new files. (EXTRA_libsanitizer_common_la_SOURCES): Define. (libsanitizer_common_la_LIBADD): Likewise. (libsanitizer_common_la_DEPENDENCIES): Likewise. * sanitizer_common/Makefile.in: Regenerate. * interception/Makefile.in: Likewise. * libbacktace/Makefile.in: Likewise. * Makefile.in: Likewise. * configure: Likewise. * merge.sh: Handle builtins/assembly.h merging. * builtins/assembly.h: New file. * asan/libtool-version: Bump the libasan SONAME. From-SVN: r241977
Maxim Ostapenko committed -
* dwarf2asm.c (USE_LINKONCE_INDIRECT): Test XCOFF_DEBUGGING_INFO at runtime. From-SVN: r241975
David Edelsohn committed -
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
Uros Bizjak committed -
re PR fortran/77596 ([F03] procedure pointer component with implicit 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
Janus Weil committed -
* 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
Kyrylo Tkachov committed -
gcc/testsuite * gcc.dg/vect/pr56541.c: Xfail on !vect_cond_mixed targets. From-SVN: r241969
Bin Cheng committed -
gcc/testsuite * gcc.dg/tree-ssa/pr71347.c: Drop xfail. From-SVN: r241968
Bin Cheng committed -
gcc/testsuite * gcc.dg/vect/vect-cond-2.c: Drop xfail. From-SVN: r241967
Bin Cheng committed -
* 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
Kyrylo Tkachov committed -
* 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
Kyrylo Tkachov committed -
* lex.c (search_line_fast): New implementation for AArch64. From-SVN: r241964
Richard Earnshaw committed -
PR tree-optimization/78234 * gimple-ssa-store-merging.c (clear_bit_region): Fix off-by-one error in start != 0 case. From-SVN: r241962
Kyrylo Tkachov committed -
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
Martin Liska committed -
tree-vect-stmts.c (get_group_load_store_type): If the access is aligned do 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
Richard Biener committed -
gcc/ * config/aarch64/t-aarch64 (aarch64-c.o): Depend on TARGET_H. From-SVN: r241958
James Greenhalgh committed -
* 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
Tamar Christina committed -
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
Richard Biener committed -
re PR tree-optimization/78224 (g++ ICE at -O2(-O1 on gcc6) and above in 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
Richard Biener committed -
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
Senthil Kumar Selvaraj committed -
From-SVN: r241949
GCC Administrator committed
-
- 07 Nov, 2016 10 commits
-
-
* 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
David Edelsohn committed -
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
Jason Merrill committed -
* 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
Jason Merrill committed -
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
Jakub Jelinek committed -
From-SVN: r241941
David Edelsohn committed -
* config.gcc (powerpc*-*-*, rs6000*-*-*): Remove setting of INCLUDE_EXTRA_SPEC for Advance Toolchain builds. From-SVN: r241939
Peter Bergner committed -
config.gcc (powerpc*-*-*, [...]): Remove setting of INCLUDE_EXTRA_SPEC for Advance Toolchain builds. * config.gcc (powerpc*-*-*, rs6000*-*-*): Remove setting of INCLUDE_EXTRA_SPEC for Advance Toolchain builds. From-SVN: r241937
Peter Bergner committed -
2016-11-07 François Dumont <fdumont@gcc.gnu.org> * config/abi/pre/gnu-versioned-namespace.ver: Export C++17 new of over-aligned types symbols. From-SVN: r241936
François Dumont committed -
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
Segher Boessenkool committed -
* 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
David Edelsohn committed
-