1. 23 Nov, 2013 15 commits
  2. 22 Nov, 2013 25 commits
    • Fix demangler to handle conversion operators correctly. · 85d09f61
      libiberty/
      	PR other/59195
      	* cp-demangle.c (struct d_info_checkpoint): New struct.
      	(struct d_print_info): Add current_template field.
      	(d_operator_name): Set flag when processing a conversion
      	operator.
      	(cplus_demangle_type): When processing <template-args> for
      	a conversion operator, backtrack if necessary.
      	(d_expression_1): Renamed from d_expression.
      	(d_expression): New wrapper around d_expression_1.
      	(d_checkpoint): New function.
      	(d_backtrack): New function.
      	(d_print_init): Initialize current_template.
      	(d_print_comp): Set current_template.
      	(d_print_cast): Put current_template in scope for
      	printing conversion operator name.
      	(cplus_demangle_init_info): Initialize is_expression and
      	is_conversion.
      	* cp-demangle.h (struct d_info): Add is_expression and
      	is_conversion fields.
      	* testsuite/demangle-expected: New test cases.
      
      From-SVN: r205292
      Cary Coutant committed
    • re PR sanitizer/59061 (Port leaksanitizer) · 9065ada9
      	PR sanitizer/59061
      	* common.opt (static-liblsan): Add.
      	* config/gnu-user.h (STATIC_LIBLSAN_LIBS, STATIC_LIBUBSAN_LIBS):
      	Define.
      	* flag-types.h (enum sanitize_code): Add SANITIZE_LEAK.  Renumber
      	SANITIZE_SHIFT, SANITIZE_DIVIDE, SANITIZE_UNREACHABLE, SANITIZE_VLA,
      	SANITIZE_RETURN.
      	* opts.c (common_handle_option): Handle -fsanitize=leak.
      	* gcc.c (ADD_STATIC_LIBLSAN_LIBS, LIBLSAN_SPEC): Define.
      	(LIBUBSAN_SPEC): Don't test LIBUBSAN_EARLY_SPEC.
      	(LIBUBSAN_EARLY_SPEC): Remove.
      	(SANITIZER_EARLY_SPEC): Don't do anything for libubsan.
      	(SANITIZER_SPEC): Add -fsanitize=leak handling.
      	(sanitize_spec_function): Handle %sanitize(leak).
      	* doc/invoke.texi (-static-liblsan, -fsanitize=leak): Document.
      
      	* c-c++-common/asan/no-redundant-instrumentation-7.c: Fix
      	cleanup-tree-dump directive.
      
      	* configure.tgt: Set LSAN_SUPPORTED=yes for x86_64-linux.
      	* configure.ac (LSAN_SUPPORTED): New AM_CONDITIONAL.
      	* configure: Regenerated.
      	* lsan/Makefile.am (toolexeclib_LTLIBRARIES, lsan_files,
      	liblsan_la_SOURCES, liblsan_la_LIBADD, liblsan_la_LDFLAGS): Add.
      	* lsan/Makefile.in: Regenerated.
      
      From-SVN: r205290
      Jakub Jelinek committed
    • safe_local_iterator.h (_Safe_local_iterator<>): Remove _M_bucket, use same… · 2e5189c8
      safe_local_iterator.h (_Safe_local_iterator<>): Remove _M_bucket, use same information in normal local_iterator.
      
      2013-11-22  François Dumont  <fdumont@gcc.gnu.org>
      
      	* include/debug/safe_local_iterator.h (_Safe_local_iterator<>):
      	Remove _M_bucket, use same information in normal local_iterator.
      	(operator==): Remove redundant _M_can_compare check.
      	* include/debug/safe_local_iterator.tcc: Adapt.
      	* include/debug/unordered_set: Likewise.
      	* include/debug/unordered_map: Likewise.
      
      From-SVN: r205289
      François Dumont committed
    • 20081223-1.c: Add -ffat-lto-objects. · 79a8482c
      	* gcc.dg/20081223-1.c: Add -ffat-lto-objects.
      	* gcc.dg/vect/vect.exp: Add -ffat-lto-objects.
      
      From-SVN: r205288
      Jan Hubicka committed
    • libgo: Update libtool support for powerpc64le-linux-gnu. · 42c447c0
      From Ulrich Weigand.
      
      From-SVN: r205287
      Ian Lance Taylor committed
    • Makefile.am (check_DEJAGNU_normal_targets): Add 10. · 4e1a156d
      	* testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add 10.
      	(check-DEJAGNU): Add normal10, run 28_regex/[ab]*
      	tests as another separate job.
      	* testsuite/Makefile.in: Regenerated.
      
      From-SVN: r205286
      Jakub Jelinek committed
    • sanitizer_linux.cc (__sanitizer): Grab one change from upstream to fix build. · 486294d4
              * sanitizer_common/sanitizer_linux.cc (__sanitizer): Grab one
              change from upstream to fix build.
      
      From-SVN: r205285
      Mike Stump committed
    • ipa.c (symtab_remove_unreachable_nodes): Fix up comment typos. · 31519c38
      	* ipa.c (symtab_remove_unreachable_nodes): Fix up comment typos.
      	* ipa-prop.c (get_vector_of_formal_parm_types): Renamed to ...
      	(ipa_get_vector_of_formal_parm_types): ... this.  No longer static.
      	(ipa_modify_formal_parameters): Adjust caller.  Remove
      	synth_parm_prefix argument.  Use operator enum instead of bit fields.
      	Add assert for properly handling vector of references.  Handle
      	creating brand new parameters.
      	(ipa_modify_call_arguments): Use operator enum instead of bit
      	fields.
      	(ipa_combine_adjustments): Same.  Assert that IPA_PARM_OP_NEW is not
      	used.
      	(ipa_modify_expr, get_ssa_base_param, ipa_get_adjustment_candidate):
      	New functions.
      	(ipa_dump_param_adjustments): Rename reduction to new_decl.
      	Use operator enum instead of bit fields.
      	* ipa-prop.h (enum ipa_parm_op): New.
      	(struct ipa_parm_adjustment): New field op.  Rename reduction
      	to new_decl, new_arg_prefix to arg_prefix and remove remove_param
      	and copy_param.
      	(ipa_modify_formal_parameters): Remove last argument.
      	(ipa_get_vector_of_formal_parm_types, ipa_modify_expr,
      	ipa_get_adjustment_candidate): New prototypes.
      	* tree-sra.c (turn_representatives_into_adjustments): Use operator
      	enum.  Set arg_prefix.
      	(get_adjustment_for_base): Use operator enum.
      	(sra_ipa_modify_expr): Rename to ipa_modify_expr and move to
      	ipa-prop.c.
      	(sra_ipa_modify_assign): Rename sra_ipa_modify_expr to
      	ipa_modify_expr.
      	(ipa_sra_modify_function_body): Same.  No longer static.
      	(sra_ipa_reset_debug_stmts): Use operator enum.
      	(modify_function): Do not pass prefix argument.
      
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      
      From-SVN: r205284
      Aldy Hernandez committed
    • ubsan.c (ubsan_source_location): Don't crash on unknown locations. · 0a508bb6
      	* ubsan.c (ubsan_source_location): Don't crash on
      	unknown locations.
      	(ubsan_pass): Ignore clobber stmts.
      
      	* sanitizer.def (BUILT_IN_UBSAN_HANDLE_MISSING_RETURN): New built-in.
      	* opts.c (common_handle_option): Add -fsanitize=return.
      	* flag-types.h (enum sanitize_code): Add SANITIZE_RETURN and
      	or it into SANITIZE_UNDEFINED.
      c-family/
      	* c-ubsan.h (ubsan_instrument_return): New prototype.
      	* c-ubsan.c (ubsan_instrument_return): New function.
      cp/
      	* cp-gimplify.c: Include target.h and c-family/c-ubsan.h.
      	(cp_ubsan_maybe_instrument_return): New function.
      	(cp_genericize): Call it if -fsanitize=return.
      testsuite/
      	* g++.dg/ubsan/return-1.C: New test.
      	* g++.dg/ubsan/return-2.C: New test.
      
      From-SVN: r205283
      Jakub Jelinek committed
    • sanitizer.def (BUILT_IN_ASAN_BEFORE_DYNAMIC_INIT, [...]): New. · 59b36ecf
      	* sanitizer.def (BUILT_IN_ASAN_BEFORE_DYNAMIC_INIT,
      	BUILT_IN_ASAN_AFTER_DYNAMIC_INIT): New.
      	* asan.c (instrument_derefs): Handle also VAR_DECL loads/stores.
      	Don't instrument accesses to VAR_DECLs which are known to fit
      	into their bounds and the vars are known to have shadow bytes
      	indicating allowed access.
      	(asan_dynamic_init_call): New function.
      	(asan_add_global): If vnode->dynamically_initialized,
      	set __has_dynamic_init to 1 instead of 0.
      	(initialize_sanitizer_builtins): Add BT_FN_VOID_CONST_PTR var.
      	* asan.h (asan_dynamic_init_call): New prototype.
      	* cgraph.h (varpool_node): Add dynamically_initialized bitfield.
      cp/
      	* decl2.c: Include asan.h.
      	(one_static_initialization_or_destruction): If -fsanitize=address,
      	init is non-NULL and guard is NULL, set
      	vnode->dynamically_initialized.
      	(do_static_initialization_or_destruction): Call
      	__asan_{before,after}_dynamic_init around the static initialization.
      testsuite/
      	* c-c++-common/asan/no-redundant-instrumentation-1.c: Tweak to avoid
      	optimizing away some __asan_report* calls.
      
      From-SVN: r205282
      Jakub Jelinek committed
    • re PR rtl-optimization/10474 (shrink wrapping for functions) · 3e749749
      	PR rtl-optimization/10474
      	* ira.c (interesting_dest_for_shprep_1): New function.
      	(interesting_dest_for_shprep): Use interesting_dest_for_shprep_1,
      	also check parallels.
      
      testsuite/
      	* gcc.dg/pr10474.c: Also test ppc64.
      	* gcc.dg/ira-shrinkwrap-prep-1.c: Also tes ppc64, changed all ints
              to longs.
      	* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.
      
      From-SVN: r205281
      Martin Jambor committed
    • tree-ssa-threadedge.c (record_temporary_equivalence): Handle NULL for RHS, which… · d4fdb4df
      tree-ssa-threadedge.c (record_temporary_equivalence): Handle NULL for RHS, which we used to invalidate equivalences.
      
      	* tree-ssa-threadedge.c (record_temporary_equivalence): Handle
      	NULL for RHS, which we used to invalidate equivalences.
      	(record_temporary_equivalences_from_phis): New bitmap arguments
      	and a boolean indicating if we have passed a backedge.  If we
      	have passed a backedge, then set the appropriate bit in the
      	bitmaps for the SRC & DEST of PHIs creating equivalences.
      	(invalidate_equivalences, dummy_simplify): New functions.
      	(cond_arg_set_in_b): Remove.
      	(record_temporary_equivalences_from_stmts_at_dest): New bitmap
      	arguments and a boolean indicating if we have passed a backedge.
      	If we have passed a backedge, then perform invalidations as
      	needed.
      	(thread_around_empty_blocks): If we have seen a backedge, then
      	use the dummy simplify routine.
      	(thread_through_normal_block): Likewise.  Pass bitmaps and
      	backedge status to children.  Do not pessimize so much when
      	traversing backedges in the CFG.
      	(thread_across_edge): Manage the SRC_MAP/DST_MAP bitmaps.
      	If we have seen a backedge, then use the dummy simplify routine.
      	Do not pessimize so much when traversing backedges.
      
      From-SVN: r205279
      Jeff Law committed
    • re PR target/59054 (Powerpc -O0 -mcpu=power7 generates sub-optimal code to load 0) · 7d20ca61
      2013-11-22  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/59054
      	* gcc.target/powerpc/direct-move.h (VSX_REG_ATTR): Allow test to
      	specify an appropriate register class for VSX operations.
      	(load_vsx): Use it.
      	(load_gpr_to_vsx): Likewise.
      	(load_vsx_to_gpr): Likewise.
      	* gcc.target/powerpc/direct-move-vint1.c: Use an appropriate
      	register class for VSX registers that the type can handle.  Remove
      	checks for explicit number of instructions generated, just check
      	if the instruction is generated.
      	* gcc.target/powerpc/direct-move-vint2.c: Likewise.
      	* gcc.target/powerpc/direct-move-float1.c: Likewise.
      	* gcc.target/powerpc/direct-move-float2.c: Likewise.
      	* gcc.target/powerpc/direct-move-double1.c: Likewise.
      	* gcc.target/powerpc/direct-move-double2.c: Likewise.
      	* gcc.target/powerpc/direct-move-long1.c: Likewise.
      	* gcc.target/powerpc/direct-move-long2.c: Likewise.
      
      	* gcc.target/powerpc/pr59054.c: Remove duplicate code.
      
      	* gcc.target/powerpc/bool3-av.c: Limit to 64-bit mode for now.
      	* gcc.target/powerpc/bool3-p7.c: Likewise.
      	* gcc.target/powerpc/bool3-p8.c: Likewise.
      
      	* gcc.target/powerpc/p8vector-ldst.c: Just check that the
      	appropriate instructions are generated, don't check the count.
      
      From-SVN: r205278
      Michael Meissner committed
    • re PR libstdc++/59247 (Bootstrap fails due to errors in libstdc++ sources with… · 237c8b9d
      re PR libstdc++/59247 (Bootstrap fails due to errors in libstdc++ sources with `--enable-symvers=gnu-versioned-namespace')
      
      	PR libstdc++/59247
      	* include/bits/c++config (_GLIBCXX_INLINE_VERSION): Declare namespace
      	std::experimental::__7 as inline.
      	* include/bits/regex.h (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Do not
      	enclose namespace __detail.
      	* include/bits/regex.tcc (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Likewise.
      	* include/std/iomanip (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Likewise.
      	* include/ext/pb_ds/tag_and_trait.hpp (detail): Fix comment.
      	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
      
      From-SVN: r205277
      Jonathan Wakely committed
    • cris.c (cris_atomic_align_for_mode): New function. · faee0106
      	* config/cris/cris.c (cris_atomic_align_for_mode): New function.
      	(TARGET_ATOMIC_ALIGN_FOR_MODE): Define.
      
      From-SVN: r205276
      Hans-Peter Nilsson committed
    • Enable AES, PCLMUL and RDRND for Silvermont · e5287671
      gcc/
      
      2013-11-22  Yuri Rumyantsev  <ysrumyan@gmail.com>
      
      	* config/i386/i386.c(processor_alias_table): Enable PTA_AES,
      	PTA_PCLMUL and PTA_RDRND for Silvermont.
      	* config/i386/driver-i386.c (host_detect_local_cpu): Set up cpu
      	for Silvermont.
      
      	* doc/invoke.texi: Mention AES, PCLMUL and RDRND for Silvermont.
      
      libgcc/
      
      2013-11-22  Yuri Rumyantsev  <ysrumyan@gmail.com>
      
      	 * config/i386/cpuinfo.c (get_intel_cpu): Add Silvermont cases.
      
      From-SVN: r205275
      Yuri Rumyantsev committed
    • compiler: Fixes for middle-end changes. · 861c1d8e
      From Andrew MacLeod.
      
      From-SVN: r205274
      Ian Lance Taylor committed
    • hooks.h (hook_uint_mode_0): Add Prototype. · fceec4d3
      
      	
      	* hooks.h (hook_uint_mode_0): Add Prototype.
      	* hooks.c (hook_uint_mode_0): New default function.
      	* target.def (atomic_align_for_mode): New target hook.
      	* tree.c (build_atomic_base): Add alignment override parameter.
      	(build_common_tree_nodes): Use atomic alignment override.
      	* doc/tm.texi.in (TARGET_ATOMIC_ALIGN_FOR_MODE): Define.
      	* doc/tm.texi (TARGET_ATOMIC_ALIGN_FOR_MODE): Add description.
      
      From-SVN: r205273
      Andrew MacLeod committed
    • gimple.h: Remove all includes. · 2fb9a547
      
      
      	* gimple.h: Remove all includes.
      	(recalculate_side_effects): Move prototype to gimplify.h.
      	* Makefile.in (PLUGIN_HEADERS): Add flattened gimple.h includes.
      	* gengtype.c (open_base_files): Add gimple.h include list.
      	* gimplify.h (recalculate_side_effects): Relocate prototype here.
      	* gimple.c: Adjust include list.
      	(recalculate_side_effects): Move to gimplify.c.
      	* gimplify.c: Adjust include list.
      	(recalculate_side_effects): Relocate from gimple.c.
      	* alias.c: Add required include files removed from gimple.h.
      	* asan.c: Likewise.
      	* builtins.c: Likewise.
      	* calls.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* data-streamer.c: Likewise.
      	* data-streamer-in.c: Likewise.
      	* data-streamer-out.c: Likewise.
      	* dse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* gimple-builder.c: Likewise.
      	* gimple-expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-iterator.c: Likewise.
      	* gimple-low.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.
      	* gimplify-me.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-optimize-isl.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* internal-fn.c: Likewise.
      	* ipa.c: Likewise.
      	* ipa-cp.c: Likewise.
      	* ipa-devirt.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-profile.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-reference.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* langhooks.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.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* omp-low.c: Likewise.
      	* opts-global.c: Likewise.
      	* passes.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* sese.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* symtab.c: Likewise.
      	* targhooks.c: Likewise.
      	* toplev.c: Likewise.
      	* tracer.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-dfa.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-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.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-copyrename.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.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-math-opts.c: Likewise.
      	* tree-ssanames.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-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-stdarg.c: Likewise.
      	* tree-streamer.c: Likewise.
      	* tree-streamer-in.c: Likewise.
      	* tree-streamer-out.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.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tsan.c: Likewise.
      	* ubsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* varpool.c: Likewise.
      	* var-tracking.c: Likewise.
      	* vtable-verify.c: Likewise.
      
      	* ada/gcc-interface/trans.c: Add required include files from gimple.h.
      
      	* c/c-typeck.c: Add required include files from gimple.h.
      
      	* c-family/c-common.c: Add required include files from gimple.h.
      	* c-family/c-gimplify.c: Likewise
      	* c-family/cilk.c: Likewise
      
      	* cp/class.c: Add required include files from gimple.h.
      	* cp/cp-gimplify.c: Likewise
      	* cp/decl2.c: Likewise
      	* cp/init.c: Likewise
      	* cp/optimize.c: Likewise
      	* cp/pt.c: Likewise
      	* cp/semantics.c: Likewise
      	* cp/tree.c: Likewise
      	* cp/typeck.c: Likewise
      	* cp/vtable-class-hierarchy.c: Likewise
      
      	* fortran/trans.c: Add required include files from gimple.h.
      	* fortran/trans-expr.c: Likewise
      	* fortran/trans-openmp.c: Likewise
      
      	* go/gofrontend/expressions.cc: Add required include files from
      	gimple.h.
      	* go/gofrontend/gogo-tree.cc: Likewise
      	* go/gofrontend/types.cc: Likewise
      	* go/go-gcc.cc: Likewise
      	* go/go-lang.c: Likewise
      
      	* java/java-gimplify.c: Add required include files from gimple.h.
      
      	* lto/lto.c: Add required include files from gimple.h.
      	* lto/lto-lang.c: Likewise
      	* lto/lto-object.c: Likewise
      	* lto/lto-partition.c: Likewise
      	* lto/lto-symtab.c: Likewise
      
      	* objc/objc-act.c: Add required include files from gimple.h.
      
      	* config/darwin.c: Add required include files removed from gimple.h.
      	* config/aarch64/aarch64-builtins.c: Likewise.
      	* config/aarch64/aarch64.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/winnt.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/tilegx/tilegx.c: Likewise.
      	* config/tilepro/tilepro.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      
      	* testsuite/gcc.dg/plugin/finish_unit_plugin.c: Add required include
      	files removed from gimple.h.
      	* testsuite/gcc.dg/plugin/ggcplug.c: Likewise.
      	* testsuite/gcc.dg/plugin/one_time_plugin.c: Likewise.
      	* testsuite/gcc.dg/plugin/selfassign.c: Likewise.
      	* testsuite/gcc.dg/plugin/start_unit_plugin.c: Likewise.
      	* testsuite/g++.dg/plugin/selfassign.c: Likewise.
      
      From-SVN: r205272
      Andrew MacLeod committed
    • re PR target/59216 (ARM negdi*extendsidi regression) · 8f1c326d
      	PR target/59216
      
      gcc/
      	* arm.md (negdi_extendsidi): Fix invalid split.
      
      gcc/testsuite/
      	* gcc.target/arm/negdi-4.c: Delete invalid test.
      	* gcc.dg/torture/pr59216.c: New test.
      
      From-SVN: r205271
      Richard Earnshaw committed
    • [AArch64] vmov_n changes · 1e09922c
      gcc/
      	* config/aarch64/arm_neon.h (vmov_n_f32): Implemented in C.
      	(vmov_n_f64): Likewise.
      	(vmov_n_p8): Likewise.
      	(vmov_n_p16): Likewise.
      	(vmov_n_s8): Likewise.
      	(vmov_n_s16): Likewise.
      	(vmov_n_s32): Likewise.
      	(vmov_n_s64): Likewise.
      	(vmov_n_u8): Likewise.
      	(vmov_n_u16): Likewise.
      	(vmov_n_u32): Likewise.
      	(vmov_n_u64): Likewise.
      	(vmovq_n_f32): Likewise.
      	(vmovq_n_f64): Likewise.
      	(vmovq_n_p8): Likewise.
      	(vmovq_n_p16): Likewise.
      	(vmovq_n_s8): Likewise.
      	(vmovq_n_s16): Likewise.
      	(vmovq_n_s32): Likewise.
      	(vmovq_n_s64): Likewise.
      	(vmovq_n_u8): Likewise.
      	(vmovq_n_u16): Likewise.
      	(vmovq_n_u32): Likewise.
      	(vmovq_n_u64): Likewise.
      
      gcc/testsuite/
      	* gcc.target/aarch64/vmov_n_1.c: New testcase.
      
      From-SVN: r205270
      Alex Velenko committed
    • aarch64-simd.md (vec_pack_trunc_<mode>, [...]): Swap for big-endian. · 92835317
      2013-11-22  Tejas Belagod  <tejas.belagod@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-simd.md (vec_pack_trunc_<mode>,
      	vec_pack_trunc_v2df, vec_pack_trunc_df): Swap for big-endian.
      	(reduc_<sur>plus_<mode>): Factorize V2DI into this.
      	(reduc_<sur>plus_<mode>): Change this to reduc_splus_<mode> for floats
      	and also change to float UNSPEC.
      	(reduc_maxmin_uns>_<mode>): Remove V2DI.
      	* config/aarch64/arm_neon.h (vaddv<q>_<suf><8,16,32,64>,
              vmaxv<q>_<suf><8,16,32,64>, vminv<q>_<suf><8,16,32,64>): Fix up scalar
      	result access for big-endian.
              (__LANE0): New macro used to fix up lane access of 'across-lanes'
               intrinsics for big-endian.
      	* config/aarch64/iterators.md (VDQV): Add V2DI.
      	(VDQV_S): New.
      	(vp): New mode attribute.
      
      From-SVN: r205269
      Tejas Belagod committed
    • aarch64-simd.md (vec_pack_trunc_<mode>, [...]): Swap source ops for big-endian. · 8fcc1c1f
      2013-11-22  Tejas Belagod  <tejas.belagod@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-simd.md (vec_pack_trunc_<mode>,
      	vec_pack_trunc_v2df, vec_pack_trunc_df): Swap source ops for big-endian.
      
      From-SVN: r205268
      Tejas Belagod committed
    • aarch64-simd.md (aarch64_simd_vec_set<mode>): Adjust for big-endian element order. · e58bf20a
      2013-11-22  Tejas Belagod  <tejas.belagod@arm.com>
      
      	* config/aarch64/aarch64-simd.md (aarch64_simd_vec_set<mode>): Adjust
      	for big-endian element order.
      	(aarch64_simd_vec_setv2di): Likewise.
      	(*aarch64_get_lane_extend<GPI:mode><VDQQH:mode>,
      	*aarch64_get_lane_zero_extendsi<mode>, aarch64_get_lane): Likewise.
      	(vec_extract): Expand using aarch64_get_lane.
      	* config/aarch64/aarch64.h (ENDIAN_LANE_N): New.
      
      From-SVN: r205267
      Tejas Belagod committed
    • aarch64-simd.md (*aarch64_simd_mov<mode>): Fix loads and stores to be ABI compliant. · 635ad37e
      2013-11-22  Tejas Belagod  <tejas.belagod@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Fix loads
      	and stores to be ABI compliant.
      
      From-SVN: r205266
      Tejas Belagod committed