Skip to content
Snippets Groups Projects
  1. Oct 21, 2015
    • Jan Hubicka's avatar
      re PR ipa/67056 (Wrong code generated) · 74bb7709
      Jan Hubicka authored
      	PR ipa/67056
      	* ipa-polymorphic-call.c (possible_placement_new): If cur_offset
      	is negative we don't know the type.
      	(check_stmt_for_type_change): Skip constructors of non-polymorphic
      	types as those won't help devirutalization.
      	* g++.dg/ipa/pr67056.C: New testcase.
      
      From-SVN: r229148
      74bb7709
    • Jan Hubicka's avatar
      fold-const.c (operand_equal_p): Add code matching empty constructors. · 1567db2f
      Jan Hubicka authored
      	* fold-const.c (operand_equal_p): Add code matching empty
      	constructors.
      	* gcc.dg/tree-ssa/operand-equal-1.c: Verify that empty constructors
      	are matched.
      
      From-SVN: r229147
      1567db2f
    • Eric Botcazou's avatar
      tree.def (CEIL_DIV_EXPR, [...]): Tweak comments. · c26065cc
      Eric Botcazou authored
      	* tree.def (CEIL_DIV_EXPR, FLOOR_DIV_EXPR, ROUND_DIV_EXPR): Tweak
      	comments.
      	(TRUNC_MOD_EXPR, CEIL_MOD_EXPR, FLOOR_MOD_EXPR, ROUND_MOD_EXPR):
      	Add comments on sign of the result.
      	* fold-const.c (tree_binary_nonnegative_warnv_p) <FLOOR_MOD_EXPR>:
      	Recurse on operand #1 instead of operand #0.
      	<CEIL_MOD_EXPR>: Do not recurse.
      	<ROUND_MOD_EXPR>: Likewise.
      
      From-SVN: r229146
      c26065cc
    • Trevor Saunders's avatar
      unconditionally compile most of the delay slot code · e90bedf5
      Trevor Saunders authored
      gcc/ChangeLog:
      
      2015-10-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* cfgrtl.c (pass_free_cfg::execute): Adjust.
      	* final.c (dbr_sequence_length): Always define.
      	(shorten_branches): Adjust.
      	* genattr-common.c (main): Always define DELAY_SLOTS.
      	* genattr.c (main): Unconditionally declare functions and define
      	macros related to delay slots.
      	* genattrtab.c (write_eligible_delay): Adjust.
      	(main): Always write out delay slot functions.
      	* opts.c (default_options_table): Adjust.
      	* reorg.c (redirect_with_delay_slots_safe_p): Likewise.
      	(redirect_with_delay_list_safe_p): Likewise.
      	(fill_simple_delay_slots): Likewise.
      	(fill_slots_from_thread): Likewise.
      	(make_return_insns): Likewise.
      	(dbr_schedule): Likewise.
      	(rest_of_handle_delay_slots): Likewise.
      	(pass_delay_slots::gate): Likewise.
      	* toplev.c (process_options): Likewise.
      
      From-SVN: r229145
      e90bedf5
    • Richard Henderson's avatar
      Update documentation for address space hooks · 0a798c16
      Richard Henderson authored
              * target.def (addr_space.pointer_mode): Update documentation
              of default behavior.
              (addr_space.address_mode): Likewise.
              * tm.texi: Update.
      
      From-SVN: r229144
      0a798c16
    • Richard Henderson's avatar
      Relax ADDR_SPACE_GENERIC_P checks for default address space hooks · 0f16c572
      Richard Henderson authored
      If all address spaces use the same modes and forms, we would
      be forced to replicate these hooks in the backend.  Which would
      then require the creation of a new hook to replace
      target_default_pointer_address_modes_p.
      
      	* targhooks.c (default_addr_space_pointer_mode): Remove check
      	for generic address space.
      	(default_addr_space_address_mode): Likewise.
      	(default_addr_space_valid_pointer_mode): Likewise.
      	(default_addr_space_legitimate_address_p): Likewise.
      	(default_addr_space_legitimize_address): Likewise.
      
      From-SVN: r229143
      0f16c572
    • Richard Henderson's avatar
      Change default of non-overlapping address space conversion · 2e44cd8b
      Richard Henderson authored
      The current default of making all undefined coversions being
      set to null is not useful.  It has caused all users to lie
      and say that spaces are subsets when they are not, just so
      that they can override the conversion.
      
      	* expr.c (expand_expr_real_2): Use convert_modes on disjoint
      	address spaces.
      
      From-SVN: r229142
      2e44cd8b
    • Richard Sandiford's avatar
      Move cabs simplifications to match.pd · abcc43f5
      Richard Sandiford authored
      The fold code also expanded cabs(x+yi) to fsqrt(x*x+y*y) when optimising
      for speed.  tree-ssa-math-opts.c has this transformation too, but unlike
      the fold code, it first checks whether the target implements the sqrt
      optab.  The patch simply removes the fold code and keeps the
      tree-ssa-math-opts.c logic the same.
      
      gcc.dg/lto/20110201-1_0.c was relying on us replacing cabs
      with fsqrt even on targets where fsqrt is itself a library call.
      The discussion leading up to that patch suggested that we only
      want to test the fold on targets with a square root instruction,
      so it would be OK to skip the test on other targets:
      
              https://gcc.gnu.org/ml/gcc-patches/2011-07/msg01961.html
              https://gcc.gnu.org/ml/gcc-patches/2011-07/msg02036.html
      
      The patch does that using the sqrt_insn effective target.
      
      It's possible that removing the tree folds renders the LTO trick
      unnecessary, but since the test was originally for an ICE, it seems
      better to leave it as-is.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      20110201-1_0.c passes on all three.
      
      gcc/
      	* builtins.c (fold_builtin_cabs): Delete.
      	(fold_builtin_1): Update accordingly.  Handle constant arguments here.
      	* match.pd: Add rules previously handled by fold_builtin_cabs.
      
      gcc/testsuite/
      	* gcc.dg/lto/20110201-1_0.c: Restrict to sqrt_insn targets.
      	Add associated options for arm*-*-*.
      	(sqrt): Remove dummy definition.
      
      From-SVN: r229141
      abcc43f5
    • Richard Sandiford's avatar
      Remove fold_strip_sign_ops · 4adfc9a5
      Richard Sandiford authored
      This patch deletes fold_strip_sign_ops in favour of the
      gimple-ssa-backprop.c pass.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/
      	* fold-const.h (fold_strip_sign_ops): Delete.
      	* fold-const.c (fold_strip_sign_ops): Likewise.
      	(fold_unary_loc, fold_binary_loc): Remove calls to it.
      	* builtins.c (fold_builtin_cos, fold_builtin_cosh)
      	(fold_builtin_ccos): Delete.
      	(fold_builtin_pow): Don't call fold_strip_sign_ops.
      	(fold_builtin_hypot, fold_builtin_copysign): Likewise.
      	Remove fndecl argument.
      	(fold_builtin_1): Update calls accordingly.  Handle constant
      	cos, cosh, ccos and ccosh here.
      
      gcc/testsuite/
      	* gcc.dg/torture/builtin-symmetric-1.c: Don't run at -O0.
      
      From-SVN: r229140
      4adfc9a5
    • Richard Sandiford's avatar
      Add a pass to back-propagate use information · 6a75d560
      Richard Sandiford authored
      This patch adds a pass that collects information that is common to
      all uses of an SSA name X and back-propagates that information up
      the statements that generate X.  The general idea is to use the
      information to simplify instructions (rather than a pure DCE) so
      I've simply called it gimple-ssa-backprop.c, to go with
      tree-ssa-forwprop.c.
      
      At the moment the only use of the pass is to remove unnecessary
      sign operations, so that it's effectively a global version of
      fold_strip_sign_ops.  I'm hoping it could be extended in future
      to record which bits of an integer are significant.  There are
      probably other potential uses too.
      
      A later patch gets rid of fold_strip_sign_ops.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/
      	* doc/invoke.texi (-fdump-tree-backprop, -fssa-backprop): Document.
      	* Makefile.in (OBJS): Add gimple-ssa-backprop.o.
      	* common.opt (fssa-backprop): New option.
      	* fold-const.h (negate_mathfn_p): Declare.
      	* fold-const.c (negate_mathfn_p): Make public.
      	* timevar.def (TV_TREE_BACKPROP): New.
      	* tree-pass.h (make_pass_backprop): Declare.
      	* passes.def (pass_backprop): Add.
      	* gimple-ssa-backprop.c: New file.
      
      gcc/testsuite/
      	* gcc.dg/tree-ssa/backprop-1.c, gcc.dg/tree-ssa/backprop-2.c,
      	gcc.dg/tree-ssa/backprop-3.c, gcc.dg/tree-ssa/backprop-4.c,
      	gcc.dg/tree-ssa/backprop-5.c, gcc.dg/tree-ssa/backprop-6.c: New tests.
      
      From-SVN: r229139
      6a75d560
    • Aditya Kumar's avatar
      avoid generation of empty guards in trivial cases · 77ec8b8c
      Aditya Kumar authored
      
      We used to insert a trivial integer_onep condition around loops we know have
      more than an iteration.  This patch avoids generating those conditions.
      
      	* graphite-isl-ast-to-gimple.c (graphite_create_new_loop_guard): Do not call
      	create_empty_if_region_on_edge when cond_expr is true.
      	(translate_isl_ast_node_for): Check whether a guard has been generated.
      
      Co-Authored-By: default avatarSebastian Pop <s.pop@samsung.com>
      
      From-SVN: r229137
      77ec8b8c
    • Aditya Kumar's avatar
      Refactor graphite-sese-to-poly, sese.h, graphite-poly.h · caf5b4df
      Aditya Kumar authored
      Now that scop contains a list of all the basic blocks inside, it makes sense to
      iterate over only those basic blocks in
      graphite-sese-to-poly.c:rewrite_reductions_out_of_ssa,rewrite_cross_bb_scalar_deps_out_of_ssa
      
      Passes regtest and bootstrap.
      
      gcc/ChangeLog:
      
      2015-10-20  Aditya Kumar  <hiraditya@msn.com>
      
              * graphite-poly.h (struct dr_info): Added invalid_alias_set number.
              (operator=): Removed.
              (dr_info): Make alias_set number the last argument with default value of invalid_alias_set.
              * graphite-sese-to-poly.c (build_scop_drs): Update constructor of dr_info.
              (rewrite_reductions_out_of_ssa): Iterate only through the basic blocks which are inside region.
              (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
              * sese.h (struct sese_l): Removed assignment operator.
              (split_region_for_bb): Removed dead code.
      
      From-SVN: r229136
      caf5b4df
    • Aditya Kumar's avatar
      Refactoring sese.h and graphite-poly.h · d37fc3aa
      Aditya Kumar authored
      Rename scop->region to scop->scop_info
      Removed conversion constructors for sese_l and dr_info.
      Removed macros.
      
      No functional changed intended. Passes regtest and bootstrap.
      
      gcc/ChangeLog:
      
      2015-19-10  Aditya Kumar  <aditya.k7@samsung.com>
              * graphite-poly.h (struct dr_info): Removed conversion constructor.
              (struct scop): Renamed scop::region to scop::scop_info
              (scop_set_region): Same.
              (SCOP_REGION): Removed
              (SCOP_CONTEXT): Removed.
              (POLY_SCOP_P): Removed.
              * graphite-isl-ast-to-gimple.c (translate_isl_ast_node_user):
              Rename scop->region to scop->scop_info.
              (add_parameters_to_ivs_params): Same.
              (graphite_regenerate_ast_isl): Same.
              * graphite-poly.c (new_scop): Same.
              (free_scop): Same.
              (print_scop_params): Same.
              * graphite-scop-detection.c (scop_detection::remove_subscops): Same.
              (scop_detection::remove_intersecting_scops): Use pointer to sese_l.
              (dot_all_scops_1): Rename scop->region to scop->scop_info.
              (scop_detection::nb_pbbs_in_loops): Same.
              (find_scop_parameters): Same.
              (try_generate_gimple_bb): Same.
              (gather_bbs::before_dom_children): Same.
              (gather_bbs::after_dom_children): Same.
              (build_scops): Same.
              * graphite-sese-to-poly.c (build_scop_scattering): Same.
              (extract_affine_chrec): Same.
              (extract_affine): Same.
              (set_scop_parameter_dim): Same.
              (build_loop_iteration_domains): Same.
              (create_pw_aff_from_tree): Same.
              (add_param_constraints): Same.
              (build_scop_iteration_domain): Same.
              (build_scop_drs): Same.
              (analyze_drs_in_stmts): Same.
              (insert_out_of_ssa_copy_on_edge): Same.
              (rewrite_close_phi_out_of_ssa):Same.
              (rewrite_reductions_out_of_ssa):Same.
              (handle_scalar_deps_crossing_scop_limits):Same.
              (rewrite_cross_bb_scalar_deps):Same.
              (rewrite_cross_bb_scalar_deps_out_of_ssa):Same.
              (build_poly_scop):Same.
              (build_alias_set): Use pointer to dr_info.
              * graphite.c (print_graphite_scop_statistics):
              (graphite_transform_loops):
              * sese.h (struct sese_l): Remove conversion constructor.
      
      From-SVN: r229135
      d37fc3aa
    • Alan Lawrence's avatar
      Add --param sra-max-scalarization-size-Ospeed to sra-12.c · 3d27a323
      Alan Lawrence authored
      	* gcc.dg/tree-ssa/sra-12.c: Enable test on all targets; add --param
      	sra-max-scalarization-size-Ospeed.
      
      From-SVN: r229134
      3d27a323
    • Jan Hubicka's avatar
      re PR middle-end/67966 (ICE in convert_move, at expr.c:282) · b6d3c031
      Jan Hubicka authored
      	PR middle-end/67966
      	* tree.c (verify_type): Verify that TYPE_MODE match
       	between TYPE_CANONICAL and type.
       	* expr.c (store_expr_with_bounds): Revert my previous change.
       	* expmed.c (store_bit_field_1): Revert prevoius change.
       	* gimple-expr.c (useless_type_conversion_p): Require TYPE_MODE
       	to match for all types.
      
      From-SVN: r229132
      b6d3c031
    • Marek Polacek's avatar
      re PR c/68024 (Diagnose variadic functions defined without prototypes) · e9122ef6
      Marek Polacek authored
      	PR c/68024
      	* c-decl.c (start_function): Warn about vararg functions without
      	a prototype.
      
      	* gcc.dg/pr68024.c: New test.
      
      From-SVN: r229131
      e9122ef6
    • Nathan Sidwell's avatar
      omp-low.c (check_omp_nesting_restrictions): Check OpenACC loop nesting. · 68d58afb
      Nathan Sidwell authored
      	gcc/
      	* omp-low.c (check_omp_nesting_restrictions): Check OpenACC loop
      	nesting.
      
      	testsuite/
      	* c-c++-common/goacc/clauses-fail.c: Adjust errors.
      	* c-c++-common/goacc/sb-1.c: Adjust errors.
      	* c-c++-common/goacc/sb-3.c: Adjust errors.
      	* c-c++-common/goacc/loop-1.c: Adjust errors.
      	* c-c++-common/goacc/nesting-1.c: Adjust errors.
      	* c-c++-common/goacc-gomp/nesting-fail-1.c: Adjust errors.
      	* c-c++-common/goacc-gomp/nesting-1.c: Adjust errors.
      
      From-SVN: r229129
      68d58afb
    • Ilya Enkovich's avatar
      tm.texi: Regenerated. · 9f47c7e5
      Ilya Enkovich authored
      gcc/
      
      	* doc/tm.texi: Regenerated.
      	* doc/tm.texi.in (TARGET_VECTORIZE_GET_MASK_MODE): New.
      	* stor-layout.c (layout_type): Use mode to get vector mask size.
      	* target.def (get_mask_mode): New.
      	* targhooks.c (default_get_mask_mode): New.
      	* targhooks.h (default_get_mask_mode): New.
      	* gcc/tree-vect-stmts.c (get_same_sized_vectype): Add special case
      	for boolean vector.
      	* tree.c (MAX_BOOL_CACHED_PREC): New.
      	(nonstandard_boolean_type_cache): New.
      	(build_nonstandard_boolean_type): New.
      	(make_vector_type): Vector mask has no canonical type.
      	(build_truth_vector_type): New.
      	(build_same_sized_truth_vector_type): New.
      	(truth_type_for): Support vector masks.
      	* tree.h (VECTOR_BOOLEAN_TYPE_P): New.
      	(build_truth_vector_type): New.
      	(build_same_sized_truth_vector_type): New.
      	(build_nonstandard_boolean_type): New.
      	* tree-cfg.c (verify_gimple_comparison) Require boolean
      	vector type for vector comparison.
      	(verify_gimple_assign_ternary): Likewise.
      	* optabs.c (expand_vec_cond_expr): Accept boolean vector as
      	condition operand.
      	* tree-vect-stmts.c (vectorizable_condition): Use boolean
      	vector type for vector comparison.
      	* tree-vect-generic.c (elem_op_func): Add new operand to hold
      	vector type.
      	(do_unop): Adjust to modified function type.
      	(do_binop): Likewise.
      	(do_plus_minus): Likewise.
      	(do_negate); Likewise.
      	(expand_vector_piecewise): Likewise.
      	(do_cond): Likewise.
      	(do_compare): Use comparison instead of condition.
      	(expand_vector_divmod): Use boolean vector type for comparison.
      	(expand_vector_operations_1): Skip scalar mask operations.
      
      gcc/c
      
      	* c-typeck.c (build_conditional_expr): Use boolean vector
      	type for vector comparison.
      	(build_vec_cmp): New.
      	(build_binary_op): Use build_vec_cmp for comparison.
      
      gcc/cp
      
      	* call.c (build_conditional_expr_1): Use boolean vector
      	type for vector comparison.
      	* typeck.c (build_vec_cmp): New.
      	(cp_build_binary_op): Use build_vec_cmp for comparison.
      
      gcc/testsuite/
      
      	* g++.dg/ext/vector22.C: Allow VEC_COND_EXPR.
      
      From-SVN: r229128
      9f47c7e5
    • Ilya Enkovich's avatar
      omp-low.c (simd_clone_create): Set in_other_partition for created clones. · 6f9045f4
      Ilya Enkovich authored
      gcc/
      
      	* omp-low.c (simd_clone_create): Set in_other_partition
      	for created clones.
      
      gcc/testsuite/
      
      	* gcc.dg/lto/simd-function_0.c: New test.
      
      From-SVN: r229127
      6f9045f4
    • David Wohlferd's avatar
      Proposed doc update for Explicit Reg Vars 2/3 · cbb5c732
      David Wohlferd authored
      	* doc/extend.exp (Local Register Variables): Rewrite.
      
      From-SVN: r229124
      cbb5c732
    • Richard Sandiford's avatar
      Add simple sign-stripping cases to match.pd · 5d3498b4
      Richard Sandiford authored
      This patch makes sure that, for every simplification that uses
      fold_strip_sign_ops, there are associated match.pd rules for the
      leaf sign ops, i.e. abs, negate and copysign.  A follow-on patch
      will add a pass to handle more complex cases.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/
      	* match.pd: Add rules to simplify ccos, ccosh, hypot, copysign
      	and x*x in cases where the operands are sign ops.  Extend these
      	rules to handle copysign as a sign op (including for cos, cosh
      	and pow, which already treated negate and abs as sign ops).
      
      From-SVN: r229123
      5d3498b4
    • Uros Bizjak's avatar
      re PR target/68018 (ICE: in ix86_compute_frame_layout, at... · dc3cf66b
      Uros Bizjak authored
      re PR target/68018 (ICE: in ix86_compute_frame_layout, at config/i386/i386.c:11308 with -mstackrealign)
      
      	PR target/68018
      	* config/i386/i386.c (ix86_compute_frame_layout): Realign the stack
      	for 64-bit MS_ABI targets also when default incoming stack boundary
      	is overriden.
      
      testsuite/ChangeLog:
      
      	PR target/68018
      	* gcc.target/i386/pr68018.c: New test.
      
      From-SVN: r229120
      dc3cf66b
    • Richard Biener's avatar
      tree-ssa-sccvn.c (cond_stmts_equal_p): Compare two GIMPLE cond stmts, enhanced... · 87961d1b
      Richard Biener authored
      tree-ssa-sccvn.c (cond_stmts_equal_p): Compare two GIMPLE cond stmts, enhanced and split out from ...
      
      2015-10-21  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (cond_stmts_equal_p): Compare two GIMPLE
      	cond stmts, enhanced and split out from ...
      	(vn_phi_eq): ... here.
      
      From-SVN: r229119
      87961d1b
    • Richard Biener's avatar
      re PR tree-optimization/68031 (cc1 crashes when compiling newlib / mktm_r.c) · 39c97e41
      Richard Biener authored
      2015-10-21  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/68031
      	* fold-const.c: Include tree-ssa-operands.h and tree-into-ssa.h.
      	(tree_ssa_name_nonnegative_warnv_p): Fold into ...
      	(tree_single_nonnegative_warnv_p): ... here.  For SSA names
      	make sure they are not registered for update.
      
      	* gcc.dg/torture/pr68031.c: New testcase.
      
      From-SVN: r229118
      39c97e41
    • Richard Biener's avatar
      re PR tree-optimization/68026 (Regression in GCC-6.0.0's optimizer) · 33b35c28
      Richard Biener authored
      2015-10-21  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/68026
      	* tree-ssa-ccp.c (get_value_for_expr): Zero-extend mask for
      	unsigned VARYING values.
      
      	* gcc.dg/tree-ssa/ssa-ccp-39.c: New testcase.
      
      From-SVN: r229117
      33b35c28
    • Max Ostapenko's avatar
      HOWTO_MERGE: New file. · 7047bc9c
      Max Ostapenko authored
      libsanitizer/
      
      	* HOWTO_MERGE: New file.
      
      From-SVN: r229116
      7047bc9c
    • Max Ostapenko's avatar
      sanitizer_stacktrace.cc (GetCanonicFrame): Assume we compiled code with GCC... · 21d61063
      Max Ostapenko authored
      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: r229115
      21d61063
    • Max Ostapenko's avatar
      re PR bootstrap/63888 (bootstrap failed when configured with... · 15ebe1fe
      Max Ostapenko authored
      re PR bootstrap/63888 (bootstrap failed when configured with -with-build-config=bootstrap-asan --disable-werror)
      
      libsanitizer/
      
      	PR bootstrap/63888
      	Reapply:
      	2015-02-20  Jakub Jelinek  <jakub@redhat.com>
      
      	* asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation
      	support until it is rewritten upstream.
      
      	* c-c++-common/asan/pr63888.c: New test.
      
      From-SVN: r229114
      15ebe1fe
    • Max Ostapenko's avatar
      re PR sanitizer/63958 (bootstrap failure in the sanitizer libs on sparc-linux-gnu) · 0d57d3e0
      Max Ostapenko authored
      libsanitizer/
      
      	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: r229113
      0d57d3e0
    • Max Ostapenko's avatar
      libsanitizer merge from upstream r250806, compiler part. · 89e302b8
      Max Ostapenko authored
      gcc/
      
      	* asan.c (asan_emit_stack_protection): Don't pass local stack to
      	asan_stack_malloc_[n] anymore. Check if asan_stack_malloc_[n] returned
      	NULL and use local stack than.
      	(asan_finish_file): Insert __asan_version_mismatch_check_v[n] call
      	in addition to __asan_init.
      	* sanitizer.def (BUILT_IN_ASAN_INIT): Rename to __asan_init.
      	(BUILT_IN_ASAN_VERSION_MISMATCH_CHECK): Add new builtin call.
      	* asan.h (asan_intercepted_p): Handle new string builtins.
      	* ubsan.c (ubsan_use_new_style_p): New function.
      	(ubsan_instrument_float_cast): If location is unknown, assign
      	input_location to loc. Propagate loc to ubsan_create_data if
      	ubsan_use_new_style_p returned true.
      
      config/
      
      	* bootstrap-asan.mk: Replace ASAN_OPTIONS=detect_leaks with
      	LSAN_OPTIONS=detect_leaks.
      
      gcc/testsuite/
      
      	* c-c++-common/ubsan/float-cast-overflow-10.c: Adjust test.
      	* c-c++-common/ubsan/float-cast-overflow-8.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-9.c: Likewise.
      	* g++.dg/asan/default-options-1.C: Likewise.
      
      From-SVN: r229112
      89e302b8
    • Max Ostapenko's avatar
      libsanitizer merge from upstream r250806. · 696d846a
      Max Ostapenko authored
      libsanitizer/
      
      2015-10-20  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
      
      	* All source files: Merge from upstream r250806.
      	* configure.ac (link_sanitizer_common): Add -lrt flag.
      	* configure.tgt: Enable TSAN and LSAN for aarch64-linux targets.
      	Set CXX_ABI_NEEDED=true for darwin.
      	* asan/Makefile.am (asan_files): Add new files.
      	(DEFS): Add DCAN_SANITIZE_UB=0 and remove unused and legacy
      	DASAN_FLEXIBLE_MAPPING_AND_OFFSET=0.
      	* asan/Makefile.in: Regenerate.
      	* ubsan/Makefile.am (ubsan_files): Add new files.
      	(DEFS): Add DCAN_SANITIZE_UB=1.
      	(libubsan_la_LIBADD): Add -lc++abi if CXX_ABI_NEEDED is true.
      	* ubsan/Makefile.in: Regenerate.
      	* tsan/Makefile.am (tsan_files): Add new files.
      	(DEFS): Add DCAN_SANITIZE_UB=0.
      	* tsan/Makefile.in: Regenerate.
      	* sanitizer_common/Makefile.am (sanitizer_common_files): Add new files.
      	* sanitizer_common/Makefile.in: Regenerate.
      	* asan/libtool-version: Bump the libasan SONAME.
      
      From-SVN: r229111
      696d846a
    • Jeff Law's avatar
      [PATCH] Move RTL printing code from sched-vis.c into print-rtl.c · 013a8899
      Jeff Law authored
      	* Makefile.in (OBJS): Remove sched-vis.c
      	* sched-vis.c: Removed.  Code moved into...
      	* print-rtl.c: Here.  Include cfg.h, pretty-print.h and print-rtl.h.
      	* rtl.h: Remove prototypes for functions now living in print-rtl.c
      	* print-rtl.h Add prototypes for new functions in print-rtl.c.
      	* auto-inc-dec.c: Include print-rtl.h
      	* cfgrtl.c, combine.c, final.c haifa-sched.c: Likewise.
      	* ira.c, lra-constraints.c, lra.c, sel-sched-dump.c: Likewise.
      
      From-SVN: r229110
      013a8899
    • Jeff Law's avatar
      [PATCH]Fix various ports failing due to unused parameter · 84c25fb5
      Jeff Law authored
      	* varasm.c (handle_vtv_comdat_section): Mark 2nd parameter with
      	ATTRIBUTE_UNUSED.
      
      From-SVN: r229109
      84c25fb5
    • Jason Merrill's avatar
      re PR c++/66583 (incorrect implicitly-defined move constructor for class with... · a81072c7
      Jason Merrill authored
      re PR c++/66583 (incorrect implicitly-defined move constructor for class with anonymous union and NSDMI)
      
      	PR c++/66583
      
      	* init.c (innermost_aggr_scope): New.
      	(build_field_list): Change uses_unions_p to uses_unions_or_anon_p.
      	(sort_mem_initializers): Handle initializers for entire anonymous
      	aggregates.
      
      From-SVN: r229108
      a81072c7
    • Richard Biener's avatar
      fold-const.c (fold_binary_loc): Move (-A) * (-B) -> A * B to match.pd. · 0a8f32b8
      Richard Biener authored
      
      2015-10-20  Richard Biener  <rguenther@suse.de>
      	    Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	* fold-const.c (fold_binary_loc) : Move (-A) * (-B) -> A * B
      	to match.pd.
      	Move (a * (1 << b)) is (a << b) to match.pd.
      	Move convert (C1/X)*C2 into (C1*C2)/X to match.pd.
      	Move ~X & X, (X == 0) & X, and !X & X are zero to match.pd.
      	Move X & ~X , X & (X == 0), and X & !X are zero to match.pd.
      
      	* match.pd (mult:c @0 (convert? (lshift integer_onep@1 @2))):
      	New simplifier.
      	(mult (rdiv:s REAL_CST@0 @1) REAL_CST@2): New simplifier.
      	(bit_and:c (convert? @0) (convert? (bit_not @0))): New simplifier.
      	(bit_ior (bit_and:s @0 (bit_not:s @1)) (bit_and:s (bit_not:s @0) @1))
      	: New simplifier.
      	(mult:c (convert1? (negate @0)) (convert2? negate_expr_p@1)):
      	New simplifier.
      	(match (logical_inverted_value @0) (truth_not @0)) : New Predicate.
      
      
      Co-Authored-By: default avatarNaveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
      
      From-SVN: r229107
      0a8f32b8
    • GCC Administrator's avatar
      Daily bump. · d0761942
      GCC Administrator authored
      From-SVN: r229106
      d0761942
  2. Oct 20, 2015
Loading