1. 29 Jan, 2014 1 commit
  2. 28 Jan, 2014 30 commits
  3. 27 Jan, 2014 9 commits
    • pr52125.c: Add -mno-optgp option. · 78c02155
      2014-01-27  Steve Ellcey  <sellcey@mips.com>
      
      	* gcc.target/mips/pr52125.c: Add -mno-optgp option.
      
      From-SVN: r207156
      Steve Ellcey committed
    • i386.c (get_builtin_code_for_version): Separate Westmere from Nehalem... · 0ebe2584
      	* config/i386/i386.c (get_builtin_code_for_version): Separate
      	Westmere from Nehalem, Ivy Bridge from Sandy Bridge and
      	Broadwell from Haswell.
      
      testsuite/ChangeLog:
      
      	* g++.dg/ext/mv16.C: New tests.
      
      From-SVN: r207155
      Allan Sandfeld Jensen committed
    • mips-common.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_FP_EXCEPTIONS_DEFAULT… · a33fc7fe
      mips-common.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_FP_EXCEPTIONS_DEFAULT and MASK_FUSED_MADD.
      
      2014-01-27  Steve Ellcey  <sellcey@mips.com>
      
      	* common/config/mips/mips-common.c (TARGET_DEFAULT_TARGET_FLAGS):
      	Remove TARGET_FP_EXCEPTIONS_DEFAULT and MASK_FUSED_MADD.
      	* config/mips/mips.c (mips_option_override): Change setting
      	of TARGET_DSP.
      	* config/mips/mips.h (TARGET_FP_EXCEPTIONS_DEFAULT): Remove.
      	* config/mips/mips.opt (DSP, DSPR2, FP_EXCEPTIONS, FUSED_MADD,
      	MIPS3D) Change from Mask to Var.
      
      From-SVN: r207154
      Steve Ellcey committed
    • mklog: Fix description at top of file. · 64688189
      2014-01-27  Jonathan Wakely  <jwakely@redhat.com>
      
      	* mklog: Fix description at top of file.
      
      From-SVN: r207153
      Jonathan Wakely committed
    • * ipa-inline.c (inline_small_functions): Fix typo. · a99be3c9
      From-SVN: r207151
      Jeff Law committed
    • avx512fintrin.h (_mm512_mask_cvtepi32_storeu_epi8): New. · d256b866
      gcc/
      	* config/i386/avx512fintrin.h (_mm512_mask_cvtepi32_storeu_epi8): New.
      	(_mm512_mask_cvtsepi32_storeu_epi8): Ditto.
      	(_mm512_mask_cvtusepi32_storeu_epi8): Ditto.
      	(_mm512_mask_cvtepi32_storeu_epi16): Ditto.
      	(_mm512_mask_cvtsepi32_storeu_epi16): Ditto.
      	(_mm512_mask_cvtusepi32_storeu_epi16): Ditto.
      	(_mm512_mask_cvtepi64_storeu_epi32): Ditto.
      	(_mm512_mask_cvtsepi64_storeu_epi32): Ditto.
      	(_mm512_mask_cvtusepi64_storeu_epi32): Ditto.
      	(_mm512_mask_cvtepi64_storeu_epi16): Ditto.
      	(_mm512_mask_cvtsepi64_storeu_epi16): Ditto.
      	(_mm512_mask_cvtusepi64_storeu_epi16): Ditto.
      	(_mm512_mask_cvtepi64_storeu_epi8): Ditto.
      	(_mm512_mask_cvtsepi64_storeu_epi8): Ditto.
      	(_mm512_mask_cvtusepi64_storeu_epi8): Ditto.
      	(_mm512_storeu_epi64): Ditto.
      	(_mm512_cmpge_epi32_mask): Ditto.
      	(_mm512_cmpge_epu32_mask): Ditto.
      	(_mm512_cmpge_epi64_mask): Ditto.
      	(_mm512_cmpge_epu64_mask): Ditto.
      	(_mm512_cmple_epi32_mask): Ditto.
      	(_mm512_cmple_epu32_mask): Ditto.
      	(_mm512_cmple_epi64_mask): Ditto.
      	(_mm512_cmple_epu64_mask): Ditto.
      	(_mm512_cmplt_epi32_mask): Ditto.
      	(_mm512_cmplt_epu32_mask): Ditto.
      	(_mm512_cmplt_epi64_mask): Ditto.
      	(_mm512_cmplt_epu64_mask): Ditto.
      	(_mm512_cmpneq_epi32_mask): Ditto.
      	(_mm512_cmpneq_epu32_mask): Ditto.
      	(_mm512_cmpneq_epi64_mask): Ditto.
      	(_mm512_cmpneq_epu64_mask): Ditto.
      	(_mm512_expand_pd): Ditto.
      	(_mm512_expand_ps): Ditto.
      	* config/i386/i386-builtin-types.def: Add PV16QI, PV16QI, PV16HI,
      	VOID_PV8SI_V8DI_QI, VOID_PV8HI_V8DI_QI, VOID_PV16QI_V8DI_QI,
      	VOID_PV16QI_V16SI_HI, VOID_PV16HI_V16SI_HI.
      	* config/i386/i386.c (ix86_builtins): Add
      	IX86_BUILTIN_EXPANDPD512_NOMASK, IX86_BUILTIN_EXPANDPS512_NOMASK,
      	IX86_BUILTIN_PMOVDB512_MEM, IX86_BUILTIN_PMOVDW512_MEM,
      	IX86_BUILTIN_PMOVQB512_MEM, IX86_BUILTIN_PMOVQD512_MEM,
      	IX86_BUILTIN_PMOVQW512_MEM, IX86_BUILTIN_PMOVSDB512_MEM,
      	IX86_BUILTIN_PMOVSDW512_MEM, IX86_BUILTIN_PMOVSQB512_MEM,
      	IX86_BUILTIN_PMOVSQD512_MEM, IX86_BUILTIN_PMOVSQW512_MEM,
      	IX86_BUILTIN_PMOVUSDB512_MEM, IX86_BUILTIN_PMOVUSDW512_MEM,
      	IX86_BUILTIN_PMOVUSQB512_MEM, IX86_BUILTIN_PMOVUSQD512_MEM,
      	IX86_BUILTIN_PMOVUSQW512_MEM.
      	(bdesc_special_args): Add __builtin_ia32_pmovusqd512mem_mask,
      	__builtin_ia32_pmovsqd512mem_mask,
      	__builtin_ia32_pmovqd512mem_mask,
      	__builtin_ia32_pmovusqw512mem_mask,
      	__builtin_ia32_pmovsqw512mem_mask,
      	__builtin_ia32_pmovqw512mem_mask,
      	__builtin_ia32_pmovusdw512mem_mask,
      	__builtin_ia32_pmovsdw512mem_mask,
      	__builtin_ia32_pmovdw512mem_mask,
      	__builtin_ia32_pmovqb512mem_mask,
      	__builtin_ia32_pmovusqb512mem_mask,
      	__builtin_ia32_pmovsqb512mem_mask,
      	__builtin_ia32_pmovusdb512mem_mask,
      	__builtin_ia32_pmovsdb512mem_mask,
      	__builtin_ia32_pmovdb512mem_mask.
      	(bdesc_args): Add __builtin_ia32_expanddf512,
      	__builtin_ia32_expandsf512.
      	(ix86_expand_special_args_builtin): Handle VOID_FTYPE_PV8SI_V8DI_QI, 
      	VOID_FTYPE_PV8HI_V8DI_QI, VOID_FTYPE_PV16HI_V16SI_HI,
      	VOID_FTYPE_PV16QI_V8DI_QI, VOID_FTYPE_PV16QI_V16SI_HI.
      	* config/i386/sse.md (unspec): Add UNSPEC_EXPAND_NOMASK.
      	(avx512f_<code><pmov_src_lower><mode>2_mask_store): New.
      	(*avx512f_<code>v8div16qi2_store_mask): Renamed to ...
      	(avx512f_<code>v8div16qi2_mask_store): This.
      	(avx512f_expand<mode>): New.
      
      testsuite/
      	* gcc.target/i386/avx512f-vexpandpd-1.c: Also test _mm512_expand_pd.
      	* gcc.target/i386/avx512f-vexpandpd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vexpandps-1.c: Also test _mm512_expand_ps.
      	* gcc.target/i386/avx512f-vexpandps-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vmovdqu64-1.c: Also test _mm512_storeu_epi64.
      	* gcc.target/i386/avx512f-vmovdqu64-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpged-1.c: New. 
      	* gcc.target/i386/avx512f-vpcmpged-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeud-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeud-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeuq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpgeuq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpled-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpled-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleud-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleud-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleuq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpleuq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltd-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltud-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltud-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltuq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpltuq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpneqd-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpneqd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpneqq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpneqq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpnequd-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpnequd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpnequq-1.c: Ditto. 
      	* gcc.target/i386/avx512f-vpcmpnequq-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovdb-1.c: Also test
      	_mm512_mask_cvtepi32_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovdw-1.c: Also test
      	_mm512_mask_cvtepi32_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovqb-1.c: Also test
      	_mm512_mask_cvtepi64_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovqw-1.c: Also test
      	_mm512_mask_cvtepi64_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovqd-1.c: Also test
      	_mm512_mask_cvtepi64_storeu_epi32.
      	* gcc.target/i386/avx512f-vpmovqd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovsdb-1.c: Also test
      	_mm512_mask_cvtsepi32_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovsdw-1.c: Also test
      	_mm512_mask_cvtsepi32_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovsqb-1.c: Also test
      	_mm512_mask_cvtsepi64_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovsqw-1.c: Also test
      	_mm512_mask_cvtsepi64_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovsqd-1.c: Also test
      	_mm512_mask_cvtsepi64_storeu_epi32.
      	* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovusdb-1.c: Also test
      	_mm512_mask_cvtusepi32_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovusdb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovusdw-1.c: Also test
      	_mm512_mask_cvtusepi32_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovusdw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovusqb-1.c: Also test
      	_mm512_mask_cvtusepi64_storeu_epi8.
      	* gcc.target/i386/avx512f-vpmovusqb-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovusqw-1.c: Also test
      	_mm512_mask_cvtusepi64_storeu_epi16.
      	* gcc.target/i386/avx512f-vpmovusqw-2.c: Ditto. 
      	* gcc.target/i386/avx512f-vpmovusqd-1.c: Also test
      	_mm512_mask_cvtusepi64_storeu_epi32.
      	* gcc.target/i386/avx512f-vpmovusqd-2.c: Ditto. 
      	* gcc.target/i386/m128-check.h: Add checkVs, checkVb.
      
      From-SVN: r207150
      Ilya Tocar committed
    • avx512pfintrin.h (_mm512_mask_prefetch_i32gather_pd): New. · e711dffd
      gcc/
              * config/i386/avx512pfintrin.h (_mm512_mask_prefetch_i32gather_pd): New.
      	(_mm512_mask_prefetch_i64gather_pd): Ditto.
      	(_mm512_prefetch_i32scatter_pd): Ditto.
      	(_mm512_mask_prefetch_i32scatter_pd): Ditto.
      	(_mm512_prefetch_i64scatter_pd): Ditto.
      	(_mm512_mask_prefetch_i64scatter_pd): Ditto.
      	(_mm512_mask_prefetch_i32gather_ps): Fix operand type.
      	(_mm512_mask_prefetch_i64gather_ps): Ditto.
      	(_mm512_prefetch_i32scatter_ps): Ditto.
      	(_mm512_mask_prefetch_i32scatter_ps): Ditto.
      	(_mm512_prefetch_i64scatter_ps): Ditto.
      	(_mm512_mask_prefetch_i64scatter_ps): Ditto.
      	* config/i386/i386-builtin-types.def: Define
      	VOID_FTYPE_QI_V8SI_PCINT64_INT_INT and VOID_FTYPE_QI_V8DI_PCINT64_INT_INT.
      	* config/i386/i386.c (ix86_builtins): Define IX86_BUILTIN_GATHERPFQPD,
      	IX86_BUILTIN_GATHERPFDPD, IX86_BUILTIN_SCATTERPFDPD,
      	IX86_BUILTIN_SCATTERPFQPD.
      	(ix86_init_mmx_sse_builtins): Define __builtin_ia32_gatherpfdpd,
      	__builtin_ia32_gatherpfdps, __builtin_ia32_gatherpfqpd,
      	__builtin_ia32_gatherpfqps, __builtin_ia32_scatterpfdpd,
      	__builtin_ia32_scatterpfdps, __builtin_ia32_scatterpfqpd,
      	__builtin_ia32_scatterpfqps.
      	(ix86_expand_builtin): Expand new built-ins.
      	* config/i386/sse.md (avx512pf_gatherpf<mode>): Add SF suffix,
      	fix memory access data type.
      	(*avx512pf_gatherpf<mode>_mask): Ditto.
      	(*avx512pf_gatherpf<mode>): Ditto.
      	(avx512pf_scatterpf<mode>): Ditto.
      	(*avx512pf_scatterpf<mode>_mask): Ditto.
      	(*avx512pf_scatterpf<mode>): Ditto.
      	(GATHER_SCATTER_SF_MEM_MODE): New.
      	(avx512pf_gatherpf<mode>df): Ditto.
      	(*avx512pf_gatherpf<mode>df_mask): Ditto.
      	(*avx512pf_scatterpf<mode>df): Ditto.
      
      testsuite/
              * gcc.target/i386/avx512pf-vgatherpf0dpd-1.c: New.
      	* gcc.target/i386/avx512pf-vgatherpf0qpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vgatherpf1dpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vgatherpf1qpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vscatterpf0dpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vscatterpf0qpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vscatterpf1dpd-1.c: Ditto.
      	* gcc.target/i386/avx512pf-vscatterpf1qpd-1.c: Ditto.
      	* gcc.target/i386/sse-14.c: Add new built-ins, fix AVX-512ER
      	built-ins roudning immediate.
      	* gcc.target/i386/sse-22.c: Add new built-ins.
      	* gcc.target/i386/sse-23.c: Ditto.
      	* gcc.target/i386/avx-1.c: Ditto.
      
      From-SVN: r207149
      Kirill Yukhin committed
    • re PR libstdc++/59215 (tsan: warning in shared_ptr_base.h) · fb1ca954
      	PR libstdc++/59215
      	* include/bits/shared_ptr_base.h
      	(_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
      	load.
      
      From-SVN: r207147
      Jonathan Wakely committed
    • [multiple changes] · b1d12996
      2014-01-27  Robert Dewar  <dewar@adacore.com>
      
      	* sem_res.adb (Resolve_Comparison_Op): Add type name/location
      	to unordered msg.
      	(Resolve_Range): Add type name/location to unordered msg.
      
      2014-01-27  Claire Dross  <dross@adacore.com>
      
      	* a-cofove.adb/s (Copy): Add precondition so that Copy (Source,
      	Capacity) is only called with Capacity >= Length (Source) and
      	Capacity in Capacity_Range.
      	* a-cfdlli.adb/s, a-cfhase.adb/s, a-cfhama.adb/s, a-cforse.adb/s,
      	a-cforma.adb/s (Copy): Add precondition so that Copy (Source, Capacity)
      	is only called with Capacity >= Source.Capacity. Raise Capacity_Error
      	in the code is this is not the case.
      
      2014-01-27  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch4.adb (Analyze_Selected_Component): Fix handling of
      	selected component in an instance where the component of the
      	actual is not visibile at instantiation.
      
      From-SVN: r207146
      Arnaud Charlet committed