- 16 Jan, 2015 30 commits
-
-
gcc/ PR target/64363 * ipa-chkp.h (chkp_instrumentable_p): New. * ipa-chkp.c: Include tree-inline.h. (chkp_instrumentable_p): New. (chkp_maybe_create_clone): Use chkp_instrumentable_p. Fix processing of not instrumentable functions. (chkp_versioning): Use chkp_instrumentable_p. Warn about not instrumentable functions. * tree-chkp.c (chkp_add_bounds_to_call_stmt): Use chkp_instrumentable_p. * tree-inline.h (copy_forbidden): New. * tree-inline.c (copy_forbidden): Not static anymore. gcc/testsuite/ PR target/64363 * gcc.target/i386/chkp-label-address.c: New. From-SVN: r219733
Ilya Enkovich committed -
* optc-save-gen.awk (cl_target_option_print_diff): Mark indent, ptr1, ptr2 unused. From-SVN: r219732
Rainer Orth committed -
2015-01-16 Janus Weil <janus@gcc.gnu.org> PR fortran/45290 * decl.c (match_pointer_init): Error out if resolution of init expr failed. 2015-01-16 Janus Weil <janus@gcc.gnu.org> PR fortran/45290 * gfortran.dg/pointer_init_6.f90: Extended. From-SVN: r219731
Janus Weil committed -
gcc/ * lra-constraints.c (curr_insn_transform): Change a reload pseudo of type OP_OUT to OP_INOUT. From-SVN: r219730
Robert Suchanek committed -
gcc/ * simplify-rtx.c (simplify_replace_fn_rtx): Simplify (lo_sum (high x) y) to y if x and y have the same base. gcc/testsuite/ * gcc.c-torture/compile/20150108.c: New test. From-SVN: r219729
Robert Suchanek committed -
From-SVN: r219728
Eric Botcazou committed -
2015-01-16 Richard Biener <rguenther@suse.de> PR tree-optimization/61743 * gcc.dg/tree-ssa/pr61743-1.c: Add -fno-tree-vectorize. * gcc.dg/tree-ssa/pr61743-2.c: Likewise. From-SVN: r219725
Richard Biener committed -
gcc/ * config/arm/cortex-a57.md: New. * config/aarch64/aarch64.md: Include it. * config/aarch64/aarch64-cores.def (cortex-a57): Tune for it. * config/aarch64/aarch64-tune.md: Regenerate. From-SVN: r219724
James Greenhalgh committed -
gcc/ 2015-01-16 Zhenqiang Chen <zhenqiang.chen@arm.com> PR target/64015 * ccmp.c (expand_ccmp_next): New function. (expand_ccmp_expr_1, expand_ccmp_expr): Handle operand insn sequence and compare insn sequence. * config/aarch64/aarch64.c (aarch64_code_to_ccmode, aarch64_gen_ccmp_first, aarch64_gen_ccmp_next): New functions. (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): New MICRO. * config/aarch64/aarch64.md (*ccmp_and): Changed to ccmp_and<mode>. (*ccmp_ior): Changed to ccmp_ior<mode>. (cmp<mode>): New pattern. * doc/tm.texi (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): Update parameters. * target.def (gen_ccmp_first, gen_ccmp_next): Update parameters. gcc/testsuite/ 2015-01-16 Zhenqiang Chen <zhenqiang.chen@arm.com> * gcc.dg/pr64015.c: New test. From-SVN: r219723
Zhenqiang Chen committed -
re PR testsuite/64605 (ERROR: (DejaGnu) proc "libatomic_target_compile lto1738.c lto1738.o object additional_flags=-flto" does not exist.) PR testsuite/64605 libatomic/ * testsuite/lib/libatomic.exp: Do not load gcc-dg.exp. * testsuite/libatomic.c/c.exp: Load gcc-dg.exp. From-SVN: r219722
Ilya Verbin committed -
2015-01-16 Markus Trippelsdorf <markus@trippelsdorf.de> PR ipa/64163 PR ipa/64612 * g++.dg/ipa/pr64612.C: New test. From-SVN: r219721
Markus Trippelsdorf committed -
testsuite/ 2015-01-16 Renlin Li <renlin.li@arm.com> * gcc.dg/builtin-apply2.c: Remove aarch64 target from skip list. From-SVN: r219720
Renlin Li committed -
gcc/ * config/i386/avx2intrin.h (_mm256_bslli_epi128, _mm256_bsrli_epi128): New. * config/i386/emmintrin.h (_mm_bsrli_si128, _mm_bslli_si128): Ditto. testsuite/ * gcc.target/i386/sse-14.c: Test new intrinsic. * gcc.target/i386/sse-22.c: Ditto. From-SVN: r219719
Ilya Tocar committed -
gcc/ * expmed.c (store_bit_field_using_insv): Improve warning message. Use %wu instead of HOST_WIDE_INT_PRINT_UNSIGNED. From-SVN: r219718
Jiong Wang committed -
PR rtl-optimization/64011 gcc/ * expmed.c (store_bit_field_using_insv): Warn and truncate bitsize when there is partial overflow. From-SVN: r219717
Jiong Wang committed -
/cp 2015-01-16 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58614 * pt.c (unify): When BRACE_ENCLOSED_INITIALIZER_P (arg), handle TREE_TYPE (elt) == error_mark_node. /testsuite 2015-01-16 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58614 * g++.dg/cpp0x/auto44.C: New. From-SVN: r219716
Paolo Carlini committed -
From-SVN: r219715
Eric Botcazou committed -
2015-01-15 Martin Uecker <uecker@eecs.berkeley.edu> * MAINTAINERS: (Write After Approval): Add myself. From-SVN: r219714
Martin Uecker committed -
gcc/ * config/nds32/nds32-protos.h (nds32_expand_epilogue): Change prototype. (nds32_expand_epilogue_v3pop): Likewise. * config/nds32/nds32.md (sibcall): Define this for sibling call optimization. (sibcall_register): Likewise. (sibcall_immediate): Likewise. (sibcall_value): Likewise. (sibcall_value_register): Likewise. (sibcall_value_immediate): Likewise. (sibcall_epilogue): Likewise. (epilogue): Pass false to indicate this is not a sibcall epilogue. * config/nds32/nds32.c (nds32_expand_epilogue): Consider sibcall case. (nds32_expand_epilogue_v3pop): Likewise. From-SVN: r219712
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32-protos.h (nds32_can_use_return_insn): New. * config/nds32/nds32.md (unspec_volatile_func_return): Remove. (return_internal): New. (return): Define this named pattern. (simple_return): Define this named pattern. * config/nds32/nds32.c (nds32_expand_epilogue): Emit return_internal pattern instead of unspec_volatile_func_return. (nds32_expand_epilogue_v3pop): Likewise. (nds32_can_use_return_insn): New function. From-SVN: r219711
Chung-Ju Wu committed -
gcc/ * config/nds32/constants.md (UNSPEC_VOLATILE_POP25_RETURN): New. * config/nds32/nds32.md (pop25return): New. * config/nds32/nds32.c (nds32_expand_epilogue_v3pop): Emit pop25return pattern. From-SVN: r219710
Chung-Ju Wu committed -
gcc/ * doc/invoke.texi (NDS32 Options): Remove -mforce-fp-as-gp, -mforbid-fp-as-gp, and -mex9 options. From-SVN: r219707
Chung-Ju Wu committed -
gcc/ * doc/invoke.texi (NDS32 Options): Add -mcmodel= option and remove -mgp-direct option. From-SVN: r219706
Chung-Ju Wu committed -
PR tree-optimization/62053 * tree.c (build_cplus_array_type): Layout type after variants are set. From-SVN: r219705
Jan Hubicka committed -
From-SVN: r219704
Chung-Ju Wu committed -
* doc/invoke.texi (--param early-inlining-insns): Update default value. * params.def (PARAM_EARLY_INLINING_INSNS): Set to 14. From-SVN: r219703
Jan Hubicka committed -
* ipa-inline.c (inline_small_functions): Work around hints cache issue. From-SVN: r219702
Jan Hubicka committed -
A recent libffi upgrade caused the reflect test to fail on 386. The problem case is a function that returns an empty struct--a struct with no fields. The libffi library does not recognize the existence of empty structs, presumably since they can't happen in C. To work around this, the Go interface to the libffi library changes an empty struct to void. This normally works fine, but with the new libffi upgrade it fails for a function that returns an empty struct. On 386 a function that returns a struct is expected to pop the hidden pointer when it returns. So when we convert an empty struct to void, libffi is calling a function that pops the hidden pointer but does not expect that to happen. In the older version of libffi, this didn't matter, because the libffi code for 386 used a frame pointer, so the fact that the stack pointer was wonky when the function returned was ignored as the stack pointer was immediately replaced by the saved frame pointer. In the newer version of libffi, the 386 code is more efficient and does not use a frame pointer, and therefore it matters whether libffi expects the function to pop the hidden pointer or not. This patch changes libgo to convert an empty to a struct with a single field of type void. This seems to be enough to get the test cases working again. Of course the real fix would be to change libffi to handle empty types, but as libffi uses size == 0 as a marker for an uninitialized type, that would be a non-trivial change. From-SVN: r219701
Ian Lance Taylor committed -
2015-01-15 Sandra Loosemore <sandra@codesourcery.com> PR target/59710 gcc/ * doc/invoke.texi (Option Summary): Document new Nios II -mgpopt= syntax. (Nios II Options): Likewise. * config/nios2/nios2.opt: Add -mgpopt= option support. Modify existing -mgpopt and -mno-gpopt options to be aliases. * config/nios2/nios2-opts.h (enum nios2_gpopt_type): New. * config/nios2/nios2.c (nios2_option_override): Adjust -mgpopt defaulting. (nios2_in_small_data_p): Return true for explicit small data sections even with -G0. (nios2_symbol_ref_in_small_data_p): Adjust to handle new -mgpopt= option choices. gcc/testsuite/ * gcc.target/nios2/gpopt-all.c: New test case. * gcc.target/nios2/gpopt-local.c: New test case. * gcc.target/nios2/gpopt-global.c: New test case. * gcc.target/nios2/gpopt-data.c: New test case. * gcc.target/nios2/gpopt-none.c: New test case. From-SVN: r219700
Sandra Loosemore committed -
From-SVN: r219699
GCC Administrator committed
-
- 15 Jan, 2015 10 commits
-
-
PR ipa/64612 * ipa-inline-transform.c (can_remove_node_now_p): Fix handling of comdat locals. (inline_call): Fix removal of aliases. From-SVN: r219696
Jan Hubicka committed -
* flag-types.h (enum sanitize_code): Add SANITIZE_VPTR, include SANITIZE_VPTR in SANITIZE_UNDEFINED. * opts.c (common_handle_option): Add -fsanitize=vptr. * sanitizer.def (BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS, BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT): New. * ubsan.h (enum ubsan_null_ckind): Add UBSAN_DOWNCAST_POINTER, UBSAN_DOWNCAST_REFERENCE, UBSAN_UPCAST and UBSAN_CAST_TO_VBASE. (ubsan_expand_vptr_ifn): New prototype. * internal-fn.c (expand_ANNOTATE, expand_GOMP_SIMD_LANE, expand_GOMP_SIMD_VF, expand_GOMP_SIMD_LAST_LANE, expand_UBSAN_NULL, expand_UBSAN_BOUNDS, expand_UBSAN_OBJECT_SIZE, expand_ASAN_CHECK, expand_LOOP_VECTORIZED): Make argument nameless, remove ATTRIBUTE_UNUSED. (expand_UBSAN_VPTR): New function. * internal-fn.def (UBSAN_NULL, ASAN_CHECK): Use R instead of W in fn spec. (UBSAN_VPTR): New internal function. * sanopt.c (tree_map_traits): Renamed to ... (sanopt_tree_map_traits): ... this. (sanopt_tree_triplet, sanopt_tree_triplet_map_traits): New classes. (sanopt_ctx): Adjust asan_check_map type for tree_map_traits to sanopt_tree_map_traits renaming. Add vptr_check_map field. (maybe_optimize_ubsan_vptr_ifn): New function. (sanopt_optimize_walker): Handle IFN_UBSAN_VPTR. (pass_sanopt::execute): Likewise. Call sanopt_optimize even for -fsanitize=vptr. * tree-ssa-alias.c (call_may_clobber_ref_p_1): Handle certain internal calls like pure functions for aliasing, even when they have other side-effects that prevent making them ECF_PURE. * ubsan.c (ubsan_vptr_type_cache_decl): New variable. (ubsan_expand_vptr_ifn): New function. cp/ * cp-gimplify.c (cp_genericize_r): Call cp_ubsan_maybe_instrument_member_call for member calls. (cp_ubsan_check_member_access_r): New function. (cp_genericize_tree): Call cp_ubsan_instrument_member_accesses. * cp-tree.h (cp_ubsan_maybe_instrument_member_call, cp_ubsan_instrument_member_accesses, cp_ubsan_maybe_instrument_downcast, cp_ubsan_maybe_instrument_cast_to_vbase): New prototypes. * cp-ubsan.c: New file. * Make-lang.in (CXX_AND_OBJCXX_OBJS): Add cp/cp-ubsan.o. * constexpr.c (cxx_eval_call_expression): Return void_node for IFN_UBSAN_VPTR. (potential_constant_expression_1): Return true for UBSAN_NULL, UBSAN_BOUNDS and UBSAN_VPTR internal calls. * typeck.c (build_class_member_access_expr): Provide locus for COMPONENT_REFs. (build_static_cast_1): Instrument downcasts. * class.c (build_base_path): For -fsanitize=vptr and !fixed_type_p add ubsan instrumentation for virtual_access. * call.c: Include internal-fn.h. (set_flags_from_callee): Handle internal calls. gcc/testsuite/ * g++.dg/ubsan/vptr-1.C: New test. * g++.dg/ubsan/vptr-2.C: New test. * g++.dg/ubsan/vptr-3.C: New test. * g++.dg/ubsan/vptr-4.C: New test. * g++.dg/ubsan/vptr-5.C: New test. * g++.dg/ubsan/vptr-6.C: New test. * g++.dg/ubsan/vptr-7.C: New test. * g++.dg/ubsan/vptr-8.C: New test. * g++.dg/ubsan/vptr-9.C: New test. From-SVN: r219695
Jakub Jelinek committed -
2015-01-15 Tobias Burnus <burnus@net-b.de> * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause, resolve_omp_clauses, gfc_resolve_oacc_declare): Replace '%s' by %qs. From-SVN: r219694
Tobias Burnus committed -
Update copyright years in docs/. From-SVN: r219693
Richard Sandiford committed -
contrib/ * update-copyright.py (Copyright.__init__): Add a regexp for "copyright = u'". (Copyright.update_copyright): Don't add a space before the year in that case. From-SVN: r219692
Richard Sandiford committed -
From Uros Bizjak. From-SVN: r219691
Ian Lance Taylor committed -
* configure.ac: Check for networking libraries; see NET_LIBS. * Makefile.am (go$(EXEEXT)): Link against NET_LIBS. (gofmt$(EXEEXT), cgo$(EXEEXT)): Likewise. * configure, Makefile.in: Rebuild. From-SVN: r219690
Ian Lance Taylor committed -
PR c++/59366 * name-lookup.c (pushdecl_maybe_friend_1): Hide friend functions and function templates, declared only in the class. * decl.c (duplicate_decls): Reveal hidden friend functions or function templates, if they are redeclared outside the class. From-SVN: r219689
Momchil Velikov committed -
PR libffi/64572 * include/ffi.h.in (FFI_TYPE_LAST): Set to COMPLEX only if complex numbers are supported by the backend. From-SVN: r219688
Richard Henderson committed -
PR c++/64356 * constexpr.c (cxx_eval_binary_expression): Fix pasto. From-SVN: r219687
Jason Merrill committed
-