- 05 Mar, 2018 13 commits
-
-
PR target/84524 * config/i386/sse.md (*<code><mode>3): Replace <mask_prefix3> with orig,vex. (*<plusminus_insn><mode>3): Likewise. Remove <mask_operand3> uses. * gcc.c-torture/execute/pr84524.c: New test. * gcc.target/i386/avx512bw-pr84524.c: New test. From-SVN: r258252
Jakub Jelinek committed -
re PR target/84264 (ICE in rs6000_emit_le_vsx_store, at config/rs6000/rs6000.c:10367 starting with r256656) gcc/ PR target/84264 * config/rs6000/vector.md (mov<mode>): Disallow altivec memory operands. gcc/testsuite/ PR target/84264 * g++.dg/pr84264.C: New test. From-SVN: r258251
Peter Bergner committed -
/cp 2018-03-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/84618 * parser.c (cp_parser_lambda_introducer): Reject any capture not involving a VAR_DECL or a PARM_DECL. /testsuite 2018-03-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/84618 * g++.dg/cpp0x/lambda/lambda-ice29.C: New. * g++.dg/cpp0x/lambda/lambda-ice17.C: Adjust. * g++.dg/cpp0x/lambda/lambda-ice23.C: Likewise. From-SVN: r258250
Paolo Carlini committed -
2018-03-05 Richard Biener <rguenther@suse.de> PR tree-optimization/84486 * tree-ssa-pre.c (create_expression_by_pieces): Remove dead code. When inserting a __builtin_assume_aligned call set the LHS SSA name alignment info accordingly. From-SVN: r258249
Richard Biener committed -
As discussed in the PR, the reassociation phase runs before FMAs are formed and so can significantly reduce FMA opportunities. Although reassociation could be switched off, it helps in many cases, so a better alternative is to only avoid reassociation of floating point additions. This fixes the testcase and gives 1% speedup on SPECFP2017, fixing the performance regression. gcc/ PR tree-optimization/84114 * config/aarch64/aarch64.c (aarch64_reassociation_width) Avoid reassociation of FLOAT_MODE addition. From-SVN: r258248
Wilco Dijkstra committed -
2018-03-05 Olga Makhotina <olga.makhotina@intel.com> Enable WBOINVD and PCONFIG instructions. gcc/ * common/config/i386/i386-common.c (OPTION_MASK_ISA_PCONFIG_SET, OPTION_MASK_ISA_PCONFIG_UNSET, OPTION_MASK_ISA_WBNOINVD_SET, OPTION_MASK_ISA_WBNOINVD_UNSET): New definitions. (ix86_handle_option): Handle -mpconfig and -mwbnoinvd. * config.gcc (pconfigintrin.h, wbnoinvdintrin.h) : Add headers. * config/i386/cpuid.h (bit_PCONFIG, bit_WBNOINVD): New. * config/i386/driver-i386.c (host_detect_local_cpu): Detect -mpconfig and -mwbnoinvd. * config/i386/i386-builtin.def (__builtin_ia32_wbnoinvd, __builtin_ia32_wbinvd): New builtins. (SPECIAL_ARGS2): New. * config/i386/i386-c.c (__WBNOINVD__, __PCONFIG__): New. (SPECIAL_ARGS2): New. * config/i386/i386.c (ix86_target_string): Add -mpconfig and -mwbnoinvd. (ix86_valid_target_attribute_inner_p): Ditto. (ix86_init_mmx_sse_builtins): Add special_args2. * config/i386/i386.h (TARGET_PCONFIG, TARGET_PCONFIG_P, TARGET_WBNOINVD, TARGET_WBNOINVD_P): New. * config/i386/i386.md (UNSPECV_WBINVD, UNSPECV_WBNOINVD): New. (define_insn "wbinvd", define_insn "wbnoinvd"): New. * config/i386/i386.opt: Add -mpconfig and -mwbnoinvd. * config/i386/immintrin.h (_wbinvd): New intrinsic. * config/i386/pconfigintrin.h: New file. * config/i386/wbnoinvdintrin.h: Ditto. * config/i386/x86intrin.h: Add headers pconfigintrin.h and wbnoinvdintrin.h. * doc/invoke.texi (-mpconfig, -mwbnoinvd): New. gcc/testsuite/ * g++.dg/other/i386-2.C: Add -mpconfig and -mwbnoinvd. * g++.dg/other/i386-3.C: Ditto. * gcc.target/i386/sse-12.c: Ditto. * gcc.target/i386/sse-13.c: Ditto. * gcc.target/i386/sse-14.c: Ditto. * gcc.target/i386/sse-23.c: Add pconfig and wbnoinvd. * gcc.target/i386/wbinvd-1.c: New test. * gcc.target/i386/wbnoinvd-1.c: Ditto. * gcc.target/i386/pconfig-1.c: Ditto. From-SVN: r258247
Olga Makhotina committed -
https://gcc.gnu.org/ml/gcc-patches/2018-03/msg00209.html PR c++/84497 * decl2.c (get_tls_init_fn): Check TYPE_HAS_TRIVIAL_DFLT too. PR c++/84497 * g++.dg/cpp0x/pr84497.C: New. Co-Authored-By: Jason Merrill <jason@redhat.com> Co-Authored-By: Nathan Sidwell <nathan@acm.org> From-SVN: r258244
Pádraig Brady committed -
re PR tree-optimization/84670 (ICE: in compute_antic_aux, at tree-ssa-pre.c:2148 with -O2 -fno-tree-dominator-opts) 2018-03-05 Richard Biener <rguenther@suse.de> PR tree-optimization/84670 * tree-ssa-pre.c (struct bb_bitmap_sets): Add visited_with_visited_succs member. (BB_VISITED_WITH_VISITED_SUCCS): New define. (compute_antic): Initialize BB_VISITED_WITH_VISITED_SUCCS. (compute_antic_aux): Only assert the number of values in ANTIC_IN doesn't grow if all successors (recursively) were visited at least once. * gcc.dg/pr84670-1.c: New testcase. * gcc.dg/pr84670-2.c: Likewise. * gcc.dg/pr84670-3.c: Likewise. * gcc.dg/pr84670-4.c: Likewise. From-SVN: r258243
Richard Biener committed -
2018-03-05 Richard Biener <rguenther@suse.de> PR tree-optimization/84650 * tree-ssa-loop-im.c (pass_lim::execute): Reset the SCEV cache if executed in the loop pipeline. * gcc.dg/graphite/pr84650.c: New testcase. From-SVN: r258242
Richard Biener committed -
re PR c++/82022 (constexpr lambda in template context: expression ‘<lambda>’ is not a constant expression) 2018-03-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/82022 * g++.dg/cpp1z/constexpr-lambda20.C: New. From-SVN: r258241
Paolo Carlini committed -
2018-03-05 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/configfiles.texi (Configuration Files): Move info about conditionalizing $target-protos.h to... * doc/sourcebuild.texi (Back End): Here. Explain how $target.h differs from $target-protos.h. From-SVN: r258240
Sandra Loosemore committed -
gcc/ * config/nds32/nds32-protos.h (nds32_expand_setmem): Declare. * config/nds32/nds32-multiple.md (setmemsi): Define. * config/nds32/nds32-memory-manipulation.c (nds32_gen_dup_4_byte_to_word_value): New. (emit_setmem_word_loop): New. (emit_setmem_byte_loop): New. (nds32_expand_setmem_loop): New. (nds32_expand_setmem_loop_v3m): New. (nds32_expand_setmem_unroll): New. (nds32_expand_setmem): New. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> From-SVN: r258239
Kito Cheng committed -
From-SVN: r258238
GCC Administrator committed
-
- 04 Mar, 2018 6 commits
-
-
gcc/ *config/nds32/nds32-memory-manipulation.c (nds32_emit_load_store): New. (nds32_emit_post_inc_load_store): New. (nds32_emit_mem_move): New. (nds32_emit_mem_move_block): New. (nds32_expand_movmemsi_loop_unknown_size): New. (nds32_expand_movmemsi_loop_known_size): New. (nds32_expand_movmemsi_loop): New. (nds32_expand_movmemsi_unroll): New. (nds32_expand_movmemqi): Rename ... (nds32_expand_movmemsi): ... to this. *config/nds32/nds32-multiple.md (movmemqi): Rename ... (movmemsi): ... to this. *config/nds32/nds32-protos.h (nds32_expand_movmemqi): Rename ... (nds32_expand_movmemsi): ... to this. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> From-SVN: r258235
Kito Cheng committed -
gcc/ * config/nds32/nds32-protos.h (nds32_expand_load_multiple): New arguments. (nds32_expand_store_multiple): Ditto. (nds32_valid_multiple_load_store): Rename ... (nds32_valid_multiple_load_store_p): ... to this. * config/nds32/nds32-memory-manipulation.c (nds32_expand_load_multiple): Refine implementation. (nds32_expand_store_multiple): Ditto. * config/nds32/nds32-multiple.md (load_multiple): Update nds32_expand_load_multiple interface. (store_multiple): Update nds32_expand_store_multiple interface. * config/nds32/nds32-predicates.c (nds32_valid_multiple_load_store): Rename ... (nds32_valid_multiple_load_store_p): ... to this and refine implementation. * config/nds32/predicates.md (nds32_load_multiple_and_update_address_operation): New predicate. (nds32_store_multiple_and_update_address_operation): New predicate. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com> From-SVN: r258234
Kito Cheng committed -
gcc/ * config/nds32/nds32.md (type): Add load_multiple and store_multiple. (combo): New attribute. * config/nds32/nds32-multiple.md: Refine patterns with new attributes. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> From-SVN: r258232
Kito Cheng committed -
* cvt.c (convert_to_void): Call maybe_undo_parenthesized_ref. From-SVN: r258231
Jason Merrill committed -
2018-03-03 Harald Anlauf <anlauf@gmx.de> PR fortran/71085 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Do not dereference NULL pointer. 2018-03-03 Harald Anlauf <anlauf@gmx.de> PR fortran/71085 * gfortran.dg/pr71085.f90: New test. From-SVN: r258228
Harald Anlauf committed -
From-SVN: r258227
GCC Administrator committed
-
- 03 Mar, 2018 13 commits
-
-
2018-03-03 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66128 * gfortran.dg/zero_sized_8.f90: Really commit new test. From-SVN: r258224
Steven G. Kargl committed -
2018-03-03 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66128 * simplify.c (is_size_zero_array): New function to check for size zero array. (gfc_simplify_all, gfc_simplify_any, gfc_simplify_count, gfc_simplify_iall, gfc_simplify_iany, gfc_simplify_iparity, gfc_simplify_minval, gfc_simplify_maxval, gfc_simplify_norm2, gfc_simplify_product, gfc_simplify_sum): Use it, and implement requirements from F2018. 2018-03-03 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66128 * gfortran.dg/zero_sized_8.f90: New test. From-SVN: r258223
Steven G. Kargl committed -
From-SVN: r258221
Joseph Myers committed -
re PR fortran/51434 (ICE with scalar init of an array parameter, used in DT default init with transfer) 2018-03-03 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/51434 * simplify.c (gfc_simplify_transfer): Resolve mold. 2018-03-03 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/51434 * gfortran.dg/pr51434.f90: New test. From-SVN: r258220
Steven G. Kargl committed -
2018-03-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/61358 * g++.dg/cpp0x/lambda/lambda-61358.C: New. From-SVN: r258219
Paolo Carlini committed -
2018-03-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67370 * g++.dg/cpp0x/lambda/lambda-67370.C: New. From-SVN: r258218
Paolo Carlini committed -
/cp 2018-03-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71464 * optimize.c (maybe_thunk_body): Bail out immediately if either fns[0] or fns[1] is null. /testsuite 2018-03-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71464 * g++.dg/torture/pr71464.C: New. From-SVN: r258216
Paolo Carlini committed -
gcc/ * config/nds32/nds32.opt: Change -mcmodel= default value. From-SVN: r258215
Chung-Ju Wu committed -
gcc/ * config/nds32/constants.md (unspec_element): New enum. * config/nds32/constraints.md (Umw): New constraint. * config/nds32/nds32-intrinsic.c: Add more builtin functions. * config/nds32/nds32-intrinsic.md: Likewise. * config/nds32/nds32-md-auxiliary.c (nds32_regno_to_enable4): New. (nds32_valid_smw_lwm_base_p): New. (nds32_output_smw_single_word): New. (nds32_output_lmw_single_word): New. (nds32_expand_unaligned_load): New. (nds32_expand_unaligned_store): New. * config/nds32/nds32-protos.h (nds32_valid_smw_lwm_base_p): Declare. (nds32_output_smw_single_word): Declare. (nds32_output_lmw_single_word): Declare. (nds32_expand_unaligned_load): Declare. (nds32_expand_unaligned_store): Declare. * config/nds32/nds32.h (nds32_builtins): Add NDS32_BUILTIN_UALOAD_HW, NDS32_BUILTIN_UALOAD_W, NDS32_BUILTIN_UALOAD_DW, NDS32_BUILTIN_UASTORE_HW, NDS32_BUILTIN_UASTORE_W, NDS32_BUILTIN_UASTORE_DW. * config/nds32/predicates.md (nds32_lmw_smw_base_operand): New predicate. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com> From-SVN: r258214
Kito Cheng committed -
gcc/ * config/nds32/nds32-intrinsic.c (nds32_expand_builtin_null_ftype_reg): Delete. (nds32_expand_builtin_reg_ftype_imm): Ditto. (nds32_expand_builtin_null_ftype_reg_imm): Ditto. (nds32_read_argument): New. (nds32_legitimize_target): Ditto. (nds32_legitimize_argument): Ditto. (nds32_check_constant_argument): Ditto. (nds32_expand_unop_builtin): Ditto. (nds32_expand_unopimm_builtin): Ditto. (nds32_expand_binop_builtin): Ditto. (nds32_builtin_decl_impl): Ditto. (builtin_description): Ditto. (nds32_expand_builtin_impl): Rewrite with new infrastructure. (nds32_init_builtins_impl): Ditto. * config/nds32/nds32.c (TARGET_BUILTIN_DECL): Define. (nds32_builtin_decl): New. * config/nds32/nds32.h (nds32_builtins): Add NDS32_BUILTIN_COUNT. * config/nds32/nds32-protos.h (nds32_builtin_decl_impl): Declare. Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com> Co-Authored-By: Kito Cheng <kito.cheng@gmail.com> From-SVN: r258211
Monk Chiang committed -
2018-03-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/80965 * resolve.c (build_loc_call): Change symtree name from 'loc' to '_loc'. 2018-03-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/80965 * gfortran.dg/select_type_41.f90: New test. From-SVN: r258195
Paul Thomas committed -
re PR c++/61135 (It seems to be not able to call virtual method of literal object in lambda expression) 2018-03-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/61135 * g++.dg/cpp0x/lambda/lambda-61135.C: New. From-SVN: r258165
Paolo Carlini committed -
From-SVN: r258163
GCC Administrator committed
-
- 02 Mar, 2018 8 commits
-
-
From-SVN: r258160
Joseph Myers committed -
* reorg.c (stop_search_p): Handle DEBUG_INSN. (redundant_insn, fill_simple_delay_slots): Likewise. (fill_slots_from_thread): Likewise. * resource.c (mark_referenced_resources): Likewise. (mark_set_resources, find_dead_or_set_registers): Likewise. From-SVN: r258158
Jeff Law committed -
PR libstdc++/84671 * include/bits/parse_numbers.h (_Number_help): Add partial specialization to handle digit separators. Adjust partial specialization for recursion temrination to require _Pow == 1ULL. * testsuite/20_util/duration/literals/84671.cc: New From-SVN: r258157
Jonathan Wakely committed -
PR c++/84578 * constexpr.c (get_array_or_vector_nelts): New. (cxx_eval_array_reference): Use it. (cxx_eval_vec_init_1): Likewise. (cxx_eval_store_expression): Likewise. * g++.dg/ext/flexary29.C: New test. From-SVN: r258156
Marek Polacek committed -
libiberty/ChangeLog: * cp-demangle.c: Update URL for g++ V3 ABI. From-SVN: r258155
David Malcolm committed -
* substring-locations.h (format_warning_va): Formatting fix for ATTRIBUTE_GCC_DIAG. (format_warning_at_substring): Fix up ATTRIBUTE_GCC_DIAG second argument. (format_warning_n_va, format_warning_at_substring_n): New prototypes. * substring-locations.c: Include intl.h. (format_warning_va): Turned into small wrapper around format_warning_n_va, renamed to ... (format_warning_n_va): ... this, add N and PLURAL_GMSGID arguments, rename GMSGID to SINGULAR_GMSGID, if SINGULAR_GMSGID != PLURAL_GMSGID, use ngettext. (format_warning_at_substring_n): New function. * gimple-ssa-sprintf.c: Remove GCC diagnostic ignored pragma. (fmtwarn): Add ATTRIBUTE_GCC_DIAG. Turn into a copy of format_warning_at_substring with just a shorter name instead of const function pointer. (fmtwarn_n): New function. (maybe_warn, format_directive, parse_directive): Use fmtwarn_n where appropriate, get rid of all the fmtstr temporaries, move conditionals with G_() wrapped string literals directly into fmtwarn arguments, cast dir.len to (int), formatting fixes. From-SVN: r258154
Jakub Jelinek committed -
From-SVN: r258153
Jakub Jelinek committed -
From-SVN: r258151
Jason Merrill committed
-