1. 29 Oct, 2015 11 commits
    • Remove unnecessary label from tree-call-cdce.c · 076906de
      Tested on x86_64-linux-gnu, arm-linux-gnueabi and aarch64-linux-gnu.
      
      gcc/
      	* tree-call-cdce.c (shrink_wrap_one_built_in_call): Remove
      	unnecessary label.
      
      From-SVN: r229531
      Richard Sandiford committed
    • config.host (arm*-*-eabi*, [...]): Include crtfastmath.o. · 1300f017
      2015-10-29  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* config.host (arm*-*-eabi*, arm*-*-symbianelf*, arm*-*-rtems*):
      	Include crtfastmath.o.
      
      From-SVN: r229529
      Christophe Lyon committed
    • re PR middle-end/68142 (unsafe association of multiplication) · 55db3753
      2015-10-29  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/68142
      	* fold-const.c (extract_muldiv_1): Avoid introducing undefined
      	overflow.
      
      	* c-c++-common/ubsan/pr68142.c: New testcase.
      
      From-SVN: r229528
      Richard Biener committed
    • alias.c: Reorder #include statements and remove duplicates. · 957060b5
      
      2015-10-29  Andrew MacLeod  <amacleod@redhat.com>
      
      	* alias.c: Reorder #include statements and remove duplicates.
      	* asan.c: Likewise.
      	* attribs.c: Likewise.
      	* auto-inc-dec.c: Likewise.
      	* auto-profile.c: Likewise.
      	* bb-reorder.c: Likewise.
      	* bt-load.c: Likewise.
      	* builtins.c: Likewise.
      	* caller-save.c: Likewise.
      	* calls.c: Likewise.
      	* ccmp.c: Likewise.
      	* cfg.c: Likewise.
      	* cfganal.c: Likewise.
      	* cfgbuild.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfghooks.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopanal.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cfgrtl.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* combine-stack-adj.c: Likewise.
      	* combine.c: Likewise.
      	* compare-elim.c: Likewise.
      	* convert.c: Likewise.
      	* coverage.c: Likewise.
      	* cppbuiltin.c: Likewise.
      	* cprop.c: Likewise.
      	* cse.c: Likewise.
      	* cselib.c: Likewise.
      	* data-streamer-in.c: Likewise.
      	* data-streamer-out.c: Likewise.
      	* data-streamer.c: Likewise.
      	* dbxout.c: Likewise.
      	* dce.c: Likewise.
      	* ddg.c: Likewise.
      	* debug.c: Likewise.
      	* df-core.c: Likewise.
      	* df-problems.c: Likewise.
      	* df-scan.c: Likewise.
      	* dfp.c: Likewise.
      	* dojump.c: Likewise.
      	* dominance.c: Likewise.
      	* double-int.c: Likewise.
      	* dse.c: Likewise.
      	* dumpfile.c: Likewise.
      	* dwarf2asm.c: Likewise.
      	* dwarf2cfi.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* explow.c: Likewise.
      	* expmed.c: Likewise.
      	* expr.c: Likewise.
      	* final.c: Likewise.
      	* fixed-value.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* fwprop.c: Likewise.
      	* gcse.c: Likewise.
      	* generic-match-head.c: Likewise.
      	* ggc-common.c: Likewise.
      	* gimple-builder.c: Likewise.
      	* gimple-expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-iterator.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-match-head.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* gimple-ssa-isolate-paths.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple-streamer-in.c: Likewise.
      	* gimple-streamer-out.c: Likewise.
      	* gimple-walk.c: Likewise.
      	* gimple.c: Likewise.
      	* gimplify-me.c: Likewise.
      	* gimplify.c: Likewise.
      	* godump.c: Likewise.
      	* graph.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* hw-doloop.c: Likewise.
      	* ifcvt.c: Likewise.
      	* incpath.c: Likewise.
      	* init-regs.c: Likewise.
      	* internal-fn.c: Likewise.
      	* ipa-chkp.c: Likewise.
      	* ipa-comdats.c: Likewise.
      	* ipa-cp.c: Likewise.
      	* ipa-devirt.c: Likewise.
      	* ipa-icf-gimple.c: Likewise.
      	* ipa-icf.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-inline-transform.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-polymorphic-call.c: Likewise.
      	* ipa-profile.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-ref.c: Likewise.
      	* ipa-reference.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* ipa-visibility.c: Likewise.
      	* ipa.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-conflicts.c: Likewise.
      	* ira-costs.c: Likewise.
      	* ira-emit.c: Likewise.
      	* ira-lives.c: Likewise.
      	* ira.c: Likewise.
      	* jump.c: Likewise.
      	* langhooks.c: Likewise.
      	* lcm.c: Likewise.
      	* lists.c: Likewise.
      	* loop-doloop.c: Likewise.
      	* loop-init.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* loop-iv.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* lower-subreg.c: Likewise.
      	* lra-assigns.c: Likewise.
      	* lra-coalesce.c: Likewise.
      	* lra-constraints.c: Likewise.
      	* lra-eliminations.c: Likewise.
      	* lra-lives.c: Likewise.
      	* lra-remat.c: Likewise.
      	* lra-spills.c: Likewise.
      	* lra.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-compress.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-section-in.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* mode-switching.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* omp-low.c: Likewise.
      	* optabs.c: Likewise.
      	* opts-global.c: Likewise.
      	* passes.c: Likewise.
      	* plugin.c: Likewise.
      	* postreload-gcse.c: Likewise.
      	* postreload.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* profile.c: Likewise.
      	* real.c: Likewise.
      	* realmpfr.c: Likewise.
      	* recog.c: Likewise.
      	* ree.c: Likewise.
      	* reg-stack.c: Likewise.
      	* regcprop.c: Likewise.
      	* reginfo.c: Likewise.
      	* regrename.c: Likewise.
      	* regstat.c: Likewise.
      	* reload.c: Likewise.
      	* reload1.c: Likewise.
      	* reorg.c: Likewise.
      	* resource.c: Likewise.
      	* rtl-chkp.c: Likewise.
      	* rtl-error.c: Likewise.
      	* rtlanal.c: Likewise.
      	* rtlhooks.c: Likewise.
      	* sanopt.c: Likewise.
      	* sched-deps.c: Likewise.
      	* sched-ebb.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* sese.c: Likewise.
      	* shrink-wrap.c: Likewise.
      	* simplify-rtx.c: Likewise.
      	* stack-ptr-mod.c: Likewise.
      	* statistics.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* store-motion.c: Likewise.
      	* stringpool.c: Likewise.
      	* symtab.c: Likewise.
      	* target-globals.c: Likewise.
      	* targhooks.c: Likewise.
      	* toplev.c: Likewise.
      	* tracer.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chkp-opt.c: Likewise.
      	* tree-chkp.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-diagnostic.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-iterator.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-ch.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-operands.c: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-scopedtables.c: Likewise.
      	* tree-ssa-sink.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.c: Likewise.
      	* tree-ssa-ter.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-ssanames.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-streamer-in.c: Likewise.
      	* tree-streamer-out.c: Likewise.
      	* tree-streamer.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* ubsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      	* varpool.c: Likewise.
      	* vtable-verify.c: Likewise.
      	* web.c: Likewise.
      	* wide-int-print.cc: Likewise.
      	* wide-int.cc: Likewise.
      	* xcoffout.c: Likewise.
      
      From-SVN: r229526
      Andrew MacLeod committed
    • re PR c++/67845 (ICE on invalid use of const qualifier on x86_64-linux-gnu in… · f58b8cd7
      re PR c++/67845 (ICE on invalid use of const qualifier on x86_64-linux-gnu in merge_types, at cp/typeck.c:854)
      
      /cp
      2015-10-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67845
      	* decl.c (grokfndecl): In case of erroneous cv-qualified non-member
      	functions consistently reset TREE_TYPE (decl) too.
      
      /testsuite
      2015-10-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67845
      	* g++.dg/other/cv_func4.C: New.
      
      From-SVN: r229523
      Paolo Carlini committed
    • Add BUILD_NO_PIE_CFLAGS and BUILD_NO_PIE_FLAG · 5148d2e3
      We shouldn't use NO_PIE_CFLAGS and NO_PIE_FLAG with CXX_FOR_BUILD
      when CXX_FOR_BUILD != CXX.  This patch adds BUILD_NO_PIE_CFLAGS
      and BUILD_NO_PIE_FLAG to use with CXX_FOR_BUILD.  They are set to
      NO_PIE_CFLAGS and NO_PIE_FLAG when build machine == host machine.
      Otherwise, they are set to NO_PIE_CFLAGS_FOR_BUILD and
      NO_PIE_FLAG_FOR_BUILD.
      
      	* Makefile.in (NO_PIE_CFLAGS): New.
      	(NO_PIE_FLAG): Likewise.
      	(NO_PIE_CFLAGS_FOR_BUILD): Likewise.
      	(NO_PIE_FLAG_FOR_BUILD): Likewise.
      	(BUILD_NO_PIE_CFLAGS): Likewise.
      	(BUILD_NO_PIE_FLAG): Likewise.
      	(COMPILER): Replace @NO_PIE_CFLAGS@ with $(NO_PIE_CFLAGS).
      	(LINKER): Replace @NO_PIE_FLAG@ with $(NO_PIE_FLAG).
      	(BUILD_CFLAGS): Replace @NO_PIE_CFLAGS@ with
      	$(BUILD_NO_PIE_CFLAGS).
      	(BUILD_CXXFLAGS): Likewise.
      	(BUILD_LDFLAGS ): Replace @NO_PIE_FLAG@ with
      	$(BUILD_NO_PIE_FLAG).
      	* configure.ac (BUILD_NO_PIE_CFLAGS): New.  AC_SUBST.
      	(BUILD_NO_PIE_FLAG): Likewise.
      	(NO_PIE_CFLAGS_FOR_BUILD): Likewise.
      	(NO_PIE_FLAG_FOR_BUILD): Likewise.
      	* configure: Regenerated.
      
      From-SVN: r229522
      H.J. Lu committed
    • Improve filenames for test cases of OpenACC combined directives · 41e977ac
      	libgomp/
      	* testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
      	* testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
      	... this.  Add a description of the test at the top of the file.
      	* testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
      	* testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
      	... this.  Add a description of the test at the top of the file.
      
      Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
      
      From-SVN: r229518
      Thomas Schwinge committed
    • re PR middle-end/56956 (ftrapv traps on valid abs-like code) · fcbb6b48
      2015-10-29  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/56956
      	* fold-const.c (fold_cond_expr_with_comparison): Do not fold
      	unsigned conditonal negation to ABS_EXPR.
      
      	* c-c++-common/ubsan/pr56956.c: New testcase.
      
      From-SVN: r229517
      Richard Biener committed
    • gimple-match-head.c (gimple_simplify): Remove premature checking of… · 384aedfc
      gimple-match-head.c (gimple_simplify): Remove premature checking of builtin_decl_implicit of function calls we simplify.
      
      2015-10-29  Richard Biener  <rguenther@suse.de>
      
      	* gimple-match-head.c (gimple_simplify): Remove premature checking
      	of builtin_decl_implicit of function calls we simplify.
      
      	fortran/
      	* f95-lang.c: Properly build variadic types for classification
      	and comparison builtins.
      
      From-SVN: r229515
      Richard Biener committed
    • tree-ssa-loop-ivopts.c (split_address_cost): Check depends_on. · 73eb5e9e
      
      	* tree-ssa-loop-ivopts.c (split_address_cost): Check depends_on.
      	(get_computation_cost_at): Ditto.
      	(determine_use_iv_cost_address): Pass NULL for arguments depends_on
      	and inv_expr_id.
      
      From-SVN: r229514
      Bin Cheng committed
    • Daily bump. · 3caa57ff
      From-SVN: r229511
      GCC Administrator committed
  2. 28 Oct, 2015 29 commits
    • * gnat.dg/discr44.adb: New test. · b2fb03eb
      From-SVN: r229508
      Eric Botcazou committed
    • Remove superfluous code in intra_create_variable_infos · 38b882b5
      2015-10-28  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-ssa-structalias.c (intra_create_variable_infos): Remove
      	superfluous code.
      
      From-SVN: r229506
      Tom de Vries committed
    • Fix for ICE with -g on testcase with incomplete types. · e922069e
      gcc/c/
      	PR debug/66068
      	* c-typeck.c (c_build_qualified_type): Clear C_TYPE_INCOMPLETE_VARS
      	after calling build_qualified_type.
      gcc/testsuite/
      	PR debug/66068
      	* gcc.dg/debug/pr66068.c: New test.
      
      From-SVN: r229505
      Jim Wilson committed
    • Make-lang.in (c.tags): Also include libcpp TAGS. · 08585fba
      gcc/c/
      	* Make-lang.in (c.tags): Also include libcpp TAGS.
      gcc/cp/
      	* Make-lang.in (c++.tags): Also include libcpp TAGS.
      
      From-SVN: r229504
      Jason Merrill committed
    • re PR fortran/67933 (ICE for array of a derived type with allocatable class in derived type object) · 48396525
      2015-01-28  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/67933
      	* gfortran.dg/allocate_with_source_15.f03: Correct trivial
      	array bounds error at line 25.
      
      From-SVN: r229503
      Paul Thomas committed
    • DR 1518 · a3320d62
      	DR 1518
      	* class.c (type_has_user_provided_or_explicit_constructor): New.
      	(check_bases_and_members): Use it.
      	* cp-tree.h: Declare it.
      
      From-SVN: r229501
      Jason Merrill committed
    • * c-common.c (pointer_int_sum): Fold the MULT_EXPR. · d90ec4f2
      From-SVN: r229500
      Jason Merrill committed
    • omp-low.c (MASK_GANG, [...]): Delete. · a6392fdc
      	* omp-low.c (MASK_GANG, MASK_WORKER, MASK_VECTOR): Delete.
      	(extract_omp_for_data): Remove OpenACC special handling of
      	chunking.
      
      From-SVN: r229499
      Nathan Sidwell committed
    • nvptx.c (nvptx_print_operand): Remove 'd' case. · d2d47a28
      	* config/nvptx/nvptx.c (nvptx_print_operand): Remove 'd' case.
      	(struct parallel): Update comment.
      	(nvptx_reorg): Likewise.
      	(nvptx_neuter): Cleanup whitespace.
      
      From-SVN: r229498
      Nathan Sidwell committed
    • oddspreg-3.c: Disable for MIPS16. · 7bc2eabe
      2015-10-28  Catherine Moore  <clm@codesourcery.com>
      
              * gcc.target/mips/oddspreg-3.c: Disable for MIPS16.
              * gcc.target/mips/oddspreg-6.c: Likewise.
              * gcc.target/mips/oddspreg-1.c: Likewise.
              * gcc.target/mips/oddspreg-2.c: Likewise.
      
      From-SVN: r229496
      Catherine Moore committed
    • re PR target/67839 (Bit addressable instructions generated for invalid memory address) · f64ba10b
      gcc/ChangeLog
      
      	PR target/67839
      	* config/avr/predicates.md (low_io_address_operand): Don't
      	consider MODE when computing upper bound.
      	(io_address_operand): Likewise.
      
      gcc/testsuite/ChangeLog
      
      	PR target/67839
      	* gcc.target/avr/pr67839.c: New test.
      
      From-SVN: r229495
      Senthil Kumar Selvaraj committed
    • fold-const.c (operand_equal_p): Do not verify that types are compatible for MEM_REFs. · c5ab2fd4
      	* fold-const.c (operand_equal_p): Do not verify that types are
      	compatible for MEM_REFs.
      
      From-SVN: r229494
      Jan Hubicka committed
    • gimple-match-head.c (gimple_simplify): Allow VECTOR_CSTs in simplifying VEC_COND_EXPR conditions. · fe4ed7b1
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	* gimple-match-head.c (gimple_simplify): Allow VECTOR_CSTs
      	in simplifying VEC_COND_EXPR conditions.
      
      	* gcc.dg/tree-ssa/operand-equal-2.c: Adjust.
      
      From-SVN: r229492
      Richard Biener committed
    • Generate constraints only once in intra_create_variable_infos · 054e0889
      2015-10-28  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-ssa-structalias.c (intra_create_variable_infos): Don't iterate
      	into vi_next of a full_var.
      
      From-SVN: r229490
      Tom de Vries committed
    • Improve alias dump info · 3781ab4b
      2015-10-28  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-ssa-structalias.c (new_var_info, make_heapvar)
      	(make_constraint_from_restrict, make_constraint_from_global_restrict)
      	(create_function_info_for, create_variable_info_for_1)
      	(create_variable_info_for): Add and handle add_id parameter.
      	(get_call_vi, new_scalar_tmp_constraint_exp, handle_rhs_call)
      	(init_base_vars): Add extra argument to calls to new_var_info.
      	(get_vi_for_tree): Add extra argument to call to
      	create_variable_info_for.
      	(process_constraint, do_deref, process_all_all_constraints): Add extra
      	argument to calls to new_scalar_tmp_constraint_exp.
      	(handle_lhs_call, find_func_aliases_for_builtin_call): Add extra
      	argument to calls to make_heapvar.
      	(make_restrict_var_constraints): Add extra argument to call to
      	make_constraint_from_global_restrict.
      	(intra_create_variable_infos): Add extra argument to call to
      	create_variable_info_for_1.
      	(ipa_pta_execute): Add extra argument to call to
      	create_function_info_for.
      
      	* gcc.dg/tree-ssa/pta-callused.c: Update to scan for CALLUSED(id).
      
      From-SVN: r229489
      Tom de Vries committed
    • Handle noplt in call expanders for AArch64. · eb9678e7
      
      
      
      2015-10-28  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* config/aarch64/aarch64.md (call, call_value, sibcall): Handle noplt.
      	(sibcall_value): Likewise.
      
      From-SVN: r229488
      Ramana Radhakrishnan committed
    • loop-g-1.c: New. · e3091406
      	* testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
      	* testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
      	* testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
      	* testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
      	* testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
      	* testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
      
      From-SVN: r229487
      Nathan Sidwell committed
    • nvptx.h (struct machine_function): Add axis_predicate. · d88cd9c4
      	* config/nvptx/nvptx.h (struct machine_function): Add
      	axis_predicate.
      	* config/nvptx/nvptx-protos.h (nvptx_expand_oacc_fork,
      	nvptx_expand_oacc_join): Declare.
      	* config/nvptx/nvptx.md (UNSPEC_NTID, UNSPEC_TID): Delete.
      	(UNSPEC_DIM_SIZE, UNSPEC_SHARED_DATA, UNSPEC_BIT_CONV,
      	UNSPEC_SHUFFLE, UNSPEC_BR_UNIFIED): New.
      	(UNSPECV_BARSYNC, UNSPECV_DIM_POS, UNSPECV_FORK, UNSPECV_FORKED,
      	UNSPECV_JOINING, UNSPECV_JOIN): New.
      	(BITS, BITD): New mode iterators.
      	(br_true_uni, br_false_uni): New.
      	(*oacc_ntid_insn, oacc_ntid, *oacc_tid_insn, oacc_tid): Delete.
      	(oacc_dim_size, oacc_dim_pos): New.
      	(nvptx_fork, nvptx_forked, nvptx_joining, nvptx_join): New.
      	(oacc_fork, oacc_join): New.
      	(nvptx_shuffle<mode>, unpack<mode>si2, packsi<mode>2): New.
      	(worker_load<mode>, worker_store<mode>): New.
      	(nvptx_barsync): New.
      	* config/nvptx/nvptx.c: Include gimple.h & dumpfile.h.
      	(SHUFFLE_UP, SHUFFLE_DOWN, SHUFFLE_BFLY, SHUFFLE_IDX): Define.
      	(worker_bcast_hwm, worker_bcast_align, worker_bcast_name,
      	worker_bcast_sym): New.
      	(nvptx_option_override): Initialize worker broadcast buffer.
      	(nvptx_emit_forking, nvptx_emit_joining): New.
      	(nvptx_init_axis_predicate): New.
      	(nvptx_declare_function_name): Init axis predicates.
      	(nvptx_expand_call): Add fork/join markers around routine call.
      	(nvptx_expand_oacc_fork, nvptx_expand_oacc_join): New.
      	(nvptx_gen_unpack, nvptx_gen_pack, nvptx_gen_shuffle): New.
      	(nvptx_gen_vcast): New.
      	(struct wcast_data_t): New.
      	(enum propagate_mask): New.
      	(nvptx_gen_wcast): New.
      	(nvptx_print_operand): Add 'S' case.
      	(struct parallel): New.
      	(parallel::parallel, parallel::~parallel): New.
      	(bb_insn_map_t, insn_bb_t, insn_bb_vec_t): New typedefs.
      	(nvptx_split_blocks, nvptx_discover_pre, nvptx_dump_pars,
      	nvptx_find_par, nvptx_discover_pars): New.
      	(nvptx_propagate): New.
      	(vprop_gen, nvptx_vpropagate): New.
      	(wprop_gen, nvptx_wpropagate): New.
      	(nvptx_wsync): New.
      	(nvptx_single, nvptx_skip_par): New.
      	(nvptx_process_pars, nvptx_neuter_pars): New.
      	(ntptx_reorg): Split blocks, generate parallel structure, apply
      	neutering.
      	(nvptx_cannot_copy_insn_p): New.
      	(nvptx_file_end): Emit worker broadcast decl.
      	(nvptx_goacc_fork_join): New.
      	(TARGET_CANNOT_COPY_INSN_P): Override.
      	(TARGET_GOACC_FORK_JOIN): Override.
      
      From-SVN: r229486
      Nathan Sidwell committed
    • re PR ipa/67600 (Segfault when assigning only one char to… · 1e355e1d
      re PR ipa/67600 (Segfault when assigning only one char to ostreambuf_iterator<char> compiled with -O2 or -O3)
      
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	PR ipa/67600
      	* g++.dg/torture/pr67600.C: Remove preprocessed headers in favor
      	of #includes.
      
      From-SVN: r229485
      Richard Biener committed
    • fold-const.c (negate_expr_p): Adjust the division case to properly avoid… · b851e3ee
      fold-const.c (negate_expr_p): Adjust the division case to properly avoid introducing undefined overflow.
      
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (negate_expr_p): Adjust the division case to
      	properly avoid introducing undefined overflow.
      	(fold_negate_expr): Likewise.
      
      From-SVN: r229484
      Richard Biener committed
    • re PR middle-end/65962 (Missed vectorization of strided stores) · 056b0995
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/65962
      	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
      	Avoid creating loop carried dependences also for outer loops
      	of the loop a use to replace is in.
      
      	* gcc.dg/vect/vect-62.c: Adjust.
      
      From-SVN: r229481
      Richard Biener committed
    • common.opt (fchecking): New flag controlling flag_checking. · 6d27d749
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	* common.opt (fchecking): New flag controlling flag_checking.
      	* passes.c (verify_curr_properties): Drop DEBUG_FUNCTION.
      	* timevar.c (timer::print): Adjust output.
      	* doc/invoke.texi (fchecking): Document.
      
      From-SVN: r229480
      Richard Biener committed
    • re PR middle-end/68067 (Wrong constant folding) · 254b22cc
      2015-10-28  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/68067
      	* fold-const.c (negate_expr_p): We cannot negate plus or minus
      	if overflow is not wrapping.  Likewise multiplication unless
      	one operand is constant and not power of two.
      	(fold_negate_expr): Adjust accordingly.
      
      	* gcc.dg/torture/pr68067-1.c: New testcase.
      	* gcc.dg/torture/pr68067-2.c: Likewise.
      
      From-SVN: r229479
      Richard Biener committed
    • rs6000: p8vector-builtin-8.c test requires int128 · af7ff91b
      For 32-bit targets p8vector_ok does not imply we have int128.
      
      
      2015-10-28  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/testsuite/
      	* gcc.target/powerpc/p8vector-builtin-8.c: Add "target int128".
      
      From-SVN: r229474
      Segher Boessenkool committed
    • rs6000: Fix tests for xvmadd and xvnmsub · c39f02ef
      The patterns involved can create vmadd resp. vnmsub instructions instead.
      This patch changes the testcases to allow those.
      
      
      2015-10-26  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/testsuite/
      	* gcc.target/powerpc/vsx-builtin-2.c: Allow vmadd and vnmsub as well
      	as xvmadd and xvnmsub.
      	* gcc.target/powerpc/vsx-vector-2.c: Allow vmadd as well as xvmadd.
      
      From-SVN: r229473
      Segher Boessenkool committed
    • omp-low.c (struct omp_context): Remove gwv_below, gwv_this fields. · e4834818
      	* omp-low.c (struct omp_context): Remove gwv_below, gwv_this
      	fields.
      	(is_oacc_parallel, is_oacc_kernels): New.
      	(enclosing_target_ctx): May return NULL.
      	(ctx_in_oacc_kernels_region): New.
      	(check_oacc_kernel_gwv): New.
      	(oacc_loop_or_target_p): Delete.
      	(scan_omp_for): Don't calculate gwv mask.  Check parallel clause
      	operands.  Strip reductions fro kernels.
      	(scan_omp_target): Don't calculate gwv mask.
      	(lower_oacc_head_mark, lower_oacc_loop_marker,
      	lower_oacc_head_tail): New.
      	(struct oacc_collapse): New.
      	(expand_oacc_collapse_init, expand_oacc_collapse_vars): New.
      	(expand_omp_for_static_nochunk, expand_omp_for_static_chunk):
      	Remove OpenACC handling.
      	(expand_oacc_for): New.
      	(expand_omp_for): Call expand_oacc_for.
      	(lower_omp_for): Call lower_oacc_head_tail.
      
      From-SVN: r229472
      Nathan Sidwell committed
    • plugin-nvptx.c (nvptx_exec): Remove check on compute dimensions. · a1c1908b
      	* plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
      	dimensions.
      
      From-SVN: r229471
      Nathan Sidwell committed
    • [PATCH 7/9] ENABLE_CHECKING refactoring: middle-end, LTO FE · b2b29377
      [PATCH 7/9] ENABLE_CHECKING refactoring: middle-end, LTO FE
      gcc/lto/ChangeLog:
      2015-10-27  Mikhail Maltsev  <maltsevm@gmail.com>
      
      	* lto.c (unify_scc): Use flag_checking and remove ENABLE_CHECKING
      	conditionals.
      	(lto_fixup_state): Likewise.
      	(do_whole_program_analysis): Use
      	symtab_node::checking_verify_symtab_nodes and remove ENABLE_CHECKING
      	conditionals.
      
      gcc/ChangeLog:
      
      2015-10-27  Mikhail Maltsev  <maltsevm@gmail.com>
      
      	* attribs.c (check_attribute_tables): New function, broken out from...
      	(init_attributes): Use it.
      	* cfgcleanup.c (try_optimize_cfg): Use flag_checking, CHECKING_P
      	gcc_checking_assert and checking_* functions to eliminate
      	ENABLE_CHECKING conditionals.
      	* cfgexpand.c (expand_goto, expand_debug_expr): Likewise.
      	(pass_expand::execute): Likewise.
      	* cgraphclones.c (symbol_table::materialize_all_clones): Likewise.
      	* cgraphunit.c (mark_functions_to_output): Likewise.
      	(cgraph_node::expand_thunk): Likewise.
      	(symbol_table::compile): Likewise.
      	* ddg.c (add_cross_iteration_register_deps): Likewise.
      	(create_ddg_all_sccs): Likewise.
      	* df-core.c (df_finish_pass, df_analyze): Likewise.
      	* diagnostic-core.h: Likewise.
      	* diagnostic.c (diagnostic_report_diagnostic): Likewise.
      	* dominance.c (calculate_dominance_info): Likewise.
      	* dwarf2out.c (add_AT_die_ref): Likewise.
      	(const_ok_for_output_1, mem_loc_descriptor): Likewise.
      	(loc_list_from_tree, gen_lexical_block_die): Likewise.
      	gen_type_die_with_usage, gen_type_die): Likewise.
      	(dwarf2out_decl): Likewise.
      	* emit-rtl.c (verify_rtx_sharing, reorder_insns_nobb): Likewise.
      	* except.c (duplicate_eh_regions): Likewise.
      	* fwprop.c (register_active_defs, update_df_init): Likewise.
      	(fwprop_init, fwprop_done): Likewise.
      	(update_uses): Likewise.
      	* ggc-page.c (ggc_grow): Likewise.
      	* gimplify.c (gimplify_body): Likewise.
      	(gimplify_hasher::equal): Likewise.
      	* graphite-isl-ast-to-gimple.c (graphite_verify): Likewise.
      	* graphite-scop-detection.c (canonicalize_loop_closed_ssa_form):
      	Likewise.
      	* graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Likewise.
      	(rewrite_cross_bb_scalar_deps_out_of_ssa): Likwise.
      	* hash-table.h (::find_empty_slot_for_expand): Likewise.
      	* ifcvt.c (if_convert): Likewise.
      	* ipa-cp.c (ipcp_propagate_stage): Likewise.
      	* ipa-devirt.c (type_in_anonymous_namespace_p): Likewise.
      	(odr_type_p, odr_types_equivalent_p): Likewise.
      	(add_type_duplicate, get_odr_type): Likewise.
      	* ipa-icf.c (sem_item_optimizer::execute): Likewise.
      	(sem_item_optimizer::subdivide_classes_by_equality): Likewise.
      	(sem_item_optimizer::verify_classes): Likewise.
      	(sem_item_optimizer::traverse_congruence_split): Likewise.
      	(sem_item_optimizer::checking_verify_classes): New.
      	* ipa-icf.h (sem_item_optimizer::checking_verify_classes): Add new
      	method.
      	* cfgrtl.c (commit_edge_insertions): Likewise.
      	(fixup_reorder_chain, cfg_layout_finalize): Likewise.
      	(rtl_flow_call_edges_add): Likewise.
      	* cgraph.c (symbol_table::create_edge): Likewise.
      	(cgraph_edge::redirect_call_stmt_to_callee): Likewise.
      	* cgraph.h (symtab_node): Likewise.
      	(symtab_node::checking_verify_symtab_nodes): Define.
      	(cgraph_node::checking_verify_cgraph_nodes): Define.
      	* cfghooks.h (checking_verify_flow_info): Define.
      	* cfgloop.h (checking_verify_loop_structure): Define.
      	* dominance.h (checking_verify_dominators): Define.
      	* et-forest.c: Fix comment.
      	* ipa-inline-analysis.c (compute_inline_parameters): Use flag_checking,
      	CHECKING_P gcc_checking_assert and checking_* functions to eliminate
      	ENABLE_CHECKING conditionals.
      	* ipa-inline-transform.c (save_inline_function_body): Likewise.
      	* ipa-inline.c (inline_small_functions): Likewise.
      	(early_inliner): Likewise.
      	* ipa-inline.h (estimate_edge_growth): Likewise.
      	* ipa-visibility.c (function_and_variable_visibility): Likewise.
      	* ipa.c (symbol_table::remove_unreachable_nodes): Likewise.
      	(ipa_single_use): Likewise.
      	* ira-int.h: Likewise.
      	* ira.c (ira): Likewise.
      	* loop-doloop.c (doloop_optimize_loops): Likewise.
      	* loop-init.c (loop_optimizer_init, fix_loop_structure): Likewise.
      	* loop-invariant.c (move_loop_invariants): Likewise.
      	* lra-assigns.c (lra_assign): Likewise.
      	* lra-constraints.c (lra_constraints): Likewise.
      	* lra-eliminations.c (lra_eliminate): Likewise.
      	* lra-int.h (struct lra_reg): Likewise.
      	* lra-lives.c (check_pseudos_live_through_calls): Likewise.
      	(lra_create_live_ranges_1): Likewise.
      	* lra-remat.c (create_remat_bb_data): Likewise.
      	* lra.c (lra_update_insn_recog_data, restore_scratches): Likewise.
      	(lra): Likewise.
      	(check_rtl): Always define. Remove incorrect guard around
      	extract_constrain_insn call.
      	* lto-cgraph.c (input_cgraph_1: Use flag_checking,
      	CHECKING_P gcc_checking_assert and checking_* functions to eliminate
      	ENABLE_CHECKING conditionals.
      	* lto-streamer-out.c (DFS::DFS): Likewise.
      	(lto_output): Likewise.
      	* lto-streamer.c (lto_streamer_init): Likewise.
      	* omp-low.c (scan_omp_target, expand_omp_taskreg): Likewise.
      	expand_omp_target, execute_expand_omp): Likewise.
      	(lower_omp_target): Likewise.
      	* passes.c (execute_function_todo): Likewise.
      	(execute_todo, execute_one_pass): Likewise.
      	(verify_curr_properties): Always define.
      	* predict.c (tree_estimate_probability: Use flag_checking,
      	CHECKING_P gcc_checking_assert and checking_* functions to eliminate
      	ENABLE_CHECKING conditionals.
      	(propagate_freq): Likewise.
      	* pretty-print.c (pp_format): Likewise.
      	* real.c (real_to_decimal_for_mode): Likewise.
      	* recog.c (split_all_insns): Likewise.
      	* regcprop.c (kill_value_one_regno): Likewise.
      	(copy_value): Likewise.
      	(validate_value_data): Define unconditionally.
      	* reload.c: Fix comment.
      	* timevar.c: Include options.h
      	* tree-ssa.h (checking_verify_ssa): Define.
      	* tree-ssa-loop-manip.h (checking_verify_loop_closed_ssa): Define.
      	* sched-deps.c (CHECK): Remove unused macro.
      	(add_or_update_dep_1, sd_add_dep: Use flag_checking, CHECKING_P
      	gcc_checking_assert and checking_* functions to eliminate
      	ENABLE_CHECKING conditionals.
      	* sel-sched-ir.c (free_regset_pool, tidy_control_flow): Likewise.
      	* sel-sched.c (struct moveop_static_params): Likewise.
      	(find_best_reg_for_expr, move_cond_jump): Likewise.
      	(move_op_orig_expr_not_found): Likewise.
      	(code_motion_process_successors, move_op): Likewise.
      	* ssa-iterators.h (first_readonly_imm_use): Likewise.
      	(next_readonly_imm_use): Likewise.
      	* store-motion.c (compute_store_table): Likewise.
      	* symbol-summary.h (function_summary::function_summary): Likewise.
      	* target.h (cumulative_args_t): Likewise.
      	(get_cumulative_args, pack_cumulative_args): Likewise.
      	* timevar.c: (timer::print): Likewise.
      	* trans-mem.c (ipa_tm_execute): Likewise.
      	* tree-cfg.c (move_stmt_op): Likewise.
      	(move_sese_region_to_fn): Likewise.
      	(gimple_flow_call_edges_add): Likewise.
      	* tree-cfgcleanup.c (cleanup_tree_cfg_noloop, repair_loop_structures):
      	Likewise.
      	* tree-eh.c (remove_unreachable_handlers): Likewise.
      	* tree-if-conv.c (pass_if_conversion::execute): Likewise.
      	* tree-inline.c (expand_call_inline, optimize_inline_calls): Likewise.
      	* tree-into-ssa.c (update_ssa): Likewise.
      	* tree-loop-distribution.c (pass_loop_distribution::execute): Likewise.
      	* tree-outof-ssa.c (eliminate_useless_phis, rewrite_trees): Likewise.
      	* tree-parloops.c (pass_parallelize_loops::execute): Likewise.
      	* tree-predcom.c (suitable_component_p): Likewise.
      	* tree-profile.c (gimple_gen_const_delta_profiler): Likewise.
      	* tree-ssa-alias.c (refs_may_alias_p_1): Likewise.
      	* tree-ssa-live.c (verify_live_on_entry): Likewise.
      	* tree-ssa-live.h (register_ssa_partition): Likewise.
      	* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Likewise.
      	* tree-ssa-loop-manip.c (add_exit_phi): Likewise.
      	(tree_transform_and_unroll_loop): Likewise.
      	* tree-ssa-math-opts.c (pass_cse_reciprocals::execute): Likewise.
      	* tree-ssa-operands.c (get_expr_operands): Likewise.
      	* tree-ssa-propagate.c (replace_exp_1): Likewise.
      	* tree-ssa-structalias.c (rewrite_constraints): Likewise.
      	* tree-ssa-ter.c (free_temp_expr_table): Likewise.
      	* tree-ssa-threadupdate.c (duplicate_thread_path): Likewise.
      	* tree-ssanames.c (release_ssa_name_fn): Likewise.
      	* tree-stdarg.c (expand_ifn_va_arg): Likewise.
      	* tree-vect-loop-manip.c
      	(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
      	(slpeel_checking_verify_cfg_after_peeling): Likewise.
      	(vect_do_peeling_for_loop_bound): Likewise.
      	(vect_do_peeling_for_alignment): Likewise.
      	* tree-vrp.c (supports_overflow_infinity): Likewise.
      	(set_value_range): Likewise.
      	* tree.c (free_lang_data_in_cgraph): Likewise.
      	* value-prof.c (gimple_remove_histogram_value): Likewise.
      	(free_hist): Likewise.
      	* var-tracking.c (canonicalize_values_star): Likewise.
      	(compute_bb_dataflow, vt_find_locations, vt_emit_notes): Likewise.
      
      From-SVN: r229470
      Mikhail Maltsev committed