aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-10-06PR82396 workaroundWilco Dijkstra2-1/+7
r253236 broke AArch64 bootstrap. This is a temporary workaround that disables qsort checking in the scheduler to enable continued development and testing on AArch64. This will be removed once the autopref scheduling code has been fixed. gcc/ PR rtl-optimization/82396 * haifa-sched.c (ready_sort_real): Disable qsort checking. From-SVN: r253487
2017-10-06graphite-dependences.c (scop_get_reads): Move code to...Sebastian Pop2-57/+29
2017-10-06 Sebastian Pop <sebpop@gmail.com> * graphite-dependences.c (scop_get_reads): Move code to... (scop_get_must_writes): Move code to... (scop_get_may_writes): Move code to... (scop_get_reads_and_writes): ... here. (scop_get_dependences): Call scop_get_reads_and_writes. From-SVN: r253486
2017-10-06re PR c++/60153 (internal compiler error: in dependent_type_p, at cp/pt.c:21951)Paolo Carlini2-0/+37
2017-10-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60153 * g++.dg/cpp0x/variadic-crash3.C: New. From-SVN: r253484
2017-10-06re PR tree-optimization/82434 (-fstore-merging does not work reliably.)Jakub Jelinek7-73/+102
PR tree-optimization/82434 * fold-const.h (can_native_encode_type_p, can_native_encode_string_p): Remove. * fold-const.c (native_encode_int): Formatting fixes. If ptr is NULL, don't encode anything, just return what would be otherwise returned. (native_encode_fixed, native_encode_complex, native_encode_vector): Likewise. (native_encode_string): Likewise. Inline by hand can_native_encode_string_p. (can_native_encode_type_p): Remove. (can_native_encode_string_p): Remove. * tree-vect-stmts.c (vectorizable_store): Instead of testing just STRING_CSTs using can_native_encode_string_p, test all CONSTANT_CLASS_P values using native_encode_expr with NULL ptr. * gimple-ssa-store-merging.c (encode_tree_to_bitpos): Remove last argument from native_encode_expr. (rhs_valid_for_store_merging_p): Use native_encode_expr with NULL ptr. (pass_store_merging::execute): Don't unnecessarily look for 3 stmts, but just 2. * gcc.dg/store_merging_9.c: New test. From-SVN: r253483
2017-10-06re PR tree-optimization/82397 (qsort comparator non-negative on sorted ↵Richard Biener4-31/+64
output: 1 in vect_analyze_data_ref_accesses) 2017-10-06 Richard Biener <rguenther@suse.de> PR tree-optimization/82397 * tree-vect-data-refs.c (dr_group_sort_cmp): Do not use operand_equal_p but rely on data_ref_compare_tree for detecting equalities. (vect_analyze_data_ref_accesses): Use data_ref_compare_tree to match up with dr_group_sort_cmp. * gfortran.dg/pr82397.f: New testcase. From-SVN: r253482
2017-10-06PR82322: S/390: Fix vec_ceil and friendsAndreas Krebbel5-0/+41
vec_ceil and friends are expanded by vecintrin.h to __builtin_s390_vfi which is an overloaded builtin being replaced by either __builtin_s390_vfisb or __builtin_s390_vfidb depending on its argument types. The problem in this PR was that the overloaded builtin definition of __builtin_s390_vfi was missing in s390-builtins.def. gcc/ChangeLog: 2017-10-06 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/82322 * config/s390/s390-builtins.def (s390_vfi): Define new overloaded builtin. * config/s390/s390-builtin-types.def: Regenerate. gcc/testsuite/ChangeLog: 2017-10-06 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/82322 * gcc.target/s390/zvector/pr82322.c: New test. From-SVN: r253481
2017-10-06PR82317: S/390: Fix vec_min/vec_max builtins for IBM z13.Andreas Krebbel5-40/+72
With IBM z14 a hardware instruction for floating point min and max has been added while for IBM z13 we emulated min/max for vector double with compare and select. This testcase makes sure that we fall back to the emulated variant when compiling for z13. gcc/ChangeLog: 2017-10-06 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/82317 * config/s390/s390-builtin-types.def: Regenerate. * config/s390/s390-builtins.def (s390_vfmaxdb_4, s390_vfmindb_4): Change flag from B_VXE to B_VX. (s390_vec_min_dbl): Remove B_VXE flag. gcc/testsuite/ChangeLog: 2017-10-06 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/82317 * gcc.target/s390/zvector/pr82317.c: New test. From-SVN: r253480
2017-10-06re PR tree-optimization/82422 ([graphite] ICE in set_codegen_error, at ↵Richard Biener2-0/+18
graphite-isl-ast-to-gimple.c:248) 2017-10-06 Richard Biener <rguenther@suse.de> PR tree-optimization/82422 * gcc.dg/graphite/pr82422.c: New testcase. From-SVN: r253479
2017-10-06re PR tree-optimization/82421 ([graphite] ICE: tree check: expected ↵Richard Biener2-0/+26
ssa_name, have integer_cst in get_rename, at graphite-isl-ast-to-gimple.c:1127) 2017-10-06 Richard Biener <rguenther@suse.de> PR tree-optimization/82421 * gcc.dg/graphite/pr82421.c: New testcase. From-SVN: r253478
2017-10-06re PR c/82437 (false-positive -Wtautological-compare warning with -std=gnu89)Jakub Jelinek4-5/+35
PR c/82437 * c-warn.c (warn_tautological_bitwise_comparison): Instead of using to_widest use wide_int with the larger of the two precisions. * c-c++-common/Wtautological-compare-6.c: New test. From-SVN: r253476
2017-10-06graphite-isl-ast-to-gimple.c: Include ssa.h and tree-ssa.h.Richard Biener30-1711/+399
2017-10-06 Richard Biener <rguenther@suse.de> * graphite-isl-ast-to-gimple.c: Include ssa.h and tree-ssa.h. (translate_isl_ast_to_gimple::translate_pending_phi_nodes, translate_isl_ast_to_gimple::is_valid_rename, translate_isl_ast_to_gimple::get_rename, translate_isl_ast_to_gimple::get_def_bb_for_const, translate_isl_ast_to_gimple::get_new_name, translate_isl_ast_to_gimple::collect_all_ssa_names, translate_isl_ast_to_gimple::copy_loop_phi_args, translate_isl_ast_to_gimple::collect_all_ssa_names, translate_isl_ast_to_gimple::copy_loop_phi_args, translate_isl_ast_to_gimple::copy_loop_phi_nodes, translate_isl_ast_to_gimple::add_close_phis_to_merge_points, translate_isl_ast_to_gimple::add_close_phis_to_outer_loops, translate_isl_ast_to_gimple::copy_loop_close_phi_args, translate_isl_ast_to_gimple::copy_loop_close_phi_nodes, translate_isl_ast_to_gimple::copy_cond_phi_args, translate_isl_ast_to_gimple::copy_cond_phi_nodes, translate_isl_ast_to_gimple::edge_for_new_close_phis, translate_isl_ast_to_gimple::add_phi_arg_for_new_expr, translate_isl_ast_to_gimple::rename_uses, translate_isl_ast_to_gimple::rename_all_uses): Remove. (translate_isl_ast_to_gimple::get_rename_from_scev): Simplify. (set_rename_for_each_def): Likewise. (graphite_copy_stmts_from_block): Handle debug stmt resetting here. Handle rewriting SCEV analyzable uses here. (copy_bb_and_scalar_dependences): Generate code for PHI copy-in/outs. (graphite_regenerate_ast_isl): Adjust. * graphite-scop-detection.c (trivially_empty_bb_p): Move to sese.[ch]. (add_write, add_read): New functions. (build_cross_bb_scalars_def): Use it and simplify. (build_cross_bb_scalars_use): Likewise. (graphite_find_cross_bb_scalar_vars): Inline into... (try_generate_gimple_bb): ...here. Add dependences for PHIs, simulating out-of-SSA. Compute liveout and add dependencies. (build_scops): Force an empty entry block. * sese.h (sese_info_t::liveout, sese_info_t::debug_liveout): New members. (sese_build_liveouts): Declare. (sese_trivially_empty_bb_p): Likewise. * sese.c (sese_build_liveouts_bb): Properly handle PHIs, compute liveout and debug_liveout. (sese_bad_liveouts_use): Remove. (sese_reset_debug_liveouts_bb): Likewise. (sese_reset_debug_liveouts): Rewrite in terms of debug_liveout. (sese_build_liveouts): Build liveout and debug_liveout and store it in region. (new_sese_info): Adjust. (free_sese_info): Likewise. (sese_insert_phis_for_liveouts): Reset debug stmts from here, do not build liveout here. (move_sese_in_condition): Adjust region entry. (scev_analyzable_p): Match up with chrec_apply requirements. (sese_trivially_empty_bb_p): New. * tree-into-ssa.c (get_reaching_def): Properly support generating default-defs for incremental rewrite of anonymous names. * gcc.dg/graphite/id-15.c: No longer expect a code generation error. * gcc.dg/graphite/id-16.c: Likewise. * gcc.dg/graphite/pr46168.c: Likewise. * gcc.dg/graphite/pr68756.c: Likewise. * gcc.dg/graphite/pr69728.c: Likewise. * gcc.dg/graphite/pr71575-2.c: Likewise. * gcc.dg/graphite/pr77362.c: Likewise. * gcc.dg/graphite/pr81373.c: Likewise. * gcc.dg/graphite/run-id-pr67700-1.c: Likewise. * gfortran.dg/graphite/interchange-1.f: Likewise. * gfortran.dg/graphite/pr42334-1.f: Likewise. * gfortran.dg/graphite/pr42393-1.f90: Likewise. * gfortran.dg/graphite/pr42393.f90: Likewise. * gfortran.dg/graphite/pr47019.f: Likewise. * gfortran.dg/graphite/id-17.f: Likewise. * gfortran.dg/graphite/id-19.f: Likewise. * gfortran.dg/graphite/run-id-2.f90: Likewise. * gfortran.dg/graphite/pr42326-1.f90: Likewise. * gfortran.dg/graphite/pr42326.f90: Likewise. * gfortran.dg/graphite/pr68550-2.f90: Likewise. * gfortran.dg/graphite/pr29581.f90: Likewise. No longer expect a code generation error. * gfortran.dg/graphite/run-id-3.f90: Likewise. * gfortran.dg/graphite/pr29832.f90: Likewise. From-SVN: r253475
2017-10-06graphite-sese-to-poly.c (extract_affine): For casts increasing precision do ↵Richard Biener2-5/+17
not perform modulo reduction. 2017-10-06 Richard Biener <rguenther@suse.de> * graphite-sese-to-poly.c (extract_affine): For casts increasing precision do not perform modulo reduction. From-SVN: r253474
2017-10-06re PR tree-optimization/82436 (465.tonto ICE in vect_get_slp_vect_defs, at ↵Richard Biener4-5/+61
tree-vect-slp.c:3410) 2017-10-06 Richard Biener <rguenther@suse.de> PR tree-optimization/82436 * tree-vect-slp.c (vect_supported_load_permutation_p): More conservatively choose the vectorization factor when checking whether we can perform the required load permutation. (vect_transform_slp_perm_load): Assert when we may not fail. * gcc.dg/vect/pr82436.c: New testcase. From-SVN: r253473
2017-10-06Daily bump.GCC Administrator1-1/+1
From-SVN: r253472
2017-10-05compiler: drop special handling of unexported func/var assembler namesIan Lance Taylor4-38/+21
For example, for the package math/big, we used to generate unexported names as `big.trim` and exported names as `math_big.NewInt`. After this change we will use `math_big` consistently. Reviewed-on: https://go-review.googlesource.com/68651 From-SVN: r253468
2017-10-05rs6000: Fix an error message in sysv4.hSegher Boessenkool2-1/+6
While looking at PR82411, I got the error message error: '-msdata=-mcall' and 'eabi-linux' are incompatible which caused some head-scratching. * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Correct error message for incompatible -msdata=* and -mcall-* options. From-SVN: r253467
2017-10-05* call.c (convert_arg_to_ellipsis): Use the result of force_rvalue.Jason Merrill3-12/+33
From-SVN: r253465
2017-10-05Fix new testsuite failure on newlib targetsJonathan Wakely2-0/+5
* testsuite/20_util/to_chars/1.cc: Add dg-require-string-conversions. From-SVN: r253463
2017-10-05c-pretty-print.c (pp_c_parameter_type_list): Print ...Bernd Edlinger4-0/+26
2017-10-05 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-pretty-print.c (pp_c_parameter_type_list): Print ... for variadic functions. testsuite: 2017-10-05 Bernd Edlinger <bernd.edlinger@hotmail.de> * gcc.dg/Wincompatible-pointer-types-1.c: New test. From-SVN: r253460
2017-10-05compiler: centralize all symbol name handlingIan Lance Taylor10-806/+1145
Consolidate all symbol name handling into the new file names.cc. This is intended to define all the names that will appear in the generated assembly code. Names that will not appear in the assembly code, such as local variable names or label names, remain where they are. This consolidation is not intended to change any of the existing symbol names. Tested by building without and without this patch and comparing the libgo symbol table. Reviewed-on: https://go-review.googlesource.com/68310 * Make-lang.in (GO_OBJS): Add go/names.o. From-SVN: r253458
2017-10-05elf.c (elf_zlib_fetch): Change pval argument to uint64_t *.Ian Lance Taylor3-16/+47
* elf.c (elf_zlib_fetch): Change pval argument to uint64_t *. Read a four byte integer. (elf_zlib_inflate): Change val to uint64_t. Align pin to a 32-bit boundary before ever calling elf_zlib_fetch. * ztest.c (test_large): Simplify print statements a bit. From-SVN: r253456
2017-10-05re PR ada/82393 (Compilation error on cygwin64)Eric Botcazou3-14/+10
PR ada/82393 * mingw32.h (_O_U8TEXT, _O_U16TEXT, _O_WTEXT): Delete. * sysdep.c (__gnat_set_mode ): Use DJGPP version for Cygwin. From-SVN: r253454
2017-10-05i386.c (ia32_multipass_dfa_lookahead): Default to issue rate for post-reload ↵Jan Hubicka2-38/+12
scheduling. * i386.c (ia32_multipass_dfa_lookahead): Default to issue rate for post-reload scheduling. From-SVN: r253453
2017-10-05slp-perm-9.c: Use vect_sizes_16B_8B.Tamar Christina5-3/+31
gcc/testsuite/ 2017-10-05 Tamar Christina <tamar.christina@arm.com> * gcc.dg/vect/slp-perm-9.c: Use vect_sizes_16B_8B. * lib/target-supports.exp (vect_sizes_16B_8B): New. gcc/ 2017-10-05 Tamar Christina <tamar.christina@arm.com> * doc/sourcebuild.texi (vect_sizes_16B_8B, vect_sizes_32B_16B): New. From-SVN: r253452
2017-10-05vect-align-1.c: Fix vect_hw_misalign condition.Tamar Christina4-4/+10
2017-09-28 Tamar Christina <tamar.christina@arm.com> * gcc.dg/vect/vect-align-1.c: Fix vect_hw_misalign condition. * gcc.dg/vect/vect-align-2.c: Likewise. * gcc.dg/vect/vect-multitypes-1.c: Likewise From-SVN: r253451
2017-10-05i386.c (znver1_cost): Set branch_cost to 3 (instead of 2) to improve monte ↵Jan Hubicka2-1/+6
carlo in scimark. * i386.c (znver1_cost): Set branch_cost to 3 (instead of 2) to improve monte carlo in scimark. From-SVN: r253449
2017-10-05i386.c (ix86_size_cost, [...]): Set reassociation width to 1.Jan Hubicka4-48/+97
* i386.c (ix86_size_cost, i386_cost, i486_cost, pentium_cost, lakemont_cost, pentiumpro_cost, geode_cost, k6_cost, athlon_cost, k8_cost, amdfam10_cost, btver1_cost, btver2_cost, pentium4_cost, nocona_cost): Set reassociation width to 1. (bdver1_cost, bdver2_cost, bdver3_cost, bdver4_cost): Set reassociation width to 2 for fp operations and 1 otherwise. (znver1_cost): Set scalar reassoc width to 4 and vector to 3 and 6 for int and fp. (atom_cost): Set reassociation width to 2. (slm_cost, generic_cost): Set fp reassociation width to 2 and 1 otherwise. (intel_cost): Set fp reassociation width to 4 and 1 otherwise. (core_cost): Set fp reassociation width to 4 and vector to 2. (ix86_reassociation_width): Rewrite using cost table; special case plus/minus on Zen; honor X86_TUNE_SSE_SPLIT_REGS and TARGET_AVX128_OPTIMAL. * i386.h (processor_costs): Add reassoc_int, reassoc_fp, reassoc_vec_int, reassoc_vec_fp. (TARGET_VECTOR_PARALLEL_EXECUTION, TARGET_REASSOC_INT_TO_PARALLEL, TARGET_REASSOC_FP_TO_PARALLEL): Remove. * x86-tune.def (X86_TUNE_REASSOC_INT_TO_PARALLEL): Remove. (X86_TUNE_REASSOC_FP_TO_PARALLEL): Remove. (X86_TUNE_VECTOR_PARALLEL_EXECUTION): Remove. From-SVN: r253448
2017-10-05Re: [PATCH] C++ warning on vexing parseNathan Sidwell8-0/+137
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00249.html gcc/cp/ Warn on MVP declarations * cp-tree.h (struct cp_declarator): Add parenthesized field. * decl.c (grokdeclarator): Warn about unnecessary parens. * parser.c (make_declarator): Init parenthesized field. (cp_parser_direct_declarator): Set parenthesized field. gcc/ * doc/invoke.texi (Wparentheses): Document C++ MVP behaviour. gcc/testsuite/ * g++.dg/warn/mvp.C: New. From-SVN: r253446
2017-10-05[C++ PATCH] Kill IDENTIFIER_GLOBAL_VALUENathan Sidwell11-58/+70
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00239.html Kill IDENTIFIER_GLOBAL_VALUE, SET_IDENTIFIER_GLOBAL_VALUE * cp-tree.h (IDENTIFIER_GLOBAL_VALUE, SET_IDENTIFIER_GLOBAL_VALUE): Delete. * name-lookup.h (set_global_binding): Remove NAME parm. (get_global_binding): New inline fn. * name-lookup.c (set_global_binding): Remove NAME parm. Adjust. (identifier_global_value): Move to ... * cp-objcp-common.c (identifier_global_value): ... here. * class.c (build_ctor_vtbl_group, build_vtbl_initializer): Adjust. * decl.c (record_builtin_type, expand_static_init, grokdeclarator): Adjust. * decl2.c (get_guard, get_local_tls_init_fn, get_tls_init_fn, get_tls_wrapper_fn, maybe_warn_sized_delete): Adjust. * except.c (declare_library_fn, build_throw): Adjust. * init.c (throw_bad_array_length): Adjust. * rtti.c (throw_bad_cast, throw_bad_typeid, get_tinfo_decl): Adjust. From-SVN: r253444
2017-10-05arm.c (arm_test_fpu_data): New.Tamar Christina2-0/+38
2017-10-05 Tamar Christina <tamar.christina@arm.com> * config/arm/arm.c (arm_test_fpu_data): New. (arm_run_selftests): Call arm_test_fpu_data. From-SVN: r253443
2017-10-05Add sanitizer_linux_x86_64.lo if __x86_64__ is defined by $CCH.J. Lu2-0/+8
Since size of "void *" is 4 bytes for x32, check if __x86_64__ is defined by $CC, instead of if test x$ac_cv_sizeof_void_p = x8; then to decide wether sanitizer_linux_x86_64.lo should be used. PR sanitizer/82379 * configure.tgt (SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Set to sanitizer_linux_x86_64.lo if __x86_64__ is defined by $CC. From-SVN: r253441
2017-10-05Re: [C++ PATCH] Move mangling alias out of ::Nathan Sidwell2-4/+7
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00230.html * decl2.c (record_mangling): Fix spello and formatting from previous patch. From-SVN: r253440
2017-10-05Fix libgomp.oacc-c-c++-common/{loop-red-g-1,routine-g-1}.c for non-nvidia ↵Tom de Vries3-2/+8
devices 2017-10-05 Tom de Vries <tom@codesourcery.com> * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove vector_length(32) clause from acc parallel directive. * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same. From-SVN: r253439
2017-10-05pr82374.c (SIZE): Change from 1G to 1M to make it ilp32 friendly.Jakub Jelinek2-1/+6
* gcc.dg/gomp/pr82374.c (SIZE): Change from 1G to 1M to make it ilp32 friendly. From-SVN: r253438
2017-10-05id-17.f: Fix typo.Richard Biener9-8/+19
2017-10-05 Richard Biener <rguenther@suse.de> * gfortran.dg/graphite/id-17.f: Fix typo. * gfortran.dg/graphite/id-19.f: Likewise. * gfortran.dg/graphite/pr29832.f90: Likewise. * gfortran.dg/graphite/pr42326-1.f90: Likewise. * gfortran.dg/graphite/pr42326.f90: Likewise. * gfortran.dg/graphite/pr68550-2.f90: Likewise. * gfortran.dg/graphite/run-id-2.f90: Likewise. * gfortran.dg/graphite/run-id-3.f90: Likewise. From-SVN: r253437
2017-10-05Daily bump.GCC Administrator1-1/+1
From-SVN: r253436
2017-10-04re PR c++/80471 ((gcc extension) Forwarding-reference `auto` function ↵Paolo Carlini2-0/+28
parameters do not follow the same rules as template functions or generic lambdas) 2017-10-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/80471 * g++.dg/cpp1y/pr80471.C: New. From-SVN: r253432
2017-10-04re PR c++/78131 (Inconsistent evaluation for `constexpr` lambdas in ↵Paolo Carlini2-0/+35
templates between `static_assert`, `if constexpr(…)` and `constexpr` variables) 2017-10-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/78131 * g++.dg/cpp1z/constexpr-lambda17.C: New. From-SVN: r253431
2017-10-04re PR c++/78018 ([C++14] "internal compiler error: Segmentation fault" with ↵Paolo Carlini2-0/+42
templates and lambdas) 2017-10-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/78018 * g++.dg/cpp1y/lambda-generic-78018.C: New. From-SVN: r253430
2017-10-04[PATCH] remove some unneeded parensNathan Sidwell3-2/+8
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00200.html * toplev.c (toplev::main): Remove excess parens on pretty_printer decl. * caller-save.c (insert_save): Remove excess parens on TO_SAVE parm. From-SVN: r253427
2017-10-04[C++ PATCH] give builtin types consistent nameNathan Sidwell3-26/+34
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00201.html Give builtin types the correct name. * name-lookup.c (set_global_binding): Assert name is DECL_NAME. * decl.c (record_builtin_type): Reimplement, use new TYPE_DECL for rname. From-SVN: r253426
2017-10-04PR c++/82406 - C++17 error with noexcept function typeJason Merrill1-0/+14
* g++.dg/ext/attrib54.C: New. From-SVN: r253425
2017-10-04re PR c++/71946 (asm in toplevel lambda function rejected)Paolo Carlini5-0/+25
/cp 2017-10-04 Paolo Carlini <paolo.carlini@oracle.com> Andrew Pinski <apinski@cavium.com> PR c++/71946 * parser.c (cp_parser_lambda_body): Set parser->in_function_body. /testsuite 2017-10-04 Paolo Carlini <paolo.carlini@oracle.com> Andrew Pinski <apinski@cavium.com> PR c++/71946 * g++.dg/cpp0x/lambda/lambda-asm1.C: New. * g++.dg/cpp0x/lambda/lambda-stmtexpr1.C: Likewise. Co-Authored-By: Andrew Pinski <apinski@cavium.com> From-SVN: r253423
2017-10-04[PATCH][AArch64] Add BIC-imm and ORR-imm SIMD patternSudakshina Das7-58/+177
This patch adds the support for BIC (vector, immediate) and ORR (vector, immediate) SIMD patterns to the AArch64 backend. Committed on behalf of Sudi Das. Reviewed-by: Richard Earnshaw <Richard.Earnshaw@arm.com> Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com> gcc/ * config/aarch64/aarch64-protos.h (enum simd_immediate_check): New check type for aarch64_simd_valid_immediate. (aarch64_output_simd_mov_immediate): Update prototype. (aarch64_simd_valid_immediate): Update prototype. * config/aarch64/aarch64-simd.md (orr<mode>3): modified pattern to add support for ORR-immediate. (and<mode>3): modified pattern to add support for BIC-immediate. * config/aarch64/aarch64.c (aarch64_simd_valid_immediate): Function now checks for valid immediate for BIC and ORR based on new enum argument. (aarch64_output_simd_mov_immediate): Function now used to output BIC/ORR imm as well based on new enum argument. * config/aarch64/constraints.md (Do): New vector immediate constraint. (Db) : Likewise. * config/aarch64/predicates.md (aarch64_reg_or_orr_imm): New predicate. (aarch64_reg_or_bic_imm): Likewise. gcc/testsuite/ * gcc.target/aarch64/bic_imm_1.c: New test. * gcc.target/aarch64/orr_imm_1.c: Likewise. From-SVN: r253422
2017-10-04[C++ PATCH] Move mangling alias out of ::Nathan Sidwell9-75/+93
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00199.html gcc/cp/ Move mangling aliases out of global namespace. * cp-tree.h (record_mangling): New. (maybe_remove_implicit_alias): Delete. * decl2.c (mangled_decls): New hash map. (generate_mangling_alias): Reimplement using mangled_decls. (record_mangling): New. * mangle.c (decl_implicit_alias_p, maybe_remove_implicit_alias): Delete. (mangle_decl): Use record_mangling. * name-lookup.c (supplement_binding_1): Remove maybe_remove_implicit_alias check. * call.c (convert_arg_to_ellipsis): Correct comment about passing by reference. gcc/testsuite/ * g++.dg/abi/mangle41.C: Adjust diagnostics. libcc1/ * libcp1plugin.cc (supplement_binding): Don't use maybe_remove_implicit_alias. From-SVN: r253421
2017-10-04S/390: Fix mode in vector merge pattern.Andreas Krebbel2-6/+11
vec_unpacks_hi_v4sf/vec_unpacks_lo_v4sf expand vec_mergeh and vec_mergel patterns also for z13 with V4SF modes so the patterns should better accept this. Fixed by changing the mode iterator to V_128_NOSINGLE which accepts V4SF unconditionally. gcc/ChangeLog: 2017-10-04 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/vx-builtins.md ("vec_mergeh<mode>") ("vec_mergel<mode>"): Change mode iterator to V_128_NOSINGLE. From-SVN: r253420
2017-10-04Revert r253399:Wilco Dijkstra3-15/+108
PR rtl-optimization/82396 * haifa-sched.c (autopref_multipass_init): Simplify initialization. (autopref_rank_data): Simplify sort order. * sched-int.h (autopref_multipass_data_): Remove multi_mem_insn_p, min_offset and max_offset. From-SVN: r253419
2017-10-04re PR c++/82373 (syntax error in error message)Jakub Jelinek4-2/+34
PR c++/82373 * error.c (dump_function_decl): If show_return, call dump_type_suffix on the same return type dump_type_prefix has been called on. * g++.dg/cpp1y/pr82373.C: New test. From-SVN: r253418
2017-10-042017-10-04 Petr Ovtchenkov <ptr@void-ptr.info>Petr Ovtchenkov3-37/+48
François Dumont <fdumont@gcc.gnu.org> * include/bits/streambuf_iterator.h (istreambuf_iterator<>::operator*()): Do not capture iterator state in Debug assertion. (istreambuf_iterator<>::operator++()): Likewise and remove _M_sbuf check. (istreambuf_iterator<>::operator++(int)): Likewise. (istreambuf_iterator<>::_M_get()): Remove _M_c assignment. (istreambuf_iterator<>::_S_is_eof()): New. (istreambuf_iterator<>::_M_at_eof()): Adapt, use latter. (find(istreambuf_iterator<>, istreambuf_iterator<>, _CharT)): Return an iterator with _M_c set to eof to capture streambuf state on evaluation. (testsuite/24_iterators/istreambuf_iterator/2.cc): Add checks. Co-Authored-By: François Dumont <fdumont@gcc.gnu.org> From-SVN: r253417
2017-10-04PR c++/81525 - broken handling of auto in generic lambda.Jason Merrill5-11/+60
* pt.c (tsubst_decl) [VAR_DECL]: Use strip_innermost_template_args. From-SVN: r253414