- 07 Dec, 2017 3 commits
-
-
This splits rs6000_cpu into rs6000_cpu and rs6000_tune. Both are still initialised identically, so there is no behaviour change. Now rs6000_cpu should be set by -mcpu=, and rs6000_tune by -mtune= (but both still are set by -mtune=, fixed in a later patch in the series). Also change rs6000_cpu to rs6000_tune in the appropriate cases (i.e. most, but not those that enable using new insns). * config/rs6000/rs6000.opt (rs6000_tune): New variable. * config/rs6000/rs6000.c (rs6000_option_override_internal): Also set rs6000_tune. Use rs6000_tune instead of rs6000_cpu where appropriate. (rs6000_loop_align): Use rs6000_tune instead of rs6000_cpu where appropriate. (rs6000_reassociation_width): Ditto. (rs6000_emit_epilogue): Ditto. (rs6000_adjust_cost): Ditto. (is_microcoded_insn): Ditto. (is_cracked_insn): Ditto. (rs6000_adjust_priority): Ditto. (rs6000_sched_reorder): Ditto. (rs6000_sched_reorder2): Ditto. (insn_must_be_first_in_group): Ditto. (insn_must_be_last_in_group): Ditto. (rs6000_register_move_cost): Ditto. * config/rs6000/rs6000.h (rs6000_cpu_attr): Use rs6000_tune instead of rs6000_cpu. From-SVN: r255462
Segher Boessenkool committed -
gcc/ * config.gcc: Add vaesintrin.h. * config/i386/i386-builtin-types.def (V64QI_FTYPE_V64QI_V64QI): New type. * config/i386/i386-builtin.def (__builtin_ia32_vaesdec_v16qi, __builtin_ia32_vaesdec_v32qi, __builtin_ia32_vaesdec_v64qi): New builtins. * config/i386/i386.c (ix86_expand_args_builtin): Handle new type. * config/i386/immintrin.h: Include vaesintrin.h. * config/i386/sse.md (vaesdec_<mode>): New pattern. * config/i386/vaesintrin.h (_mm256_aesdec_epi128, _mm512_aesdec_epi128, _mm_aesdec_epi128): New intrinsics. gcc/testsuite/ * gcc.target/i386/avx512-check.h: Handle bit_VAES. * gcc.target/i386/avx512f-aesdec-2.c: New test. * gcc.target/i386/avx512fvl-vaes-1.c: Ditto. * gcc.target/i386/avx512vl-aesdec-2.c: Ditto. * gcc.target/i386/i386.exp (check_effective_target_avx512vaes): New. From-SVN: r255461
Julia Koval committed -
From-SVN: r255460
GCC Administrator committed
-
- 06 Dec, 2017 20 commits
-
-
PR tree-optimization/69224 PR tree-optimization/80907 PR tree-optimization/82286 * gcc.dg/pr69224.c: New test. * gcc.dg/pr80907.c: New test. * gcc.dg/pr82286.c: New test. From-SVN: r255457
Jeff Law committed -
PR c++/80259 * decl2.c (grokfield): Diagnose = delete redefinition of a friend. * g++.dg/cpp0x/pr80259.C: New test. From-SVN: r255456
Jakub Jelinek committed -
* call.c (convert_for_arg_passing): Pass NULL_TREE to targetm.calls.promote_prototypes. (type_passed_as): Likewise. From-SVN: r255455
Jason Merrill committed -
* pt.c (value_dependent_expression_p): Add lval parameter. Don't consider DECL_INITIAL if it's true. From-SVN: r255454
Jason Merrill committed -
gcc/c-family/ChangeLog: PR c/83236 * c-common.c (selftest::c_family_tests): Call selftest::c_spellcheck_cc_tests. * c-common.h (selftest::c_spellcheck_cc_tests): New decl. * c-spellcheck.cc: Include "selftest.h". (name_reserved_for_implementation_p): New function. (should_suggest_as_macro_p): New function. (find_closest_macro_cpp_cb): Move the check for NT_MACRO to should_suggest_as_macro_p and call it. (selftest::test_name_reserved_for_implementation_p): New function. (selftest::c_spellcheck_cc_tests): New function. * c-spellcheck.h (name_reserved_for_implementation_p): New decl. gcc/c/ChangeLog: PR c/83236 * c-decl.c (lookup_name_fuzzy): Don't suggest names that are reserved for use by the implementation. gcc/cp/ChangeLog: PR c/83236 * name-lookup.c (consider_binding_level): Don't suggest names that are reserved for use by the implementation. gcc/testsuite/ChangeLog: PR c/83236 * c-c++-common/spellcheck-reserved.c: New test case. From-SVN: r255453
David Malcolm committed -
The code for spellchecking macros really belongs in c-family, rather than in gcc/spellcheck-tree.c, so this patch moves it there. gcc/ChangeLog: * Makefile.in (C_COMMON_OBJS): Add c-family/c-spellcheck.o. * spellcheck-tree.c (find_closest_macro_cpp_cb): Move to c-family/c-spellcheck.cc. (best_macro_match::best_macro_match): Likewise. * spellcheck-tree.h (struct edit_distance_traits<cpp_hashnode *>): Move to c-family/c-spellcheck.h. (class best_macro_match): Likewise. gcc/c-family/ChangeLog: * c-spellcheck.cc: New file, taken from macro-handling code in spellcheck-tree.c. * c-spellcheck.h: New file, taken from macro-handling code in spellcheck-tree.h. gcc/c/ChangeLog: * c-decl.c: Include "c-family/c-spellcheck.h". gcc/cp/ChangeLog: * name-lookup.c: Include "c-family/c-spellcheck.h". From-SVN: r255452
David Malcolm committed -
PR tree-optimization/83293 * gimple-ssa-strength-reduction.c (insert_initializers): Use GSI_NEW_STMT instead of GSI_SAME_STMT in gsi_insert_after that might insert into empty bb. * g++.dg/torture/pr83293.C: New test. From-SVN: r255451
Jakub Jelinek committed -
PR testsuite/83303 - FAIL: g++.dg/opt/new1.C on arm-none-eabi (extra -Walloc-size-larger-than warning * g++.dg/opt/new1.C: Prune warning from test output. From-SVN: r255450
Martin Sebor committed -
PR sanitizer/81281 * match.pd ((T)(P + A) - (T)P -> (T) A): Split into separate simplify for plus with :c added, and pointer_plus without that. ((T)P - (T)(P + A) -> -(T) A): Likewise. If type is integral with undefined overflow and the conversion is not widening, perform negation in utype and only convert to type afterwards. ((T)(P + A) - (T)(P + B) -> (T)A - (T)B): Split into separate simplify for plus with :c added, and pointer_plus without that. If type is integral with undefined overflow and the conversion is not widening, perform minus in utype and only convert to type afterwards. Move the last pointer_diff_expr simplify into the two outermost ifs. * gcc.c-torture/execute/pr81281.c: New test. * gcc.dg/pr81281-1.c: New test. * gcc.dg/pr81281-2.c: New test. * g++.dg/ubsan/pr81281.C: New test. * g++.dg/ubsan/pr81281-aux.cc: New test. From-SVN: r255449
Jakub Jelinek committed -
PR tree-optimization/82646 - bogus -Wstringop-overflow with -D_FORTIFY_SOURCE=2 on strncpy with range to a member array gcc/ChangeLog: PR tree-optimization/82646 * builtins.c (maybe_emit_chk_warning): Use size as the bound for strncpy, not maxlen. gcc/testsuite/ChangeLog: PR tree-optimization/82646 * gcc.dg/builtin-stringop-chk-1.c: Adjust. * gcc.dg/builtin-stringop-chk-9.c: New test. * g++.dg/ext/strncpy-chk1.C: Adjust. From-SVN: r255448
Martin Sebor committed -
gcc/ChangeLog: * doc/invoke.texi (-Wstringop-truncation): Mention attribute nonstring. From-SVN: r255447
Martin Sebor committed -
gcc/ChangeLog: PR tree-optimization/83075 * tree-ssa-strlen.c (handle_builtin_stxncpy): Avoid assuming strncat/strncpy don't change length of source string. gcc/testsuite/ChangeLog: PR tree-optimization/83075 * gcc.dg/tree-ssa/strncat.c: New test. * gcc.dg/tree-ssa/strncpy-2.c: Same. From-SVN: r255446
Martin Sebor committed -
Remove -fplan9-extensions from the CFLAGS used for libgo (no longer needed since the runtime was converted from C to Go). Reviewed-on: https://go-review.googlesource.com/82177 From-SVN: r255445
Ian Lance Taylor committed -
gcc/testsuite * g++.dg/graphite/pr41305.C: Refine test option. * gcc.dg/graphite/pr42205-1.c: Ditto. * gcc.dg/graphite/pr42205-2.c: Ditto. * gcc.dg/graphite/pr42211.c: Ditto. * gcc.dg/graphite/pr46185.c: Ditto. * gcc.dg/graphite/pr46966.c: Ditto. * gcc.dg/graphite/pr59817-1.c: Ditto. * gcc.dg/graphite/pr59817-2.c: Ditto. * gcc.dg/graphite/pr60740.c: Ditto. * gcc.dg/graphite/pr60785.c: Ditto. * gcc.dg/graphite/pr68715-2.c: Ditto. * gcc.dg/graphite/pr68715.c: Ditto. * gcc.dg/graphite/pr70045.c: Ditto. * gfortran.dg/graphite/pr14741.f90: Ditto. * gfortran.dg/graphite/pr40982.f90: Ditto. * gfortran.dg/graphite/pr42285.f90: Ditto. * gfortran.dg/graphite/pr42334-1.f: Ditto. * gfortran.dg/graphite/pr42334.f90: Ditto. * gfortran.dg/graphite/pr43349.f: Ditto. * gfortran.dg/graphite/pr59817.f: Ditto. From-SVN: r255444
Bin Cheng committed -
gcc/testsuite/ChangeLog: <date> Charles Baylis <charles.baylis@linaro.org> * gcc.target/arm/addr-modes-float.c: Place dg-add-options after dg-require-effective-target. (ATTR): New define. (POST_STORE): Pass ATTR as 2nd argument. (POST_LOAD): Likewise. (POST_STORE_VEC): Likewise. * gcc.target/arm/addr-modes-int.c (ATTR): New define. (PRE_STORE): Pass ATTR as 2nd argument. (POST_STORE): Likewise. (PRE_LOAD): Likewise. (POST_LOAD): Likewise. * gcc.target/arm/addr-modes.h: (PRE_STORE): New parameter. (POST_STORE): Likewise. (POST_STORE_VEC): Likewise. (PRE_LOAD): Likewise. (POST_LOAD): Likewise. (POST_LOAD_VEC): Likewise. From-SVN: r255443
Charles Baylis committed -
Change the code in Unary_expression::do_get_backend that introduces explicit nil checks for dereference operations to special case set-and-use-temporary expressions. For this case it is better to generate an explicit reference of the temp in the final conditional (avoids introducing tree sharing). Reviewed-on: https://go-review.googlesource.com/81915 From-SVN: r255442
Ian Lance Taylor committed -
re PR ada/66205 (gnatbind generates invalid code when finalization is enabled in restricted runtime) PR ada/66205 * bindgen.adb (Gen_AdaFinal): If the restriction No_Task_Termination is set, generate a null body. From-SVN: r255441
Simon Wright committed -
2017-11-29 Martin Aberg <maberg@gaisler.com> * config/sparc/sparc.md (divdf3_fix): Add NOP and adjust length to prevent b2bst errata sequence. (sqrtdf2_fix): Likewise. From-SVN: r255439
Eric Botcazou committed -
PR tree-optimization/81945 * cfgloop.h (FOR_EACH_LOOP_FN): Use FN instead of hardcoding fn. * tree-cfg.c (move_sese_region_to_fn): If any of the loops moved to dest_cfun has orig_loop_num set, either remap it to the new loop number if the loop got moved too, or clear it. * gcc.dg/graphite/pr81945.c: New test. From-SVN: r255438
Jakub Jelinek committed -
From-SVN: r255437
GCC Administrator committed
-
- 05 Dec, 2017 17 commits
-
-
PR c++/79228 * expr.c (interpret_float_suffix): Avoid memcmp. (interpret_int_suffix): Likewise. Don't check for if. From-SVN: r255434
Jakub Jelinek committed -
From-SVN: r255433
Mike Stump committed -
2017-12-05 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> * gcc.c-torture/unsorted/dump-noaddr.x: Generate dump files in tmpdir. From-SVN: r255432
Matthew Gretton-Dann committed -
2017-12-05 Steve Ellcey <sellcey@cavium.com> * config/aarch64/thunderx2-t99.md (thunderx2t99_branch): Add trap to reservation. (thunderx2t99_nothing): New insn reservation. (thunderx2t99_mrs): New insn reservation. (thunderx2t99_multiple): New insn reservation. (thunderx2t99_alu_basi): Add bfx to reservation. (thunderx2t99_fp_cmp): Add fccmps and fccmpd to reservation. From-SVN: r255431
Steve Ellcey committed -
* pt.c (unify) [TEMPLATE_PARM_INDEX]: Set processing_template_decl around call to tsubst. From-SVN: r255430
Jason Merrill committed -
https://gcc.gnu.org/ml/gcc-patches/2017-12/msg00242.html PR c++/83287 * tree.c (build_min): Check CAST_EXPR arg for OVERLOADs. * g++.dg/lookup/pr83287.C: New. From-SVN: r255429
Nathan Sidwell committed -
The probe_stack pattern uses r0 as a fixed register. This can cause issues if we have auto-increment instructions coming out that have r0 as the base register. Tested with a bootstrap and regression run. richi reports that the original issue was fixed in the run. I did consider whether probe_stack_range was affected but it all comes back to probe_stack pattern so I think we are ok. I don't have a testcase that seems to provoke this but it seems to be default on most distributions so I'm expecting the testcoverage to come from there. Applied. Ramana PR target/82248 * config/arm/arm.md (probe_stack) : Use the 'o' constraint. From-SVN: r255428
Ramana Radhakrishnan committed -
re PR testsuite/83289 (i386/sse2-init-v2di-2.c, i386/avx256-unaligned-load-1.c, i386/avx256-unaligned-store-*.c fails) PR testsuite/83289 * gcc.target/i386/avx256-unaligned-load-1.c: Adjust for -dp alternative numbers being 0 based instead of former 1 based. * gcc.target/i386/avx256-unaligned-store-1.c: Likewise. * gcc.target/i386/avx256-unaligned-store-2.c: Likewise. * gcc.target/i386/avx256-unaligned-store-3.c: Likewise. * gcc.target/i386/avx256-unaligned-store-4.c: Likewise. * gcc.target/i386/sse2-init-v2di-2.c: Likewise. From-SVN: r255427
Jakub Jelinek committed -
tree-ssa-dce.c (simple_dce_from_worklist): Move and rename from tree-ssa-pre.c::remove_dead_inserted_code. * tree-ssa-dce.c (simple_dce_from_worklist): Move and rename from tree-ssa-pre.c::remove_dead_inserted_code. * tree-ssa-dce.h: New file. * tree-ssa-pre.c (tree-ssa-dce.h): Include new header file. (remove_dead_inserted_code): Move and rename to function tree-ssa-dce.c::simple_dce_from_worklist. (pass_pre::execute): Update use. From-SVN: r255426
Bin Cheng committed -
2017-12-05 Jason Merrill <jason@redhat.com> Jonathan Wakely <jwakely@redhat.com> * include/bits/fs_fwd.h (copy, copy_file): Remove noexcept. (permissions): Add noexcept. * include/bits/fs_ops.h (permissions): Add noexcept. * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Add _GLIBCXX_NOTHROW. Co-Authored-By: Jonathan Wakely <jwakely@redhat.com> From-SVN: r255425
Jason Merrill committed -
2017-12-05 Richard Biener <rguenther@suse.de> PR tree-optimization/83277 * graphite-isl-ast-to-gimple.c (should_copy_to_new_region): Make sure to code-gen liveout vars. * gcc.dg/graphite/pr83277.c: New testcase. From-SVN: r255424
Richard Biener committed -
The split conditions for aarch64_simd_bsldi_internal and aarch64_simd_bsldi_alt were: "&& GP_REGNUM_P (REGNO (operands[0]))" But since they (deliberately) can be split before reload, the operand matched by register_operand can be a SUBREG rather than a REG. This triggered a boostrap failure building libgcc with rtl checking enabled. While checking other define_insn_and_splits for the same thing, I noticed a couple of SIMD ones were missing the leading "&&", meaning that they would trigger even without TARGET_SIMD. That shouldn't matter in practice, since combine should never end up generating matching rtl, but... 2017-12-05 Richard Sandiford <richard.sandiford@linaro.org> gcc/ * config/aarch64/aarch64-simd.md (aarch64_simd_bsldi_internal) (aarch64_simd_bsldi_alt): Check REG_P before GP_REGNUM_P. (aarch64_cm<optab>di, aarch64_cmtstdi): Add leading "&&" to split condition. From-SVN: r255423
Richard Sandiford committed -
gcc/ 2017-12-05 Max Filippov <jcmvbkbc@gmail.com> * config/xtensa/xtensa.c (xtensa_asan_shadow_offset): New function. (TARGET_ASAN_SHADOW_OFFSET): New macro definition. * config/xtensa/xtensa.h (FRAME_GROWS_DOWNWARD): Set to 1 if ASAN is enabled. From-SVN: r255420
Max Filippov committed -
re PR testsuite/83281 (libgomp.oacc-c-c++-common/reduction-cplx-flt.c and reduction-cplx-dbl.c fail starting with r255335) PR testsuite/83281 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use j suffix instead of i. * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main): Likewise. From-SVN: r255418
Jakub Jelinek committed -
re PR tree-optimization/83283 (Casting from boolean to unsigned char to enum returns incorrect results) PR tree-optimization/83283 * g++.dg/torture/pr83283.C: New test. From-SVN: r255417
Jakub Jelinek committed -
2017-12-05 Richard Biener <rguenther@suse.de> * timevar.def (TV_TREE_RECIP, TV_TREE_SINCOS, TV_TREE_WIDEN_MUL): Add. * tree-ssa-math-opts.c (pass_data_cse_reciprocal): Use TV_TREE_RECIP. (pass_data_cse_sincos): Use TV_TREE_SINCOS. (pass_data_optimize_widening_mul): Use TV_TREE_WIDEN_MUL. From-SVN: r255415
Richard Biener committed -
gcc/ada/ 2017-12-05 Piotr Trojanek <trojanek@adacore.com> * sem_util.adb (Contains_Refined_State): Remove. 2017-12-05 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications, case Predicate): A predicate cannot apply to a formal type. 2017-12-05 Arnaud Charlet <charlet@adacore.com> * exp_unst.ads: Fix typos. 2017-12-05 Jerome Lambourg <lambourg@adacore.com> * libgnarl/s-taprop__qnx.adb: Better detect priority ceiling bug in QNX. At startup, the first mutex created has a non-zero ceiling priority whatever its actual policy. This makes some tests fail (c940013 for example). 2017-12-05 Bob Duff <duff@adacore.com> * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Call Expand_Cleanup_Actions for N_Extended_Return_Statement. * exp_ch7.adb (Expand_Cleanup_Actions): Handle N_Extended_Return_Statement by transforming the statements into a block, and (indirectly) calling Expand_Cleanup_Actions on the block. It's too hard for Expand_Cleanup_Actions to operate directly on the N_Extended_Return_Statement, because it has a different structure than the other node kinds that Expand_Cleanup_Actions. * exp_util.adb (Requires_Cleanup_Actions): Add support for N_Extended_Return_Statement. Change "when others => return False;" to "when others => raise ...;" so it's clear what nodes this function handles. Use named notation where appropriate. * exp_util.ads: Mark incorrect comment with ???. 2017-12-05 Javier Miranda <miranda@adacore.com> * exp_ch9.adb (Install_Private_Data_Declarations): Add missing Debug_Info_Needed decoration of internally generated discriminal renaming declaration. 2017-12-05 Arnaud Charlet <charlet@adacore.com> * exp_unst.adb (Unnest_Subprogram): Add handling of 'Access on nested subprograms. 2017-12-05 Sergey Rybin <rybin@adacore.com> * doc/gnat_ugn/gnat_utility_programs.rst: Add description of '--ignore' option for gnatmetric, gnatpp, gnat2xml, and gnattest. 2017-12-05 Piotr Trojanek <trojanek@adacore.com> * sem_util.adb (Contains_Refined_State): Remove. 2017-12-05 Piotr Trojanek <trojanek@adacore.com> * rtsfind.ads: Add new enumeration literals: RE_Clock_Time (for Ada.Real_Time.Clock_Time) and RO_CA_Clock_Time (for Ada.Calendar.Clock_Time). 2017-12-05 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Is_Private_Overriding): If the candidate private subprogram is overloaded, scan the list of homonyms in the same scope, to find the inherited operation that may be overridden by the candidate. * exp_ch11.adb, exp_ch7.adb: Minor reformatting. 2017-12-05 Bob Duff <duff@adacore.com> * exp_ch6.adb (Expand_N_Extended_Return_Statement): If the Init_Assignment is rewritten, we need to set Assignment_OK on the new node. Otherwise, we will get spurious errors when initializing via assignment statement. gcc/testsuite/ 2017-12-05 Ed Schonberg <schonberg@adacore.com> * gnat.dg/private_overriding.adb: New testcase. From-SVN: r255414
Pierre-Marie de Rodat committed
-