aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-09-25rtlanal.c (lsb_bitfield_op_p): New predicate for bitfield operations from ↵Yvan Roux2-5/+41
the least significant bit. 2013-09-25 Yvan Roux <yvan.roux@linaro.org> Vladimir Makarov <vmakarov@redhat.com> * rtlanal.c (lsb_bitfield_op_p): New predicate for bitfield operations from the least significant bit. (strip_address_mutations): Add bitfield operations handling. (must_be_index_p): Add shifting and rotate operations handling. (set_address_base): Use must_be_base_p predicate. (set_address_index):Use must_be_index_p predicate. Co-Authored-By: Vladimir Makarov <vmakarov@redhat.com> From-SVN: r202914
2013-09-25i386.c (ix86_avx256_split_vector_move_misalign): Use new names.Alexander Ivchenko4-105/+313
* config/i386/i386.c (ix86_avx256_split_vector_move_misalign): Use new names. (ix86_expand_vector_move_misalign): Support new unaligned load and stores and use new names. (CODE_FOR_sse2_storedqu): Rename to ... (CODE_FOR_sse2_storedquv16qi): ... this. (CODE_FOR_sse2_loaddqu): Rename to ... (CODE_FOR_sse2_loaddquv16qi): ... this. (CODE_FOR_avx_loaddqu256): Rename to ... (CODE_FOR_avx_loaddquv32qi): ... this. (CODE_FOR_avx_storedqu256): Rename to ... (CODE_FOR_avx_storedquv32qi): ... this. * config/i386/i386.md (fpint_logic): New. * config/i386/sse.md (VMOVE): Extend for AVX512. (VF): Ditto. (VF_128_256): New. (VF_512): Ditto. (VI_UNALIGNED_LOADSTORE): Ditto. (sse2_avx_avx512f): Ditto. (sse2_avx2): Extend for AVX512. (sse4_1_avx2): Ditto. (avx2_avx512f): New. (sse): Extend for AVX512. (sse2): Ditto. (sse4_1): Ditto. (avxsizesuffix): Ditto. (sseintvecmode): Ditto. (ssePSmode): Ditto. (<sse>_loadu<ssemodesuffix><avxsizesuffix>): Ditto. (<sse>_storeu<ssemodesuffix><avxsizesuffix>): Ditto. (<sse2>_loaddqu<avxsizesuffix>): Extend for AVX512 and rename to ... (<sse2_avx_avx512f>_loaddqu<mode>): ... this. (<sse2>_storedqu<avxsizesuffix>): Extend for AVX512 and rename to ... (<sse2_avx_avx512f>_storedqu<mode): ... this. (<sse>_movnt<mode>): Replace constraint "x" with "v". (STORENT_MODE): Extend for AVX512. (*absneg<mode>2): Replace constraint "x" with "v". (*mul<mode>3): Ditto. (*ieee_smin<mode>3): Ditto. (*ieee_smax<mode>3): Ditto. (avx_cmp<mode>3): Replace VF with VF_128_256. (*<sse>_maskcmp<mode>3_comm): Ditto. (<sse>_maskcmp<mode>3): Ditto. (<sse>_andnot<mode>3): Extend for AVX512. (<code><mode>3, anylogic): Replace VF with VF_128_256. (<code><mode>3, fpint_logic): New. (*<code><mode>3): Extend for AVX512. (avx512flogicsuff): New. (avx512f_<logic><mode>): Ditto. (<sse>_movmsk<ssemodesuffix><avxsizesuffix>): Replace VF with VF_128_256. (<sse4_1>_blend<ssemodesuffix><avxsizesuffix>): Ditto. (<sse4_1>_blendv<ssemodesuffix><avxsizesuffix>): Ditto. (<sse4_1>_dp<ssemodesuffix><avxsizesuffix>): Ditto. (avx_vtest<ssemodesuffix><avxsizesuffix>): Ditto. (<sse4_1>_round<ssemodesuffix><avxsizesuffix>): Ditto. (xop_vpermil2<mode>3): Ditto. (*avx_vpermilp<mode>): Extend for AVX512 and rename to ... (*<sse2_avx_avx512f>_vpermilp<mode>): ... this. (avx_vpermilvar<mode>3): Extend for AVX512 and rename to ... (<sse2_avx_avx512f>_vpermilvar<mode>3): ... this. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com> From-SVN: r202913
2013-09-25* Makefile.in (PARTITION_H, LTO_SYMTAB_H, COMMON_TARGET_DEF_H)Tom Tromey2-49/+12
(RTL_ERROR_H, TRANS_MEM_H, COVERAGE_H, DEMANGLE_H, ALIAS_H) (SCHED_INT_H, SEL_SCHED_IR_H, SEL_SCHED_DUMP_H, VALTRACK_H, DDG_H) (GGC_INTERNAL_H, DECNUM_H, BACKTRACE_H, MKDEPS_H, TREE_HASHER_H) (TREE_SSA_LIVE_H, SSAEXPAND_H, DWARF2OUT_H, SCEV_H, OMEGA_H) (TREE_DATA_REF_H, IRA_INT_H, LRA_INT_H, DBGCNT_H, DATA_STREAMER_H) (GIMPLE_STREAMER_H, TREE_STREAMER_H, STREAMER_HOOKS_H) (TREE_VECTORIZER_H, IPA_INLINE_H, GSTAB_H, LIBFUNCS_H) (GRAPHITE_HTAB_H): Remove. From-SVN: r202912
2013-09-25* config/mcore/t-mcore (CROSS_FLOAT_H): Remove.Tom Tromey2-3/+4
From-SVN: r202911
2013-09-25* config/t-glibc (glibc-c.o): Use COMPILE and POSTCOMPILE.Tom Tromey2-4/+7
From-SVN: r202910
2013-09-25t-i386 (i386.o): Remove.Tom Tromey2-16/+8
* config/i386/t-i386 (i386.o): Remove. (i386-c.o): Use COMPILE and POSTCOMPILE. From-SVN: r202909
2013-09-25* Makefile.in ($(out_object_file)): Use COMPILE and POSTCOMPILE.Tom Tromey2-9/+7
From-SVN: r202908
2013-09-25* Makefile.in (graph.o, sbitmap.o, sparseset.o, gcc-ar.o)Tom Tromey2-1484/+103
(gcc-ranlib.o, gcc-nm.o, collect2.o, collect2-aix.o, tlink.o) (lto-wrapper.o, default-c.o, attribs.o, incpath.o, prefix.o) (gcc.o, options.o, options-save.o, version.o, gtype-desc.o) (trans-mem.o, ggc-common.o, ggc-page.o, ggc-none.o, stringpool.o) (convert.o, double-int.o, lto-compress.o, data-streamer-in.o) (data-streamer-out.o, data-streamer.o, gimple-streamer-in.o) (gimple-streamer-out.o, tree-streamer.o, tree-streamer-in.o) (tree-streamer-out.o, streamer-hooks.o, lto-cgraph.o) (lto-streamer-in.o, lto-streamer-out.o, lto-section-in.o) (lto-section-out.o, lto-opts.o, lto-streamer.o, langhooks.o) (test-dump.o, tree.o, tree-dump.o, tree-inline.o, print-tree.o) (stor-layout.o, asan.o, tsan.o, ubsan.o, tree-ssa-tail-merge.o) (tree-ssa-structalias.o, tree-ssa-uninit.o, tree-ssa.o) (tree-into-ssa.o, tree-ssa-ter.o, tree-ssa-coalesce.o) (tree-outof-ssa.o, tree-ssa-dse.o, tree-ssa-forwprop.o) (tree-ssa-phiprop.o, tree-ssa-ifcombine.o, tree-ssa-phiopt.o) (tree-nrv.o, tree-ssa-copy.o, tree-ssa-propagate.o) (tree-ssa-dom.o, tree-ssa-uncprop.o, tree-ssa-threadedge.o) (tree-ssa-threadupdate.o, tree-ssanames.o, tree-phinodes.o) (domwalk.o, tree-ssa-live.o, tree-ssa-copyrename.o) (tree-ssa-pre.o, tree-ssa-sccvn.o) (gimple-ssa-strength-reduction.o, tree-vrp.o, tree-cfg.o) (tree-cfgcleanup.o, tree-tailcall.o, tree-ssa-sink.o) (tree-nested.o, tree-if-conv.o, tree-iterator.o, tree-dfa.o) (tree-ssa-operands.o, tree-eh.o, tree-ssa-loop.o) (tree-ssa-loop-unswitch.o, tree-ssa-address.o) (tree-ssa-loop-niter.o, tree-ssa-loop-ivcanon.o) (tree-ssa-loop-ch.o, tree-ssa-loop-prefetch.o, tree-predcom.o) (tree-ssa-loop-ivopts.o, tree-affine.o, tree-ssa-loop-manip.o) (tree-ssa-loop-im.o, tree-ssa-math-opts.o, tree-ssa-alias.o) (tree-ssa-reassoc.o, tree-optimize.o, gimplify.o) (gimple-iterator.o, gimple-fold.o, gimple-low.o, omp-low.o) (tree-browser.o, omega.o, tree-chrec.o, tree-scalar-evolution.o) (tree-data-ref.o, sese.o, graphite.o, graphite-blocking.o) (graphite-clast-to-gimple.o, graphite-dependences.o) (graphite-interchange.o, graphite-poly.o) (graphite-scop-detection.o, graphite-sese-to-poly.o) (graphite-optimize-isl.o, tree-vect-loop.o) (tree-vect-loop-manip.o, tree-vect-patterns.o, tree-vect-slp.o) (tree-vect-stmts.o, tree-vect-data-refs.o, tree-vectorizer.o) (vtable-verify.o, tree-loop-distribution.o, tree-parloops.o) (tree-stdarg.o, tree-object-size.o, internal-fn.o, gimple.o) (gimple-pretty-print.o, tree-mudflap.o, tree-nomudflap.o) (tree-pretty-print.o, tree-diagnostic.o, fold-const.o) (diagnostic.o, diagnostic-color.o, opts.o, opts-global.o) (opts-common.o, targhooks.o, common/common-targhooks.o, input.o) (toplev.o, hwint.o, passes.o, plugin.o, main.o, host-default.o) (rtl-error.o, rtl.o, print-rtl.o, rtlanal.o, varasm.o, function.o) (statistics.o, stmt.o, except.o, expr.o, dojump.o, builtins.o) (calls.o, expmed.o, explow.o, optabs.o, dbxout.o, debug.o) (sdbout.o, dwarf2out.o, dwarf2cfi.o, dwarf2asm.o, vmsdbgout.o) (xcoffout.o, godump.o, emit-rtl.o, real.o, realmpfr.o, dfp.o) (fixed-value.o, jump.o, simplify-rtx.o, symtab.o, cgraph.o) (cgraphunit.o, cgraphclones.o, cgraphbuild.o, varpool.o, ipa.o) (ipa-profile.o, ipa-devirt.o, ipa-prop.o, ipa-ref.o, ipa-cp.o) (ipa-split.o, ipa-inline.o, ipa-inline-analysis.o) (ipa-inline-transform.o, ipa-utils.o, ipa-reference.o) (ipa-pure-const.o, coverage.o, cselib.o, cse.o, dce.o, dumpfile.o) (dse.o, fwprop.o, web.o, ree.o, cprop.o, gcse.o, store-motion.o) (resource.o, lcm.o, mode-switching.o, tree-ssa-dce.o) (tree-call-cdce.o, tree-ssa-ccp.o, tree-ssa-strlen.o, tree-sra.o) (tree-switch-conversion.o, tree-complex.o, tree-emutls.o) (tree-vect-generic.o, df-core.o, df-problems.o, df-scan.o) (regstat.o, valtrack.o, var-tracking.o, profile.o, mcf.o) (tree-profile.o, value-prof.o, loop-doloop.o, alloc-pool.o) (auto-inc-dec.o, cfg.o, cfghooks.o, cfgexpand.o, cfgrtl.o) (cfganal.o, cfgbuild.o, cfgcleanup.o, cfgloop.o, cfgloopanal.o) (graphds.o, loop-iv.o, loop-invariant.o, cfgloopmanip.o) (loop-init.o, loop-unswitch.o, loop-unroll.o, dominance.o) (et-forest.o, combine.o, reginfo.o, bitmap.o, vec.o, hash-table.o) (reload.o, reload1.o, rtlhooks.o, postreload.o, postreload-gcse.o) (caller-save.o, bt-load.o, reorg.o, alias.o, stack-ptr-mod.o) (init-regs.o, ira-build.o, ira-costs.o, ira-conflicts.o) (ira-color.o, ira-emit.o, ira-lives.o, ira.o, lra.o) (lra-assigns.o, lra-coalesce.o, lra-constraints.o) (lra-eliminations.o, lra-lives.o, lra-spills.o, regmove.o) (combine-stack-adj.o, compare-elim.o, ddg.o, modulo-sched.o) (haifa-sched.o, sched-deps.o, sched-rgn.o, sched-ebb.o) (sched-vis.o, sel-sched.o, sel-sched-dump.o, sel-sched-ir.o) (final.o, recog.o, reg-stack.o, sreal.o, predict.o, lists.o) (bb-reorder.o, tracer.o, timevar.o, regcprop.o, regrename.o) (ifcvt.o, params.o, pointer-set.o, hooks.o, pretty-print.o) (errors.o, dbgcnt.o, lower-subreg.o, target-globals.o) (hw-doloop.o, file-find.o, context.o, $(common_out_object_file)) (insn-attrtab.o, insn-automata.o, insn-dfatab.o, insn-emit.o) (insn-enums.o, insn-extract.o, insn-latencytab.o, insn-modes.o) (insn-opinit.o, insn-output.o, insn-peep.o, insn-preds.o) (insn-recog.o, intl.o, cppbuiltin.o, cppdefault.o, gcov.o) (gcov-dump.o): Remove. (default-c.o): Use COMPILE and POSTCOMPILE. (CFLAGS-gcc.o): New variable. ($(common_out_object_file)): Use COMPILE and POSTCOMPILE. From-SVN: r202907
2013-09-25* Make-lang.in (LTO_H, LINKER_PLUGIN_API_H, LTO_TREE_H)Tom Tromey2-29/+7
(lto/lto-lang.o, lto/lto.o, lto/lto-partition.o) (lto/lto-object.o): Remove. From-SVN: r202906
2013-09-25Make-lang.in (gospec.o): Remove.Tom Tromey2-91/+26
* Make-lang.in (gospec.o): Remove. (CFLAGS-go/gospec.o): New variable. (GCCGO_OBJS): Update to use go/gospec.o. (go_OBJS): Define. (GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H) (GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H) (GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H) (go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o) (go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o) (go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o) (go/gogo.o, go/import.o, go/import-archive.o, go/lex.o) (go/parse.o, go/runtime.o, go/statements.o, go/types.o) (go/unsafe.o): Remove. (CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables. (go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE. From-SVN: r202905
2013-09-25Make-lang.in (fortran_OBJS): Use fortran/gfortranspec.o.Tom Tromey2-59/+19
* Make-lang.in (fortran_OBJS): Use fortran/gfortranspec.o. (gfortranspec.o): Remove. (CFLAGS-fortran/gfortranspec.o): New variable. (GFORTRAN_D_OBJS): Update. ($(F95_PARSER_OBJS), fortran/openmp.o, GFORTRAN_TRANS_DEPS) (fortran/f95-lang.o, fortran/scanner.o, fortran/convert.o) (fortran/frontend-passes.o, fortran/trans.o, fortran/trans-decl.o) (fortran/trans-types, fortran/trans-const.o, fortran/trans-expr.o) (fortran/trans-stmt.o, fortran/trans-openmp.o, fortran/trans-io.o) (fortran/trans-array.o, fortran/trans-intrinsic.o) (fortran/dependency.o, fortran/trans-common.o, fortran/resolve.o) (fortran/data.o, fortran/options.o, fortran/cpp.o) (fortran/scanner.o, fortran/module.o): Remove. From-SVN: r202904
2013-09-25* Makefile.in (c-family/cppspec.o, c-family/c-common.o)Tom Tromey2-81/+12
(c-family/c-cppbuiltin.o, c-family/c-dump.o, c-family/c-format.o) (c-family/c-gimplify.o, c-family/c-lex.o, c-family/c-omp.o) (c-family/c-opts.o, c-family/c-pch.o, c-family/c-ppoutput.o) (c-family/c-pragma.o, c-family/c-pretty-print.o) (c-family/c-semantics.o, c-family/c-ada-spec.o) (c-family/array-notation-common.o, c-family/stub-objc.o) (c-family/c-ubsan.o): Remove. From-SVN: r202903
2013-09-25Make-lang.in (jvspec.o): Remove.Tom Tromey2-70/+19
* Make-lang.in (jvspec.o): Remove. (CFLAGS-java/jvspec.o): New variable. ($(XGCJ)$(exeext), java_OBJS): Use java/jvspec.o (java/jvspec.o-warn): Rename from jvspec.o-warn. (JAVA_TREE_H, java/jcf-dump.o, java/boehm.o, java/builtins.o) (java/class.o, java/constants.o, java/decl.o, java/except.o) (java/expr.o, java/jcf-depend.o, java/jcf-parse.o) (java/jvgenmain.o, java/lang.o, java/mangle.o, java/mangle_name.o) (java/resource.o java/typeck.o, java/win32-host.o) (java/verify-glue.o, java/verify-impl.o, java/zextract.o) (java/java-gimplify.o, java/jcf-io.o, java/jcf-path.o): Remove. From-SVN: r202902
2013-09-25Make-lang.in (CXX_TREE_H, [...]): Remove.Tom Tromey4-110/+42
gcc/cp * Make-lang.in (CXX_TREE_H, CXX_PARSER_H, CXX_PRETTY_PRINT_H): Remove. gcc/objcp * Make-lang.in (START_HDRS, cc1objplus-checksum.o) (objcp/objcp-lang.o, objcp/objcp-decl.o (objcp/objc-runtime-shared-support.o) (objcp/objc-gnu-runtime-abi-01.o objcp/objc-next-runtime-abi-01.o) (objcp/objc-next-runtime-abi-02.o, objcp/objcp-act.o) (objcp/objc-encoding.o, objcp/objc-map.o): Use COMPILE and POSTCOMPILE. Remove explicit dependencies. From-SVN: r202901
2013-09-25* Make-lang.in (START_HDRS, cc1obj-checksum.o, objc/objc-lang.o)Tom Tromey2-79/+8
(objc/objc-runtime-shared-support.o) (objc/objc-gnu-runtime-abi-01.o, objc/objc-next-runtime-abi-01.o) (objc/objc-next-runtime-abi-02.o, objc/objc-act.o) (objc/objc-encoding.o, objc/objc-map.o): Remove. From-SVN: r202900
2013-09-25Make-lang.in (g++spec.o): Remove.Tom Tromey2-100/+16
* Make-lang.in (g++spec.o): Remove. (CFLAGS-cp/g++spec.o): New variable. (GXX_OBJS): Reference cp/g++spec.o. (cc1plus-checksum.o, cp/lex.o, cp/cp-array-notation.o) (cp/cp-lang.o, cp/decl.o, cp/decl2.o, cp/cp-objcp-common.o) (cp/typeck2.o, cp/typeck.o, cp/class.o, cp/call.o) (cp/friend.o, cp/init.o, cp/method.o, cp/cvt.o, cp/search.o) (cp/tree.o, cp/ptree.o, cp/rtti.o, cp/except.o, cp/expr.o) (cp/pt.o, cp/error.o, cp/repo.o, cp/semantics.o, cp/dump.o) (cp/optimize.o, cp/mangle.o, cp/parser.o, cp/cp-gimplify.o) (cp/name-lookup.o, cp/cxx-pretty-print.o): Remove. From-SVN: r202899
2013-09-25Makefile.in (C_TREE_H): Reference c/c-tree.h.Tom Tromey4-60/+14
* Makefile.in (C_TREE_H): Reference c/c-tree.h. gcc/c * Make-lang.in (c/gccspec.o): Remove. (CFLAGS-c/gccspec.o): New variable. (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o) (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o) (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove. From-SVN: r202898
2013-09-25Makefile.in (DRIVER_DEFINES): Use $(and), not shell code, to add ↵Tom Tromey12-13/+33
-DENABLE_SHARED_LIBGCC. * Makefile.in (DRIVER_DEFINES): Use $(and), not shell code, to add -DENABLE_SHARED_LIBGCC. (gcc.o): Don't use subshell. gcc/c * Make-lang.in (c/gccspec.o): Don't use subshell. gcc/cp * Make-lang.in (g++spec.o): Don't use subshell. gcc/fortran * Make-lang.in (gfortranspec.o): Don't use subshell. gcc/go * Make-lang.in (gospec.o): Don't use subshell. gcc/java * Make-lang.in (jvspec.o): Don't use subshell. From-SVN: r202897
2013-09-25Makefile.in (OUTPUT_OPTION): Define as "-o $@".Tom Tromey7-163/+19
* Makefile.in (OUTPUT_OPTION): Define as "-o $@". * configure.ac: Don't invoke AM_PROG_CC_C_O. (NO_MINUS_C_MINUS_O, OUTPUT_OPTION): Don't subst. * configure, config.in: Rebuild. gcc/ada * gcc-interface/Makefile.in (OUTPUT_OPTION): Define as "-o $@". From-SVN: r202896
2013-09-25(clh 9)Tom Tromey5-3/+205
From-SVN: r202895
2013-09-25(clh 5)Tom Tromey2-6/+13
From-SVN: r202894
2013-09-25(clh 6)Tom Tromey2-1/+11
From-SVN: r202893
2013-09-25tree-ssa-threadedge.c (thread_across_edge): Use foo.last () rather than ↵Jeff Law3-5/+10
foo[foo.length () - 1] to access last member in a vec. * tree-ssa-threadedge.c (thread_across_edge): Use foo.last () rather than foo[foo.length () - 1] to access last member in a vec. * tree-ssa-threadupdate.c (register_jump_thread): Similarly. From-SVN: r202892
2013-09-25re PR bootstrap/58521 (bootstrap failure: ICE in mem_ref_in_stmt, at ↵Richard Biener2-15/+5
tree-ssa-loop-im.c:677) 2013-09-25 Richard Biener <rguenther@suse.de> PR middle-end/58521 * tree.c (iterative_hash_expr): Remove MEM_REF special handling. From-SVN: r202889
2013-09-25cgraph.c (cgraph_resolve_speculation): Use semantical equivalency test.Jan Hubicka2-1/+8
* cgraph.c (cgraph_resolve_speculation): Use semantical equivalency test. From-SVN: r202888
2013-09-25re PR sanitizer/58420 (internal compiler error: in ubsan_type_descriptor, at ↵Marek Polacek2-2/+15
ubsan.c:280) PR sanitizer/58420 * ubsan.c (ubsan_type_descriptor): Handle IDENTIFIER_NODEs when determining the type name. From-SVN: r202887
2013-09-25re PR sanitizer/58413 (ubsan constant folding)Marek Polacek7-8/+116
PR sanitizer/58413 c-family/ * c-ubsan.c (ubsan_instrument_shift): Don't instrument an expression if we can prove it is correct. (ubsan_instrument_division): Likewise. Remove unnecessary check. testsuite/ * c-c++-common/ubsan/shift-5.c: New test. * c-c++-common/ubsan/shift-6.c: New test. * c-c++-common/ubsan/div-by-zero-5.c: New test. * gcc.dg/ubsan/c-shift-1.c: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r202886
2013-09-25re PR c++/58516 (ICE with __transaction_atomic)Marek Polacek4-4/+24
PR c++/58516 cp/ * semantics.c (finish_transaction_stmt): Check for EXPR_P before setting the expr location. testsuite/ * g++.dg/tm/pr58516.C: New test. From-SVN: r202883
2013-09-25compiler: don't permit nil assignment to blank identifier.Ian Lance Taylor2-5/+14
Fixes https://code.google.com/p/go/issues/detail?id=6005. From-SVN: r202881
2013-09-25Daily bump.GCC Administrator1-1/+1
From-SVN: r202879
2013-09-24sh.md: Fix formatting.Oleg Endo2-7/+11
* config/sh/sh.md: Fix formatting. From-SVN: r202876
2013-09-24Implement --param=vect-max-peeling-for-alignment=..Xinliang David Li4-0/+40
From-SVN: r202875
2013-09-24target-supports.exp (check_effective_target_arm_cond_exec): New procedure.Kyrylo Tkachov3-0/+18
[gcc/testsuite/] 2013-09-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * lib/target-supports.exp (check_effective_target_arm_cond_exec): New procedure. * gcc.target/arm/minmax_minus.c: Check for cond_exec target. From-SVN: r202872
2013-09-24gimple-pretty-print.c: Various whitespace tweaks.Christophe Lyon9-79/+90
2013-09-24 Christophe Lyon <christophe.lyon@linaro.org> * gimple-pretty-print.c: Various whitespace tweaks. * tree-core.h: Likewise. * tree-pretty-print.c: Likewise. * tree-ssa-alias.c: Likewise. * tree-ssa-copy.c: Likewise. * tree-ssanames.c: Likewise. * tree-ssanames.h: Likewise. * tree-vrp.c: Likewise. From-SVN: r202869
2013-09-24re PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64)Alan Modra2-1/+12
PR middle-end/57134 PR middle-end/57586 * stmt.c (expand_asm_operands): Call expand_expr with EXPAND_MEMORY for output operands that disallow regs. Don't use EXPAND_WRITE on inout operands. From-SVN: r202866
2013-09-24re PR tree-optimization/58513 (*var and MEM[(const int &)var] (var has int* ↵Richard Biener8-75/+160
type) are not treated as the same data ref.) 2013-09-24 Richard Biener <rguenther@suse.de> PR middle-end/58513 * tree.c (reference_alias_ptr_type): Move ... * alias.c (reference_alias_ptr_type): ... here and implement in terms of the new reference_alias_ptr_type_1. (ref_all_alias_ptr_type_p): New helper. (get_deref_alias_set_1): Drop flag_strict_aliasing here, use ref_all_alias_ptr_type_p. (get_deref_alias_set): Add flag_strict_aliasing check here. (reference_alias_ptr_type_1): New function, split out from ... (get_alias_set): ... here. (alias_ptr_types_compatible_p): New function. * alias.h (reference_alias_ptr_type): Declare. (alias_ptr_types_compatible_p): Likewise. * tree.h (reference_alias_ptr_type): Remove. * fold-const.c (operand_equal_p): Use alias_ptr_types_compatible_p to compare MEM_REF alias types. * g++.dg/vect/pr58513.cc: New testcase. From-SVN: r202865
2013-09-24tree-vrp.c (vrp_finalize): Check for SSA name presence.Richard Biener2-1/+6
2013-09-24 Richard Biener <rguenther@suse.de> * tree-vrp.c (vrp_finalize): Check for SSA name presence. From-SVN: r202863
2013-09-24atomic-comp-swap-release-acquire.c: Adjust expected output.Yvan Roux2-1/+6
2013-09-24 Yvan Roux <yvan.roux@linaro.org> * gcc.target/arm/atomic-comp-swap-release-acquire.c: Adjust expected output. From-SVN: r202860
2013-09-240;261;0c2013-09-23 Michael Meissner <meissner@linux.vnet.ibm.com>Michael Meissner2-96/+109
* config/rs6000/rs6000.c (rs6000_vector_reload): Delete, combine reload helper function arrays into a single array reg_addr. (reload_fpr_gpr): Likewise. (reload_gpr_vsx): Likewise. (reload_vsx_gpr): Likewise. (struct rs6000_reg_addr): Likewise. (reg_addr): Likewise. (rs6000_debug_reg_global): Change rs6000_vector_reload, reload_fpr_gpr, reload_gpr_vsx, reload_vsx_gpr uses to reg_addr. (rs6000_init_hard_regno_mode_ok): Likewise. (rs6000_secondary_reload_direct_move): Likewise. (rs6000_secondary_reload): Likewise. From-SVN: r202859
2013-09-24Daily bump.GCC Administrator1-1/+1
From-SVN: r202854
2013-09-23Fix 58500.Adam Butcher4-1/+20
gcc/cp/ PR c++/58500 * type-utils.h (find_type_usage): Only traverse one type level into member function pointers. gcc/testsuite/ PR c++/58500 * g++.dg/cpp1y/pr58500.C: New testcase. From-SVN: r202851
2013-09-23Fix instantiation of implicit function template forward declarations.Adam Butcher2-37/+49
* parser.c (cp_parser_init_declarator): Defer calling finish_fully_implicit_template for forward declarations until after other decl processing is complete. Cleanup for clarity: Extract 'else' case after 'if' containing unconditional return. From-SVN: r202850
2013-09-23Generate more intuitive name for 'auto' parameters.Adam Butcher2-1/+6
* parser.c (make_generic_type_name): Spell generic type names '<autoN>' rather than '__GenN'. From-SVN: r202849
2013-09-23Support nested generic lambdas.Adam Butcher2-1/+6
* lambda.c (maybe_add_lambda_conv_op): Don't check for instantiated callop in the case of generic lambdas. From-SVN: r202848
2013-09-23Use translation-unit-global rather than parameter-list-local counter for ↵Adam Butcher2-12/+21
generic type names to facilitate nested implicit function templates. * parser.c (make_generic_type_name): Use global count rather than parameter and ... (add_implicit_template_parms): ... propagate interface change here. From-SVN: r202847
2013-09-23rs6000.h (enum r6000_reg_class_enum): Add new constraints: wu, ww, and wy.Michael Meissner6-58/+175
2013-09-20 Michael Meissner <meissner@linux.vnet.ibm.com> * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Add new constraints: wu, ww, and wy. Repurpose wv constraint added during power8 changes. Put wg constraint in alphabetical order. * config/rs6000/rs6000.opt (-mvsx-scalar-float): New debug switch for future work to add ISA 2.07 VSX single precision support. (-mvsx-scalar-double): Change default from -1 to 1, update documentation comment. (-mvsx-scalar-memory): Rename debug switch to -mupper-regs-df. (-mupper-regs-df): New debug switch to control whether DF values can go in the traditional Altivec registers. (-mupper-regs-sf): New debug switch to control whether SF values can go in the traditional Altivec registers. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Print wu, ww, and wy constraints. (rs6000_init_hard_regno_mode_ok): Use ssize_t instead of int for loop variables. Rename -mvsx-scalar-memory to -mupper-regs-df. Add new constraints, wu/ww/wy. Repurpose wv constraint. (rs6000_debug_legitimate_address_p): Print if we are running before, during, or after reload. (rs6000_secondary_reload): Add a comment. (rs6000_opt_masks): Add -mupper-regs-df, -mupper-regs-sf. * config/rs6000/constraints.md (wa constraint): Sort w<x> constraints. Update documentation string. (wd constraint): Likewise. (wf constraint): Likewise. (wg constraint): Likewise. (wn constraint): Likewise. (ws constraint): Likewise. (wt constraint): Likewise. (wx constraint): Likewise. (wz constraint): Likewise. (wu constraint): New constraint for ISA 2.07 SFmode scalar instructions. (ww constraint): Likewise. (wy constraint): Likewise. (wv constraint): Repurpose ISA 2.07 constraint that we not used in the previous submissions. * doc/md.texi (PowerPC and IBM RS6000): Likewise. From-SVN: r202843
2013-09-23rtl.texi (REG_NOTES): Say that int_list can also be used.Richard Sandiford38-102/+213
gcc/ * doc/rtl.texi (REG_NOTES): Say that int_list can also be used. (REG_BR_PROB): Say that the probability is stored in an int_list. * reg-notes.def: Update commentary to mention INT_LIST. * rtl.def (EXPR_LIST, INSN_LIST): Capitalize comments. (INT_LIST): New rtx. * rtl.h (add_int_reg_note, add_shallow_copy_of_reg_note): Declare. * rtlanal.c (int_reg_note_p): New function. (alloc_reg_note): Assert that the note does not have an int argument. (add_int_reg_note, add_shallow_copy_of_reg_note): New functions. * combine.c (distribute_notes): Use add_shallow_copy_of_rtx. * cse.c (cse_process_notes_1): Expect REG_EQUAL to be an EXPR_LIST rather than an INSN_LIST. Handle INT_LIST. * ifcvt.c (cond_exec_process_insns): Take the probability as an int rather than an rtx. Use gen_rtx_INT_LIST to create a REG_BR_PROB note. (cond_exec_process_if_block): Use XINT to extract REG_BR_PROB values. Manipulate them as ints rather than rtxes. * reg-stack.c (subst_asm_stack_regs): Only handle EXPR_LIST notes. * regmove.c (copy_src_to_dest): Likewise. * sched-vis.c (print_insn_with_notes): Handle INT_LIST. * config/i386/winnt.c (i386_pe_seh_unwind_emit): Sink pat assignment into the cases that need it. * config/arm/arm.c (arm_unwind_emit): Likewise. * asan.c (asan_clear_shadow): Use add_int_reg_note for REG_BR_PROB. * emit-rtl.c (try_split, emit_copy_of_insn_after): Likewise. * loop-doloop.c (add_test, doloop_modify): Likewise. * loop-unswitch.c (compare_and_jump_seq): Likewise. * optabs.c (emit_cmp_and_jump_insn_1): Likewise. * predict.c (combine_predictions_for_insn): Likewise. * print-rtl.c (print_rtx): Handle INT_LIST. * config/aarch64/aarch64.c (aarch64_emit_unlikely_jump): Likewise. * config/alpha/alpha.c (emit_unlikely_jump): Likewise. * config/arm/arm.c (emit_unlikely_jump): Likewise. * config/i386/i386.c (ix86_expand_split_stack_prologue): Likewise. (ix86_split_fp_branch, predict_jump): Likewise. * config/rs6000/rs6000.c (emit_unlikely_jump): Likewise. * config/sh/sh.c (expand_cbranchsi4): Likewise. * config/spu/spu.c (ea_load_store_inline): Likewise. * cfgbuild.c (compute_outgoing_frequencies): Use XINT to access the value of a REG_BR_PROB note. * cfgrtl.c (force_nonfallthru_and_redirect): Likewise. (update_br_prob_note, rtl_verify_edges, purge_dead_edges): Likewise. * emit-rtl.c (try_split): Likewise. * predict.c (br_prob_note_reliable_p): Likewise. (invert_br_probabilities, combine_predictions_for_insn): Likewise. * reorg.c (mostly_true_jump): Likewise. * config/bfin/bfin.c (cbranch_predicted_taken_p): Likewise. * config/frv/frv.c (frv_print_operand_jump_hint): Likewise. * config/i386/i386.c (ix86_print_operand): Likewise. * config/ia64/ia64.c (ia64_print_operand): Likewise. * config/mmix/mmix.c (mmix_print_operand): Likewise. * config/rs6000/rs6000.c (output_cbranch): Likewise. * config/s390/s390.c (s390_expand_tbegin): Likewise. * config/sh/sh.c (sh_print_operand, sh_adjust_cost): Likewise. * config/sparc/sparc.c (output_cbranch): Likewise. * config/spu/spu.c (get_branch_target): Likewise. * config/tilegx/tilegx.c (cbranch_predicted_p): Likewise. * config/tilepro/tilepro.c (cbranch_predicted_p): Likewise. From-SVN: r202839
2013-09-23ipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check for ipa-devirt.Jan Hubicka6-4/+77
* ipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check for ipa-devirt. * ipa-utils.h (possible_polymorphic_call_target_p): New function. * ipa-devirt.c (possible_polymorphic_call_target_p): Be tolerant of external calls * gimple-fold.c: Include ipa-utils.h and gimple-pretty-print.h (gimple_fold_call): Dump inconsistent devirtualizations; add sanity check for type based devirtualizations. * ipa-prop.c: Include ipa-utils.h (ipa_intraprocedural_devirtualization): Add sanity check. (try_make_edge_direct_virtual_call): Likewise. From-SVN: r202837
2013-09-23tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy ↵Eric Botcazou6-1/+64
assignment statements. * tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy assignment statements. From-SVN: r202833
2013-09-23gimple-pretty-print.c (dump_ssaname_info): New function.Kugan Vivekanandarajah11-70/+293
2013-09-23 Kugan Vivekanandarajah <kuganv@linaro.org> gcc/ * gimple-pretty-print.c (dump_ssaname_info): New function. (dump_gimple_phi): Call it. (pp_gimple_stmt_1): Likewise. * tree-core.h (tree_ssa_name): New union ssa_name_info_type field. (range_info_def): Declare. * tree-pretty-print.c (pp_double_int): New function. (dump_generic_node): Call it. * tree-pretty-print.h (pp_double_int): Declare. * tree-ssa-alias.c (dump_alias_info): Check pointer type. * tree-ssanames.h (range_info_def): New structure. (value_range_type): Move definition here. (set_range_info, value_range_type, duplicate_ssa_name_range_info): Declare. * tree-ssanames.c (make_ssa_name_fn): Check pointer type at initialization. (set_range_info): New function. (get_range_info): Likewise. (duplicate_ssa_name_range_info): Likewise. (duplicate_ssa_name_fn): Check pointer type and call duplicate_ssa_name_range_info. * tree-ssa-copy.c (fini_copy_prop): Likewise. * tree-vrp.c (value_range_type): Remove definition, now in tree-ssanames.h. (vrp_finalize): Call set_range_info to update value range of SSA_NAMEs. * tree.h (SSA_NAME_PTR_INFO): Macro changed to access via union. (SSA_NAME_RANGE_INFO): New macro. From-SVN: r202831