gcc.git
10 years agoinput.c (diagnostic_file_cache_fini): Fix typo in comment.
Manuel López-Ibáñez [Fri, 15 Aug 2014 14:07:19 +0000 (14:07 +0000)]
input.c (diagnostic_file_cache_fini): Fix typo in comment.

2014-08-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* input.c (diagnostic_file_cache_fini): Fix typo in comment.

From-SVN: r214022

10 years agotree-ssa-structalias.c (readonly_id): Rename to string_id.
Richard Biener [Fri, 15 Aug 2014 12:54:28 +0000 (12:54 +0000)]
tree-ssa-structalias.c (readonly_id): Rename to string_id.

2014-08-15  Richard Biener  <rguenther@suse.de>

* tree-ssa-structalias.c (readonly_id): Rename to string_id.
(get_constraint_for_ssa_var): Remove dead code.
(get_constraint_for_1): Adjust.
(find_what_var_points_to): Likewise.
(init_base_vars): Likewise.  STRING_CSTs do not contain pointers.

From-SVN: r214020

10 years agogcc/
Ilya Tocar [Fri, 15 Aug 2014 12:47:41 +0000 (16:47 +0400)]
gcc/

PR target/61878
* config/i386/avx512fintrin.h (_mm512_mask_cmpge_epi32_mask): New.
(_mm512_mask_cmpge_epu32_mask): Ditto.
(_mm512_cmpge_epu32_mask): Ditto.
(_mm512_mask_cmpge_epi64_mask): Ditto.
(_mm512_cmpge_epi64_mask): Ditto.
(_mm512_mask_cmpge_epu64_mask): Ditto.
(_mm512_cmpge_epu64_mask): Ditto.
(_mm512_mask_cmple_epi32_mask): Ditto.
(_mm512_cmple_epi32_mask): Ditto.
(_mm512_mask_cmple_epu32_mask): Ditto.
(_mm512_cmple_epu32_mask): Ditto.
(_mm512_mask_cmple_epi64_mask): Ditto.
(_mm512_cmple_epi64_mask): Ditto.
(_mm512_mask_cmple_epu64_mask): Ditto.
(_mm512_cmple_epu64_mask): Ditto.
(_mm512_mask_cmplt_epi32_mask): Ditto.
(_mm512_cmplt_epi32_mask): Ditto.
(_mm512_mask_cmplt_epu32_mask): Ditto.
(_mm512_cmplt_epu32_mask): Ditto.
(_mm512_mask_cmplt_epi64_mask): Ditto.
(_mm512_cmplt_epi64_mask): Ditto.
(_mm512_mask_cmplt_epu64_mask): Ditto.
(_mm512_cmplt_epu64_mask): Ditto.
(_mm512_mask_cmpneq_epi32_mask): Ditto.
(_mm512_mask_cmpneq_epu32_mask): Ditto.
(_mm512_cmpneq_epu32_mask): Ditto.
(_mm512_mask_cmpneq_epi64_mask): Ditto.
(_mm512_cmpneq_epi64_mask): Ditto.
(_mm512_mask_cmpneq_epu64_mask): Ditto.
(_mm512_cmpneq_epu64_mask): Ditto.
(_mm512_castpd_ps): Ditto.
(_mm512_castpd_si512): Ditto.
(_mm512_castps_pd): Ditto.
(_mm512_castps_si512): Ditto.
(_mm512_castsi512_ps): Ditto.
(_mm512_castsi512_pd): Ditto.
(_mm512_castpd512_pd128): Ditto.
(_mm512_castps512_ps128): Ditto.
(_mm512_castsi512_si128): Ditto.
(_mm512_castpd512_pd256): Ditto.
(_mm512_castps512_ps256): Ditto.
(_mm512_castsi512_si256): Ditto.
(_mm512_castpd128_pd512): Ditto.
(_mm512_castps128_ps512): Ditto.
(_mm512_castsi128_si512): Ditto.
(_mm512_castpd256_pd512): Ditto.
(_mm512_castps256_ps512): Ditto.
(_mm512_castsi256_si512): Ditto.
(_mm512_cmpeq_epu32_mask): Ditto.
(_mm512_mask_cmpeq_epu32_mask): Ditto.
(_mm512_mask_cmpeq_epu64_mask): Ditto.
(_mm512_cmpeq_epu64_mask): Ditto.
(_mm512_cmpgt_epu32_mask): Ditto.
(_mm512_mask_cmpgt_epu32_mask): Ditto.
(_mm512_mask_cmpgt_epu64_mask): Ditto.
(_mm512_cmpgt_epu64_mask): Ditto.
* config/i386/i386-builtin-types.def: Add V16SF_FTYPE_V8SF,
V16SI_FTYPE_V8SI, V16SI_FTYPE_V4SI, V8DF_FTYPE_V2DF.
* config/i386/i386.c (enum ix86_builtins): Add
IX86_BUILTIN_SI512_SI256, IX86_BUILTIN_PD512_PD256,
IX86_BUILTIN_PS512_PS256, IX86_BUILTIN_SI512_SI,
IX86_BUILTIN_PD512_PD, IX86_BUILTIN_PS512_PS.
(bdesc_args): Add __builtin_ia32_si512_256si,
__builtin_ia32_ps512_256ps, __builtin_ia32_pd512_256pd,
__builtin_ia32_si512_si, __builtin_ia32_ps512_ps,
__builtin_ia32_pd512_pd.
(ix86_expand_args_builtin): Handle new FTYPEs.
* config/i386/sse.md (castmode): Add 512-bit modes.
(AVX512MODE2P): New.
(avx512f_<castmode><avxsizesuffix>_<castmode): New.
(avx512f_<castmode><avxsizesuffix>_256<castmode): Ditto.

gcc/testsuite/

PR target/61878
* gcc.target/i386/avx512f-typecast-1.c: New test.
* gcc.target/i386/avx512f-vpcmpequd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpequd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpequq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpequq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpged-1.c: Add new intrinsic.
* 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-vpcmpgtud-1.c: New test.
* gcc.target/i386/avx512f-vpcmpgtud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtuq-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.

From-SVN: r214019

10 years agoMAINTAINERS (Write After Approval): Add myself.
Ilya Verbin [Fri, 15 Aug 2014 12:33:03 +0000 (12:33 +0000)]
MAINTAINERS (Write After Approval): Add myself.

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r214017

10 years agofold-const.c (tree_swap_operands_p): Put all constants last...
Richard Biener [Fri, 15 Aug 2014 11:42:01 +0000 (11:42 +0000)]
fold-const.c (tree_swap_operands_p): Put all constants last...

2014-08-15  Richard Biener  <rguenther@suse.de>

* fold-const.c (tree_swap_operands_p): Put all constants
last, also strip sign-changing NOPs when considering further
canonicalization.  Canonicalize also when optimizing for size.

From-SVN: r214013

10 years agoMAINTAINERS (Write After Approval): Add myself.
Ilya Tocar [Fri, 15 Aug 2014 10:35:03 +0000 (14:35 +0400)]
MAINTAINERS (Write After Approval): Add myself.

         * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r214012

10 years agore PR fortran/62131 (OpenMP: Subobject of an allocatable array not allowed in OMP...
Jakub Jelinek [Fri, 15 Aug 2014 10:23:13 +0000 (12:23 +0200)]
re PR fortran/62131 (OpenMP: Subobject of an allocatable array not allowed in OMP ATOMIC)

PR fortran/62131
* openmp.c (resolve_omp_atomic): Only complain if code->expr1's attr
is allocatable, rather than whenever var->attr.allocatable.

* gfortran.dg/gomp/pr62131.f90: New test.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r214010

10 years ago[AArch64] Move one_match > zero_match case to just before simple_sequence.
Kyrylo Tkachov [Fri, 15 Aug 2014 09:02:27 +0000 (09:02 +0000)]
[AArch64] Move one_match > zero_match case to just before simple_sequence.

* config/aarch64/aarch64.c (aarch64_expand_mov_immediate): Move
one_match > zero_match case to just before simple_sequence.

From-SVN: r214008

10 years agodata-streamer.h (streamer_string_index, [...]): Remove.
Richard Biener [Fri, 15 Aug 2014 07:51:35 +0000 (07:51 +0000)]
data-streamer.h (streamer_string_index, [...]): Remove.

2014-08-15  Richard Biener  <rguenther@suse.de>

* data-streamer.h (streamer_string_index, string_for_index):
Remove.
* data-streamer-out.c (streamer_string_index): Make static.
* data-streamer-in.c (string_for_index): Likewise.
* lto-streamer-out.c (lto_output_location): Use bp_pack_string.
* lto-streamer-in.c (lto_input_location): Use bp_unpack_string.

From-SVN: r214007

10 years agore PR tree-optimization/62031 (Different results between O2 and O2 -fpredictive-commo...
Richard Biener [Fri, 15 Aug 2014 07:50:40 +0000 (07:50 +0000)]
re PR tree-optimization/62031 (Different results between O2 and O2 -fpredictive-commoning)

2014-08-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62031
* tree-data-ref.c (dr_analyze_indices): Do not set
DR_UNCONSTRAINED_BASE.
(dr_may_alias_p): All indirect accesses have to go the
formerly DR_UNCONSTRAINED_BASE path.
* tree-data-ref.h (struct indices): Remove
unconstrained_base member.
(DR_UNCONSTRAINED_BASE): Remove.

* gcc.dg/torture/pr62031.c: New testcase.

From-SVN: r214006

10 years agore PR fortran/62107 (libgomp.fortran/target2.f90 error while compiling for OpenMP...
Jakub Jelinek [Fri, 15 Aug 2014 07:41:06 +0000 (09:41 +0200)]
re PR fortran/62107 (libgomp.fortran/target2.f90 error while compiling for OpenMP 4.0 offload target)

PR fortran/62107
* trans-openmp.c (gfc_omp_finish_clause): Handle scalar pointer
or allocatable passed by reference.
(gfc_trans_omp_clauses) <case OMP_LIST_MAP>: Likewise.

From-SVN: r214003

10 years agore PR middle-end/62092 (libgomp.c++/target-2.C FAIL while compiling for OpenMP 4...
Jakub Jelinek [Fri, 15 Aug 2014 07:40:03 +0000 (09:40 +0200)]
re PR middle-end/62092 (libgomp.c++/target-2.C FAIL while compiling for OpenMP 4.0 offload target)

PR middle-end/62092
* gimplify.c (gimplify_adjust_omp_clauses_1): Don't remove
OMP_CLAUSE_SHARED for global vars if the global var is mentioned
in OMP_CLAUSE_MAP in some outer target region.

From-SVN: r214001

10 years agorl78-real.md (addqi3_real): Allow adding global variables to the accumulator.
DJ Delorie [Fri, 15 Aug 2014 02:52:55 +0000 (22:52 -0400)]
rl78-real.md (addqi3_real): Allow adding global variables to the accumulator.

* config/rl78/rl78-real.md (addqi3_real): Allow adding global
variables to the accumulator.

From-SVN: r213999

10 years agopredicates.md (rl78_near_mem_operand): New.
DJ Delorie [Fri, 15 Aug 2014 02:48:03 +0000 (22:48 -0400)]
predicates.md (rl78_near_mem_operand): New.

* config/rl78/predicates.md (rl78_near_mem_operand): New.
* config/rl78/rl78-virt.md (movqi_virt_mm, movqi_virt)
(movhi_virt_mm): Split out near mem-mem moves to avoid problems
with far-far moves.

From-SVN: r213998

10 years agotree-ssa-loop-ivopts.c (ivopts_data): New field name_expansion_cache.
Bin Cheng [Fri, 15 Aug 2014 02:42:33 +0000 (02:42 +0000)]
tree-ssa-loop-ivopts.c (ivopts_data): New field name_expansion_cache.

* tree-ssa-loop-ivopts.c (ivopts_data): New field
name_expansion_cache.
(tree_ssa_iv_optimize_init): Initialize name_expansion_cache.
(tree_ssa_iv_optimize_finalize): Free name_expansion_cache.
(strip_wrap_conserving_type_conversions, expr_equal_p): Delete.
(difference_cannot_overflow_p): New parameter.  Use affine
expansion for equality check.
(iv_elimination_compare_lt): Pass new argument.

testsuite/ChangeLog
* gcc.dg/tree-ssa/ivopts-lt-2.c: New test.

From-SVN: r213997

10 years agorl78-expand.md (umulqihi3): Disable for G10.
DJ Delorie [Fri, 15 Aug 2014 02:30:22 +0000 (22:30 -0400)]
rl78-expand.md (umulqihi3): Disable for G10.

* config/rl78/rl78-expand.md (umulqihi3): Disable for G10.
* config/rl78/rl78-virt.md (umulhi3_shift_virt): Likewise.
(umulqihi3_virt): Likewise.
* config/rl78/rl78-real.md (umulhi3_shift_real): Likewise.
(umulqihi3_real): Likewise.

From-SVN: r213996

10 years ago* config/rl78/rl78-virt.md (movhi_virt): Allow const->far moves.
DJ Delorie [Fri, 15 Aug 2014 00:23:38 +0000 (20:23 -0400)]
* config/rl78/rl78-virt.md (movhi_virt): Allow const->far moves.

From-SVN: r213995

10 years agoDaily bump.
GCC Administrator [Fri, 15 Aug 2014 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213994

10 years agore PR tree-optimization/62091 (ice in before_dom_children)
Jan Hubicka [Thu, 14 Aug 2014 23:36:22 +0000 (01:36 +0200)]
re PR tree-optimization/62091 (ice in before_dom_children)

PR tree-optimization/62091
* g++.dg/ipa/devirt-38.C: New testcase.
* tree-ssa-alias.c (walk_aliased_vdefs_1): Do not clear
function_entry_reached.
(walk_aliased_vdefs): Clear it here.
* ipa-devirt.c (check_stmt_for_type_change): Handle static storage.

From-SVN: r213991

10 years agoipa-utils.h (compare_virtual_tables): Declare.
Jan Hubicka [Thu, 14 Aug 2014 23:30:46 +0000 (01:30 +0200)]
ipa-utils.h (compare_virtual_tables): Declare.

* ipa-utils.h (compare_virtual_tables): Declare.
* ipa-devirt.c (odr_subtypes_equivalent_p): New function

* lto-symtab.c (lto_varpool_replace_node): Call compare_virtual_tables.

From-SVN: r213990

10 years agotypeck.c (composite_pointer_type, [...]): When a pedwarn is suppressed under SFINAE...
Paolo Carlini [Thu, 14 Aug 2014 20:12:32 +0000 (20:12 +0000)]
typeck.c (composite_pointer_type, [...]): When a pedwarn is suppressed under SFINAE, return error_mark_node.

2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

* typeck.c (composite_pointer_type, cxx_sizeof_or_alignof_type,
cp_build_array_ref, cp_build_function_call_vec): When a
pedwarn is suppressed under SFINAE, return error_mark_node.

* typeck.c (cxx_sizeof_or_alignof_type): Fix complain &
tf_warning_or_error, where complain is a bool, glitch.

From-SVN: r213983

10 years agoDR 458
Marek Polacek [Thu, 14 Aug 2014 18:56:10 +0000 (18:56 +0000)]
DR 458

DR 458
* ginclude/stdatomic.h (__atomic_type_lock_free): Remove.
(ATOMIC_*_LOCK_FREE): Map to __GCC_ATOMIC_*_LOCK_FREE.

* gcc.dg/c11-stdatomic-2.c: New test.

From-SVN: r213981

10 years agore PR fortran/62106 (Adding a scalar variable to an array constructor gives wrong...
Thomas Koenig [Thu, 14 Aug 2014 18:52:12 +0000 (18:52 +0000)]
re PR fortran/62106 (Adding a scalar variable to an array constructor gives wrong result)

2014-08-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/62106
* gfortran.h (symbol_attribute):  Add fe_temp flag.
* frontend-passes.c (is_fe_temp):  New function.
(create_var):  Don't add a temporary for an already
created variable or for a constant.
(combine_ARRAY_constructor):  Remove special handling
for constants.

2014-08-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/62106
* gfortran.dg/array_constructor_49.f90:  New test.

From-SVN: r213980

10 years agogfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.
Tobias Burnus [Thu, 14 Aug 2014 18:39:15 +0000 (20:39 +0200)]
gfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.

gcc/fortran/
2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.
        (_gfortran_caf_register): Update for locking/critical.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
        * resolve.c (resolve_critical): New.
        (gfc_resolve_code): Call it.
        * trans-decl.c (gfor_fndecl_caf_critical,
        gfor_fndecl_caf_end_critical): Remove.
        (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.
        (gfc_build_builtin_function_decls): Remove critical,
        assign locking declarations.
        (generate_coarray_sym_init): Handle locking and
        critical variables.
        * trans-stmt.c (gfc_trans_critical): Add calls to
        lock/unlock libcaf functions.
        * trans.h (gfc_coarray_type): Update locking, add
        critical enum values.
        (gfor_fndecl_caf_critical, gfor_fndecl_caf_end_critical): Remove.
        (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.

libgfortran/
2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * caf/libcaf.h (caf_register_t): Update for critical.
        (_gfortran_caf_critical, _gfortran_caf_end_critical): Remove.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
        * caf/single.c (_gfortran_caf_register): Handle locking
        variables.
        (_gfortran_caf_sendget): Re-name args for consistency.
        (_gfortran_caf_lock, _gfortran_caf_unlock): Add.

From-SVN: r213979

10 years agogfortran.texi (Coarray Programming): Add first ABI documentation.
Tobias Burnus [Thu, 14 Aug 2014 18:35:01 +0000 (20:35 +0200)]
gfortran.texi (Coarray Programming): Add first ABI documentation.

2014-08-14  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (Coarray Programming): Add first ABI
        documentation.

From-SVN: r213978

10 years agoFix ChangeLog entry
Tom de Vries [Thu, 14 Aug 2014 17:56:18 +0000 (17:56 +0000)]
Fix ChangeLog entry

From-SVN: r213976

10 years agoRemove duplicate declaration of mem_attrs_eq_p
Tom de Vries [Thu, 14 Aug 2014 17:41:44 +0000 (17:41 +0000)]
Remove duplicate declaration of mem_attrs_eq_p

2014-08-14  Tom de Vries  <tom@codesourcery.com>

* emit-rtl.h (mem_attrs_eq_p): Remove duplicate declaration.

From-SVN: r213975

10 years agore PR c++/62101 (deleted definitions of friend functions are rejected)
Ville Voutilainen [Thu, 14 Aug 2014 17:11:26 +0000 (20:11 +0300)]
re PR c++/62101 (deleted definitions of friend functions are rejected)

PR c++/62101
* decl.c (grokdeclarator): Move the check for friend initializers..
* decl2.c (grokfield) ..here. Postpone early return for friends
until after the initializer check.

From-SVN: r213974

10 years agore PR c++/54377 (Consider default arguments in "wrong number of template arguments...
Paolo Carlini [Thu, 14 Aug 2014 17:00:45 +0000 (17:00 +0000)]
re PR c++/54377 (Consider default arguments in "wrong number of template arguments" diagnostic)

/cp
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54377
* pt.c (coerce_template_parms): Improve error message vs default
arguments.

/testsuite
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54377
* g++.dg/template/pr54377.C: New.
* g++.dg/cpp0x/pr54377.C: Likewise.
* g++.dg/cpp0x/alias-decl-2.C: Adjust.
* g++.dg/cpp0x/pr51226.C: Likewise.
* g++.dg/cpp0x/variadic2.C: Likewise.
* g++.dg/parse/too-many-tmpl-args1.C: Likewise.
* g++.dg/template/dtor3.C: Likewise.
* g++.dg/template/qualttp4.C: Likewise.
* g++.dg/template/spec28.C: Likewise.
* g++.old-deja/g++.brendan/crash8.C: Likewise.
* g++.old-deja/g++.pt/ttp7.C: Likewise.

From-SVN: r213973

10 years agore PR fortran/62076 (testsuite failure in udr2.90)
Jakub Jelinek [Thu, 14 Aug 2014 16:39:07 +0000 (18:39 +0200)]
re PR fortran/62076 (testsuite failure in udr2.90)

PR fortran/62076
* openmp.c (gfc_match_omp_clauses): When failed to match
operator name, defined op name or name, set buffer to
empty string.  Don't call gfc_find_omp_udr if buffer is empty
string.
(gfc_match_omp_declare_reduction): Call gfc_undo_symbols ()
before calling gfc_free_omp_udr.

From-SVN: r213971

10 years agoFix if-conversion pass for dead type-unsafe code
Tom de Vries [Thu, 14 Aug 2014 16:13:59 +0000 (16:13 +0000)]
Fix if-conversion pass for dead type-unsafe code

2014-08-14  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/62004
PR rtl-optimization/62030
* ifcvt.c (rtx_interchangeable_p): New function.
(noce_try_move, noce_process_if_block): Use rtx_interchangeable_p.
* emit-rtl.h (mem_attrs_eq_p): Declare.

* gcc.dg/pr62004.c: New test.
* gcc.dg/pr62030.c: Same.
* gcc.target/mips/pr62030-octeon.c: Same.

From-SVN: r213970

10 years agographite-scop-detection.c: Add inclusion of cp-tree.h.
Roman Gareev [Thu, 14 Aug 2014 14:53:59 +0000 (14:53 +0000)]
graphite-scop-detection.c: Add inclusion of cp-tree.h.

[gcc/]

* graphite-scop-detection.c:
Add inclusion of cp-tree.h.
(graphite_can_represent_scev): Disables the handling of SSA_NAME nodes
in case they are pointers to object types

From-SVN: r213969

10 years agoBASE-VER: Change to 5.0.0
Richard Biener [Thu, 14 Aug 2014 13:58:50 +0000 (13:58 +0000)]
BASE-VER: Change to 5.0.0

2014-08-14  Richard Biener  <rguenther@suse.de>

* BASE-VER: Change to 5.0.0

From-SVN: r213968

10 years agocrontab: Change trunk snapshots from 4.10 to 5.
Richard Biener [Thu, 14 Aug 2014 13:58:16 +0000 (13:58 +0000)]
crontab: Change trunk snapshots from 4.10 to 5.

2014-08-14  Richard Biener  <rguenther@suse.de>

* crontab: Change trunk snapshots from 4.10 to 5.

From-SVN: r213967

10 years agosse.md (define_mode_attr avx512): New.
Alexander Ivchenko [Thu, 14 Aug 2014 13:39:50 +0000 (13:39 +0000)]
sse.md (define_mode_attr avx512): New.

gcc/
        * config/i386/sse.md (define_mode_attr avx512): New.
(define_mode_attr sse2_avx_avx512f): Allow V8HI, V16HI, V32HI, V2DI,
V4DI modes.
(define_mode_attr sse2_avx2): Allow V64QI, V32HI, V4TI modes.
(define_mode_attr ssse3_avx2): Ditto.
(define_mode_attr sse4_1_avx2): Allow V64QI, V32HI, V8DI modes.
(define_mode_attr avx2_avx512bw): New.
(define_mode_attr ssedoublemodelower): New.
(define_mode_attr ssedoublemode): Allow V8SF, V8SI, V4DI, V4DF, V4SI,
V32HI, V64QI modes.
(define_mode_attr ssebytemode): Allow V8DI modes.
(define_mode_attr sseinsnmode): Allow V4TI, V32HI, V64QI modes.
(define_mode_attr sseintvecmodelower): Allow V8DF, V4TI modes.
(define_mode_attr ssePSmode2): New.
(define_mode_attr ssescalarsize): Allow V64QI, V32QI, V16QI, V8HI,
V16HI, V32HI modes.
(define_mode_attr dbpsadbwmode): New.
(define_mode_attr bcstscalarsuff): Allow V64QI, V32QI, V16QI, V32HI,
V16HI, V8HI, V8SI, V4SI, V4DI, V2DI, V8SF, V4SF, V4DF, V2DF modes.
(vi8_sse4_1_avx2_avx512): New.
(define_insn <sse4_1_avx2>_movntdqa): Use <vi8_sse4_1_avx2_avx512>
mode attribute.
(define_mode_attr blendbits): Move before its immediate use.

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>
From-SVN: r213966

10 years agosse.md: Allow V64QI, V32QI, V32HI, V4HI modes.
Alexander Ivchenko [Thu, 14 Aug 2014 13:30:51 +0000 (13:30 +0000)]
sse.md: Allow V64QI, V32QI, V32HI, V4HI modes.

gcc/
* config/i386/sse.md: Allow V64QI, V32QI, V32HI, V4HI modes.
* config/i386/subst.md
(define_mode_iterator SUBST_V): Update.
(define_mode_iterator SUBST_A): Ditto.
(define_subst_attr "mask_operand7"): New.
(define_subst_attr "mask_operand10"): New.
(define_subst_attr "mask_operand_arg34") : New.
(define_subst_attr "mask_expand_op3"): New.
(define_subst_attr "mask_mode512bit_condition"): Handle TARGET_AVX512VL.
(define_subst_attr "sd_mask_mode512bit_condition"): Ditto.
(define_subst_attr "mask_avx512vl_condition"): New.
(define_subst_attr "round_mask_operand4"): Ditto.
(define_subst_attr "round_mask_scalar_op3"): Delete.
(define_subst_attr "round_mask_op4"): New.
(define_subst_attr "round_mode512bit_condition"): Allow V8DImode,
V16SImode.
(define_subst_attr "round_modev8sf_condition"): New.
(define_subst_attr "round_modev4sf_condition"): GET_MODE instead of
<MODE>mode.
(define_subst_attr "round_saeonly_mask_operand4"): New.
(define_subst_attr "round_saeonly_mask_op4"): New.
(define_subst_attr "round_saeonly_mode512bit_condition"): Allow
V8DImode, V16SImode.
(define_subst_attr "round_saeonly_modev8sf_condition"): New.
(define_subst_attr "mask_expand4_name" "mask_expand4"): New.
(define_subst_attr "mask_expand4_args"): New.
(define_subst "mask_expand4"): New.

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>
From-SVN: r213965

10 years agoi386.md (define_attr "isa"): Add avx512bw,noavx512bw.
Alexander Ivchenko [Thu, 14 Aug 2014 13:25:36 +0000 (13:25 +0000)]
i386.md (define_attr "isa"): Add avx512bw,noavx512bw.

gcc/
        * config/i386/i386.md
(define_attr "isa"): Add avx512bw,noavx512bw.
(define_attr "enabled"): Ditto.
(define_split): Add 32/64-bit mask logic.
(define_insn "*k<logic>qi"): New.
(define_insn "*k<logic>hi"): New.
(define_insn "*anddi_1"): Add mask version.
(define_insn "*andsi_1"): Ditto.
(define_insn "*<code><mode>_1"): Ditto.
(define_insn "*<code>hi_1"): Ditto.
(define_insn "kxnor<mode>"): New.
(define_insn "kunpcksi"): New.
(define_insn "kunpckdi"): New.
(define_insn "*one_cmpl<mode>2_1"): Add mask version.
(define_insn "*one_cmplhi2_1"): 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>
From-SVN: r213964

10 years agoi386.c (ix86_preferred_simd_mode): Allow V64QImode and V32HImode.
Alexander Ivchenko [Thu, 14 Aug 2014 13:20:25 +0000 (13:20 +0000)]
i386.c (ix86_preferred_simd_mode): Allow V64QImode and V32HImode.

gcc/
* config/i386/i386.c (ix86_preferred_simd_mode): Allow V64QImode and
V32HImode.

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>
From-SVN: r213963

10 years agoi386.c (print_reg): Сorrectly print 64-bit mask registers.
Alexander Ivchenko [Thu, 14 Aug 2014 13:18:42 +0000 (13:18 +0000)]
i386.c (print_reg): Сorrectly print 64-bit mask registers.

gcc/
* config/i386/i386.c (print_reg): Сorrectly print 64-bit mask
registers.
(inline_secondary_memory_needed): Allow 64 bit wide mask registers.
(ix86_hard_regno_mode_ok): Allow 32/64-bit mask registers and
xmm/ymm16+ when availble.
* config/i386/i386.h
(HARD_REGNO_NREGS): Add mask regs.
(VALID_AVX512F_REG_MODE): Ditto.
(VALID_AVX512F_REG_MODE) : Define.
(VALID_MASK_AVX512BW_MODE): Ditto.
(reg_class) (MASK_REG_P(X)): Define.
* config/i386/i386.md: Do not split long moves with mask register,
use kmovb if avx512bw is availible.
(movdi_internal): Handle mask registers.

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>
From-SVN: r213962

10 years agore PR tree-optimization/62081 (ICE: in fix_loop_structure, at loop-init.c:208 with...
Richard Biener [Thu, 14 Aug 2014 13:14:24 +0000 (13:14 +0000)]
re PR tree-optimization/62081 (ICE: in fix_loop_structure, at loop-init.c:208 with -fno-tree-ch -fno-tree-cselim -fno-tree-dominator-opts -fno-tree-reassoc -fno-tree-sink)

2014-08-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62081
* tree-ssa-loop.c (pass_fix_loops): New pass.
(pass_tree_loop::gate):  Do not fixup loops here.
* tree-pass.h (make_pass_fix_loops): Declare.
* passes.def: Schedule pass_fix_loops before GIMPLE loop passes.

From-SVN: r213961

10 years agore PR lto/62067 (lto-lang.c:549: too many calls to va_end on some code paths ?)
Richard Biener [Thu, 14 Aug 2014 13:13:41 +0000 (13:13 +0000)]
re PR lto/62067 (lto-lang.c:549: too many calls to va_end on some code paths ?)

2014-08-14  Richard Biener  <rguenther@suse.de>

PR lto/62067
* lto-lang.c (def_fn_type): Fix error handling wrt va_end.

From-SVN: r213960

10 years agorequirements: Remove empty directory.
Matthias Klose [Thu, 14 Aug 2014 11:37:20 +0000 (11:37 +0000)]
requirements: Remove empty directory.

2014-08-14  Matthias Klose  <doko@ubuntu.com>

        * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
        Remove empty directory.

From-SVN: r213958

10 years agotree.c (type_hash_lookup, [...]): Merge into ...
Richard Biener [Thu, 14 Aug 2014 11:15:41 +0000 (11:15 +0000)]
tree.c (type_hash_lookup, [...]): Merge into ...

2014-08-14  Richard Biener  <rguenther@suse.de>

* tree.c (type_hash_lookup, type_hash_add): Merge into ...
(type_hash_canon): ... this and avoid 2nd lookup for the add.

From-SVN: r213956

10 years agoparser.c (cp_parser_init_declarator): Remove redundant check of decl_specifiers-...
Paolo Carlini [Thu, 14 Aug 2014 09:15:11 +0000 (09:15 +0000)]
parser.c (cp_parser_init_declarator): Remove redundant check of decl_specifiers->type.

/gcc/cp
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_init_declarator): Remove redundant check of
decl_specifiers->type.

/gcc/testsuite
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/alias-decl-4.C: Adjust for parser change.
* g++.dg/cpp0x/decltype2.C: Likewise.
* g++.dg/cpp0x/decltype3.C: Likewise.
* g++.dg/cpp0x/pr60249.C: Likewise.
* g++.dg/cpp0x/variadic-ex10.C: Likewise.
* g++.dg/cpp0x/variadic-ex14.C: Likewise.
* g++.dg/cpp0x/variadic2.C: Likewise.
* g++.dg/cpp0x/variadic74.C: Likewise.
* g++.dg/parse/error10.C: Likewise.
* g++.dg/parse/error15.C: Likewise.
* g++.dg/parse/error2.C: Likewise.
* g++.dg/template/crash106.C: Likewise.
* g++.dg/template/crash89.C: Likewise.
* g++.dg/template/nontype7.C: Likewise.
* g++.dg/template/void3.C: Likewise.
* g++.dg/template/void7.C: Likewise.

/libstdc++-v3
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/26_numerics/random/linear_congruential_engine/
requirements/non_uint_neg.cc: Adjust for parser change.
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
requirements/non_uint_neg.cc: Likewise.

From-SVN: r213952

10 years agore PR middle-end/62090 (ice in compute_may_aliases)
Richard Biener [Thu, 14 Aug 2014 09:02:18 +0000 (09:02 +0000)]
re PR middle-end/62090 (ice in compute_may_aliases)

2014-08-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62090
* builtins.c (fold_builtin_sprintf): Move to gimple-fold.c.
(fold_builtin_2): Do not fold sprintf.
(fold_builtin_3): Likewise.
* gimple-fold.c (gimple_fold_builtin_sprintf): New function
moved from builtins.c.
(gimple_fold_builtin): Fold sprintf.

* gcc.dg/pr62090.c: New testcase.

From-SVN: r213951

10 years agore PR tree-optimization/62079 (ICE: in calc_dfs_tree, at dominance.c:401 with -fnon...
Richard Biener [Thu, 14 Aug 2014 08:56:49 +0000 (08:56 +0000)]
re PR tree-optimization/62079 (ICE: in calc_dfs_tree, at dominance.c:401 with -fnon-call-exceptions)

2014-08-14  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/62079
* recog.c (peephole2_optimize): If peep2_do_cleanup_cfg
run cleanup_cfg.

* g++.dg/pr62079.C: New testcase.

From-SVN: r213950

10 years agoipa-devirt.c (get_polymorphic_call_info): Use fndecl instead of current_function_decl.
Ilya Enkovich [Thu, 14 Aug 2014 08:46:44 +0000 (08:46 +0000)]
ipa-devirt.c (get_polymorphic_call_info): Use fndecl instead of current_function_decl.

gcc/
* ipa-devirt.c (get_polymorphic_call_info): Use fndecl instead of
current_function_decl.

From-SVN: r213947

10 years agocgraph.c (cgraph_node::function_symbol): Fix wrong cgraph_function_node to cgraph_nod...
Ilya Enkovich [Thu, 14 Aug 2014 08:45:45 +0000 (08:45 +0000)]
cgraph.c (cgraph_node::function_symbol): Fix wrong cgraph_function_node to cgraph_node::function_symbol refactoring.

gcc/
* cgraph.c (cgraph_node::function_symbol): Fix wrong
cgraph_function_node to cgraph_node::function_symbol
refactoring.

From-SVN: r213946

10 years agoarm.c (arm_option_override): Set max_insns_skipped to MAX_INSN_PER_IT_BLOCK when...
Zhenqiang Chen [Thu, 14 Aug 2014 04:47:43 +0000 (04:47 +0000)]
arm.c (arm_option_override): Set max_insns_skipped to MAX_INSN_PER_IT_BLOCK when optimize_size for THUMB2.

ChangeLog:
2014-08-14  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* config/arm/arm.c (arm_option_override): Set max_insns_skipped
to MAX_INSN_PER_IT_BLOCK when optimize_size for THUMB2.

testsuite/ChangeLog:
2014-08-14  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* gcc.target/arm/max-insns-skipped.c: New test.

From-SVN: r213939

10 years agoaddrtmp.c: Add bind_pic_locally option.
Bin Cheng [Thu, 14 Aug 2014 02:10:05 +0000 (02:10 +0000)]
addrtmp.c: Add bind_pic_locally option.

testcases
* c-c++-common/addrtmp.c: Add bind_pic_locally option.

From-SVN: r213937

10 years agoDaily bump.
GCC Administrator [Thu, 14 Aug 2014 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213936

10 years agocompiler, runtime: Fix unexpected GC interfering with closure passing.
Ian Lance Taylor [Wed, 13 Aug 2014 22:31:44 +0000 (22:31 +0000)]
compiler, runtime: Fix unexpected GC interfering with closure passing.

The Go frontend passes closures through to functions using the
functions __go_set_closure and __go_get_closure.  The
expectation is that there are no function calls between
set_closure and get_closure.  However, it turns out that there
can be function calls if some of the function arguments
require type conversion to an interface type.  Converting to
an interface type can allocate memory, and that can in turn
trigger a garbage collection, and that can in turn call pool
cleanup functions that may call __go_set_closure.  So the
called function can see the wrong closure value, which is bad.

This patch fixes the problem in two different ways.  First, we
move all type conversions in function arguments into temporary
variables so that they can not appear before the call to
__go_set_closure.  (This required shifting the flatten phase
after the simplify_thunk phase, since the latter expects to
work with unconverted argument types.)  Second, we fix the
memory allocation function to preserve the closure value
across any possible garbage collection.

A test case is the libgo database/sql check run with the
environment variable GOGC set to 1.

From-SVN: r213932

10 years agocrtstuff.c: Undef caddr_t.
Steve Ellcey [Wed, 13 Aug 2014 22:23:16 +0000 (22:23 +0000)]
crtstuff.c: Undef caddr_t.

2014-08-13  Steve Ellcey  <sellcey@mips.com>

* crtstuff.c: Undef caddr_t.

From-SVN: r213931

10 years agore PR libstdc++/61841 (broken std::thread on Hurd)
Jonathan Wakely [Wed, 13 Aug 2014 18:40:10 +0000 (19:40 +0100)]
re PR libstdc++/61841 (broken std::thread on Hurd)

PR libstdc++/61841
* include/std/thread (thread::_M_start_thread): Declare new overload.
(thread::thread<_Callable, _Args...>): Call new overload with an
explicit reference to pthread_create.
* src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
* config/abi/pre/gnu.ver: Export new function.

From-SVN: r213922

10 years agocall.c (build_x_va_arg): Support passing non-POD through ....
Jason Merrill [Wed, 13 Aug 2014 18:25:06 +0000 (14:25 -0400)]
call.c (build_x_va_arg): Support passing non-POD through ....

* call.c (build_x_va_arg): Support passing non-POD through ....
(convert_arg_to_ellipsis): Likewise.

From-SVN: r213921

10 years ago9drpc.adb: Fix a typo
Sylvestre Ledru [Wed, 13 Aug 2014 16:59:05 +0000 (16:59 +0000)]
9drpc.adb: Fix a typo

2014-08-13  Sylvestre Ledru  <sylvestre@debian.org>

        * 9drpc.adb: Fix a typo
        * s-interr.ads: Likewise
        * s-taskin.ads: Likewise
        * s-traces.ads: Likewise
        * sysdep.c: Likewise

From-SVN: r213917

10 years agoFix the date ...
Sylvestre Ledru [Wed, 13 Aug 2014 16:56:15 +0000 (16:56 +0000)]
Fix the date ...

From-SVN: r213916

10 years agoprofiler_hash_func.h: Fix a comment typo
Sylvestre Ledru [Wed, 13 Aug 2014 16:28:39 +0000 (16:28 +0000)]
profiler_hash_func.h: Fix a comment typo

2014-08-12  Sylvestre Ledru  <sylvestre@debian.org>

        * include/profile/impl/profiler_hash_func.h: Fix a comment typo

From-SVN: r213914

10 years agoRemove redundant '@' to avoid compiling warning
Chen Gang [Wed, 13 Aug 2014 16:00:44 +0000 (16:00 +0000)]
Remove redundant '@' to avoid compiling warning

2014-08-13  Chen Gang  gang.chen.5i5j@gmail.com

* microblaze/microblaze.md: Remove redundant '@' to avoid compiling
warning.

From-SVN: r213913

10 years agodemangler-fuzzer.c: New file.
Gary Benson [Wed, 13 Aug 2014 15:56:38 +0000 (15:56 +0000)]
demangler-fuzzer.c: New file.

libiberty/
* testsuite/demangler-fuzzer.c: New file.
* testsuite/Makefile.in (fuzz-demangler): New rule.
(demangler-fuzzer): Likewise.
(mostlyclean): Clean up demangler fuzzer.

From-SVN: r213912

10 years agopt.c (lookup_template_variable): Make dependent variable templates have unknown type.
Andrew Sutton [Wed, 13 Aug 2014 14:16:48 +0000 (14:16 +0000)]
pt.c (lookup_template_variable): Make dependent variable templates have unknown type.

2014-08-13  Andrew Sutton  <andrew.n.sutton@gmail.com>

        * pt.c (lookup_template_variable): Make dependent variable templates
        have unknown type.

From-SVN: r213910

10 years ago2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Wed, 13 Aug 2014 11:56:45 +0000 (11:56 +0000)]
2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix thinko in the last commit.

From-SVN: r213908

10 years agore PR libstdc++/62118 (cases under libstdc++-v3/testsuite/ext/ failed on aarch64...
Paolo Carlini [Wed, 13 Aug 2014 11:24:35 +0000 (11:24 +0000)]
re PR libstdc++/62118 (cases under libstdc++-v3/testsuite/ext/ failed on aarch64/arm)

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/62118
* include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.

From-SVN: r213906

10 years agopr35356-2.c: Update according to the ISL code generator.
Roman Gareev [Wed, 13 Aug 2014 11:10:25 +0000 (11:10 +0000)]
pr35356-2.c: Update according to the ISL code generator.

[gcc/testsuite]

* gcc.dg/graphite/pr35356-2.c: Update according to the ISL code
generator.

From-SVN: r213905

10 years agoparser.c (cp_parser_elaborated_type_specifier): Handle specially cp_parser_template_i...
Paolo Carlini [Wed, 13 Aug 2014 08:47:40 +0000 (08:47 +0000)]
parser.c (cp_parser_elaborated_type_specifier): Handle specially cp_parser_template_id returning a BASELINK.

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_elaborated_type_specifier): Handle
specially cp_parser_template_id returning a BASELINK.

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_diagnose_invalid_type_name,
cp_parser_make_typename_type): Remove scope parameter.
(cp_parser_parse_and_diagnose_invalid_type_name,
cp_parser_elaborated_type_specifier): Adjust calls.

From-SVN: r213897

10 years agoDaily bump.
GCC Administrator [Wed, 13 Aug 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213896

10 years agore PR target/62025 (Miscompilation of openssl sha512.c)
Jakub Jelinek [Tue, 12 Aug 2014 21:24:40 +0000 (23:24 +0200)]
re PR target/62025 (Miscompilation of openssl sha512.c)

PR target/62025
* sched-deps.c (find_inc): Check if inc_insn doesn't clobber
any registers that are used in mem_insn.

From-SVN: r213887

10 years agosocket.c: For RTEMS, use correct prototype of gethostbyname_r().
Joel Sherrill [Tue, 12 Aug 2014 19:49:26 +0000 (19:49 +0000)]
socket.c: For RTEMS, use correct prototype of gethostbyname_r().

2014-08-12  Joel Sherrill <joel.sherrill@oarcorp.com>

* socket.c: For RTEMS, use correct prototype of gethostbyname_r().
* gsocket.h Add include of <unistd.h> on RTEMS.

From-SVN: r213884

10 years agoMakefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.
Joel Sherrill [Tue, 12 Aug 2014 19:47:09 +0000 (19:47 +0000)]
Makefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.

2014-08-12  Joel Sherrill <joel.sherrill@oarcorp.com>

* Makefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.

From-SVN: r213880

10 years agoc-parser.c (c_parser_postfix_expression): Add pedwarn.
Marek Polacek [Tue, 12 Aug 2014 18:53:33 +0000 (18:53 +0000)]
c-parser.c (c_parser_postfix_expression): Add pedwarn.

* c-parser.c (c_parser_postfix_expression) <case RID_FUNCTION_NAME>:
Add pedwarn.
(c_parser_postfix_expression) <case RID_PRETTY_FUNCTION_NAME>:
Likewise.
(c_parser_postfix_expression) <case RID_C99_FUNCTION_NAME>: Likewise.

* gcc.dg/concat.c: Add dg-options.
* gcc.dg/func-outside-2.c: Add __extension__.
* gcc.dg/pr19967.c: Use -std=c99.
* gcc.dg/pr22458-1.c: Add dg-options.
* gcc.dg/pr33676.c: Add dg-options.
* gcc.dg/gnu-predef-1.c: New test.
* gcc.dg/c90-func-1.c: New test.
* gcc.dg/c90-func-2.c: New test.
* gcc.dg/c90-func-2.h: New test.

From-SVN: r213875

10 years agoReject virt-specifiers on friends and member templates
Ville Voutilainen [Tue, 12 Aug 2014 17:06:11 +0000 (20:06 +0300)]
Reject virt-specifiers on friends and member templates

Reject virt-specifiers on friends and member templates
* friend.c (do_friend): Diagnose virt-specifiers.
* pt.c (push_template_decl_real): Diagnose virt-specifiers.

From-SVN: r213874

10 years ago* include/bits/basic_string.h (getline): Declare inline.
Jonathan Wakely [Tue, 12 Aug 2014 15:48:23 +0000 (16:48 +0100)]
* include/bits/basic_string.h (getline): Declare inline.

From-SVN: r213873

10 years agomips.h (ASM_SPEC): Pass float options to assembler.
Steve Ellcey [Tue, 12 Aug 2014 15:39:04 +0000 (15:39 +0000)]
mips.h (ASM_SPEC): Pass float options to assembler.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips.h (ASM_SPEC): Pass float options to assembler.

From-SVN: r213872

10 years agomips16.S: Skip when __mips_soft_float is defined.
Steve Ellcey [Tue, 12 Aug 2014 15:28:41 +0000 (15:28 +0000)]
mips16.S: Skip when __mips_soft_float is defined.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips16.S:  Skip when __mips_soft_float is defined.

From-SVN: r213870

10 years agobasic_string.h (getline): Qualify call to prevent ADL and add overloads for rvalue...
Jonathan Wakely [Tue, 12 Aug 2014 15:19:53 +0000 (16:19 +0100)]
basic_string.h (getline): Qualify call to prevent ADL and add overloads for rvalue streams.

* include/bits/basic_string.h (getline): Qualify call to prevent ADL
and add overloads for rvalue streams.
* testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
New.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
New.

From-SVN: r213869

10 years agot-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.
Steve Ellcey [Tue, 12 Aug 2014 15:10:42 +0000 (15:10 +0000)]
t-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/t-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.
(MULTILIB_DIRNAMES): Ditto.
* config/mips/t-mti-elf (MULTILIB_OPTIONS): Ditto.
* config/mips/t-mti-elf (MULTILIB_EXCEPTIONS): Ditto.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Ditto.
* config/mips/t-mti-linux (MULTILIB_DIRNAMES): Ditto.
* config/mips/t-mti-linux (MULTILIB_EXCEPTIONS): Ditto.
* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Ditto.

From-SVN: r213868

10 years ago* lib/target/supports.exp
Janis Johnson [Tue, 12 Aug 2014 15:00:26 +0000 (15:00 +0000)]
* lib/target/supports.exp
(check_effective_target_arm_v8_neon_ok_nocache): Check for armv8
or later.

From-SVN: r213866

10 years ago* gcc.dg/pr59418.c: Don't add ARM options for a Thumb1 multilib.
Janis Johnson [Tue, 12 Aug 2014 14:59:31 +0000 (14:59 +0000)]
* gcc.dg/pr59418.c: Don't add ARM options for a Thumb1 multilib.

From-SVN: r213865

10 years agore PR target/61413 (__ARM_SIZEOF_WCHAR_T is constant 32 -- should be 4 or 2)
Ramana Radhakrishnan [Tue, 12 Aug 2014 14:59:23 +0000 (14:59 +0000)]
re PR target/61413 (__ARM_SIZEOF_WCHAR_T is constant 32 -- should be 4 or 2)

Fix PR target/61413

2014-08-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/61413
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Fix definition
of __ARM_SIZEOF_WCHAR_T.

From-SVN: r213864

10 years agoneon-vext-execute.c: Skip if the test won't run on Neon hardware.
Janis Johnson [Tue, 12 Aug 2014 14:58:19 +0000 (14:58 +0000)]
neon-vext-execute.c: Skip if the test won't run on Neon hardware.

* gcc.target/arm/neon-vext-execute.c: Skip if the test won't run
on Neon hardware.

From-SVN: r213863

10 years agopr48784.c: Skip for thumb1 multilib.
Janis Johnson [Tue, 12 Aug 2014 14:57:13 +0000 (14:57 +0000)]
pr48784.c: Skip for thumb1 multilib.

* gcc.target/arm/pr48784.c: Skip for thumb1 multilib.
* gcc.target/arm/pr59985.c: Likewise.

From-SVN: r213862

10 years agore PR target/62098 (incorrect code generated by arm gcc)
Ramana Radhakrishnan [Tue, 12 Aug 2014 14:32:07 +0000 (14:32 +0000)]
re PR target/62098 (incorrect code generated by arm  gcc)

Fix PR target/62098

2014-08-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/62098
* config/arm/vfp.md (*combine_vcvtf2i): Fix constraint.
Remove unnecessary attributes.

From-SVN: r213861

10 years agore PR other/61962 (GCC seems to enter an infinite loop when compiling the above cilk...
Igor Zamyatin [Tue, 12 Aug 2014 12:27:41 +0000 (12:27 +0000)]
re PR other/61962 (GCC seems to enter an infinite loop when compiling the above cilk+ code.)

PR other/61962

gcc/c-family/
        * array-notation-common.c (find_rank): Added handling for other
        types of references.

testsuite/
        * c-c++-common/cilk-plus/AN/pr61962.c: New test.

From-SVN: r213858

10 years agoconfigure.ac: Move pthread affinity test to the place where '-pthread' passed to...
Alexander Ivchenko [Tue, 12 Aug 2014 11:06:44 +0000 (11:06 +0000)]
configure.ac: Move pthread affinity test to the place where '-pthread' passed to CFLAGS.

libcilkrts/
* configure.ac: Move pthread affinity test to the place where
'-pthread' passed to CFLAGS. Otherwise the test always fails.
(XCFLAGS): New variable for correctly passing
'-pthread'.
(XLDFLAGS): New variable for passing the correct pthread lib.
* configure: Regenerate.
* Makefile.am (AM_CFLAGS): Add $XCFLAGS.
(AM_LDFLAGS): Add $XLDFLAGS.
* Makefile.in: Regenerate.

From-SVN: r213854

10 years agoinclhack.def (complier_h_tradcpp): Remove.
Alexander Ivchenko [Tue, 12 Aug 2014 11:05:24 +0000 (11:05 +0000)]
inclhack.def (complier_h_tradcpp): Remove.

fixincludes/
* inclhack.def (complier_h_tradcpp): Remove.
* fixincl.x: Regenerate.
* tests/base/linux/compiler.h: Remove.

From-SVN: r213853

10 years agointernal-fn.c (init_internal_fns): Fix off-by-one.
Yury Gribov [Tue, 12 Aug 2014 07:34:33 +0000 (07:34 +0000)]
internal-fn.c (init_internal_fns): Fix off-by-one.

2014-08-12  Yury Gribov  <y.gribov@samsung.com>

gcc/
* internal-fn.c (init_internal_fns): Fix off-by-one.

From-SVN: r213848

10 years agoi386.c (standard_sse_constant_opcode): Use vpxord/vpternlog if avx512 is availible.
Alexander Ivchenko [Tue, 12 Aug 2014 07:28:15 +0000 (07:28 +0000)]
i386.c (standard_sse_constant_opcode): Use vpxord/vpternlog if avx512 is availible.

gcc/
* config/i386/i386.c (standard_sse_constant_opcode): Use
vpxord/vpternlog if avx512 is availible.

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>
From-SVN: r213847

10 years agore PR middle-end/62103 (Incorrect folding of bitfield in a union on big endian targets)
Thomas Preud'homme [Tue, 12 Aug 2014 02:36:37 +0000 (02:36 +0000)]
re PR middle-end/62103 (Incorrect folding of bitfield in a union on big endian targets)

2014-08-12  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR middle-end/62103
    * gimple-fold.c (fold_ctor_reference): Don't fold in presence of
    bitfields, that is when size doesn't match the size of type or the
    size of the constructor.

    gcc/testsuite/
    PR middle-end/62103
    * gcc.c-torture/execute/bitfld-6.c: New test.

From-SVN: r213846

10 years agoDaily bump.
GCC Administrator [Tue, 12 Aug 2014 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r213845

10 years agos-osinte-rtems.adb: Correct formatting of line in license block.
Joel Sherrill [Mon, 11 Aug 2014 21:32:05 +0000 (21:32 +0000)]
s-osinte-rtems.adb: Correct formatting of line in license block.

2014-08-11  Joel Sherrill <joel.sherrill@oarcorp.com>

* s-osinte-rtems.adb: Correct formatting of line in license block.

From-SVN: r213840

10 years agoRevert last change.
John David Anglin [Mon, 11 Aug 2014 19:51:38 +0000 (19:51 +0000)]
Revert last change.

From-SVN: r213835

10 years agoconstraints.md (wh constraint): New constraint, for FP registers if direct move is...
Michael Meissner [Mon, 11 Aug 2014 19:48:17 +0000 (19:48 +0000)]
constraints.md (wh constraint): New constraint, for FP registers if direct move is available.

2014-08-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/constraints.md (wh constraint): New constraint,
for FP registers if direct move is available.
(wi constraint): New constraint, for VSX/FP registers that can
handle 64-bit integers.
(wj constraint): New constraint for VSX/FP registers that can
handle 64-bit integers for direct moves.
(wk constraint): New constraint for VSX/FP registers that can
handle 64-bit doubles for direct moves.
(wy constraint): Make documentation match implementation.

* config/rs6000/rs6000.c (struct rs6000_reg_addr): Add
scalar_in_vmx_p field to simplify tests of whether SFmode or
DFmode can go in the Altivec registers.
(rs6000_hard_regno_mode_ok): Use scalar_in_vmx_p field.
(rs6000_setup_reg_addr_masks): Likewise.
(rs6000_debug_print_mode): Add debug support for scalar_in_vmx_p
field, and wh/wi/wj/wk constraints.
(rs6000_init_hard_regno_mode_ok): Setup scalar_in_vmx_p field, and
the wh/wi/wj/wk constraints.
(rs6000_preferred_reload_class): If SFmode/DFmode can go in the
upper registers, prefer VSX registers unless the operation is a
memory operation with REG+OFFSET addressing.

* config/rs6000/vsx.md (VSr mode attribute): Add support for
DImode.  Change SFmode to use ww constraint instead of d to allow
SF registers in the upper registers.
(VSr2): Likewise.
(VSr3): Likewise.
(VSr5): Fix thinko in comment.
(VSa): New mode attribute that is an alternative to wa, that
returns the VSX register class that a mode can go in, but may not
be the preferred register class.
(VS_64dm): New mode attribute for appropriate register classes for
referencing 64-bit elements of vectors for direct moves and normal
moves.
(VS_64reg): Likewise.
(vsx_mov<mode>): Change wa constraint to <VSa> to limit the
register allocator to only registers the data type can handle.
(vsx_le_perm_load_<mode>): Likewise.
(vsx_le_perm_store_<mode>): Likewise.
(vsx_xxpermdi2_le_<mode>): Likewise.
(vsx_xxpermdi4_le_<mode>): Likewise.
(vsx_lxvd2x2_le_<mode>): Likewise.
(vsx_lxvd2x4_le_<mode>): Likewise.
(vsx_stxvd2x2_le_<mode>): Likewise.
(vsx_add<mode>3): Likewise.
(vsx_sub<mode>3): Likewise.
(vsx_mul<mode>3): Likewise.
(vsx_div<mode>3): Likewise.
(vsx_tdiv<mode>3_internal): Likewise.
(vsx_fre<mode>2): Likewise.
(vsx_neg<mode>2): Likewise.
(vsx_abs<mode>2): Likewise.
(vsx_nabs<mode>2): Likewise.
(vsx_smax<mode>3): Likewise.
(vsx_smin<mode>3): Likewise.
(vsx_sqrt<mode>2): Likewise.
(vsx_rsqrte<mode>2): Likewise.
(vsx_tsqrt<mode>2_internal): Likewise.
(vsx_fms<mode>4): Likewise.
(vsx_nfma<mode>4): Likewise.
(vsx_eq<mode>): Likewise.
(vsx_gt<mode>): Likewise.
(vsx_ge<mode>): Likewise.
(vsx_eq<mode>_p): Likewise.
(vsx_gt<mode>_p): Likewise.
(vsx_ge<mode>_p): Likewise.
(vsx_xxsel<mode>): Likewise.
(vsx_xxsel<mode>_uns): Likewise.
(vsx_copysign<mode>3): Likewise.
(vsx_float<VSi><mode>2): Likewise.
(vsx_floatuns<VSi><mode>2): Likewise.
(vsx_fix_trunc<mode><VSi>2): Likewise.
(vsx_fixuns_trunc<mode><VSi>2): Likewise.
(vsx_x<VSv>r<VSs>i): Likewise.
(vsx_x<VSv>r<VSs>ic): Likewise.
(vsx_btrunc<mode>2): Likewise.
(vsx_b2trunc<mode>2): Likewise.
(vsx_floor<mode>2): Likewise.
(vsx_ceil<mode>2): Likewise.
(vsx_<VS_spdp_insn>): Likewise.
(vsx_xscvspdp): Likewise.
(vsx_xvcvspuxds): Likewise.
(vsx_float_fix_<mode>2): Likewise.
(vsx_set_<mode>): Likewise.
(vsx_extract_<mode>_internal1): Likewise.
(vsx_extract_<mode>_internal2): Likewise.
(vsx_extract_<mode>_load): Likewise.
(vsx_extract_<mode>_store): Likewise.
(vsx_splat_<mode>): Likewise.
(vsx_xxspltw_<mode>): Likewise.
(vsx_xxspltw_<mode>_direct): Likewise.
(vsx_xxmrghw_<mode>): Likewise.
(vsx_xxmrglw_<mode>): Likewise.
(vsx_xxsldwi_<mode>): Likewise.
(vsx_xscvdpspn): Tighten constraints to only use register classes
the types use.
(vsx_xscvspdpn): Likewise.
(vsx_xscvdpspn_scalar): Likewise.

* config/rs6000/rs6000.h (enum rs6000_reg_class_enum): Add wh, wi,
wj, and wk constraints.
(GPR_REG_CLASS_P): New helper macro for register classes targeting
general purpose registers.

* config/rs6000/rs6000.md (f32_dm): Use wh constraint for SDmode
direct moves.
(zero_extendsidi2_lfiwz): Use wj constraint for direct move of
DImode instead of wm.  Use wk constraint for direct move of DFmode
instead of wm.
(extendsidi2_lfiwax): Likewise.
(lfiwax): Likewise.
(lfiwzx): Likewise.
(movdi_internal64): Likewise.

* doc/md.texi (PowerPC and IBM RS6000): Document wh, wi, wj, and
wk constraints. Make the wy constraint documentation match them
implementation.

From-SVN: r213834

10 years agocompiler: Change return type comma-ok assignments to untyped bools.
Ian Lance Taylor [Mon, 11 Aug 2014 19:27:21 +0000 (19:27 +0000)]
compiler: Change return type comma-ok assignments to untyped bools.

Fixes https://code.google.com/p/go/issues/detail?id=8476. The test will be submitted once this is fixed in gc and go/types.

From-SVN: r213833

10 years agocompiler: Change return type comma-ok assignments to untyped bools.
Ian Lance Taylor [Mon, 11 Aug 2014 19:26:26 +0000 (19:26 +0000)]
compiler: Change return type comma-ok assignments to untyped bools.

Fixes https://code.google.com/p/go/issues/detail?id=8476. The test will be submitted once this is fixed in gc and go/types.

From-SVN: r213832

10 years agore PR target/62038 (Out of range branch target in thunk)
John David Anglin [Mon, 11 Aug 2014 19:07:16 +0000 (19:07 +0000)]
re PR target/62038 (Out of range branch target in thunk)

PR target/62038
* config/pa/pa.c (pa_asm_output_mi_thunk): Use a branch with %r31 link
register.

From-SVN: r213829

10 years agoframe-pointer-1.c: Skip if Thumb is not supported.
Janis Johnson [Mon, 11 Aug 2014 15:29:59 +0000 (15:29 +0000)]
frame-pointer-1.c: Skip if Thumb is not supported.

* gcc.target/arm/frame-pointer-1.c: Skip if Thumb is not supported.
* gcc.target/arm/pr56184.C: Likewise.
* gcc.target/arm/pr59896.c: Likewise.
* gcc.target/arm/stack-red-zone.c: Likewise.
* gcc.target/arm/thumb-find-work-register.c: Likewise.

From-SVN: r213819

10 years agotarget-supports.exp (check_effective_target_arm_thumb1_ok, [...]): Test with code...
Janis Johnson [Mon, 11 Aug 2014 15:28:04 +0000 (15:28 +0000)]
target-supports.exp (check_effective_target_arm_thumb1_ok, [...]): Test with code that passes an argument and returns a result.

* lib/target-supports.exp (check_effective_target_arm_thumb1_ok,
check_effective_target_arm_thumb2_ok): Test with code that passes
an argument and returns a result.

From-SVN: r213818

10 years agoReplacement of isl_int by isl_val
Mircea Namolaru [Mon, 11 Aug 2014 15:05:48 +0000 (17:05 +0200)]
Replacement of isl_int by isl_val

From-SVN: r213816

10 years agore PR tree-optimization/62075 (Vectorizer ICE on dolphin)
Richard Biener [Mon, 11 Aug 2014 14:48:24 +0000 (14:48 +0000)]
re PR tree-optimization/62075 (Vectorizer ICE on dolphin)

2014-08-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62075
* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Properly
handle uses in patterns.

* gcc.dg/vect/pr62075.c: New testcase.

From-SVN: r213815

10 years agogcc/
Alexander Ivchenko [Mon, 11 Aug 2014 11:39:14 +0000 (11:39 +0000)]
gcc/
        * common/config/i386/i386-common.c
(OPTION_MASK_ISA_AVX512VL_SET): Define.
(OPTION_MASK_ISA_AVX512F_UNSET): Update.
(ix86_handle_option): Handle OPT_mavx512vl.
* config/i386/cpuid.h (bit_AVX512VL): Define.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect avx512vl,
set -mavx512vl accordingly.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_AVX512VL.
* config/i386/i386.c (ix86_target_string): Handle -mavx512vl.
(ix86_option_override_internal): Define PTA_AVX512VL, handle
PTA_AVX512VL and OPTION_MASK_ISA_AVX512VL.
(ix86_valid_target_attribute_inner_p): Handle OPT_mavx512vl.
* config/i386/i386.h (TARGET_AVX512VL): Define.
(TARGET_AVX512VL_P(x)): Ditto.
* config/i386/i386.opt: Add mavx512vl.

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>
From-SVN: r213813