1. 16 Oct, 2013 3 commits
    • For CRIS ports, switch to soft-fp. Improve arit.c and longlong.h. · 0e499e75
      	* config.host (cpu_type) <Setting default>: Add entry for
      	crisv32-*-*.
      	(tmake_file) <crisv32-*-elf, cris-*-elf, cris-*-linux*>
      	<crisv32-*-linux*>: Adjust.
      	* longlong.h: Wrap the whole CRIS section in a single
      	defined(__CRIS__) conditional.  Add comment about add_ssaaaa
      	and sub_ddmmss.
      	(COUNT_LEADING_ZEROS_0): Define when count_leading_zeros is
      	defined.
      	[__CRIS__] (__umulsidi3): Define.
      	[__CRIS__] (umul_ppmm): Define in terms of __umulsidi3.
      	* config/cris/sfp-machine.h: New file.
      	* config/cris/umulsidi3.S: New file.
      	* config/cris/t-elfmulti (LIB2ADD_ST): Add umulsidi3.S.
      	* config/cris/arit.c (SIGNMULT): New macro.
      	(__Div, __Mod): Use SIGNMULT instead of naked multiplication.
      	* config/cris/mulsi3.S: Tweak to avoid redundant register-copying;
      	saving 3 out of originally 33 cycles from the fastest
      	path, 3 out of 54 from the medium path and one from the longest
      	path.  Improve comments.
      
      From-SVN: r203640
      Hans-Peter Nilsson committed
    • * config/cris/t-elfmulti (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) · b82d0df9
      	(MULTILIB_MATCHES): Add multilib for -march=v8.
      
      From-SVN: r203639
      Hans-Peter Nilsson committed
    • Daily bump. · 147b2c1f
      From-SVN: r203638
      GCC Administrator committed
  2. 15 Oct, 2013 37 commits
    • intrinsic.texi (OpenMP Modules): Update to OpenMPv4. · 83fd6c5b
      gcc/fortran/
      2013-10-16  Tobias Burnus  <burnus@net-b.de>
      
              * intrinsic.texi (OpenMP Modules): Update to OpenMPv4.
              Document omp_proc_bind_kind.
      
      libgomp/
      2013-10-16  Tobias Burnus  <burnus@net-b.de>
      
              * libgomp.texi: (Runtime Library Routines): Update references
              * for
              OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
              omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
              omp_get_team_num, omp_is_initial_device, omp_set_default_device.
              (Environment Variables): Update references for OpenMP 4.0. Add
              OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
              Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
              order.
      
      From-SVN: r203635
      Tobias Burnus committed
    • re PR target/57756 (Function target attribute is retaining state of previously seen function) · bf7b5747
      PR target/57756
      
      The root-cause of this PR is that global_options is not restored to
      default before calling ix86_valid_target_attribute_tree and hence
      target attributes are incorrectly processed sometimes.
      
      This patch refactors code in i386.c in functions in the call-chain of 
      ix86_valid_target_attribute_tree to use any gcc_options struct passed
      as a parameter. It replaces existing code which always uses the
      global_options struct.
      
      2013-10-15 Sriraman Tallam  <tmsriram@google.com>
      
      	PR target/57756
      	* optc-save-gen.awk: Add extra parameter to the save and restore
      	target calls.
      	* opth-gen.awk: Generate new TARGET_* macros  to accept a parameter.
      	* tree.c (build_optimization_node): New parameter.  Add extra parameter
      	to call to cl_optimization_save.
      	(build_target_option_node): New parameter. Add extra parameter
      	to call to cl_target_option_save.
      	* tree.h (build_optimization_node): New parameter.
      	(build_target_option_node): New parameter.
      	* c-family/c-common.c (handle_optimize_attribute): Fix calls to
      	build_optimization_node and build_target_option_node.
      	* c-family/c-pragma.c (handle_pragma_optimize): Ditto.
      	(handle_pragma_push_options): Ditto.
      	* toplev.c (process_options): Ditto.
      	* opts.c (init_options_struct): Check for opts_set non-null.
      	* target.def (target_option.save): New parameter.
      	(target_option.restore): New parameter.
      	* tm.texi: Generate.
      	* config/i386/i386-c.c (ix86_target_macros_internal): Ditto.
      	(ix86_pragma_target_parse): Ditto.
      	* config/i386/i386-protos.h (ix86_valid_target_attribute_tree): New
      	parameters.
      	* config/rs6000/rs6000.c (rs6000_option_override_internal): Fix calls
      	to  build_optimization_node and build_target_option_node.
      	(rs6000_valid_attribute_p): Ditto.
      	(rs6000_pragma_target_parse): Ditto.
      	* config/i386/i386.opt (x_ix86_target_flags_explicit): New TargetSave
      	data.
      	* config/i386/i386.h:
      	TARGET_64BIT_P: New Macro
      	TARGET_MMX_P: New Macro.
      	TARGET_3DNOW_P: New Macro.
      	TARGET_3DNOW_A_P: New Macro.
      	TARGET_SSE_P: New Macro.
      	TARGET_SSE2_P: New Macro.
      	TARGET_SSE3_P: New Macro.
      	TARGET_SSSE3_P: New Macro.
      	TARGET_SSE4_1_P: New Macro.
      	TARGET_SSE4_2_P: New Macro.
      	TARGET_AVX_P: New Macro.
      	TARGET_AVX2_P: New Macro.
      	TARGET_AVX512F_P: New Macro.
      	TARGET_AVX512PF_P: New Macro.
      	TARGET_AVX512ER_P: New Macro.
      	TARGET_AVX512CD_P: New Macro.
      	TARGET_FMA_P: New Macro.
      	TARGET_SSE4A_P: New Macro.
      	TARGET_FMA4_P: New Macro.
      	TARGET_XOP_P: New Macro.
      	TARGET_LWP_P: New Macro.
      	TARGET_ABM_P: New Macro.
      	TARGET_BMI_P: New Macro.
      	TARGET_BMI2_P: New Macro.
      	TARGET_LZCNT_P: New Macro.
      	TARGET_TBM_P: New Macro.
      	TARGET_POPCNT_P: New Macro.
      	TARGET_SAHF_P: New Macro.
      	TARGET_MOVBE_P: New Macro.
      	TARGET_CRC32_P: New Macro.
      	TARGET_AES_P: New Macro.
      	TARGET_PCLMUL_P: New Macro.
      	TARGET_CMPXCHG16B_P: New Macro.
      	TARGET_FSGSBASE_P: New Macro.
      	TARGET_RDRND_P: New Macro.
      	TARGET_F16C_P: New Macro.
      	TARGET_RTM_P: New Macro.
      	TARGET_HLE_P: New Macro.
      	TARGET_RDSEED_P: New Macro.
      	TARGET_PRFCHW_P: New Macro.
      	TARGET_ADX_P: New Macro.
      	TARGET_FXSR_P: New Macro.
      	TARGET_XSAVE_P: New Macro.
      	TARGET_XSAVEOPT_P: New Macro.
      	TARGET_LP64_P: New Macro.
      	TARGET_X32_P: New Macro.
      	TARGET_FPMATH_DEFAULT_P: New Macro.
      	TARGET_FLOAT_RETURNS_IN_80387_P: New Macro.
      	* config/i386/i386.c (ix86_option_override_internal): New parameters.
      	opts and opts_set.
      	Change ix86_tune_string to access opts->x_ix86_tune_string.
      	Change ix86_isa_flags to access opts->x_ix86_isa_flags.
      	Change ix86_arch_string to access opts->x_ix86_arch_string.
      	Change ix86_stringop_alg to access opts->x_ix86_stringop_alg.
      	Change ix86_pmode to access opts->x_ix86_pmode.
      	Change ix86_abi to access opts->x_ix86_abi.
      	Change ix86_cmodel to access opts->x_ix86_cmodel.
      	Change ix86_asm_dialect to access opts->x_ix86_asm_dialect.
      	Change ix86_isa_flags_explicit to access
      	opts->x_ix86_isa_flags_explicit.
      	Change ix86_dump_tunes to access opts->x_ix86_dump_tunes.
      	Change ix86_regparm to access opts->x_ix86_regparm.
      	Change ix86_branch_cost to access opts->x_ix86_branch_cost.
      	Change ix86_preferred_stack_boundary_arg to access
      	opts->x_ix86_preferred_stack_boundary_arg.
      	Change ix86_force_align_arg_pointer to access
      	opts->x_ix86_force_align_arg_pointer.
      	Change ix86_incoming_stack_boundar_arg to access
      	opts->x_ix86_incoming_stack_boundar_arg.
      	Change ix86_fpmath to access opts->x_ix86_fpmath.
      	Change ix86_veclibabi_type to access opts->x_ix86_veclibabi_type.
      	Change ix86_recip_name to access opts->x_ix86_recip_name.
      	Change ix86_stack_protector_guard to access
      	opts->x_ix86_stack_protector_guard.
      	Change ix86_tune_memcpy_strategy to access
      	opts->x_ix86_tune_memcpy_strategy.
      	Change ix86_tune_memset_strategy to access
      	opts->x_ix86_tune_memset_strategy.
      	Change global_options to access opts.
      	Change global_options_set to access opts_set.
              Change TARGET_64BIT to TARGET_64BIT_P (opts->...)
              Change TARGET_MMX to TARGET_MMX_P (opts->...)
              Change TARGET_3DNOW to TARGET_3DNOW_P (opts->...)
              Change TARGET_3DNOW_A to TARGET_3DNOW_A_P (opts->...)
              Change TARGET_SSE to TARGET_SSE_P (opts->...)
              Change TARGET_SSE2 to TARGET_SSE2_P (opts->...)
              Change TARGET_SSE3 to TARGET_SSE3_P (opts->...)
              Change TARGET_SSSE3 to TARGET_SSSE3_P (opts->...)
              Change TARGET_SSE4_1 to TARGET_SSE4_1_P (opts->...)
              Change TARGET_SSE4_2 to TARGET_SSE4_2_P (opts->...)
              Change TARGET_AVX to TARGET_AVX_P (opts->...)
              Change TARGET_AVX2 to TARGET_AVX2_P (opts->...)
              Change TARGET_AVX512F to TARGET_AVX512F_P (opts->...)
              Change TARGET_AVX512PF to TARGET_AVX512PF_P (opts->...)
              Change TARGET_AVX512ER to TARGET_AVX512ER_P (opts->...)
              Change TARGET_AVX512CD to TARGET_AVX512CD_P (opts->...)
              Change TARGET_FMA to TARGET_FMA_P (opts->...)
              Change TARGET_SSE4A to TARGET_SSE4A_P (opts->...)
              Change TARGET_FMA4 to TARGET_FMA4_P (opts->...)
              Change TARGET_XOP to TARGET_XOP_P (opts->...)
              Change TARGET_LWP to TARGET_LWP_P (opts->...)
              Change TARGET_ABM to TARGET_ABM_P (opts->...)
              Change TARGET_BMI to TARGET_BMI_P (opts->...)
              Change TARGET_BMI2 to TARGET_BMI2_P (opts->...)
              Change TARGET_LZCNT to TARGET_LZCNT_P (opts->...)
              Change TARGET_TBM to TARGET_TBM_P (opts->...)
              Change TARGET_POPCNT to TARGET_POPCNT_P (opts->...)
              Change TARGET_SAHF to TARGET_SAHF_P (opts->...)
              Change TARGET_MOVBE to TARGET_MOVBE_P (opts->...)
              Change TARGET_CRC32 to TARGET_CRC32_P (opts->...)
              Change TARGET_AES to TARGET_AES_P (opts->...)
              Change TARGET_PCLMUL to TARGET_PCLMUL_P (opts->...)
              Change TARGET_CMPXCHG16B to TARGET_CMPXCHG16B_P (opts->...)
              Change TARGET_FSGSBASE to TARGET_FSGSBASE_P (opts->...)
              Change TARGET_RDRND to TARGET_RDRND_P (opts->...)
              Change TARGET_F16C to TARGET_F16C_P (opts->...)
              Change TARGET_RTM to TARGET_RTM_P (opts->...)
              Change TARGET_HLE to TARGET_HLE_P (opts->...)
              Change TARGET_RDSEED to TARGET_RDSEED_P (opts->...)
              Change TARGET_PRFCHW to TARGET_PRFCHW_P (opts->...)
              Change TARGET_ADX to TARGET_ADX_P (opts->...)
              Change TARGET_FXSR to TARGET_FXSR_P (opts->...)
              Change TARGET_XSAVE to TARGET_XSAVE_P (opts->...)
              Change TARGET_XSAVEOPT to TARGET_XSAVEOPT_P (opts->...)
              Change TARGET_LP64 to TARGET_LP64_P (opts->...)
              Change TARGET_X32 to TARGET_X32_P (opts->...)
              Change TARGET_FPMATH_DEFAULT to TARGET_FPMATH_DEFAULT_P (opts->...)
              Change TARGET_FLOAT_RETURNS_IN_80387 to
      	 TARGET_FLOAT_RETURNS_IN_80387_P (opts->...)
      	(ix86_function_specific_save): New parameter. Use opts-> fields
      	to replace global fields.
      	(ix86_function_specific_restore): Ditto.
      	(ix86_valid_target_attribute_inner_p): New parameters.
      	Fix recursive call.
      	Fix call to ix86_handle_option and set_option.
      	(ix86_valid_target_attribute_tree): New parameters.
      	Change global_options to access opts.
      	Change global_options_set to access opts_set.
      	Fix call to ix86_valid_target_attribute_inner_p.
      	Change ix86_tune_string to access opts->x_ix86_tune_string.
      	Change ix86_arch_string to access opts->x_ix86_arch_string.
      	Change ix86_fpmath to access opts->x_ix86_fpmath
      	Fix call to ix86_option_override_internal.
      	Fix call to ix86_add_new_builtins.
      	Fix calls to build_optimization_node and build_target_option_node.
      	(ix86_valid_target_attribute_p): Remove access to global_options.
      	Use new gcc_options structure func_options.
      	Fix call to ix86_valid_target_attribute_tree.
      	Fix call to  build_optimization_node.
      	(get_builtin_code_for_version):	Fix call to
      	ix86_valid_target_attribute_tree.
      
      	PR target/57756
      	* gcc.target/i386/pr57756.c: New test.
      	* gcc.target/i386/pr57756_2.c: New test.
      
      From-SVN: r203634
      Sriraman Tallam committed
    • Move Paulo's 9/27/2013 ChangeLog entry to the right file · a7d35bd6
      From-SVN: r203633
      Jeff Law committed
    • Add --enable-host-shared configuration option · 459260ec
      /
      	* configure.ac: Add --enable-host-shared
      	* configure: Regenerate.
      
      gcc/
      	* Makefile.in (PICFLAG): New.
      	(enable_host_shared): New.
      	(INTERNAL_CFLAGS): Use PICFLAG.
      	(LIBIBERTY): Use pic build of libiberty.a if configured with
      	--enable-host-shared.
      	* configure.ac: Add --enable-host-shared, setting up new
      	PICFLAG variable.
      	* configure: Regenerate.
      	* doc/install.texi (--enable-shared): Add note contrasting it
      	with...
      	(--enable-host-shared): New option.
      
      libbacktrace/
      	* configure.ac: Add --enable-host-shared, setting up
      	pre-existing PIC_FLAG variable within Makefile.am et al.
      	* configure: Regenerate.
      
      libcpp/
      	* Makefile.in (PICFLAG): New.
      	(ALL_CFLAGS): Add PICFLAG.
      	(ALL_CXXFLAGS): Likewise.
      	* configure.ac: Add --enable-host-shared, setting up new
      	PICFLAG variable.
      	* configure: Regenerate.
      
      libdecnumber/
      	* Makefile.in (PICFLAG): New.
      	(ALL_CFLAGS): Add PICFLAG.
      	* configure.ac: Add --enable-host-shared, setting up new
      	PICFLAG variable.
      	* configure: Regenerate.
      
      libiberty/
      	* configure.ac: If --enable-host-shared, use -fPIC.
      	* configure: Regenerate.
      
      zlib/
      	* configure.ac: Add --enable-host-shared, setting up new
      	PICFLAG variable.
      	* Makefile.am: Add PICFLAG to libz_a_CFLAGS.
      	* Makefile.in: Regenerate.
      	* configure: Regenerate.
      
      From-SVN: r203632
      David Malcolm committed
    • Add missing function in 20_util/exchange/1.cc. · 37ea0d87
      When this test is compiled at -O0, the compiler does not remove the
      address comparison. This causes a link failure, since the body of f()
      is missing.
      
      	* testsuite/20_util/exchange/1.cc: Add missing function
      	bodies.
      
      From-SVN: r203629
      Diego Novillo committed
    • tree-tailcall.c (find_tail_calls): Don't use tail-call recursion for built-in functions. · 16022041
      gcc/
      2013-10-15  Richard Biener  <rguenther@suse.de>
      
      	* tree-tailcall.c (find_tail_calls): Don't use tail-call recursion
      	for built-in functions.
      
      gcc/testsuite/
      	* gcc.dg/torture/builtin-self.c: New file.
      
      libgcc/
      	* sync.c: Remove static aliases and define each function directly
      	under its real name.
      
      From-SVN: r203628
      Richard Sandiford committed
    • tree-ssa-reassoc.c: Include rtl.h and tm_p.h. · b114bfb4
      	* tree-ssa-reassoc.c: Include rtl.h and tm_p.h.
      	(optimize_range_tests_1): New function,
      	extracted from optimize_range_tests.
      	(optimize_range_tests_xor): Similarly.
      	(optimize_range_tests_diff): New function.
      	(optimize_range_tests): Use optimize_range_tests_1.
      
      	* gcc.dg/tree-ssa/reassoc-32.c: New test case.
      	* gcc.dg/tree-ssa/reassoc-33.c: New test case.
      	* gcc.dg/tree-ssa/reassoc-34.c: New test case.
      	* gcc.dg/tree-ssa/reassoc-35.c: New test case.
      	* gcc.dg/tree-ssa/reassoc-36.c: New test case.
      
      From-SVN: r203627
      Zhenqiang Chen committed
    • tree-vect-loop.c (vect_is_simple_reduction_1): Relax the requirement of the… · 69b8f2f9
      tree-vect-loop.c (vect_is_simple_reduction_1): Relax the requirement of the reduction pattern so that one operand of the ...
      
      2013-10-15  Cong Hou  <congh@google.com>
      
              * tree-vect-loop.c (vect_is_simple_reduction_1): Relax the 
              requirement of the reduction pattern so that one operand of the 
              reduction operation can come from outside of the loop.
      
      2013-10-15  Cong Hou  <congh@google.com>
      
              * gcc.dg/vect/vect-reduc-pattern-3.c: New test.
      
      From-SVN: r203625
      Cong Hou committed
    • re PR c++/58707 ([C++11] A greater-than operator in square brackets should not… · 09560e7f
      re PR c++/58707 ([C++11] A greater-than operator in square brackets should not end a template argument list)
      
      /cp
      2013-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/58707
      	* parser.c (cp_parser_postfix_open_square_expression): Set
      	parser->greater_than_is_operator_p for the argument.
      
      /testsuite
      2013-10-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/58707
      	* g++.dg/cpp0x/pr58707.C: New.
      
      From-SVN: r203624
      Paolo Carlini committed
    • Move Martin's most recent entry into the right ChangeLog file · a1b499a3
      From-SVN: r203622
      Jeff Law committed
    • [ARM] [Neon types 10/10] Remove neon-schedgen.ml · 8ff5a4e4
      gcc/
      	* config/arm/neon-schedgen.ml: Remove.
      	* config/arm/cortex-a9-neon.md: Remove comment regarding
      	neon-schedgen.ml.
      
      From-SVN: r203621
      James Greenhalgh committed
    • [ARM] [Neon types 9/10] Remove old neon types · 52b69ad2
      gcc/
      	* config/arm/types: Remove old neon types.
      
      From-SVN: r203620
      James Greenhalgh committed
    • [ARM] [Neon types 8/10] Cortex-A7 neon pipeline model · e7c6a556
      gcc/
      	* config/arm/cortex-a7.md
      	(cortex_a7_neon_type): New.
      	(cortex_a7_neon_mul): Update for new types.
      	(cortex_a7_neon_mla): Likewise.
      	(cortex_a7_neon): Likewise.
      
      From-SVN: r203619
      James Greenhalgh committed
    • [ARM] [Neon types 7/10] Cortex-A15 neon pipeline changes · 795dd8d5
      	* config/arm/cortex-a15-neon.md: Update pipeline model.
      
      From-SVN: r203618
      James Greenhalgh committed
    • [ARM] [Neon types 6/10] Cortex-A9 neon pipeline changes · bc5e57e3
      gcc/
      	* config/arm/cortex-a8-neon.md (cortex_a9_neon_type): New.
      	* config/arm/cortex-a8-neon.md: Update all pipeline units for
      	new types.
      
      From-SVN: r203617
      James Greenhalgh committed
    • [ARM] [Neon types 5/10] Update Cortex-A8 pipeline model · 9deda8cb
      gcc/
      	* config/arm/cortex-a8-neon.md (cortex_a8_neon_type): New.
      	* config/arm/cortex-a8-neon.md: Update all pipeline units.
      
      From-SVN: r203616
      James Greenhalgh committed
    • [AArch64] [Neon types 4/10] Add type attributes to all simd insns · 0f686aa9
      gcc/
      
      	* config/aarch64/iterators.md (Vetype): Add SF and DF modes.
      	(fp): New.
      	* config/aarch64/aarch64-simd.md (neon_type): Remove.
      	* config/aarch64/aarch64-simd.md: Add "type" attribute to all
      	patterns.
      
      From-SVN: r203614
      James Greenhalgh committed
    • [ARM] [Neon types 3/10] Update Current type attributes to new Neon Types. · f7379e5e
      gcc/
      	* config/arm/iterators.md (V_elem_ch): New.
      	(q): Likewise.
      	(VQH_type): Likewise.
      	* config/arm/arm.md (is_neon_type): New.
      	(conds): Use is_neon_type.
      	(anddi3_insn): Update type attribute.
      	(xordi3_insn): Likewise.
      	(one_cmpldi2): Likewise.
      	* gcc/config/arm/vfp.md (movhf_vfp_neon): Update type attribute.
      	* gcc/config/arm/neon.md (neon_mov): Update type attributes for
      	all patterns.
      
      From-SVN: r203613
      James Greenhalgh committed
    • [AArch64] [Neon types 2/10] Update Current type attributes to new Neon Types. · a9e66678
      gcc/
      	* config/aarch64/aarch64.md (movtf_aarch64): Update type attribute.
      	(load_pair): Update type attribute.
      	(store_pair): Update type attribute.
      	* config/aarch64/iterators.md (q): New.
      
      From-SVN: r203612
      James Greenhalgh committed
    • [ARM] [Neon Types 1/10] Add new types to describe Neon insns. · 20445ed6
      gcc/
      	* config/arm/types.md: Add new types for Neon insns.
      
      From-SVN: r203611
      James Greenhalgh committed
    • re PR libstdc++/58737 (leak in std::regex_match) · 96937d47
      2013-10-15  Tim Shen  <timshen91@gmail.com>
      
      	PR libstdc++/58737
      	* include/bits/regex_automaton.h (_Automaton<>::~_Automaton): Fix memory
      	leak by adding it.
      	* include/bits/regex_executor.h (_Executor<>::~_Executor): Likewise.
      
      From-SVN: r203610
      Tim Shen committed
    • sse.md (unspec): Add UNSPEC_RCP14... · afb4ac68
      	* config/i386/sse.md (unspec): Add UNSPEC_RCP14, UNSPEC_RSQRT14,
      	UNSPEC_FIXUPIMM, UNSPEC_SCALEF, UNSPEC_GETEXP, UNSPEC_GETMANT,
      	UNSPEC_EXP2, UNSPEC_RCP28, UNSPEC_RSQRT28.
      	(rcp14<mode>): New.
      	(srcp14<mode>): Ditto.
      	(rsqrt14<mode>): Ditto.
      	(rsqrt14<mode>): Ditto.
      	(avx512f_vmscalef<mode>): Ditto.
      	(avx512f_scalef<mode>): Ditto.
      	(avx512f_getexp<mode>): Ditto.
      	(avx512f_sgetexp<mode>): Ditto.
      	(avx512f_fixupimm<mode>): Ditto.
      	(avx512f_sfixupimm<mode>): Ditto.
      	(avx512f_rndscale<mode>): Ditto.
      	(*avx512er_exp2<mode>): Ditto.
      	(*avx512er_rcp28<mode>): Ditto.
      	(avx512er_rsqrt28<mode>): Ditto.
      	(avx512f_getmant<mode>): Ditto.
      	(avx512f_getmant<mode>): Ditto.
      	(avx512f_rndscale<mode>): Fix formatting.
      
      
      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: r203609
      Alexander Ivchenko committed
    • ipa-utils.h (ipa_edge_within_scc): Declare. · 4cb13597
      2013-10-15  Martin Jambor  <mjambor@suse.cz>
      
      	* ipa-utils.h (ipa_edge_within_scc): Declare.
      	* ipa-cp.c (edge_within_scc): Moved...
      	* ipa-utils.c (ipa_edge_within_scc): ...here.  Updated all callers.
      
      From-SVN: r203607
      Martin Jambor committed
    • predicates.md (const_8_to_15_operand): New. · 2e2206fa
             * config/i386/predicates.md (const_8_to_15_operand): New.
              (const_16_to_31_operand): Ditto.
              * config/i386/sse.md (V8FI): New.
              (V16FI): Ditto.
              (reduc_splus_v8df): Ditto.
              (reduc_splus_v16sf): Ditto.
              (avx512f_vextract<shuffletype>32x4_1): Ditto.
              (vec_extract_hi_<mode>): Ditto.
              (avx512f_vinsert<shuffletype>32x4_1): Ditto.
              (vec_set_lo_<mode>): Ditto.
              (vec_set_hi_<mode>): Ditto.
              (avx512f_shuf_<shuffletype>64x2_1): Ditto.
              (avx512f_shuf_<shuffletype>32x4_1): Ditto.
              (avx512f_pshufd_1): Ditto.
              (avx512f_broadcast<mode>): Ditto.
              (avx512f_broadcast<mode>): Ditto.
              (define_split): Split vec_extract_lo into move.
              (ssequartermode): Ditto.
              (ssedoublemode): Extened with wider modes.
              (vec_extract_lo_<mode>): Ditto.
      
      
      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: r203606
      Alexander Ivchenko committed
    • predicates.md (register_or_constm1_operand): New. · 0fe65b75
              * config/i386/predicates.md (register_or_constm1_operand): New.
              * config/i386/sse.md (unspec): Add UNSPEC_UNSIGNED_PCMP, UNSPEC_TESTM,
              UNSPEC_TESTNM, UNSPEC_VTERNLOG, UNSPEC_ALIGN, UNSPEC_CONFLICT,
              UNSPEC_MASKED_EQ, UNSPEC_MASKED_GT, UNSPEC_GATHER_PREFETCH,
              UNSPEC_SCATTER_PREFETCH
              (VI48_512): New.
              (avx512f_ucmp<mode>3): Ditto.
              (avx512f_vternlog<mode>): Ditto.
              (avx512f_align<mode>): Ditto.
              (<shift_insn><mode>3): Ditto.
              (avx512f_<rotate>v<mode>): Ditto.
              (avx512f_<rotate><mode>): Ditto.
              (avx512f_eq<mode>3): Ditto.
              (avx512f_eq<mode>3_1): Ditto.
              (avx512f_gt<mode>3): Ditto.
              (avx512f_testm<mode>3): Ditto.
              (avx512f_testnm<mode>3): Ditto.
              (avx512pf_gatherpf<mode>): Ditto.
              (*avx512pf_gatherpf<mode>_mask): Ditto.
              (*avx512pf_gatherpf<mode>): Ditto.
              (avx512pf_scatterpf<mode>): Ditto.
              (*avx512pf_scatterpf<mode>_mask): Ditto.
              (*avx512pf_scatterpf<mode>): Ditto.
              (avx512f_vec_dup_gpr<mode>): Ditto.
              (clz<mode>2): Ditto.
              (conflict<mode>): Ditto.
              (REDUC_SMINMAX_MODE): Extened with wider modes.
              (reduc_<code>_<mode>): Ditto.
              (vlshr<mode>3): Ditto.
              (vashl<mode>3): Ditto.
      
      
      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: r203605
      Alexander Ivchenko committed
    • sse.md (unspec): Added UNSPEC_VPERMI2, UNSPEC_VPERMT2, UNSPEC_SCATTER. · ab931c71
              * config/i386/sse.md (unspec): Added UNSPEC_VPERMI2, UNSPEC_VPERMT2,
              UNSPEC_SCATTER.
              (VI48F_512): New.
              (avx512fmaskmode): Ditto.
              (bcstscalarsuff): Ditto.
              (avx512f_blendm<mode>): Ditto.
              (cmp_imm_predicate): Ditto.
              (avx512f_cmp<mode>3): Ditto.
              (avx512f_vec_dup<mode>): Ditto.
              (avx512f_vec_dup_mem<mode>): Ditto.
              (avx512f_vpermi2var<mode>3): Ditto.
              (avx512f_vpermt2var<mode>3): Ditto.
              (vec_init<mode>): Ditto.
              (avx512f_gathersi<mode>): Ditto.
              (*avx512f_gathersi<mode>): Ditto.
              (*avx512f_gathersi<mode>_2): Ditto.
              (avx512f_gatherdi<mode>): Ditto.
              (*avx512f_gatherdi<mode>): Ditto.
              (*avx512f_gatherdi<mode>_2): Ditto.
              (avx512f_scattersi<mode>): Ditto.
              (*avx512f_scattersi<mode>): Ditto.
              (avx512f_scatterdi<mode>): Ditto.
              (*avx512f_scatterdi<mode>): Ditto.
              (sseintprefix): Extened with wider modes.
              (VEC_GATHER_IDXSI): Ditto.
              (VEC_GATHER_IDXDI): Ditto.
              (VEC_GATHER_SRCDI): Ditto.
      
      
      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: r203604
      Alexander Ivchenko committed
    • Add A profile only multilib make file fragment. · c9acb877
      2013-10-15  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
      	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* config/arm/t-aprofile: New file.
      	* config.gcc: Handle --with-multilib-list option.
      
      
      Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
      
      From-SVN: r203603
      Matthew Gretton-Dann committed
    • lto.c (hash_canonical_type): Split out from ... · fffda8d7
      2013-10-15  Richard Biener  <rguenther@suse.de>
      
      	lto/
      	* lto.c (hash_canonical_type): Split out from ...
      	(iterative_hash_canonical_type): ... here.  Register types
      	we recurse to.
      	(gimple_canonical_type_hash): Adjust.
      	(gimple_register_canonical_type_1): Split out from ...
      	(gimple_register_canonical_type): ... here.  Cache computed
      	hash value.
      	(lto_register_canonical_types): Split into two modes,
      	clearing and computing TYPE_CANONICAL.
      	(lto_read_decls): Adjust.
      	(read_cgraph_and_symbols): Do two passes over global trees,
      	first clearing then computing TYPE_CANONICAL.
      
      From-SVN: r203600
      Richard Biener committed
    • [multiple changes] · 7569f697
      2013-10-15  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_pakd.adb (Expand_Packed_Element_Set,
      	Expand_Packed_Element_Reference): Adjust for the case of packed
      	arrays of reverse-storage-order types.
      
      2013-10-15  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb: Minor reformatting.
      
      2013-10-15  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute_Specification, case
      	To_Address): If the expression is an identifier, do not modify
      	its type; it will be converted when necessary, and the type of
      	the expression must remain consistent with that of the entity
      	for back-end consistency.
      
      2013-10-15  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch7.adb (Unit_Requires_Body): Add flag
      	Ignore_Abstract_State (Analyze_Package_Specification): Enforce
      	rule requiring Elaborate_Body if a non-null abstract state is
      	specified for a library-level package.
      	* sem_ch7.ads (Unit_Requires_Body): Add flag Ignore_Abstract_State.
      
      From-SVN: r203598
      Arnaud Charlet committed
    • Fix a miscompilation where a reload reg is reused after it has been clobbered. · ecbda484
      	* reload1.c (reloads_unique_chain_p): Ensure that r1 is the input for
      	r2.
      
      From-SVN: r203596
      Bernd Schmidt committed
    • [multiple changes] · ef163a0a
      2013-10-15  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Constituent): When
      	a state acts as a constituent of another state, ensure that
      	the said state has a Part_Of dependency in its corresponding
      	aspect/pragma Abstract_State.
      
      2013-10-15  Robert Dewar  <dewar@adacore.com>
      
      	* par-ch4.adb (P_If_expression): Handle redundant ELSE cleanly.
      
      2013-10-15  Thomas Quinot  <quinot@adacore.com>
      
      	* atree.ads (New_Copy, Relocate_Node): Improve documentation
      	(note that these subprograms reset Is_Overloaded).
      
      2013-10-15  Thomas Quinot  <quinot@adacore.com>
      
      	* checks.adb (Check_Needed): Handle the case where the test in
      	the left operand of the short circuit is wrapped in a qualified
      	expression, type conversion, or expression with actions.
      
      2013-10-15  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_type.adb, sem_type.ads (Save_Interps): Also propagate
      	Is_Overloaded to New_N, for consistency.
      
      2013-10-15  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-tienau.adb (Put): Use file parameter to query values of
      	current column and line length.
      
      From-SVN: r203595
      Arnaud Charlet committed
    • [multiple changes] · 99f97947
      2013-10-15  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb, exp_ch11.adb, a-except-2005.adb, a-except-2005.ads:
      	Minor reformatting.
      
      2013-10-15  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* targparm.ads: Fix minor typo in comment.
      
      2013-10-15  Ed Schonberg  <schonberg@adacore.com>
      
      	* lib-xref.adb: handle full views that are derived from private
      	types.
      	* sem_util.adb (Build_Elaboration_Entity): Do nothing in ASIS
      	mode: the elaboration entity is not in the source, and plays no
      	role in semantic analysis.  Minor reformatting.
      
      From-SVN: r203594
      Arnaud Charlet committed
    • [multiple changes] · b9ec8463
      2013-10-15  Tristan Gingold  <gingold@adacore.com>
      
      	* adaint.c (__gnat_get_executable_load_address): Remove AIX
      	specific code.
      
      2013-10-15  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_aggr.adb (Aggr_Size_OK): Refine criteria to better handle
      	large static aggregates with static record components, to avoid
      	generating a large number of asignments.  Conversely, improve
      	handling of aggregates initialized by a single association,
      	which are most efficiently implemented with a loop.
      
      2013-10-15  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Input_Item): Emit an
      	error when the input item comes from the related package.
      
      2013-10-15  Arnaud Charlet  <charlet@adacore.com>
      
      	* exp_ch11.adb (Expand_Exception_Handlers): Restrict previous
      	change.
      
      From-SVN: r203593
      Arnaud Charlet committed
    • tree-loop-distribution.c (build_empty_rdg): Inline into single user. · 24f161fd
      2013-10-15  Richard Biener  <rguenther@suse.de>
      
      	* tree-loop-distribution.c (build_empty_rdg): Inline into
      	single user.
      	(rdg_flag_vertex): Inline into single user.
      	(rdg_flag_vertex_and_dependent): Likewise.
      	(build_rdg_partition_for_vertex): Remove processed bitmap.
      	(rdg_build_partitions): Simplify.
      
      From-SVN: r203592
      Richard Biener committed
    • tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Restructure forwarding… · 5de989ed
      tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Restructure forwarding through conversions and copies to avoid performing...
      
      2013-10-15  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1):
      	Restructure forwarding through conversions and copies to
      	avoid performing copy-propagation the wrong way.  Adjust
      	recursion invocations.
      	(forward_propagate_addr_expr): Add argument stating if we
      	are recursing from a single-use.
      	(ssa_forward_propagate_and_combine): Adjust.
      
      From-SVN: r203591
      Richard Biener committed
    • openmp-define-3.c: Move effective target check after other directives. · 74576057
      [gcc/testsuite/]
      2013-10-15  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* c-c++-common/cpp/openmp-define-3.c: Move effective target check
      	after other directives.
      
      From-SVN: r203588
      Kyrylo Tkachov committed
    • Add missing file from previous commit r203586: · a7289535
      2013-10-15  Tobias Burnus  <burnus@net-b.de>
              PR fortran/58652
              * gfortran.dg/unlimited_polymorphic_11.f90: New.
      
      From-SVN: r203587
      Tobias Burnus committed