Tobias Burnus [Mon, 12 May 2014 19:00:08 +0000 (21:00 +0200)]
re PR fortran/60127 (ICE with OpenMP and DO CONCURRENT)
2014-05-12 Tobias Burnus <burnus@net-b.de>
PR fortran/60127
* openmp.c (resolve_omp_do): Reject do concurrent loops.
2014-05-12 Tobias Burnus <burnus@net-b.de>
PR fortran/60127
* gfortran.dg/gomp/omp_do_concurrent.f90: New.
From-SVN: r210331
David Wohlferd [Mon, 12 May 2014 16:22:15 +0000 (16:22 +0000)]
tm.texi: Remove reference to deleted macro.
2014-05-12 David Wohlferd <dw@LimeGreenSocks.com>
* doc/tm.texi: Remove reference to deleted macro.
* doc/tm.texi.in: Likewise.
From-SVN: r210330
Thomas Koenig [Mon, 12 May 2014 16:17:09 +0000 (16:17 +0000)]
re PR fortran/60834 ([OOP] ICE with ASSOCIATE construct (gimplify_var_or_parm_decl, at gimplify.c:1721))
2014-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/60834
* frontend-passes.c (in_assoc_list): New variable.
(optimize_namespace): Initialize in_assoc_list
(combine_array_constructor): Don't try to combine
assoc lists.
(gfc_code_walker): Keep track of in_assoc_list.
2014-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/60834
* gfortran.dg/associate_16.f90: New test.
From-SVN: r210329
Paolo Carlini [Mon, 12 May 2014 15:33:35 +0000 (15:33 +0000)]
cvt.c (cp_convert_to_pointer): Don't call error_at if complain & tf_error is false.
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
* cvt.c (cp_convert_to_pointer): Don't call error_at if
complain & tf_error is false.
* decl.c (make_unbound_class_template): Prefer inform for
"declared here"-type message.
From-SVN: r210326
Senthil Kumar Selvaraj [Mon, 12 May 2014 15:33:00 +0000 (15:33 +0000)]
re PR target/60991 ([avr] Stack corruption when using 24-bit integers __int24 or __memx pointers in large stack frame)
gcc/ChangeLog
PR target/60991
* config/avr/avr.c (avr_out_store_psi): Use correct constant
to restore Y.
gcc/testsuite/ChangeLog
PR target/60991
* gcc.target/avr/pr60991.c: New testcase.
From-SVN: r210325
Paolo Carlini [Mon, 12 May 2014 09:17:46 +0000 (09:17 +0000)]
re PR c++/60054 ([c++1y] ICE with auto* cast)
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60054
* g++.dg/cpp1y/pr60054.C: New.
From-SVN: r210323
Georg-Johann Lay [Mon, 12 May 2014 09:02:36 +0000 (09:02 +0000)]
arm.h (License): Add GCC Runtime Library Exception.
gcc/
* config/arm/arm.h (License): Add GCC Runtime Library Exception.
* config/arm/aout.h (License): Same.
* config/arm/bpabi.h (License): Same.
* config/arm/elf.h (License): Same.
* config/arm/linux-elf.h (License): Same.
* config/arm/linux-gas.h (License): Same.
* config/arm/netbsd-elf.h (License): Same.
* config/arm/uclinux-eabi.h (License): Same.
* config/arm/uclinux-elf.h (License): Same.
* config/arm/vxworks.h (License): Same.
libgcc/
* config/arm/bpabi-lib.h (License): Add GCC Runtime Library Exception.
From-SVN: r210322
Paolo Carlini [Mon, 12 May 2014 08:42:41 +0000 (08:42 +0000)]
re PR c++/51199 ([C++11][DR 547] gcc forms impossible types derived from function types with cv-qualifier-seq)
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51199
* g++.dg/template/pr51199.C: New.
From-SVN: r210321
GCC Administrator [Mon, 12 May 2014 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210319
Hans-Peter Nilsson [Sun, 11 May 2014 20:48:31 +0000 (20:48 +0000)]
* gcc.c-torture/execute/
20101011-1.c [__MMIX__] (DO_TEST): Define as 0.
From-SVN: r210315
Jakub Jelinek [Sun, 11 May 2014 20:26:36 +0000 (22:26 +0200)]
tree.h (OMP_CLAUSE_LINEAR_STMT): Define.
* tree.h (OMP_CLAUSE_LINEAR_STMT): Define.
* tree.c (omp_clause_num_ops): Increase OMP_CLAUSE_LINEAR
number of operands to 3.
(walk_tree_1): Walk all operands of OMP_CLAUSE_LINEAR.
* tree-nested.c (convert_nonlocal_omp_clauses,
convert_local_omp_clauses): Handle OMP_CLAUSE_DEPEND.
* gimplify.c (gimplify_scan_omp_clauses): Handle
OMP_CLAUSE_LINEAR_STMT.
* omp-low.c (lower_rec_input_clauses): Fix typo.
(maybe_add_implicit_barrier_cancel, lower_omp_1): Add
cast between Fortran boolean_type_node and C _Bool if
needed.
gcc/fortran/
* gfortran.h (gfc_statement): Add ST_OMP_CANCEL,
ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
ST_OMP_DECLARE_SIMD.
(gfc_omp_namelist): New typedef.
(gfc_get_omp_namelist): Define.
(OMP_LIST_UNIFORM, OMP_LIST_ALIGNED, OMP_LIST_LINEAR,
OMP_LIST_DEPEND_IN, OMP_LIST_DEPEND_OUT): New clause list kinds.
(gfc_omp_proc_bind_kind, gfc_omp_cancel_kind): New enums.
(gfc_omp_clauses): Change type of lists to gfc_omp_namelist *.
Add inbranch, notinbranch, cancel, proc_bind, safelen_expr and
simdlen_expr fields.
(gfc_omp_declare_simd): New typedef.
(gfc_get_omp_declare_simd): Define.
(gfc_namespace): Add omp_declare_simd field.
(gfc_exec_op): Add EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
EXEC_OMP_TASKGROUP, EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD and
EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_omp_atomic_op): Add GFC_OMP_ATOMIC_MASK, GFC_OMP_ATOMIC_SEQ_CST
and GFC_OMP_ATOMIC_SWAP.
(gfc_code): Change type of omp_namelist field to gfc_omp_namelist *.
(gfc_free_omp_namelist, gfc_free_omp_declare_simd,
gfc_free_omp_declare_simd_list, gfc_resolve_omp_declare_simd): New
prototypes.
* trans-stmt.h (gfc_trans_omp_declare_simd): New prototype.
* symbol.c (gfc_free_namespace): Call gfc_free_omp_declare_simd.
* openmp.c (gfc_free_omp_clauses): Free safelen_expr and
simdlen_expr. Use gfc_free_omp_namelist instead of
gfc_free_namelist.
(gfc_free_omp_declare_simd, gfc_free_omp_declare_simd_list): New
functions.
(gfc_match_omp_variable_list): Add end_colon, headp and
allow_sections arguments. Handle parsing of array sections.
Use *omp_namelist* instead of *namelist* data structure and
functions/macros. Allow termination at : character.
(OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH,
OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND,
OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM): Define.
(gfc_match_omp_clauses): Change first and needs_space variables
into arguments with default values. Parse inbranch, notinbranch,
proc_bind, safelen, simdlen, uniform, linear, aligned and
depend clauses.
(OMP_PARALLEL_CLAUSES): Add OMP_CLAUSE_PROC_BIND.
(OMP_DECLARE_SIMD_CLAUSES, OMP_SIMD_CLAUSES): Define.
(OMP_TASK_CLAUSES): Add OMP_CLAUSE_DEPEND.
(gfc_match_omp_do_simd): New function.
(gfc_match_omp_flush): Use *omp_namelist* instead of *namelist*
data structure and functions/macros.
(gfc_match_omp_simd, gfc_match_omp_declare_simd,
gfc_match_omp_parallel_do_simd): New functions.
(gfc_match_omp_atomic): Handle seq_cst clause. Handle atomic swap.
(gfc_match_omp_taskgroup, gfc_match_omp_cancel_kind,
gfc_match_omp_cancel, gfc_match_omp_cancellation_point): New
functions.
(resolve_omp_clauses): Add where, omp_clauses and ns arguments.
Use *omp_namelist* instead of *namelist* data structure and
functions/macros. Resolve uniform, aligned, linear, depend,
safelen and simdlen clauses.
(resolve_omp_atomic): Adjust for GFC_OMP_ATOMIC_{MASK,SEQ_CST,SWAP}
addition, recognize atomic swap.
(gfc_resolve_omp_parallel_blocks): Use gfc_omp_namelist instead
of gfc_namelist. Handle EXEC_OMP_PARALLEL_DO_SIMD the same as
EXEC_OMP_PARALLEL_DO.
(gfc_resolve_do_iterator): Use *omp_namelist* instead of *namelist*
data structure and functions/macros.
(resolve_omp_do): Likewise. Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_resolve_omp_directive): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD and EXEC_OMP_CANCEL. Adjust
resolve_omp_clauses caller.
(gfc_resolve_omp_declare_simd): New function.
* parse.c (decode_omp_directive): Parse cancellation point, cancel,
declare simd, end do simd, end simd, end parallel do simd,
end taskgroup, parallel do simd, simd and taskgroup directives.
(case_executable): Add ST_OMP_CANCEL and ST_OMP_CANCELLATION_POINT.
(case_exec_markers): Add ST_OMP_TASKGROUP, case ST_OMP_SIMD,
ST_OMP_DO_SIMD and ST_OMP_PARALLEL_DO_SIMD.
(case_decl): Add ST_OMP_DECLARE_SIMD.
(gfc_ascii_statement): Handle ST_OMP_CANCEL,
ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
ST_OMP_DECLARE_SIMD.
(parse_omp_do): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD and
ST_OMP_PARALLEL_DO_SIMD.
(parse_omp_atomic): Adjust for GFC_OMP_ATOMIC_* additions.
(parse_omp_structured_block): Handle ST_OMP_TASKGROUP and
ST_OMP_PARALLEL_DO_SIMD.
(parse_executable): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD and ST_OMP_TASKGROUP.
* trans-decl.c (gfc_get_extern_function_decl,
gfc_create_function_decl): Call gfc_trans_omp_declare_simd if
needed.
* frontend-passes.c (gfc_code_walker): Handle EXEC_OMP_SIMD,
EXEC_OMP_DO_SIMD and EXEC_OMP_PARALLEL_DO_SIMD. Walk
safelen_expr and simdlen_expr. Walk expressions in gfc_omp_namelist
of depend, aligned and linear clauses.
* match.c (match_exit_cycle): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD
and EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_free_omp_namelist): New function.
* dump-parse-tree.c (show_namelist): Removed.
(show_omp_namelist): New function.
(show_omp_node): Handle OpenMP 4.0 additions.
(show_code_node): Handle EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
EXEC_OMP_DO_SIMD, EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and
EXEC_OMP_TASKGROUP.
* match.h (gfc_match_omp_cancel, gfc_match_omp_cancellation_point,
gfc_match_omp_declare_simd, gfc_match_omp_do_simd,
gfc_match_omp_parallel_do_simd, gfc_match_omp_simd,
gfc_match_omp_taskgroup): New prototypes.
* trans-openmp.c (gfc_trans_omp_variable): Add declare_simd
argument, handle it. Allow current_function_decl to be NULL.
(gfc_trans_omp_variable_list): Add declare_simd argument, pass
it through to gfc_trans_omp_variable and disregard whether
sym is referenced if declare_simd is true. Work on gfc_omp_namelist
instead of gfc_namelist.
(gfc_trans_omp_reduction_list): Work on gfc_omp_namelist instead of
gfc_namelist. Adjust gfc_trans_omp_variable caller.
(gfc_trans_omp_clauses): Add declare_simd argument, pass it through
to gfc_trans_omp_variable{,_list} callers. Work on gfc_omp_namelist
instead of gfc_namelist. Handle inbranch, notinbranch, safelen,
simdlen, depend, uniform, linear, proc_bind and aligned clauses.
Handle cancel kind.
(gfc_trans_omp_atomic): Handle seq_cst clause, handle atomic swap,
adjust for GFC_OMP_ATOMIC_* changes.
(gfc_trans_omp_cancel, gfc_trans_omp_cancellation_point): New
functions.
(gfc_trans_omp_do): Add op argument, handle simd translation into
generic.
(GFC_OMP_SPLIT_SIMD, GFC_OMP_SPLIT_DO, GFC_OMP_SPLIT_PARALLEL,
GFC_OMP_SPLIT_NUM, GFC_OMP_MASK_SIMD, GFC_OMP_MASK_DO,
GFC_OMP_MASK_PARALLEL): New.
(gfc_split_omp_clauses, gfc_trans_omp_do_simd): New functions.
(gfc_trans_omp_parallel_do): Rework to use gfc_split_omp_clauses.
(gfc_trans_omp_parallel_do_simd, gfc_trans_omp_taskgroup): New
functions.
(gfc_trans_omp_directive): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
Adjust gfc_trans_omp_do caller.
(gfc_trans_omp_declare_simd): New function.
* st.c (gfc_free_statement): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
For EXEC_OMP_FLUSH call gfc_free_omp_namelist instead of
gfc_free_namelist.
* module.c (omp_declare_simd_clauses): New variable.
(mio_omp_declare_simd): New function.
(mio_symbol): Call it.
* trans.c (trans_code): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
* resolve.c (gfc_resolve_blocks): Handle EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
(resolve_code): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
(resolve_types): Call gfc_resolve_omp_declare_simd.
gcc/testsuite/
* gfortran.dg/gomp/affinity-1.f90: New test.
libgomp/
* testsuite/libgomp.fortran/cancel-do-1.f90: New test.
* testsuite/libgomp.fortran/cancel-do-2.f90: New test.
* testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
* testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
* testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
* testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
* testsuite/libgomp.fortran/declare-simd-1.f90: New test.
* testsuite/libgomp.fortran/declare-simd-2.f90: New test.
* testsuite/libgomp.fortran/declare-simd-3.f90: New test.
* testsuite/libgomp.fortran/depend-1.f90: New test.
* testsuite/libgomp.fortran/depend-2.f90: New test.
* testsuite/libgomp.fortran/omp_atomic5.f90: New test.
* testsuite/libgomp.fortran/simd1.f90: New test.
* testsuite/libgomp.fortran/simd2.f90: New test.
* testsuite/libgomp.fortran/simd3.f90: New test.
* testsuite/libgomp.fortran/simd4.f90: New test.
* testsuite/libgomp.fortran/taskgroup1.f90: New test.
From-SVN: r210313
Richard Sandiford [Sun, 11 May 2014 20:21:55 +0000 (20:21 +0000)]
re PR c/61136 (ice in tree_nop_conversion)
gcc/
PR tree-optimization/61136
* wide-int.h (multiple_of_p): Define a version that doesn't return
the quotient.
* fold-const.c (extract_muldiv_1): Use wi::multiple_of_p instead of an
integer_zerop/const_binop pair.
(multiple_of_p): Likewise, converting both operands to widest_int
precision.
gcc/testsuite/
* gcc.dg/torture/pr61136.c: New test.
From-SVN: r210312
Tobias Burnus [Sun, 11 May 2014 18:25:55 +0000 (20:25 +0200)]
trans-intrinsic.c (gfc_build_builtin_function_decls): Change type of second argument to int.
2014-05-11 Tobias Burnus <burnus@net-b.de>
* trans-intrinsic.c (gfc_build_builtin_function_decls):
Change type of second argument to int.
2014-05-11 Tobias Burnus <burnus@net-b.de>
* caf/libcaf.h (_gfortran_caf_num_images): Change type of
second argument to int.
* caf/mpi.c (_gfortran_caf_num_images): Ditto.
* caf/single.c (_gfortran_caf_num_images): Ditto.
From-SVN: r210311
Paolo Carlini [Sun, 11 May 2014 10:23:34 +0000 (10:23 +0000)]
re PR c++/59705 (possible compiler bug regarding SFINAE (program compiles fine))
2014-05-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59705
* g++.dg/cpp0x/sfinae51.C: New.
PR c++/58353
* g++.dg/cpp0x/variadic157.C: New.
From-SVN: r210310
GCC Administrator [Sun, 11 May 2014 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210305
Oleg Endo [Sat, 10 May 2014 20:19:06 +0000 (20:19 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
gcc/testsuite/
PR target/51244
* gcc.target/sh/pr51244-14.c: Relax criteria for passing the test.
From-SVN: r210301
Marek Polacek [Sat, 10 May 2014 20:03:57 +0000 (20:03 +0000)]
c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to maybe_warn_string_init.
* c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to
maybe_warn_string_init.
(c_parser_postfix_expression_after_paren_type): Pass type_loc to
maybe_warn_string_init.
* c-tree.h (maybe_warn_string_init): Update declaration.
* c-typeck.c (maybe_warn_string_init): Add location parameter.
Call pedwarn_init with loc instead of with input_location.
(digest_init): Pass init_loc to maybe_warn_string_init.
(pop_init_level): Call pedwarn_init with loc instead of with
input_location.
(set_init_index): Likewise.
(process_init_element): Likewise.
* gcc.dg/pedwarn-init.c: New test.
* gcc.dg/init-string-1.c: Adjust dg-error.
From-SVN: r210300
Hans-Peter Nilsson [Sat, 10 May 2014 11:58:57 +0000 (11:58 +0000)]
* lib/target-supports.exp
(check_effective_target_logical_op_short_circuit): Add mmix-*-*
to the list.
From-SVN: r210299
GCC Administrator [Sat, 10 May 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210298
Momchil Velikov [Fri, 9 May 2014 20:07:45 +0000 (20:07 +0000)]
re PR c++/60463 (Lambda function can call a non-const member function with const this)
PR c++/60463
PR c++/60755
* lambda.c (lambda_expr_this_capture): Add new parameter
add_capture_p controlling whether the functions will try to
capture 'this' via the default capture.
(maybe_resolve_dummy): Likewise.
* cp-tree.h: Adjust prototypes.
* call.c, semantics.c: Change callers of these functions.
* call.c (build_new_method_call_1): Use the actual 'this' that
would be potentially captured for the overload resolution, instead
of the dummy object.
From-SVN: r210292
Jonathan Wakely [Fri, 9 May 2014 19:39:20 +0000 (20:39 +0100)]
Fix typo in ChangeLog-2013
From-SVN: r210291
Jonathan Wakely [Fri, 9 May 2014 19:39:14 +0000 (20:39 +0100)]
gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
(GLIBCXX_3.4.21): Export base object constructor for regex_error.
* acinclude.m4 (libtool_VERSION): Bump.
* configure: Regenerate.
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
* testsuite/28_regex/regex_error/base.cc: New.
From-SVN: r210290
Paolo Carlini [Fri, 9 May 2014 19:30:03 +0000 (19:30 +0000)]
pt.c (convert_nontype_argument_function): Add tsubst_flags_t parameter.
2014-05-09 Paolo Carlini <paolo.carlini@oracle.com>
* pt.c (convert_nontype_argument_function): Add tsubst_flags_t
parameter.
(convert_nontype_argument): Adjust calls.
(coerce_template_parameter_pack): Add missing complain & tf_error
check.
From-SVN: r210289
Teresa Johnson [Fri, 9 May 2014 18:31:57 +0000 (18:31 +0000)]
cgraphunit.c (analyze_functions): Use correct dump file.
2014-05-09 Teresa Johnson <tejohnson@google.com>
* cgraphunit.c (analyze_functions): Use correct dump file.
From-SVN: r210286
Jason Merrill [Fri, 9 May 2014 18:16:18 +0000 (14:16 -0400)]
DR 587 PR c++/51317
DR 587
PR c++/51317
* call.c (build_conditional_expr_1, conditional_conversion): Handle
non-class lvalues and xvalues that differ only in cv-qualifiers.
From-SVN: r210285
Jason Merrill [Fri, 9 May 2014 18:16:11 +0000 (14:16 -0400)]
DR 5 PR c++/60019
DR 5
PR c++/60019
* call.c (build_user_type_conversion_1): The copy-init temporary
is cv-unqualified.
From-SVN: r210284
Jason Merrill [Fri, 9 May 2014 18:16:05 +0000 (14:16 -0400)]
re PR c++/58714 (Bogus overload resolution for the assignment operator in assignment to a conditional)
PR c++/58714
* tree.c (stabilize_expr): A stabilized prvalue is an xvalue.
From-SVN: r210283
Jason Merrill [Fri, 9 May 2014 18:15:57 +0000 (14:15 -0400)]
re PR c++/32019 (Conditional operator ?: and ambiguous convertions)
PR c++/32019
* call.c (build_conditional_expr_1): Improve ambiguity diagnostic.
PR c++/54348
* call.c (build_conditional_expr_1): If overload resolution finds
no match, just say "different types".
From-SVN: r210282
Jason Merrill [Fri, 9 May 2014 18:15:46 +0000 (14:15 -0400)]
re PR c++/22434 (ICE in simplify_{,gen_}subreg)
PR c++/22434
* call.c (build_conditional_expr_1): Don't try to pool cv-quals
if we didn't find a conversion.
Don't accept a bad conversion too early.
From-SVN: r210281
Marek Polacek [Fri, 9 May 2014 17:50:25 +0000 (17:50 +0000)]
re PR c/61096 (error_init lacks a location)
PR c/61096
* c-parser.c (c_parser_braced_init): Pass brace_loc to push_init_level.
(c_parser_initelt): Pass location to set_init_label. Pass array index
location to set_init_index.
* c-tree.h (push_init_level): Update declaration.
(pop_init_level): Likewise.
(set_init_index): Likewise.
(set_init_label): Likewise.
* c-typeck.c (error_init): Add location parameter. Call error_at
instead of error.
(digest_init): Pass init_loc to error_init.
(really_start_incremental_init):
(push_init_level): Add location parameter. Pass loc to pop_init_level
and error_init.
(pop_init_level): Likewise.
(set_designator): Add location parameter. Pass loc to pop_init_level,
push_init_level, and error_init.
(set_init_index): Add location parameter. Pass loc to error_init and
set_designator.
(set_init_label): Likewise.
(output_init_element): Pass loc to error_init.
(process_init_element): Pass loc to error_init, pop_init_level,
pedwarn_init, and push_init_level.
* gcc.dg/pr61096-1.c: New test.
* gcc.dg/pr61096-2.c: New test.
From-SVN: r210280
Mike Stump [Fri, 9 May 2014 14:06:15 +0000 (14:06 +0000)]
re PR fortran/61109 (ICE in fortran/trans-array.c on dimension 0 arrays)
PR fortran/61109
* trans-array.c (gfc_conv_array_initializer): Fix wide-int
conversion bug.
From-SVN: r210277
Kenneth Zadeck [Fri, 9 May 2014 12:28:05 +0000 (12:28 +0000)]
fixed date of changelog entry
From-SVN: r210276
Florian Weimer [Fri, 9 May 2014 12:23:46 +0000 (14:23 +0200)]
-fstack-protector-strong: Instrumentation for return slots
This patch fixes a loophole in the -fstack-protector-strong protection.
If a function call uses a return slot, the caller needs stack protector
instrumentation because the return slot is addressable.
gcc/
2014-05-09 Florian Weimer <fweimer@redhat.com>
* cfgexpand.c (stack_protect_decl_p): New function, extracted from
expand_used_vars.
(stack_protect_return_slot_p): New function.
(expand_used_vars): Call stack_protect_decl_p and
stack_protect_return_slot_p for -fstack-protector-strong.
gcc/testsuite/
2014-05-09 Florian Weimer <fweimer@redhat.com>
* gcc.dg/fstack-protector-strong.c: Add coverage for return slots.
* g++.dg/fstack-protector-strong.C: Likewise.
* gcc.target/i386/ssp-strong-reg.c: New file.
From-SVN: r210275
Kenneth Zadeck [Fri, 9 May 2014 12:21:23 +0000 (12:21 +0000)]
re PR middle-end/61111 (Infinite recursion between fold_build2_stat_loc and fold_binary_loc)
2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/61111
* fold-const.c (fold_binary_loc): Changed width of mask.
From-SVN: r210274
David Wohlferd [Fri, 9 May 2014 12:15:41 +0000 (12:15 +0000)]
014-05-09 David Wohlferd <LimeGreenSocks@yahoo.com> Andrew Haley...
014-05-09 David Wohlferd <LimeGreenSocks@yahoo.com>
Andrew Haley <aph@redhat.com>
Richard Sandiford <rdsandiford@googlemail.com>
* doc/extend.texi: Rewrite inline asm page / re-org asm-related
pages.
From-SVN: r210273
Georg-Johann Lay [Fri, 9 May 2014 12:11:30 +0000 (12:11 +0000)]
avr-fixed.md (round<mode>3): Use -1U instead of -1 in unsigned int initializers for regno_in, regno_out.
* config/avr/avr-fixed.md (round<mode>3): Use -1U instead of -1 in
unsigned int initializers for regno_in, regno_out.
From-SVN: r210272
Georg-Johann Lay [Fri, 9 May 2014 11:20:43 +0000 (11:20 +0000)]
re PR target/61055 ([avr] wrong test instruction after increment with -O1)
gcc/config/avr
PR target/61055
* config/avr/avr.md (cc): Add new attribute set_vzn.
(addqi3, addqq3, adduqq3, subqi3, subqq3, subuqq3, negqi2) [cc]:
Set cc insn attribute to set_vzn instead of set_zn for alternatives
with INC, DEC or NEG.
* config/avr/avr.c (avr_notice_update_cc): Handle SET_VZN.
(avr_out_plus_1): ADIW sets cc0 to CC_SET_CZN.
INC, DEC and ADD+ADC set cc0 to CC_CLOBBER.
gcc/testsuite/
PR target/61055
* gcc.target/avr/torture/pr61055.c: New test.
From-SVN: r210267
Joey Ye [Fri, 9 May 2014 08:50:22 +0000 (08:50 +0000)]
files.c (find_file_in_dir): Always try to shorten for DOS non-system headers.
2014-05-09 Joey Ye <joey.ye@arm.com>
* files.c (find_file_in_dir): Always try to shorten for DOS
non-system headers.
* init.c (ENABLE_CANONICAL_SYSTEM_HEADERS): Default enabled for DOS.
From-SVN: r210264
Ramana Radhakrishnan [Fri, 9 May 2014 08:32:37 +0000 (08:32 +0000)]
Revert wide-int change.
2014-05-09 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Revert:
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* wide-int.cc (UTItype): Define.
(UDWtype): Define for appropriate W_TYPE_SIZE.
From-SVN: r210263
Marek Polacek [Fri, 9 May 2014 08:24:37 +0000 (08:24 +0000)]
re PR c/50459 (alignof doesn't work on plain old constant, works with expressions containing it)
PR c/50459
c-family/
* c-common.c (check_user_alignment): Return -1 if alignment is error
node.
(handle_aligned_attribute): Don't call default_conversion on
FUNCTION_DECLs.
(handle_vector_size_attribute): Likewise.
(handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
(handle_sentinel_attribute): Call default_conversion and allow even
integral types as an argument.
c/
* c-parser.c (c_parser_attributes): Parse the arguments as an
expression-list if the attribute takes identifier.
testsuite/
* c-c++-common/attributes-1.c: Move test line to a new test.
* c-c++-common/attributes-2.c: New test.
* c-c++-common/pr50459.c: New test.
* c-c++-common/pr59280.c: Add "undeclared" to dg-error.
* gcc.dg/nonnull-2.c: Likewise.
* gcc.dg/pr55570.c: Modify dg-error.
* gcc.dg/tm/wrap-2.c: Likewise.
From-SVN: r210262
Richard Biener [Fri, 9 May 2014 07:49:18 +0000 (07:49 +0000)]
Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
2014-05-09 Richard Biener <rguenther@suse.de>
* Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
* tree-ssa-propagate.c: Do not include gt-tree-ssa-propagate.h.
(interesting_ssa_edges, varying_ssa_edges): Move out of GC space.
(add_ssa_edge, process_ssa_edge_worklist, ssa_prop_init,
ssa_propagate): Adjust.
From-SVN: r210261
Jan-Benedict Glaw [Fri, 9 May 2014 07:25:21 +0000 (07:25 +0000)]
config-list.mk (show): New target.
2014-05-09 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config-list.mk (show): New target.
From-SVN: r210260
Ian Lance Taylor [Fri, 9 May 2014 05:01:08 +0000 (05:01 +0000)]
mmap.c (backtrace_free): If freeing a large aligned block of memory, call munmap rather than holding onto it.
* mmap.c (backtrace_free): If freeing a large aligned block of
memory, call munmap rather than holding onto it.
(backtrace_vector_grow): When growing a vector, double the number
of pages requested. When releasing the old version of a grown
vector, pass the correct size to backtrace_free.
From-SVN: r210256
Jeff Law [Fri, 9 May 2014 04:54:00 +0000 (22:54 -0600)]
re PR tree-optimization/61009 (Incorrect jump threading in dom)
2014-05-08 Jeff Law <law@redhat.com>
PR tree-optimization/61009
* tree-ssa-threadedge.c (thread_through_normal_block): Return a
tri-state rather than a boolean. When a block is too big to
thread through, inform caller via negative return value.
(thread_across_edge): If a block was too big for normal threading,
then it's too big for a joiner too, so remove temporary equivalences
and return immediately.
PR tree-optimization/61009
* g++.dg/tree-ssa/pr61009.C: New test.
From-SVN: r210254
GCC Administrator [Fri, 9 May 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210253
Matthias Klose [Thu, 8 May 2014 22:17:43 +0000 (22:17 +0000)]
re PR driver/61106 ([4.8/4.9] impliedness of -Wunused-parameter depends on -W option ordering)
gcc/
2014-05-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
Matthias Klose <doko@ubuntu.com>
PR driver/61106
* optc-gen.awk: Fix option handling for -Wunused-parameter.
gcc/testsuite/
2014-05-08 Matthias Klose <doko@ubuntu.com>
PR driver/61106
* gcc-dg/unused-8a.c: New.
* gcc-dg/unused-8b.c: Likewise.
From-SVN: r210246
Richard Sandiford [Thu, 8 May 2014 20:24:33 +0000 (20:24 +0000)]
dg-extract-results.py: New file.
contrib/
* dg-extract-results.py: New file.
* dg-extract-results.sh: Use it if the environment seems suitable.
From-SVN: r210243
Joshua Gay [Thu, 8 May 2014 19:52:40 +0000 (19:52 +0000)]
re PR libstdc++/61117 (Manual uses term open source but should say free software)
2014-05-08 Joshua Gay <jgay@gnu.org>
PR libstdc++/61117
* doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
source" with "free software".
* doc/html/faq.html: Likewise.
From-SVN: r210241
Uros Bizjak [Thu, 8 May 2014 19:13:10 +0000 (21:13 +0200)]
re PR target/59952 (-march=core-avx2 should not enable RTM)
PR target/59952
* config/i386/i386.c (PTA_HASWELL): Remove PTA_RTM.
From-SVN: r210234
Uros Bizjak [Thu, 8 May 2014 19:02:28 +0000 (21:02 +0200)]
re PR target/61092 (wide-int merge broke alpha bootstrap)
PR target/61092
* config/alpha/alpha.c: Include gimple-iterator.h.
(alpha_gimple_fold_builtin): New function. Move
ALPHA_BUILTIN_UMULH folding from ...
(alpha_fold_builtin): ... here.
(TARGET_GIMPLE_FOLD_BUILTIN): New define.
From-SVN: r210233
Jonathan Wakely [Thu, 8 May 2014 19:01:51 +0000 (20:01 +0100)]
iostream: Fix URL in comment.
* include/std/iostream: Fix URL in comment.
* src/c++98/ios_init.cc: Fix path in comment.
From-SVN: r210232
Jonathan Wakely [Thu, 8 May 2014 18:30:14 +0000 (19:30 +0100)]
re PR libstdc++/13860 (Poor error messages on invalid template parameters for basic_filebuf)
PR libstdc++/13860
* include/std/fstream (basic_filebuf): Enforce requirements on traits.
From-SVN: r210231
Marek Polacek [Thu, 8 May 2014 18:19:09 +0000 (18:19 +0000)]
re PR c/61053 (_Alignas(long long) reduces alignment of long long)
PR c/61053
c-family/
* c-common.c (min_align_of_type): New function factored out from...
(c_sizeof_or_alignof_type): ...here.
* c-common.h (min_align_of_type): Declare.
c/
* c-decl.c (grokdeclarator): Use min_align_of_type instead of
TYPE_ALIGN_UNIT.
testsuite/
* gcc.dg/pr61053.c: New test.
From-SVN: r210230
Marek Polacek [Thu, 8 May 2014 17:42:09 +0000 (17:42 +0000)]
re PR c/61077 (_Atomic in the return type or argument types of main not diagnosed)
PR c/61077
c-family/
* c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
parameter type of main.
c/
* c-decl.c (start_function): Warn for _Atomic-qualified return type
of main.
testsuite/
* gcc.dg/pr61077.c: New test.
From-SVN: r210229
Jonathan Wakely [Thu, 8 May 2014 17:17:06 +0000 (18:17 +0100)]
re PR libstdc++/57394 ([C++11] basic_streambuf incorrect copy constructor / copy assignment access specifier)
PR libstdc++/57394
* include/bits/ios_base.h (ios_base(const ios_base&)): Define as
deleted for C++11.
(operator=(const ios_base&)): Likewise.
* include/std/streambuf: Remove trailing whitespace.
(basic_streambuf(const basic_streambuf&)): Fix initializer for
_M_out_end. Define as defaulted for C++11.
(operator=(const basic_streambuf&)): Define as defaulted for C++11.
(swap(basic_streambuf&)): Define for C++11.
* testsuite/27_io/basic_streambuf/cons/57394.cc: New.
From-SVN: r210228
Tobias Burnus [Thu, 8 May 2014 17:00:07 +0000 (19:00 +0200)]
gfortran.h (gfc_isym_id): Add GFC_ISYM_CAF_GET and GFC_ISYM_CAF_SEND.
2014-05-08 Tobias Burnus <burnus@net-b.de>
* gfortran.h (gfc_isym_id): Add GFC_ISYM_CAF_GET
and GFC_ISYM_CAF_SEND.
* intrinsic.c (add_functions): Add only internally
accessible caf_get and caf_send functions.
* resolve.c (add_caf_get_intrinsic,
remove_caf_get_intrinsic): New functions.
(resolve_variable): Resolve expression rank and
prepare for add_caf_get_intrinsic call.
(gfc_resolve_expr): For variables, remove rank
resolution.
(resolve_ordinary_assign): Prepare call to
GFC_ISYM_CAF_SEND.
(resolve_code): Avoid call to GFC_ISYM_CAF_GET for
the LHS of an assignment.
From-SVN: r210225
Tobias Burnus [Thu, 8 May 2014 16:57:42 +0000 (18:57 +0200)]
trans-intrinsic.c (conv_co_minmaxsum): Change condition style.
2014-05-08 Tobias Burnus <burnus@net-b.de>
* trans-intrinsic.c (conv_co_minmaxsum): Change condition style.
From-SVN: r210224
Tobias Burnus [Thu, 8 May 2014 16:55:23 +0000 (18:55 +0200)]
check.c (check_co_minmaxsum, [...]): New.
gcc/fortran/
2014-05-08 Tobias Burnus <burnus@net-b.de>
* check.c (check_co_minmaxsum, gfc_check_co_minmax,
gfc_check_co_sum): New.
* error.c (gfc_notify_std): Update -std=f2008ts.
* gfortran.h (gfc_isym_id): Add GFC_ISYM_CO_MAX,
GFC_ISYM_CO_MIN, GFC_ISYM_CO_SUM.
* intrinsic.h (gfc_check_co_minmax,
gfc_check_co_sum): Declare.
* intrinsic.c (add_subroutines): Add co_min, co_max
and co_sum.
(gfc_check_intrinsic_standard): Update text for
-std=f2008ts.
* intrinsic.texi (CO_MIN, CO_MAX, CO_SUM): Document
them.
* invoke.texi (-std=f2008ts): Update wording.
* trans.h (gfor_fndecl_co_max,
gfor_fndecl_co_min, gfor_fndecl_co_sum): Define.
* trans-decl.c (gfor_fndecl_co_max,
gfor_fndecl_co_min, gfor_fndecl_co_sum): Define.
(gfc_build_builtin_function_decls): Assign to it.
* trans-intrinsic.c (conv_co_minmaxsum): New.
(gfc_conv_intrinsic_subroutine): Call it.
libgfortran/
2014-05-08 Tobias Burnus <burnus@net-b.de>
* caf/libcaf.h (caf_vector_t, _gfortran_caf_co_sum,
_gfortran_caf_co_min, _gfortran_caf_co_max): Declare
* caf/single.c
gcc/testsuite/
2014-05-08 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_collectives_1.f90: New.
* gfortran.dg/coarray_collectives_2.f90: New.
* gfortran.dg/coarray_collectives_3.f90: New.
* gfortran.dg/coarray_collectives_4.f90: New.
* gfortran.dg/coarray_collectives_5.f90: New.
* gfortran.dg/coarray_collectives_6.f90: New.
* gfortran.dg/coarray/collectives_1.f90: New.
* gfortran.dg/assumed_rank_5.f90: Update dg-error.
* gfortran.dg/assumed_type_4.f90: Update dg-error.
* gfortran.dg/bind_c_array_params.f03: Update dg-error.
* gfortran.dg/bind_c_usage_28.f90: Update dg-error.
* gfortran.dg/c_funloc_tests_5.f03: Update dg-error.
* gfortran.dg/c_funloc_tests_6.f90: Update dg-error.
* gfortran.dg/c_loc_tests_11.f03: Update dg-error.
From-SVN: r210223
Wei Mi [Thu, 8 May 2014 16:44:52 +0000 (16:44 +0000)]
re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64)
gcc/
2014-05-08 Wei Mi <wmi@google.com>
PR target/58066
* config/i386/i386.c (ix86_compute_frame_layout):
Update preferred_stack_boundary for call, expanded from
tls descriptor.
* config/i386/i386.md:
(*tls_global_dynamic_32_gnu): Update RTX to depend on
SP register.
(*tls_local_dynamic_base_32_gnu): Ditto.
(*tls_local_dynamic_32_once): Ditto.
(tls_global_dynamic_64_<mode>): Set
ix86_tls_descriptor_calls_expanded_in_cfun.
(tls_local_dynamic_base_64_<mode>): Ditto.
(tls_global_dynamic_32): Set
ix86_tls_descriptor_calls_expanded_in_cfun. Update RTX
to depend on SP register.
(tls_local_dynamic_base_32): Ditto.
gcc/testsuite/
2014-05-08 Wei Mi <wmi@google.com>
PR target/58066
* gcc.target/i386/pr58066.c: New test.
From-SVN: r210222
Joseph Myers [Thu, 8 May 2014 15:39:32 +0000 (16:39 +0100)]
avx256-unaligned-load-2.c, [...]: Allow packed-single instructions.
* gcc.target/i386/avx256-unaligned-load-2.c,
gcc.target/i386/pr49002-1.c, gcc.target/i386/pr53712.c,
gcc.target/i386/pr53907.c, gcc.target/i386/pr59539-1.c: Allow
packed-single instructions.
From-SVN: r210220
Ramana Radhakrishnan [Thu, 8 May 2014 14:35:40 +0000 (14:35 +0000)]
Neon intrinsics TLC - remove ML
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm_neon.h: Update comment.
* config/arm/neon-docgen.ml: Delete.
* config/arm/neon-gen.ml: Delete.
* doc/arm-neon-intrinsics.texi: Update comment.
From-SVN: r210219
Ramana Radhakrishnan [Thu, 8 May 2014 14:33:05 +0000 (14:33 +0000)]
Neon intrinsics TLC - remove dead code.
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm_neon_builtins.def (vadd, vsub): Only define the v2sf
and v4sf versions.
(vand, vorr, veor, vorn, vbic): Remove.
* config/arm/neon.md (neon_vadd, neon_vsub, neon_vadd_unspec): Adjust
iterator.
(neon_vsub_unspec): Likewise.
(neon_vorr, neon_vand, neon_vbic, neon_veor, neon_vorn): Remove.
From-SVN: r210218
Paolo Carlini [Thu, 8 May 2014 14:30:56 +0000 (14:30 +0000)]
re PR c++/13981 (Give message about incomplete class that might be implicitly upcasted.)
/cp
2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/13981
* typeck.c (convert_for_assignment): Provide an inform for pointers
to incomplete class types.
/testsuite
2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/13981
* g++.dg/diagnostic/pr13981.C: New.
From-SVN: r210217
Ramana Radhakrishnan [Thu, 8 May 2014 14:30:10 +0000 (14:30 +0000)]
Neon intrinsics TLC - Replace intrinsics with GNU C implementations.
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm_neon.h (vadd_s8): GNU C implementation
(vadd_s16): Likewise.
(vadd_s32): Likewise.
(vadd_f32): Likewise.
(vadd_u8): Likewise.
(vadd_u16): Likewise.
(vadd_u32): Likewise.
(vadd_s64): Likewise.
(vadd_u64): Likewise.
(vaddq_s8): Likewise.
(vaddq_s16): Likewise.
(vaddq_s32): Likewise.
(vaddq_s64): Likewise.
(vaddq_f32): Likewise.
(vaddq_u8): Likewise.
(vaddq_u16): Likewise.
(vaddq_u32): Likewise.
(vaddq_u64): Likewise.
(vmul_s8): Likewise.
(vmul_s16): Likewise.
(vmul_s32): Likewise.
(vmul_f32): Likewise.
(vmul_u8): Likewise.
(vmul_u16): Likewise.
(vmul_u32): Likewise.
(vmul_p8): Likewise.
(vmulq_s8): Likewise.
(vmulq_s16): Likewise.
(vmulq_s32): Likewise.
(vmulq_f32): Likewise.
(vmulq_u8): Likewise.
(vmulq_u16): Likewise.
(vmulq_u32): Likewise.
(vsub_s8): Likewise.
(vsub_s16): Likewise.
(vsub_s32): Likewise.
(vsub_f32): Likewise.
(vsub_u8): Likewise.
(vsub_u16): Likewise.
(vsub_u32): Likewise.
(vsub_s64): Likewise.
(vsub_u64): Likewise.
(vsubq_s8): Likewise.
(vsubq_s16): Likewise.
(vsubq_s32): Likewise.
(vsubq_s64): Likewise.
(vsubq_f32): Likewise.
(vsubq_u8): Likewise.
(vsubq_u16): Likewise.
(vsubq_u32): Likewise.
(vsubq_u64): Likewise.
(vand_s8): Likewise.
(vand_s16): Likewise.
(vand_s32): Likewise.
(vand_u8): Likewise.
(vand_u16): Likewise.
(vand_u32): Likewise.
(vand_s64): Likewise.
(vand_u64): Likewise.
(vandq_s8): Likewise.
(vandq_s16): Likewise.
(vandq_s32): Likewise.
(vandq_s64): Likewise.
(vandq_u8): Likewise.
(vandq_u16): Likewise.
(vandq_u32): Likewise.
(vandq_u64): Likewise.
(vorr_s8): Likewise.
(vorr_s16): Likewise.
(vorr_s32): Likewise.
(vorr_u8): Likewise.
(vorr_u16): Likewise.
(vorr_u32): Likewise.
(vorr_s64): Likewise.
(vorr_u64): Likewise.
(vorrq_s8): Likewise.
(vorrq_s16): Likewise.
(vorrq_s32): Likewise.
(vorrq_s64): Likewise.
(vorrq_u8): Likewise.
(vorrq_u16): Likewise.
(vorrq_u32): Likewise.
(vorrq_u64): Likewise.
(veor_s8): Likewise.
(veor_s16): Likewise.
(veor_s32): Likewise.
(veor_u8): Likewise.
(veor_u16): Likewise.
(veor_u32): Likewise.
(veor_s64): Likewise.
(veor_u64): Likewise.
(veorq_s8): Likewise.
(veorq_s16): Likewise.
(veorq_s32): Likewise.
(veorq_s64): Likewise.
(veorq_u8): Likewise.
(veorq_u16): Likewise.
(veorq_u32): Likewise.
(veorq_u64): Likewise.
(vbic_s8): Likewise.
(vbic_s16): Likewise.
(vbic_s32): Likewise.
(vbic_u8): Likewise.
(vbic_u16): Likewise.
(vbic_u32): Likewise.
(vbic_s64): Likewise.
(vbic_u64): Likewise.
(vbicq_s8): Likewise.
(vbicq_s16): Likewise.
(vbicq_s32): Likewise.
(vbicq_s64): Likewise.
(vbicq_u8): Likewise.
(vbicq_u16): Likewise.
(vbicq_u32): Likewise.
(vbicq_u64): Likewise.
(vorn_s8): Likewise.
(vorn_s16): Likewise.
(vorn_s32): Likewise.
(vorn_u8): Likewise.
(vorn_u16): Likewise.
(vorn_u32): Likewise.
(vorn_s64): Likewise.
(vorn_u64): Likewise.
(vornq_s8): Likewise.
(vornq_s16): Likewise.
(vornq_s32): Likewise.
(vornq_s64): Likewise.
(vornq_u8): Likewise.
(vornq_u16): Likewise.
(vornq_u32): Likewise.
(vornq_u64): Likewise.
From-SVN: r210216
Ramana Radhakrishnan [Thu, 8 May 2014 14:23:11 +0000 (14:23 +0000)]
Define UDWtype for longlong.h inclusion in wide-int.cc
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* wide-int.cc (UTItype): Define.
(UDWtype): Define for appropriate W_TYPE_SIZE.
From-SVN: r210215
Marc Glisse [Thu, 8 May 2014 13:17:01 +0000 (15:17 +0200)]
re PR tree-optimization/59100 (requesting optimization of safe rotate function)
2014-05-08 Marc Glisse <marc.glisse@inria.fr>
PR tree-optimization/59100
gcc/
* tree-ssa-phiopt.c: Include tree-inline.h.
(neutral_element_p, absorbing_element_p): New functions.
(value_replacement): Handle conditional binary operations with a
neutral or absorbing element.
gcc/testsuite/
* gcc.dg/tree-ssa/phi-opt-12.c: New file.
* gcc.dg/tree-ssa/phi-opt-13.c: Likewise.
From-SVN: r210212
Richard Biener [Thu, 8 May 2014 12:39:07 +0000 (12:39 +0000)]
tree-ssa-sccvn.c (vn_get_expr_for): Valueize operands before folding the expression.
2014-05-08 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c (vn_get_expr_for): Valueize operands before
folding the expression.
(valueize_expr): Remove.
(visit_reference_op_load): Do not valueize the result of
vn_get_expr_for.
(simplify_binary_expression): Likewise.
(simplify_unary_expression): Likewise.
From-SVN: r210211
Rainer Orth [Thu, 8 May 2014 12:11:14 +0000 (12:11 +0000)]
Don't build libgcc-unwind.map with --disable-shared (PR libgcc/61097)
PR libgcc/61097
* config/t-slibgcc-sld: Only build and install libgcc-unwind.map
if --enable-shared.
From-SVN: r210210
Richard Biener [Thu, 8 May 2014 10:57:53 +0000 (10:57 +0000)]
gimplify.c (gimplify_call_expr): Use saved fnptrtype for looking at TYPE_ARG_TYPES.
2014-05-08 Richard Biener <rguenther@suse.de>
* gimplify.c (gimplify_call_expr): Use saved fnptrtype for
looking at TYPE_ARG_TYPES.
From-SVN: r210209
Richard Biener [Thu, 8 May 2014 10:19:17 +0000 (10:19 +0000)]
gimple-fold.c (gimple_fold_stmt_to_constant_1): Remove pointer propagation special-case.
2014-05-08 Richard Biener <rguenther@suse.de>
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Remove
pointer propagation special-case.
From-SVN: r210208
Paolo Carlini [Thu, 8 May 2014 09:34:49 +0000 (09:34 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
* configure: Regenerate.
From-SVN: r210206
Gary Benson [Thu, 8 May 2014 09:13:44 +0000 (09:13 +0000)]
cp-demangle.c (struct d_component_stack): New structure.
libiberty/
2014-05-08 Gary Benson <gbenson@redhat.com>
* cp-demangle.c (struct d_component_stack): New structure.
(struct d_print_info): New field component_stack.
(d_print_init): Initialize the above.
(d_print_comp_inner): Renamed from d_print_comp.
Do not restore template stack if it would cause a loop.
(d_print_comp): New function.
* testsuite/demangle-expected: New test cases.
From-SVN: r210205
Bin Cheng [Thu, 8 May 2014 09:00:42 +0000 (09:00 +0000)]
tree-affine.c (tree_to_aff_combination): Handle MEM_REF for core part of address expressions.
* tree-affine.c (tree_to_aff_combination): Handle MEM_REF for
core part of address expressions.
From-SVN: r210204
Richard Sandiford [Thu, 8 May 2014 08:00:21 +0000 (08:00 +0000)]
re PR sanitizer/61095 (miscompile: tsan is broken in gcc trunk, works in 4.9)
gcc/testsuite/
PR tree-optimization/61095
* gcc.dg/torture/pr61095.c: New test.
From-SVN: r210203
DJ Delorie [Thu, 8 May 2014 03:08:12 +0000 (23:08 -0400)]
c-cppbuiltin.c (print_bits_of_hex): New.
* c-cppbuiltin.c (print_bits_of_hex): New.
(builtin_define_type_minmax): Print values using hex so as not to
require a pre-computed list of string values.
From-SVN: r210202
Alan Modra [Thu, 8 May 2014 02:05:19 +0000 (11:35 +0930)]
re PR target/60737 (rs6000 expand_block_clear uses word stores on double word pointer)
PR target/60737
* config/rs6000/rs6000.c (expand_block_move): Allow 64-bit
loads and stores when -mno-strict-align at any alignment.
(expand_block_clear): Similarly. Also correct calculation of
instruction count.
From-SVN: r210201
Thomas Preud'homme [Thu, 8 May 2014 01:23:01 +0000 (01:23 +0000)]
re PR middle-end/39246 (FAIL: gcc.dg/uninit-13.c)
2014-05-07 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR middle-end/39246
* tree-complex.c (expand_complex_move): Keep line info when expanding
complex move.
* tree-ssa-uninit.c (warn_uninit): New argument. Ignore assignment
of complex expression. Use new argument to display correct location
for values coming from phi statement.
(warn_uninitialized_vars): Adapt to new signature of warn_uninit.
(warn_uninitialized_phi): Pass location of phi argument to
warn_uninit.
* tree-ssa.c (ssa_undefined_value_p): For SSA_NAME initialized by a
COMPLEX_EXPR, recurse on each part of the COMPLEX_EXPR.
testsuite:
* gcc.dg/uninit-13.c: Move warning on the actual source line where
the uninitialized complex is used.
* gcc.dg/uninit-17.c: New test to check partial initialization of
complex with branches.
* gcc.dg/uninit-17-O0.c: Likewise.
From-SVN: r210200
Thomas Preud'homme [Thu, 8 May 2014 01:20:17 +0000 (01:20 +0000)]
re PR middle-end/39246 (FAIL: gcc.dg/uninit-13.c)
2014-05-07 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR middle-end/39246
* tree-complex.c (expand_complex_move): Keep line info when expanding
complex move.
* tree-ssa-uninit.c (warn_uninit): New argument. Ignore assignment
of complex expression. Use new argument to display correct location
for values coming from phi statement.
(warn_uninitialized_vars): Adapt to new signature of warn_uninit.
(warn_uninitialized_phi): Pass location of phi argument to
warn_uninit.
* tree-ssa.c (ssa_undefined_value_p): For SSA_NAME initialized by a
COMPLEX_EXPR, recurse on each part of the COMPLEX_EXPR.
testsuite:
* gcc.dg/uninit-13.c: Move warning on the actual source line where
the uninitialized complex is used.
* gcc.dg/uninit-17.c: New test to check partial initialization of
complex with branches.
* gcc.dg/uninit-17-O0.c: Likewise.
From-SVN: r210199
Thomas Preud'homme [Thu, 8 May 2014 01:19:11 +0000 (01:19 +0000)]
re PR middle-end/39246 (FAIL: gcc.dg/uninit-13.c)
2014-05-07 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR middle-end/39246
* tree-complex.c (expand_complex_move): Keep line info when expanding
complex move.
* tree-ssa-uninit.c (warn_uninit): New argument. Ignore assignment
of complex expression. Use new argument to display correct location
for values coming from phi statement.
(warn_uninitialized_vars): Adapt to new signature of warn_uninit.
(warn_uninitialized_phi): Pass location of phi argument to
warn_uninit.
* tree-ssa.c (ssa_undefined_value_p): For SSA_NAME initialized by a
COMPLEX_EXPR, recurse on each part of the COMPLEX_EXPR.
testsuite:
* gcc.dg/uninit-13.c: Move warning on the actual source line where
the uninitialized complex is used.
* gcc.dg/uninit-17.c: New test to check partial initialization of
complex with branches.
* gcc.dg/uninit-17-O0.c: Likewise.
From-SVN: r210198
GCC Administrator [Thu, 8 May 2014 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210197
Ian Lance Taylor [Wed, 7 May 2014 22:22:29 +0000 (22:22 +0000)]
mksysinfo: Define some more non-trivial TIOC constants.
From-SVN: r210192
Segher Boessenkool [Wed, 7 May 2014 22:00:58 +0000 (00:00 +0200)]
rs6000: New attributes for load/store: "sign_extend", "update" and "indexed"
The new attributes replace the instruction types *_ext*, *_u, *_ux.
This simplifies all code that does not care about the addressing modes,
putting the burden on the code that does care (mostly the scheduling
descriptions for certain CPUs).
It fixes a few minor bugs in the process.
The "update" and "indexed" attributes are automatic for any insn that
has a MEM as operand 0 or 1. Other insns have to set it manually, if
they do not like the default (which is "no"). Insns that are type
load/store/fpload/fpstore but have fewer than two operands need to set
it too, or the compiler will crash. There are very few of those.
This tries not to change semantics anywhere; in particular, the string
and multiple instructions set both "update" and "indexed" (although
they are neither).
From-SVN: r210190
Ian Lance Taylor [Wed, 7 May 2014 21:48:29 +0000 (21:48 +0000)]
mksysinfo: Define CLONE flags.
From-SVN: r210189
Oleg Endo [Wed, 7 May 2014 20:08:23 +0000 (20:08 +0000)]
re PR target/60884 ([SH] improve inlined strlen-like builtin functions)
gcc/
PR target/60884
* config/sh/sh-mem.cc (sh_expand_strlen): Use loop when emitting
unrolled byte insns. Emit address increments after move insns.
gcc/testsuite/
PR target/60884
* gcc.target/sh/pr53976-1.c (test_02): Remove inappropriate test case.
(test_03): Rename to test_02.
From-SVN: r210187
David Malcolm [Wed, 7 May 2014 19:35:23 +0000 (19:35 +0000)]
Const-correctness of gimple_call_builtin_p
gcc/
2014-05-07 David Malcolm <dmalcolm@redhat.com>
* gimple.h (gimple_builtin_call_types_compatible_p): Accept a
const_gimple, rather than a gimple.
(gimple_call_builtin_p): Likewise, for the three variants.
* gimple.c (gimple_builtin_call_types_compatible_p): Likewise.
(gimple_call_builtin_p): Likewise, for the three variants.
From-SVN: r210185
Paolo Carlini [Wed, 7 May 2014 19:31:24 +0000 (19:31 +0000)]
re PR c++/61083 ([C++11] Ambiguous member pointer results in failure, even if used in SFINAE.)
/cp
2014-05-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61083
* pt.c (convert_nontype_argument): Protect all the error calls
with complain & tf_error.
/testsuite
2014-05-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61083
* g++.dg/cpp0x/sfinae50.C: New.
From-SVN: r210184
Richard Sandiford [Wed, 7 May 2014 18:00:59 +0000 (18:00 +0000)]
re PR sanitizer/61095 (miscompile: tsan is broken in gcc trunk, works in 4.9)
gcc/
PR tree-optimization/61095
* tree-ssanames.c (get_nonzero_bits): Fix type extension in wi::shwi.
From-SVN: r210181
Charles Baylis [Wed, 7 May 2014 15:45:32 +0000 (15:45 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2014-05-07 Charles Baylis <charles.baylis@linaro.org>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r210164
Jonathan Wakely [Wed, 7 May 2014 14:43:22 +0000 (15:43 +0100)]
re PR libstdc++/61086 (ubsan detects undefined behaviour in the standard library)
PR libstdc++/61086
* include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
Remove.
* include/bits/stl_vector.h (vector::insert, vector::erase): Use
arithmetic to obtain a mutable iterator from const_iterator.
* include/bits/vector.tcc (vector::insert): Likewise.
* include/debug/vector (vector::erase): Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r210162
Paolo Carlini [Wed, 7 May 2014 14:30:23 +0000 (14:30 +0000)]
re PR c++/61080 (Spurious no return statement warning with deleted operators)
/cp
2014-05-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61080
* pt.c (instantiate_decl): Avoid generating the body of a
deleted function.
/testsuite
2014-05-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61080
* g++.dg/cpp0x/deleted7.C: New.
From-SVN: r210161
Richard Biener [Wed, 7 May 2014 14:19:14 +0000 (14:19 +0000)]
re PR tree-optimization/61034 (Optimizing takes too many passes)
2014-05-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/61034
* tree-ssa-alias.c (call_may_clobber_ref_p_1): Export.
(maybe_skip_until): Use translate to take into account
lattices when trying to do disambiguations.
(get_continuation_for_phi_1): Likewise.
(get_continuation_for_phi): Adjust for added translate
arguments.
(walk_non_aliased_vuses): Likewise.
* tree-ssa-alias.h (get_continuation_for_phi): Adjust
prototype.
(walk_non_aliased_vuses): Likewise.
(call_may_clobber_ref_p_1): Declare.
* tree-ssa-sccvn.c (vn_reference_lookup_3): Also
disambiguate against calls. Stop early if we are
only supposed to disambiguate.
* tree-ssa-pre.c (translate_vuse_through_block): Adjust.
* g++.dg/tree-ssa/pr61034.C: New testcase.
From-SVN: r210160
Jonathan Wakely [Wed, 7 May 2014 14:12:37 +0000 (15:12 +0100)]
re PR libstdc++/61023 (set/map move assignment doesn't move (or copy) the comparator)
PR libstdc++/61023
* include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
comparison function.
* testsuite/23_containers/set/cons/61023.cc: New.
From-SVN: r210159
Joern Rennecke [Wed, 7 May 2014 13:21:59 +0000 (13:21 +0000)]
epiphany.c (epiphany_handle_interrupt_attribute): Emit an error when the function has arguments.
gcc:
* config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
Emit an error when the function has arguments.
gcc/testsuite:
* gcc.target/epiphany/isr-arg.c: New file.
From-SVN: r210157
Thomas Schwinge [Wed, 7 May 2014 13:06:46 +0000 (15:06 +0200)]
More gcc/loop-unswitch.c cleanup.
gcc/
* cfgloop.h (unswitch_loops): Remove.
* doc/passes.texi: Remove references to loop-unswitch.c
* timevar.def (TV_LOOP_UNSWITCH): Remove.
From-SVN: r210156
Evgeny Stupachenko [Wed, 7 May 2014 12:10:22 +0000 (12:10 +0000)]
re PR tree-optimization/52252 (An opportunity for x86 gcc vectorizer (gain up to 3 times))
gcc/
* tree-vect-data-refs.c (vect_grouped_load_supported): New
check for loads group of length 3.
(vect_permute_load_chain): New permutations for loads group of
length 3.
* tree-vect-stmts.c (vect_model_load_cost): Change cost
of vec_perm_shuffle for the new permutations.
gcc/testsuite/
PR tree-optimization/52252
* gcc.dg/vect/pr52252-ld.c: Test on loads group of size 3.
From-SVN: r210155
Alan Lawrence [Wed, 7 May 2014 10:58:43 +0000 (10:58 +0000)]
Add execution + assembler tests of AArch64 REV Neon Intrinsics.
* gcc.target/aarch64/simd/vrev16p8_1.c: New file.
* gcc.target/aarch64/simd/vrev16p8.x: New file.
* gcc.target/aarch64/simd/vrev16qp8_1.c: New file.
* gcc.target/aarch64/simd/vrev16qp8.x: New file.
* gcc.target/aarch64/simd/vrev16qs8_1.c: New file.
* gcc.target/aarch64/simd/vrev16qs8.x: New file.
* gcc.target/aarch64/simd/vrev16qu8_1.c: New file.
* gcc.target/aarch64/simd/vrev16qu8.x: New file.
* gcc.target/aarch64/simd/vrev16s8_1.c: New file.
* gcc.target/aarch64/simd/vrev16s8.x: New file.
* gcc.target/aarch64/simd/vrev16u8_1.c: New file.
* gcc.target/aarch64/simd/vrev16u8.x: New file.
* gcc.target/aarch64/simd/vrev32p16_1.c: New file.
* gcc.target/aarch64/simd/vrev32p16.x: New file.
* gcc.target/aarch64/simd/vrev32p8_1.c: New file.
* gcc.target/aarch64/simd/vrev32p8.x: New file.
* gcc.target/aarch64/simd/vrev32qp16_1.c: New file.
* gcc.target/aarch64/simd/vrev32qp16.x: New file.
* gcc.target/aarch64/simd/vrev32qp8_1.c: New file.
* gcc.target/aarch64/simd/vrev32qp8.x: New file.
* gcc.target/aarch64/simd/vrev32qs16_1.c: New file.
* gcc.target/aarch64/simd/vrev32qs16.x: New file.
* gcc.target/aarch64/simd/vrev32qs8_1.c: New file.
* gcc.target/aarch64/simd/vrev32qs8.x: New file.
* gcc.target/aarch64/simd/vrev32qu16_1.c: New file.
* gcc.target/aarch64/simd/vrev32qu16.x: New file.
* gcc.target/aarch64/simd/vrev32qu8_1.c: New file.
* gcc.target/aarch64/simd/vrev32qu8.x: New file.
* gcc.target/aarch64/simd/vrev32s16_1.c: New file.
* gcc.target/aarch64/simd/vrev32s16.x: New file.
* gcc.target/aarch64/simd/vrev32s8_1.c: New file.
* gcc.target/aarch64/simd/vrev32s8.x: New file.
* gcc.target/aarch64/simd/vrev32u16_1.c: New file.
* gcc.target/aarch64/simd/vrev32u16.x: New file.
* gcc.target/aarch64/simd/vrev32u8_1.c: New file.
* gcc.target/aarch64/simd/vrev32u8.x: New file.
* gcc.target/aarch64/simd/vrev64f32_1.c: New file.
* gcc.target/aarch64/simd/vrev64f32.x: New file.
* gcc.target/aarch64/simd/vrev64p16_1.c: New file.
* gcc.target/aarch64/simd/vrev64p16.x: New file.
* gcc.target/aarch64/simd/vrev64p8_1.c: New file.
* gcc.target/aarch64/simd/vrev64p8.x: New file.
* gcc.target/aarch64/simd/vrev64qf32_1.c: New file.
* gcc.target/aarch64/simd/vrev64qf32.x: New file.
* gcc.target/aarch64/simd/vrev64qp16_1.c: New file.
* gcc.target/aarch64/simd/vrev64qp16.x: New file.
* gcc.target/aarch64/simd/vrev64qp8_1.c: New file.
* gcc.target/aarch64/simd/vrev64qp8.x: New file.
* gcc.target/aarch64/simd/vrev64qs16_1.c: New file.
* gcc.target/aarch64/simd/vrev64qs16.x: New file.
* gcc.target/aarch64/simd/vrev64qs32_1.c: New file.
* gcc.target/aarch64/simd/vrev64qs32.x: New file.
* gcc.target/aarch64/simd/vrev64qs8_1.c: New file.
* gcc.target/aarch64/simd/vrev64qs8.x: New file.
* gcc.target/aarch64/simd/vrev64qu16_1.c: New file.
* gcc.target/aarch64/simd/vrev64qu16.x: New file.
* gcc.target/aarch64/simd/vrev64qu32_1.c: New file.
* gcc.target/aarch64/simd/vrev64qu32.x: New file.
* gcc.target/aarch64/simd/vrev64qu8_1.c: New file.
* gcc.target/aarch64/simd/vrev64qu8.x: New file.
* gcc.target/aarch64/simd/vrev64s16_1.c: New file.
* gcc.target/aarch64/simd/vrev64s16.x: New file.
* gcc.target/aarch64/simd/vrev64s32_1.c: New file.
* gcc.target/aarch64/simd/vrev64s32.x: New file.
* gcc.target/aarch64/simd/vrev64s8_1.c: New file.
* gcc.target/aarch64/simd/vrev64s8.x: New file.
* gcc.target/aarch64/simd/vrev64u16_1.c: New file.
* gcc.target/aarch64/simd/vrev64u16.x: New file.
* gcc.target/aarch64/simd/vrev64u32_1.c: New file.
* gcc.target/aarch64/simd/vrev64u32.x: New file.
* gcc.target/aarch64/simd/vrev64u8_1.c: New file.
* gcc.target/aarch64/simd/vrev64u8.x: New file.
From-SVN: r210153
Alan Lawrence [Wed, 7 May 2014 10:51:15 +0000 (10:51 +0000)]
Add execution + assembler tests of AArch64 EXT intrinsics.
gcc.target/aarch64/simd/ext_f32.x: New file.
gcc.target/aarch64/simd/ext_f32_1.c: New file.
gcc.target/aarch64/simd/ext_p16.x: New file.
gcc.target/aarch64/simd/ext_p16_1.c: New file.
gcc.target/aarch64/simd/ext_p8.x: New file.
gcc.target/aarch64/simd/ext_p8_1.c: New file.
gcc.target/aarch64/simd/ext_s16.x: New file.
gcc.target/aarch64/simd/ext_s16_1.c: New file.
gcc.target/aarch64/simd/ext_s32.x: New file.
gcc.target/aarch64/simd/ext_s32_1.c: New file.
gcc.target/aarch64/simd/ext_s64.x: New file.
gcc.target/aarch64/simd/ext_s64_1.c: New file.
gcc.target/aarch64/simd/ext_s8.x: New file.
gcc.target/aarch64/simd/ext_s8_1.c: New file.
gcc.target/aarch64/simd/ext_u16.x: New file.
gcc.target/aarch64/simd/ext_u16_1.c: New file.
gcc.target/aarch64/simd/ext_u32.x: New file.
gcc.target/aarch64/simd/ext_u32_1.c: New file.
gcc.target/aarch64/simd/ext_u64.x: New file.
gcc.target/aarch64/simd/ext_u64_1.c: New file.
gcc.target/aarch64/simd/ext_u8.x: New file.
gcc.target/aarch64/simd/ext_u8_1.c: New file.
gcc.target/aarch64/simd/ext_f64.c: New file.
gcc.target/aarch64/simd/extq_f32.x: New file.
gcc.target/aarch64/simd/extq_f32_1.c: New file.
gcc.target/aarch64/simd/extq_p16.x: New file.
gcc.target/aarch64/simd/extq_p16_1.c: New file.
gcc.target/aarch64/simd/extq_p8.x: New file.
gcc.target/aarch64/simd/extq_p8_1.c: New file.
gcc.target/aarch64/simd/extq_s16.x: New file.
gcc.target/aarch64/simd/extq_s16_1.c: New file.
gcc.target/aarch64/simd/extq_s32.x: New file.
gcc.target/aarch64/simd/extq_s32_1.c: New file.
gcc.target/aarch64/simd/extq_s64.x: New file.
gcc.target/aarch64/simd/extq_s64_1.c: New file.
gcc.target/aarch64/simd/extq_s8.x: New file.
gcc.target/aarch64/simd/extq_s8_1.c: New file.
gcc.target/aarch64/simd/extq_u16.x: New file.
gcc.target/aarch64/simd/extq_u16_1.c: New file.
gcc.target/aarch64/simd/extq_u32.x: New file.
gcc.target/aarch64/simd/extq_u32_1.c: New file.
gcc.target/aarch64/simd/extq_u64.x: New file.
gcc.target/aarch64/simd/extq_u64_1.c: New file.
gcc.target/aarch64/simd/extq_u8.x: New file.
gcc.target/aarch64/simd/extq_u8_1.c: New file.
gcc.target/aarch64/simd/extq_f64.c: New file.
From-SVN: r210152
Alan Lawrence [Wed, 7 May 2014 10:40:41 +0000 (10:40 +0000)]
Reimplement AArch64 TRN intrinsics with __builtin_shuffle.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/vtrns32.c: Expect zip[12] insn rather than trn[12].
* gcc.target/aarch64/vtrnu32.c: Likewise.
* gcc.target/aarch64/vtrnf32.c: Likewise.
gcc/ChangeLog:
* config/aarch64/arm_neon.h (vtrn1_f32, vtrn1_p8, vtrn1_p16, vtrn1_s8,
vtrn1_s16, vtrn1_s32, vtrn1_u8, vtrn1_u16, vtrn1_u32, vtrn1q_f32,
vtrn1q_f64, vtrn1q_p8, vtrn1q_p16, vtrn1q_s8, vtrn1q_s16, vtrn1q_s32,
vtrn1q_s64, vtrn1q_u8, vtrn1q_u16, vtrn1q_u32, vtrn1q_u64, vtrn2_f32,
vtrn2_p8, vtrn2_p16, vtrn2_s8, vtrn2_s16, vtrn2_s32, vtrn2_u8,
vtrn2_u16, vtrn2_u32, vtrn2q_f32, vtrn2q_f64, vtrn2q_p8, vtrn2q_p16,
vtrn2q_s8, vtrn2q_s16, vtrn2q_s32, vtrn2q_s64, vtrn2q_u8, vtrn2q_u16,
vtrn2q_u32, vtrn2q_u64): Replace temporary asm with __builtin_shuffle.
From-SVN: r210151
Thomas Schwinge [Wed, 7 May 2014 10:31:26 +0000 (12:31 +0200)]
Really delete gcc/loop-unswitch.c.
gcc/
* loop-unswitch.c: Delete.
From-SVN: r210150
Richard Biener [Wed, 7 May 2014 10:24:38 +0000 (10:24 +0000)]
configure.ac: Always set need_64bit_hwint to yes.
2014-05-07 Richard Biener <rguenther@suse.de>
libcpp/
* configure.ac: Always set need_64bit_hwint to yes.
* configure: Regenerated.
* config.gcc: Always set need_64bit_hwint to yes.
From-SVN: r210149