Mike Stump
57664fed58
re PR c++/41090 (Using static label reference in c++ class constructor produces wrong code)
...
PR c++/41090
* g++.dg/ext/label13.C: Update to not expect failures.
From-SVN: r206252
2013-12-30 19:34:53 +00:00
Mike Stump
2ef747bcac
Fix spacing.
...
From-SVN: r206251
2013-12-30 19:06:25 +00:00
Nick Clifton
e1a558374d
re PR c++/59631 (ICE using _Cilk_spawn without -fcilkplus)
...
PR target/59631
* stor-layout.c (get_mode_bounds): Use GET_MODE_PRECISION instead
of GET_MODE_BITSIZE.
Co-Authored-By: Peter Bigot <bigotp@acm.org>
From-SVN: r206250
2013-12-30 17:37:08 +00:00
Janus Weil
6bd5968441
re PR fortran/58998 (Generic interface problem with gfortran)
...
2013-12-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/58998
* resolve.c (resolve_symbol): Check that symbol is not only flavorless
but also untyped.
2013-12-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/58998
* gfortran.dg/generic_28.f90: New.
From-SVN: r206249
2013-12-30 18:33:21 +01:00
Jakub Jelinek
acdcd61b09
re PR tree-optimization/59591 (ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2)
...
PR tree-optimization/59591
* tree-vect-stmts.c (vectorizable_mask_load_store): Fix up handling
of modifier = NARROW masked gathers.
(permute_vec_elements): Use gimple_get_lhs instead of
gimple_assign_lhs.
* gcc.dg/vect/pr59591-1.c: New test.
* gcc.dg/vect/pr59591-2.c: New test.
* gcc.target/i386/pr59591-1.c: New test.
* gcc.target/i386/pr59591-2.c: New test.
From-SVN: r206248
2013-12-30 18:05:10 +01:00
Nick Clifton
51ac3042e7
msp430.c (msp430_print_operand): Rename %B to %b and %A to %Q.
...
* config/msp430/msp430.c (msp430_print_operand): Rename %B to %b
and %A to %Q. Add %A, %B, %C and %D as selectors for 16-bit parts
of a 64-bit operand.
* config/msp430/msp430.md: Replace uses of %B with %b and uses of
%A with %q.
From-SVN: r206247
2013-12-30 16:28:08 +00:00
Felix Yang
c99ebd4dde
ira-costs.c (cost_classes_hasher::equal): Check equality of memcmp and 0 if no difference exists for HV1 and HV2.
...
2013-12-30 Felix Yang <felix.yang@huawei.com>
* ira-costs.c (cost_classes_hasher::equal): Check equality of
memcmp and 0 if no difference exists for HV1 and HV2.
From-SVN: r206246
2013-12-30 16:10:14 +00:00
Jakub Jelinek
8e72847528
re PR tree-optimization/59501 (Vector Gather with GCC 4.9 2013-12-08 Snapshot)
...
PR target/59501
* config/i386/i386.c (ix86_save_reg): Don't return true for drap_reg
if !crtl->stack_realign_needed.
(ix86_finalize_stack_realign_flags): If drap_reg isn't live on entry
and stack_realign_needed will be false, clear drap_reg and need_drap.
Optimize leaf functions that don't need stack frame even if
crtl->need_drap.
* gcc.target/i386/pr59501-1.c: New test.
* gcc.target/i386/pr59501-1a.c: New test.
* gcc.target/i386/pr59501-2.c: New test.
* gcc.target/i386/pr59501-2a.c: New test.
* gcc.target/i386/pr59501-3.c: New test.
* gcc.target/i386/pr59501-3a.c: New test.
* gcc.target/i386/pr59501-4.c: New test.
* gcc.target/i386/pr59501-4a.c: New test.
* gcc.target/i386/pr59501-5.c: New test.
* gcc.target/i386/pr59501-6.c: New test.
From-SVN: r206243
2013-12-30 09:53:10 +01:00
H.J. Lu
5cf5a0e59b
re PR target/59605 (error: wrong number of branch edges after unconditional jump in bb 11)
...
PR target/59605
* config/i386/i386.c (ix86_expand_set_or_movmem): Create
jump_around_label only if it doesn't exist.
* gcc.dg/pr59605.c: New test.
From-SVN: r206242
2013-12-30 09:48:25 +01:00
GCC Administrator
3836fdc0c9
Daily bump.
...
From-SVN: r206241
2013-12-30 00:16:41 +00:00
Janus Weil
85dabaedbb
re PR fortran/59612 ([F03] iso_fortran_env segfaults with -fdump-fortran-original)
...
2013-12-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/59612
* dump-parse-tree.c (show_typespec): Check for charlen.
* invoke.texi: Fix documentation of -fdump-fortran-optimized and
-fdump-parse-tree.
From-SVN: r206237
2013-12-29 18:20:50 +01:00
GCC Administrator
f6cd57517a
Daily bump.
...
From-SVN: r206236
2013-12-29 00:16:14 +00:00
Ian Lance Taylor
f89b66f5ad
net: work around Solaris connect issue when server closes socket
...
On Solaris, if you do a in-progress connect, and then the
server accepts and closes the socket, the client's later
attempt to complete the connect will fail with EINVAL. Handle
this case by assuming that the connect succeeded. This code
is weird enough that it is implemented as Solaris-only so that
it doesn't hide a real error on a different OS.
See http://golang.org/issue/6828 .
From-SVN: r206232
2013-12-28 18:00:30 +00:00
Eric Botcazou
24879fd092
* doc/invoke.texi (output file options): Document -fada-spec-parent.
...
From-SVN: r206229
2013-12-28 10:43:12 +00:00
Eric Botcazou
f2aa696b5b
c-ada-spec.c (print_constructor): New function.
...
* c-ada-spec.c (print_constructor): New function.
(print_destructor): Retrieve the origin of the destructor.
(print_ada_declaration): Revamp handling of constructors/destructors.
From-SVN: r206228
2013-12-28 10:12:59 +00:00
GCC Administrator
2748936ad8
Daily bump.
...
From-SVN: r206227
2013-12-28 00:17:20 +00:00
Ian Lance Taylor
afc8adc88f
re PR go/59506 (net FAILs (timeout) on alpha)
...
PR go/59506
net: use DialTimeout in TestSelfConnect
Backported from master repository.
This avoids problems with systems that take a long time to
find out nothing is listening, while still testing for the
self-connect misfeature since a self-connect should be fast.
With this we may be able to remove the test for non-Linux
systems.
Tested (on GNU/Linux) by editing selfConnect in
tcpsock_posix.go to always return false and verifying that
TestSelfConnect then fails with and without this change.
Idea from Uros Bizjak.
From-SVN: r206224
2013-12-27 21:42:26 +00:00
Alexander Ivchenko
4de67111df
sse.md (avx512f_fixupimm<mode>_maskz): Extend to support EVEX's RC.
...
* config/i386/sse.md (avx512f_fixupimm<mode>_maskz): Extend to support
EVEX's RC.
(avx512f_sfixupimm<mode>_maskz): Ditto.
* config/i386/subst.md (round_saeonly_expand_name): New.
(round_saeonly_expand_nimm_predicate): Ditto.
(round_saeonly_expand_operand6): Ditto.
(round_saeonly_expand): 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: r206223
2013-12-27 14:37:34 +00:00
Alexander Ivchenko
7cf78561f6
sse.md (avx512f_fmadd_<mode>_maskz): Extend to support EVEX's RC.
...
* config/i386/sse.md (avx512f_fmadd_<mode>_maskz): Extend to support
EVEX's RC.
(avx512f_fmaddsub_<mode>_maskz): Ditto.
* config/i386/subst.md (round_expand_name): New.
(round_expand_nimm_predicate): Ditto.
(round_expand_operand): Ditto.
(round_expand): 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: r206222
2013-12-27 14:33:51 +00:00
Alexander Ivchenko
8a6ef76052
sse.md (<code><mode>3<mask_name>): Extend to support EVEX's SAE mode.
...
* config/i386/sse.md (<code><mode>3<mask_name>): Extend to support
EVEX's SAE mode.
(*<code><mode>3_finite<mask_name>): Ditto.
(*<code><mode>3<mask_name>): Ditto.
(avx512f_cmp<mode>3<mask_scalar_merge_name>): Ditto.
(avx512f_vmcmp<mode>3): Ditto.
(avx512f_vmcmp<mode>3_mask): Ditto.
(<sse>_comi): Ditto.
(<sse>_ucomi): Ditto.
(sse_cvttss2si): Ditto.
(sse_cvttss2siq): Ditto.
(<fixsuffix>fix_truncv16sfv16si2<mask_name>): Ditto.
(avx512f_vcvttss2usi): Ditto.
(avx512f_vcvttss2usiq): Ditto.
(avx512f_vcvttsd2usi): Ditto.
(avx512f_vcvttsd2usiq): Ditto.
(sse2_cvttsd2si): Ditto.
(sse2_cvttsd2siq): Ditto.
(<fixsuffix>fix_truncv8dfv8si2<mask_name>): Ditto.
(<sse2_avx_avx512f>_cvtps2pd<avxsizesuffix><mask_name>): Ditto.
(avx512f_getexp<mode><mask_name>): Ditto.
(avx512f_fixupimm<mode><sd_maskz_name>): Ditto.
(avx512f_fixupimm<mode>_mask): Ditto.
(avx512f_sfixupimm<mode><sd_maskz_name>): Ditto.
(avx512f_sfixupimm<mode>_mask): Ditto.
(avx512f_rndscale<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_vcvtph2ps512<mask_name>): Ditto.
(avx512f_getmant<mode><mask_name>): Ditto.
* config/i386/subst.md (round_saeonly_name): New.
(round_saeonly_mask_operand2): Ditto.
(round_saeonly_mask_operand3): Ditto.
(round_saeonly_mask_scalar_operand3): Ditto.
(round_saeonly_mask_scalar_operand4): Ditto.
(round_saeonly_mask_scalar_merge_operand4): Ditto.
(round_saeonly_sd_mask_operand5): Ditto.
(round_saeonly_op2): Ditto.
(round_saeonly_op4): Ditto.
(round_saeonly_op5): Ditto.
(round_saeonly_op6): Ditto.
(round_saeonly_mask_op2): Ditto.
(round_saeonly_mask_op3): Ditto.
(round_saeonly_mask_scalar_op3): Ditto.
(round_saeonly_mask_scalar_op4): Ditto.
(round_saeonly_mask_scalar_merge_op4): Ditto.
(round_saeonly_sd_mask_op5): Ditto.
(round_saeonly_constraint): Ditto.
(round_saeonly_constraint2): Ditto.
(round_saeonly_nimm_predicate): Ditto.
(round_saeonly_mode512bit_condition): Ditto.
(round_saeonly): 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: r206221
2013-12-27 14:22:35 +00:00
Alexander Ivchenko
06bc9e41f4
i386.c (ix86_print_operand): Print EVEX's RC modifiers.
...
* config/i386/i386.c (ix86_print_operand): Print EVEX's RC modifiers.
* config/i386/i386.md (define_constants): Define EVEx's RC constants.
* gcc/config/i386/sse.md (<plusminus_insn><mode>3<mask_name>): Extend
to support EVEX's rounding control.
(*<plusminus_insn><mode>3<mask_name>): Ditto.
(mul<mode>3<mask_name>): Ditto.
(*mul<mode>3<mask_name>): Ditto.
(<sse>_div<mode>3<mask_name>): Ditto.
(<sse>_sqrt<mode>2<mask_name>): Ditto.
(<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name>): Ditto.
(avx512f_fmadd_<mode>_mask): Ditto.
(avx512f_fmadd_<mode>_mask3): Ditto.
(<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name>): Ditto.
(avx512f_fmsub_<mode>_mask): Ditto.
(avx512f_fmsub_<mode>_mask3): Ditto.
(<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name>): Ditto.
(avx512f_fnmadd_<mode>_mask): Ditto.
(avx512f_fnmadd_<mode>_mask3): Ditto.
(<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name>): Ditto.
(avx512f_fnmsub_<mode>_mask): Ditto.
(avx512f_fnmsub_<mode>_mask3): Ditto.
(<sd_mask_codefor>fma_fmaddsub_<mode><sd_maskz_name>): Ditto.
(avx512f_fmaddsub_<mode>_mask): Ditto.
(avx512f_fmaddsub_<mode>_mask3): Ditto.
(<sd_mask_codefor>fma_fmsubadd_<mode><sd_maskz_name>): Ditto.
(avx512f_fmsubadd_<mode>_mask): Ditto.
(avx512f_fmsubadd_<mode>_mask3): Ditto.
(fmai_vmfmadd_<mode>): Ditto.
(*fmai_fmadd_<mode>): Ditto.
(*fmai_fmsub_<mode>): Ditto.
(*fmai_fnmadd_<mode>): Ditto.
(*fmai_fnmsub_<mode>): Ditto.
(sse_cvtsi2ss): Ditto.
(sse_cvtsi2ssq): Ditto.
(sse_cvtss2si): Ditto.
(sse_cvtss2siq): Ditto.
(cvtusi2<ssescalarmodesuffix>32): Ditto.
(cvtusi2<ssescalarmodesuffix>64): Ditto.
(float<sseintvecmodelower><mode>2<mask_name>): Ditto.
(ufloatv16siv16sf2<mask_name>): Ditto.
(<mask_codefor>avx512f_fix_notruncv16sfv16si<mask_name>): Ditto.
(<mask_codefor>avx512f_ufix_notruncv16sfv16si<mask_name>): Ditto.
(sse2_cvtsi2sdq): Ditto.
(avx512f_vcvtss2usi): Ditto.
(avx512f_vcvtss2usiq): Ditto.
(avx512f_vcvtsd2usi): Ditto.
(avx512f_vcvtsd2usiq): Ditto.
(sse2_cvtsd2si): Ditto.
(sse2_cvtsd2siq): Ditto.
(<mask_codefor>avx512f_cvtpd2dq512<mask_name>): Ditto.
(avx512f_ufix_notruncv8dfv8si<mask_name>): Ditto.
(<mask_codefor>avx512f_cvtpd2ps512<mask_name>): Ditto.
(avx512f_scalef<mode><mask_name>): Ditto.
(<code><mode>3<mask_name>): Ditto.
(*avx2_<code><mode>3<mask_name>): Ditto.
(avx512er_exp2<mode><mask_name): Ditto.
(<mask_codefor>avx512er_rcp28<mode><mask_name>): Ditto.
(<mask_codefor>avx512er_rsqrt28<mode><mask_name>): Ditto.
(avx512f_fmadd_<mode>_maskz): New.
* config/i386/subst.md (SUBST_A): New.
(round_name): Ditto.
(round_mask_operand2): Ditto.
(round_mask_operand3): Ditto.
(round_mask_scalar_operand3): Ditto.
(round_sd_mask_operand4): Ditto.
(round_op2): Ditto.
(round_op3): Ditto.
(round_op4): Ditto.
(round_op5): Ditto.
(round_op6): Ditto.
(round_mask_op2): Ditto.
(round_mask_op3): Ditto.
(round_mask_scalar_op3): Ditto.
(round_sd_mask_op4): Ditto.
(round_constraint): Ditto.
(round_constraint2): Ditto.
(round_constraint3): Ditto.
(round_nimm_predicate): Ditto.
(round_mode512bit_condition): Ditto.
(round_modev4sf_condition): Ditto.
(round_codefor): Ditto.
(round_opnum): Ditto.
(round): 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: r206220
2013-12-27 14:03:55 +00:00
Yury Gribov
4085fae0dc
re PR sanitizer/59585 (Tests failing due to trailing newline)
...
2013-12-27 Yury Gribov <y.gribov@samsung.com>
PR target/59585
* c-c++-common/ubsan/div-by-zero-1.c: Fixed pattern.
* c-c++-common/ubsan/div-by-zero-2.c: Likewise.
* c-c++-common/ubsan/div-by-zero-3.c: Likewise.
* c-c++-common/ubsan/load-bool-enum.c: Likewise.
* c-c++-common/ubsan/overflow-add-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-4.c: Likewise.
* c-c++-common/ubsan/overflow-negate-1.c: Likewise.
* c-c++-common/ubsan/overflow-sub-2.c: Likewise.
* c-c++-common/ubsan/pr59333.c: Likewise.
* c-c++-common/ubsan/shift-1.c: Likewise.
* c-c++-common/ubsan/shift-2.c: Likewise.
* c-c++-common/ubsan/shift-4.c: Likewise.
* c-c++-common/ubsan/vla-1.c: Likewise.
From-SVN: r206219
2013-12-27 13:56:18 +00:00
GCC Administrator
089a5d9939
Daily bump.
...
From-SVN: r206218
2013-12-27 00:17:09 +00:00
H.J. Lu
3a89fcdaf4
Replace -mtune=i686 with -mtune=generic
...
* g++.old-deja/g++.other/store-expr1.C (dg-options): Replace
-mtune=i686 with -mtune=generic.
* g++.old-deja/g++.other/store-expr2.C (dg-options): Likewise.
From-SVN: r206215
2013-12-26 13:05:02 -08:00
H.J. Lu
8b49aa88cc
Replace -mtune=i686 with -mtune=generic
...
* gcc.target/i386/andor-2.c (dg-options): Replace -mtune=i686
with -mtune=generic.
From-SVN: r206214
2013-12-26 11:13:41 -08:00
H.J. Lu
dd908cc5d8
Don't check/change generic/i686 tuning
...
gcc/
PR target/59588
* config/i386/i386.c (ix86_option_override_internal): Don't
check generic tuning. Don't change i686 tuning.
gcc/testsuite/
PR target/59588
* gcc.target/i386/pr59588-1.c: New file.
* gcc.target/i386/pr59588-2.c: Likewise.
From-SVN: r206213
2013-12-26 08:10:55 -08:00
H.J. Lu
806ac50747
Map "arch=corei7"/"arch=nehalem" to M_INTEL_COREI7
...
After Intel processor name cleanup,
__attribute__ ((target("arch=corei7"))) is translated to PROCESSOR_NEHALEM
and mapped to M_INTEL_COREI7_NEHALEM.
__attribute__ ((target("arch=corei7")))
used to cover M_INTEL_COREI7_XXXX. Now it only covers M_INTEL_COREI7_NEHALEM.
We have PROCESSOR_SANDYBRIDGE and PROCESSOR_HASWELL. But there is nothing
to mark Westmere and Ivy Bridge. Since function versioning doesn't support
extra ISAs in Westmere and Ivy Bridge, we don't lose anything. The solution
is to map
__attribute__ ((target("arch=corei7")))
and
__attribute__ ((target("arch=nehalem")))
to M_INTEL_COREI7.
gcc/
PR target/59601
* config/i386/i386.c (get_builtin_code_for_version): Map
PROCESSOR_NEHALEM to "corei7".
gcc/testsuite/
PR target/59601
* g++.dg/ext/mv14.C: New tests.
* g++.dg/ext/mv15.C: Likewise.
From-SVN: r206212
2013-12-26 06:47:15 -08:00
Uros Bizjak
1879e97f6c
cpuinfo.c (enum vendor_signatures): Remove.
...
* config/i386/cpuinfo.c (enum vendor_signatures): Remove.
(__cpu_indicator_init): Use signature_INTEL_ebx and signature_AMD_ebx
from cpuid.h to check vendor signatures.
From-SVN: r206211
2013-12-26 15:12:20 +01:00
Ganesh Gopalasubramanian
f4a4bdbb6c
Change AMD cpu names
...
From-SVN: r206210
2013-12-26 08:54:49 +00:00
H.J. Lu
0bb52f2576
Convert leading spaces to tab
...
From-SVN: r206209
2013-12-25 17:49:07 -08:00
H.J. Lu
8d2ae544f1
Remove model 0x3f from Haswell
...
* config/i386/cpuinfo.c (get_intel_cpu): Remove model 0x3f from
Haswell.
From-SVN: r206208
2013-12-25 17:48:24 -08:00
GCC Administrator
c37025917c
Daily bump.
...
From-SVN: r206207
2013-12-26 00:17:22 +00:00
Uros Bizjak
f313cce5c0
driver-i386.c (decode_caches_intel): Add missing entries.
...
* config/i386/driver-i386.c (decode_caches_intel): Add missing entries.
From-SVN: r206203
2013-12-26 01:05:44 +01:00
H.J. Lu
b97de419c2
Remove target_cpu_default/cpu_names
...
Add processor names to processor_target_table and use it instead of
target_cpu_default and cpu_names.
PR target/59587
* config/i386/i386.c (struct ptt): Add a field for processor
name.
(processor_target_table): Sync with processor_type. Add
processor names.
(cpu_names): Removed.
(ix86_option_override_internal): Default x_ix86_tune_string
to processor_target_table[TARGET_CPU_DEFAULT].name.
(ix86_function_specific_print): Assert arch and tune <
PROCESSOR_max. Use processor_target_table to print arch and
tune names.
* config/i386/i386.h (TARGET_CPU_DEFAULT): Default to
PROCESSOR_GENERIC.
(target_cpu_default): Removed.
(processor_type): Reordered.
From-SVN: r206202
2013-12-25 14:44:04 -08:00
Uros Bizjak
ce2b81bfce
Revert unwanted commit.
...
From-SVN: r206201
2013-12-25 23:24:26 +01:00
Allan Sandfeld Jensen
74924838e8
re PR target/59422 (Support more targets for function multi versioning)
...
gcc/
2013-12-25 Allan Sandfeld Jensen <sandfeld@kde.org>
H.J. Lu <hongjiu.lu@intel.com>
PR target/59422
* config/i386/i386.c (get_builtin_code_for_version): Handle
PROCESSOR_HASWELL, PROCESSOR_SILVERMONT, PROCESSOR_BTVER1,
PROCESSOR_BTVER2, PROCESSOR_BDVER3 and PROCESSOR_BDVER4.
Change priority of PROCESSOR_BDVER1 to P_PROC_XOP.
(fold_builtin_cpu): Add "ivybridge", "haswell", "bonnell",
"silvermont", "bobcat" and "jaguar" CPU names. Add "sse4a",
"fma4", "xop" and "fma" ISA names.
libgcc/
2013-12-25 Allan Sandfeld Jensen <sandfeld@kde.org>
H.J. Lu <hongjiu.lu@intel.com>
PR target/59422
* config/i386/cpuinfo.c (enum processor_types): Add AMD_BOBCAT
and AMD_JAGUAR.
(enum processor_subtypes): Add AMDFAM15H_BDVER3, AMDFAM15H_BDVER4,
INTEL_COREI7_IVYBRIDGE and INTEL_COREI7_HASWELL.
(enum processor_features): Add FEATURE_SSE4_A, FEATURE_FMA4,
FEATURE_XOP and FEATURE_FMA.
(get_amd_cpu): Handle AMD_BOBCAT, AMD_JAGUAR, AMDFAM15H_BDVER2 and
AMDFAM15H_BDVER3.
(get_intel_cpu): Handle INTEL_COREI7 and INTEL_COREI7_HASWELL.
(get_available_features): Handle FEATURE_FMA, FEATURE_SSE4_A,
FEATURE_FMA4 and FEATURE_XOP.
testsuite/
2013-12-25 Allan Sandfeld Jensen <sandfeld@kde.org>
PR target/59422
* gcc.target/i386/funcspec-5.c (test_fma, test_xop, test_no_fma,
test_no_xop, test_arch_corei7, test_arch_corei7_avx,
test_arch_core_avx2, test_arch_bdver1, test_arch_bdver2,
test_arch_bdver3, test_tune_corei7, test_tune_corei7_avx,
test_tune_core_avx2, test_tune_bdver1, test_tune_bdver2 and
test_tune_bdver3): New function prototypes.
From-SVN: r206200
2013-12-25 23:22:24 +01:00
GCC Administrator
80d69d3a85
Daily bump.
...
From-SVN: r206199
2013-12-25 00:16:54 +00:00
H.J. Lu
50a1f11183
Check opts->x_ix86_arch_string
...
* config/i386/i386.c (ix86_option_override_internal): Check
opts->x_ix86_arch_string instead of ix86_arch_string.
From-SVN: r206196
2013-12-24 12:12:47 -08:00
Renlin Li
c75d51aa81
arm-protos.h (vfp_const_double_for_bits): Declare.
...
gcc/
2013-12-24 Renlin Li <Renlin.Li@arm.com>
* config/arm/arm-protos.h (vfp_const_double_for_bits): Declare.
* config/arm/constraints.md (Dp): Define new constraint.
* config/arm/predicates.md (const_double_vcvt_power_of_two): Define
new predicate.
* config/arm/arm.c (arm_print_operand): Add print for new fucntion.
(vfp3_const_double_for_bits): New function.
* config/arm/vfp.md (combine_vcvtf2i): Define new instruction.
gcc/testsuite/
2013-12-24 Renlin Li <Renlin.Li@arm.com>
* gcc.target/arm/fixed_float_conversion.c: New test case.
From-SVN: r206195
2013-12-24 15:34:30 +00:00
Jason Merrill
8bebb9532b
re PR c++/59271 (a.C:16:21: internal compiler error: in strip_typedefs, at cp/tree.c:1315)
...
PR c++/59271
* lambda.c (build_capture_proxy): Use build_cplus_array_type.
From-SVN: r206193
2013-12-23 23:22:23 -05:00
Jason Merrill
8fc13bad8e
re PR c++/59349 (ICE on invalid: Segmentation fault toplev.c:336)
...
PR c++/59349
* parser.c (cp_parser_lambda_introducer): Handle empty init.
From-SVN: r206192
2013-12-23 23:22:15 -05:00
GCC Administrator
fcccec5672
Daily bump.
...
From-SVN: r206191
2013-12-24 00:16:59 +00:00
Hans-Peter Nilsson
c09c8f7054
re PR target/59203 (config/cris/cris.c:2491: possible typo ?)
...
PR target/59203
* config/cris/cris.c (cris_pic_symbol_type_of): Fix typo,
checking t1 twice instead of t1 and t2 respectively.
From-SVN: r206188
2013-12-23 23:12:09 +00:00
Hans-Peter Nilsson
a13a866e54
re PR middle-end/59584 (regressions related to __builtin_stack_restore)
...
PR middle-end/59584
* config/cris/predicates.md (cris_nonsp_register_operand):
New define_predicate.
* config/cris/cris.md: Replace register_operand with
cris_nonsp_register_operand for destinations in all
define_splits where a register is set more than once.
From-SVN: r206187
2013-12-23 22:33:52 +00:00
Jason Merrill
2a0da5ad16
* gdbinit.in (input_line, input_filename): Define.
...
From-SVN: r206183
2013-12-23 12:51:03 -05:00
Jason Merrill
1f26ac8748
re PR c++/41090 (Using static label reference in c++ class constructor produces wrong code)
...
PR c++/41090
Add -fdeclone-ctor-dtor.
gcc/cp/
* optimize.c (can_alias_cdtor, populate_clone_array): Split out
from maybe_clone_body.
(maybe_thunk_body): New function.
(maybe_clone_body): Call it.
* mangle.c (write_mangled_name): Remove code to suppress
writing of mangled name for cloned constructor or destructor.
(write_special_name_constructor): Handle decloned constructor.
(write_special_name_destructor): Handle decloned destructor.
* method.c (trivial_fn_p): Handle decloning.
* semantics.c (expand_or_defer_fn_1): Clone after setting linkage.
gcc/c-family/
* c.opt: Add -fdeclone-ctor-dtor.
* c-opts.c (c_common_post_options): Default to on iff -Os.
gcc/
* cgraph.h (struct cgraph_node): Add calls_comdat_local.
(symtab_comdat_local_p, symtab_in_same_comdat_p): New.
* cif-code.def: Add USES_COMDAT_LOCAL.
* symtab.c (verify_symtab_base): Make sure we don't refer to a
comdat-local symbol from outside its comdat.
* cgraph.c (verify_cgraph_node): Likewise.
* cgraphunit.c (mark_functions_to_output): Don't mark comdat-locals.
* ipa.c (symtab_remove_unreachable_nodes): Likewise.
(function_and_variable_visibility): Handle comdat-local fns.
* ipa-cp.c (determine_versionability): Don't clone comdat-locals.
* ipa-inline-analysis.c (compute_inline_parameters): Update
calls_comdat_local.
* ipa-inline-transform.c (inline_call): Likewise.
(save_inline_function_body): Don't clear DECL_COMDAT_GROUP.
* ipa-inline.c (can_inline_edge_p): Check calls_comdat_local.
* lto-cgraph.c (input_overwrite_node): Read calls_comdat_local.
(lto_output_node): Write it.
* symtab.c (symtab_dissolve_same_comdat_group_list): Clear
DECL_COMDAT_GROUP for comdat-locals.
include/
* demangle.h (enum gnu_v3_ctor_kinds):
Added literal gnu_v3_unified_ctor.
(enum gnu_v3_ctor_kinds):
Added literal gnu_v3_unified_dtor.
libiberty/
* cp-demangle.c (cplus_demangle_fill_ctor,cplus_demangle_fill_dtor):
Handle unified ctor/dtor.
(d_ctor_dtor_name): Handle unified ctor/dtor.
From-SVN: r206182
2013-12-23 12:49:47 -05:00
Bingfeng Mei
266d276c4e
vect-neg-store-1.c: New test.
...
2013-12-23 Bingfeng Mei <bmei@broadcom.com>
* gcc.dg/vect/vect-neg-store-1.c: New test.
* gcc.dg/vect/vect-neg-store-2.c: Ditto.
From-SVN: r206181
2013-12-23 17:22:30 +00:00
H.J. Lu
7c2539fc5a
Move Bonnell and Silvermont entries before generic
...
* config/i386/i386.c (processor_target_table): Move Bonnell and
Silvermont entries before generic.
From-SVN: r206180
2013-12-23 09:11:00 -08:00
Bingfeng Mei
f234d26028
re PR middle-end/59569 (r206148 causes internal compiler error: in vect_create_destination_var, at tree-vect-data-refs.c:4294)
...
2013-12-23 Bingfeng Mei <bmei@broadcom.com>
PR middle-end/59569
* tree-vect-stmts.c (vectorizable_store): Skip permutation for
consant operand, and add a few missing \n.
* gcc.c-torture/compile/pr59569-1.c: New test.
* gcc.c-torture/compile/pr59569-2.c: Ditto.
From-SVN: r206179
2013-12-23 15:07:58 +00:00
H.J. Lu
d3c1197403
Use proper Intel processor names for -march=/-mtune=
...
gcc/
* config/i386/core2.md: Replace corei7 with nehalem.
* config/i386/driver-i386.c (host_detect_local_cpu): Use nehalem,
westmere, sandybridge, ivybridge, haswell, bonnell, silvermont
for cpu names.
* config/i386/i386-c.c (ix86_target_macros_internal): Replace
PROCESSOR_COREI7, PROCESSOR_COREI7_AVX, PROCESSOR_ATOM,
PROCESSOR_SLM with PROCESSOR_NEHALEM, PROCESSOR_SANDYBRIDGE,
PROCESSOR_BONNELL, PROCESSOR_SILVERMONT. Define
__nehalem/__nehalem__, __sandybridge/__sandybridge__,
__haswell/__haswell__, __tune_nehalem__, __tune_sandybridge__,
__tune_haswell__, __bonnell/__bonnell__,
__silvermont/__silvermont__, __tune_bonnell__,
__tune_silvermont__.
* config/i386/i386.c (m_COREI7): Renamed to ...
(m_NEHALEM): This.
(m_COREI7_AVX): Renamed to ...
(m_SANDYBRIDGE): This.
(m_ATOM): Renamed to ...
(m_BONNELL): This.
(m_SLM): Renamed to ...
(m_SILVERMONT): This.
(m_CORE_ALL): Updated.
(cpu_names): Add "nehalem", "westmere", "sandybridge",
"ivybridge", "haswell", "broadwell", "bonnell", "silvermont".
(PTA_CORE2): New.
(PTA_NEHALEM): Likewise.
(PTA_WESTMERE): Likewise.
(PTA_SANDYBRIDGE): Likewise.
(PTA_IVYBRIDGE): Likewise.
(PTA_HASWELL): Likewise.
(PTA_BROADWELL): Likewise.
(PTA_BONNELL): Likewise.
(PTA_SILVERMONT): Likewise.
(ix86_option_override_internal): Use new PTA_XXX. Add nehalem,
westmere, sandybridge, ivybridge, haswell, bonnell, silvermont.
(ix86_lea_outperforms): Updated.
(ix86_issue_rate): Likewise.
(ix86_adjust_cost): Likewise.
(ia32_multipass_dfa_lookahead): Likewise.
(do_reorder_for_imul): Likewise.
(swap_top_of_ready_list): Likewise.
(ix86_sched_reorder): Likewise.
(ix86_sched_init_global): Likewise.
(get_builtin_code_for_version): Likewise.
(processor_model): Replace M_INTEL_ATOM, M_INTEL_SLM with
M_INTEL_BONNELL, M_INTEL_SILVERMONT.
(arch_names_table): Updated.
* config/i386/i386.h (TARGET_COREI7): Removed.
(TARGET_COREI7_AVX): Likewise.
(TARGET_ATOM): Likewise.
(TARGET_SLM): Likewise.
(TARGET_NEHALEM): New.
(TARGET_SANDYBRIDGE): Likewise.
(TARGET_BONNELL): Likewise.
(TARGET_SILVERMONT): Likewise.
(target_cpu_default): Add TARGET_CPU_DEFAULT_core_avx2,
TARGET_CPU_DEFAULT_nehalem, TARGET_CPU_DEFAULT_westmere,
TARGET_CPU_DEFAULT_sandybridge, TARGET_CPU_DEFAULT_ivybridge,
TARGET_CPU_DEFAULT_broadwell, TARGET_CPU_DEFAULT_bonnell,
TARGET_CPU_DEFAULT_silvermont. Move TARGET_CPU_DEFAULT_haswell
before TARGET_CPU_DEFAULT_broadwell.
(processor_type): Replace PROCESSOR_COREI7, PROCESSOR_COREI7_AVX,
PROCESSOR_ATOM, PROCESSOR_SLM with PROCESSOR_NEHALEM,
PROCESSOR_SANDYBRIDGE, PROCESSOR_BONNELL, PROCESSOR_SILVERMONT.
* config/i386/i386.md (cpu): Replace corei7 with nehalem.
* config/i386/x86-tune.def: Updated.
* doc/invoke.texi: Replace corei7, corei7-avx, core-avx-i,
core-avx2, atom, slm with nehalem, sandybridge, ivybridge,
haswell, bonnel, silvermont. Add westmere.
libgcc/
* config/i386/cpuinfo.c (processor_subtypes): Replace INTEL_ATOM,
INTEL_SLM with INTEL_BONNELL, INTEL_SILVERMONT.
(get_intel_cpu): Updated.
Co-Authored-By: Tocar Ilya <ilya.tocar@intel.com>
From-SVN: r206178
2013-12-23 05:05:09 -08:00