- 29 May, 2019 7 commits
-
-
PR c/90628 * c-common.c (check_builtin_function_arguments) <case BUILTIN_*_OVERFLOW>: Diagnose pointer to const qualified integer as last argument. * c-c++-common/builtin-arith-overflow-3.c: New test. From-SVN: r271732
Jakub Jelinek committed -
P1091R3 - Extending structured bindings to be more like var decls P1381R1 - Reference capture of structured bindings P1091R3 - Extending structured bindings to be more like var decls P1381R1 - Reference capture of structured bindings * decl.c (cp_maybe_mangle_decomp): Handle TREE_STATIC decls even at function scope. (cp_finish_decomp): Copy over various decl properties from decl to v[i] in the tuple case. (grokdeclarator): Allow static, thread_local and __thread for C++2a and use pedwarn instead of error for older standard revisions. Make other structured binding diagnostic messages more i18n friendly. * g++.dg/cpp1z/decomp3.C (test): For static, expect only warning instead of error and only for c++17_down. Add a thread_local test. (z2): Add a __thread test. * g++.dg/cpp2a/decomp1.C: New test. * g++.dg/cpp2a/decomp1-aux.cc: New file. * g++.dg/cpp2a/decomp2.C: New test. * g++.dg/cpp2a/decomp3.C: New test. From-SVN: r271731
Jakub Jelinek committed -
P1091R3 - Extending structured bindings to be more like var decls P1381R1 - Reference capture of structured bindings P1091R3 - Extending structured bindings to be more like var decls P1381R1 - Reference capture of structured bindings * decl.c (cp_maybe_mangle_decomp): Handle TREE_STATIC decls even at function scope. (cp_finish_decomp): Copy over various decl properties from decl to v[i] in the tuple case. (grokdeclarator): Allow static, thread_local and __thread for C++2a and use pedwarn instead of error for older standard revisions. Make other structured binding diagnostic messages more i18n friendly. * g++.dg/cpp1z/decomp3.C (test): For static, expect only warning instead of error and only for c++17_down. Add a thread_local test. (z2): Add a __thread test. * g++.dg/cpp2a/decomp1.C: New test. * g++.dg/cpp2a/decomp1-aux.cc: New file. * g++.dg/cpp2a/decomp2.C: New test. * g++.dg/cpp2a/decomp3.C: New test. From-SVN: r271730
Jakub Jelinek committed -
2019-05-29 Martin Liska <mliska@suse.cz> PR testsuite/90657 * gcc.dg/ipa/pr90555.c: Remove duplicite dg-compile. From-SVN: r271729
Martin Liska committed -
[gcc] 2019-05-28 Bill Schmidt <wschmidt@linux.ibm.com> Michael Meissner <meissner@linux.ibm.com> * config/rs6000/rs6000-cpus.def (OTHER_FUTURES_MASK): New #define. [gcc/testsuite] 2019-05-28 Bill Schmidt <wschmidt@linux.ibm.com> * gcc.target/powerpc/localentry-detect-1.c: New file. Co-Authored-By: Michael Meissner <meissner@linux.ibm.com> From-SVN: r271728
Bill Schmidt committed -
2019-05-28 Michael Meissner <meissner@linux.ibm.com> * rtl.h (LABEL_REF_P): New #define. From-SVN: r271727
Michael Meissner committed -
From-SVN: r271726
GCC Administrator committed
-
- 28 May, 2019 24 commits
-
-
* config/pa/pa.c (hppa_profile_hook): Remove offset adjustment. From-SVN: r271720
John David Anglin committed -
PR libstdc++/90634 * include/experimental/bits/fs_path.h (path::path(path&&)): Only call _M_split_cmpts() for a path with multiple components. (path::_S_is_dir_sep()): Add missing 'static' keyword to function. * src/filesystem/path.cc (path::_M_split_cmpts()): Count number of components and reserve space in vector. Return early when there is only one component. * testsuite/27_io/filesystem/path/construct/90634.cc: New test. * testsuite/experimental/filesystem/path/construct/90634.cc: New test. From-SVN: r271717
Jonathan Wakely committed -
* testsuite/util/testsuite_fs.h (compare_paths): Use three-argument form of std::equals for C++11 compatibility. From-SVN: r271716
Jonathan Wakely committed -
* config/sparc/sol2-unwind.h [__arch64__] (sparc64_is_sighandler): Remove Solaris 9 and 10 support. (sparc_is_sighandler): Likewise. From-SVN: r271715
Rainer Orth committed -
https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01844.html * decl.c (duplicate_decls): Assert a template newdecl has no specializations. From-SVN: r271713
Nathan Sidwell committed -
* pt.c (tsubst_copy_and_build): Handle pack expansion properly. * g++.dg/cpp1y/lambda-generic-90548.C: New test. From-SVN: r271705
Marek Polacek committed -
Current vectoriser doesn't support masked loads for SLP. We should add that, to allow things like: void f (int *restrict x, int *restrict y, int *restrict z, int n) { for (int i = 0; i < n; i += 2) { x[i] = y[i] ? z[i] : 1; x[i + 1] = y[i + 1] ? z[i + 1] : 2; } } to be vectorized using contiguous loads rather than LD2 and ST2. This patch was motivated by SVE, but it is completely generic and should apply to any architecture with masked loads. From-SVN: r271704
Alejandro Martinez committed -
* config/alpha/alpha.c [TARGET_ABI_OSF] (alpha_output_mi_thunk_osf): Remove obsolete use_thunk reference. * config/i386/i386.c (x86_output_mi_thunk): Likewise. * config/ia64/ia64.c (ia64_output_mi_thunk): Likewise. * config/nios2/nios2.c (nios2_asm_output_mi_thunk): Likewise. * config/or1k/or1k.c (or1k_output_mi_thunk): Likewise. * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise. * config/sh/sh.c (sh_output_mi_thunk): Likewise. * config/sparc/sparc.c (sparc_output_mi_thunk): Likewise. * config/tilegx/tilegx.c (tilegx_output_mi_thunk): Likewise. * config/tilepro/tilepro.c (tilepro_asm_output_mi_thunk): Likewise. From-SVN: r271703
Rainer Orth committed -
https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01699.html * tree.h (IDENTIFIER_ANON_P): New. (anon_aggrname_format, anon_aggname_p): Don't declare. (make_anon_name): Declare. * lto-streamer-out.c (DFS::DFS_write_tree_body): Use IDENTIFIER_ANON_P. (hash_tree): Likewise. * tree-streamer-out.c (write_ts_decl_minimal_tree): Likewise. * tree.c (anon_aggrname_p, anon_aggrname_format): Delete. (anon_cnt, make_anon_name): New. gcc/cp/ * cp-tree.h (make_anon_name): Drop declaration. (TYPE_UNNAMED_P): Use IDENTIFIER_ANON_P. * cp-lang.c (cxx_dwarf_name): Likewise. * class.c (find_flexarrays): Likewise. * decl.c (name_unnamed_type, xref_tag_1): Likewise. * error.c (dump_aggr_type): Likewise. * pt.c (push_template_decl_real): Likewise. * name-lookup.c (consider_binding_level): Likewise. (anon_cnt, make_anon_name): Delete. gcc/d/ * types.cc (fixup_anonymous_offset): Use IDENTIFIER_ANON_P. (layout_aggregate_members): Use make_anon_name. From-SVN: r271702
Nathan Sidwell committed -
* testsuite/gcc.target/sh/pr50749-qihisi-predec-3.c: Disable loop distribution. From-SVN: r271701
Jeff Law committed -
2019-05-28 Martin Liska <mliska@suse.cz> PR other/90315 * opts-global.c (decode_options): Print help for all help_option_arguments. * opts.c (print_help): Add new argument. (common_handle_option): Remember all values into help_option_arguments. * opts.h (print_help): Add new argument. From-SVN: r271700
Martin Liska committed -
This removes the unnecessary restriction to 32-bit (all three ways). It also scans for mtvsr*, not just mtvsrd. Finally, it uses the "wa" constraints instead of "wi" in the inline asm statements. gcc/testsuite/ * gcc.target/powerpc/p9-dimode1.c: Don't restrict to -m64. Check for all mtvsr*, not just mtvsrd. Use "wa" instead of "wi" constraints. * gcc.target/powerpc/p9-dimode2.c: Ditto. From-SVN: r271696
Segher Boessenkool committed -
2019-05-28 Martin Liska <mliska@suse.cz> PR ipa/90555 * ipa-icf-gimple.c (func_checker::compare_loops): New function. * ipa-icf-gimple.h (func_checker::compare_loops): Likewise. (func_checker::compare_bb): Call compare_loops. 2019-05-28 Martin Liska <mliska@suse.cz> PR ipa/90555 * gcc.dg/ipa/pr90555.c: New test. From-SVN: r271695
Martin Liska committed -
From-SVN: r271694
Eric Botcazou committed -
* doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute): Document additional optional parameters. * sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Accept more than one optional parameter. * gcc-interface/decl.c (prepend_one_attribute_pragma): Alphabetize the list of supported pragmas. Simplify the handling of parameters and add support for more than one optional parameter. * gcc-interface/utils.c (attr_cold_hot_exclusions): New constant. (gnat_internal_attribute_table): Add entry for no_icf, noipa, flatten, used, cold, hot, target and target_clones. (begin_subprog_body): Do not create the RTL for the subprogram here. (handle_noicf_attribute): New static function. (handle_noipa_attribute): Likewise. (handle_flatten_attribute): Likewise. (handle_used_attribute): Likewise. (handle_cold_attribute): Likewise. (handle_hot_attribute): Likewise. (handle_target_attribute): Likewise. (handle_target_clones_attribute): Likewise. From-SVN: r271693
Eric Botcazou committed -
* gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0 for 'Size too. (Identifier_to_gnu): Use the actual subtype for a reference to a packed array in a return statement. (Attribute_to_gnu) <Attr_Size>: Do not strip VIEW_CONVERT_EXPRs from the prefix in every case. From-SVN: r271691
Eric Botcazou committed -
trans.c (gnat_to_gnu): Remove superfluous tests on Backend_Overflow_Checks_On_Target and rework comments. * gcc-interface/trans.c (gnat_to_gnu): Remove superfluous tests on Backend_Overflow_Checks_On_Target and rework comments. From-SVN: r271689
Eric Botcazou committed -
* gcc-interface/trans.c (walk_nesting_tree): New static function. (finalize_nrv): Use it to walk the entire nesting tree. From-SVN: r271685
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Remove obsolete test on Is_For_Access_Subtype. From-SVN: r271683
Eric Botcazou committed -
* gcc-interface/decl.c (components_to_record): Set a name on the type created for the REP part, if any. * gcc-interface/utils.c (finish_record_type): Only take the maximum when merging sizes for a variant part at offset 0. (merge_sizes): Rename has_rep parameter into max. From-SVN: r271681
Eric Botcazou committed -
* gcc-interface/utils.c (gnat_internal_attribute_table): Add support for stack_protect attribute. (handle_stack_protect_attribute): New static function. From-SVN: r271680
Eric Botcazou committed -
decl.c (intrin_arglists_compatible_p): Do not return false if the internal builtin uses a variable list. * gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return false if the internal builtin uses a variable list. From-SVN: r271679
Eric Botcazou committed -
gcc/ChangeLog 2019-01-23 Xuepeng Guo <xuepeng.guo@intel.com> * common/config/i386/i386-common.c (OPTION_MASK_ISA_ENQCMD_SET, OPTION_MASK_ISA_ENQCMD_UNSET): New macros. (ix86_handle_option): Handle -menqcmd. * config.gcc (enqcmdintrin.h): New header file. * config/i386/cpuid.h (bit_ENQCMD): New bit. * config/i386/driver-i386.c (host_detect_local_cpu): Handle -menqcmd. * config/i386/i386-builtin-types.def ((INT, PVOID, PCVOID)): New function type. * config/i386/i386-builtin.def (__builtin_ia32_enqcmd, __builtin_ia32_enqcmds): New builtins. * config/i386/i386-c.c (__ENQCMD__): New macro. * config/i386/i386-option.c (ix86_target_string): Add -menqcmd. (ix86_valid_target_attribute_inner_p): Likewise. * config/i386/i386-expand.c (ix86_expand_builtin): Expand IX86_BUILTIN_ENQCMD and IX86_BUILTIN_ENQCMDS. * config/i386/i386.h (TARGET_ENQCMD): New. * config/i386/i386.md (UNSPECV_ENQCMD, UNSPECV_ENQCMDS): New. (@enqcmd<enqcmd_sfx>_<mode>): New insn pattern. (movdir64b_<mode>): Parameterize to enable share expansion code with ENQCMD in function ix86_expand_builtin. * config/i386/i386.opt: Add -menqcmd. * config/i386/immintrin.h: Include enqcmdintrin.h. * config/i386/enqcmdintrin.h: New intrinsic file. * doc/invoke.texi: Add -menqcmd. gcc/testsuite/ChangeLog 2019-01-23 Xuepeng Guo <xuepeng.guo@intel.com> * gcc.target/i386/enqcmd.c: New test. * gcc.target/i386/enqcmds.c: Likewise. * g++.dg/other/i386-2.C: Add -menqcmd. * g++.dg/other/i386-3.C: Likewise. * gcc.target/i386/sse-12.c: Likewise. * gcc.target/i386/sse-13.c: Likewise. * gcc.target/i386/sse-14.c: Likewise. * gcc.target/i386/sse-23.c: Likewise. From-SVN: r271678
Xuepeng Guo committed -
From-SVN: r271677
GCC Administrator committed
-
- 27 May, 2019 9 commits
-
-
* gimplify.c (gimplify_scan_omp_clauses): Allow lastprivate conditional on sections construct. * omp-low.c (lower_lastprivate_conditional_clauses): Handle sections construct. (lower_omp_sections): Handle lastprivate conditional. (lower_omp_1) <case GIMPLE_ASSIGN>: Handle sections construct with lastprivate_conditional_map. * omp-expand.c (expand_omp_sections): Handle lastprivate conditional. libgomp/ * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test. From-SVN: r271673
Jakub Jelinek committed -
* omp-low.c (lower_omp_1) <case GIMPLE_ASSIGN>: Look through ordered, critical, taskgroup and section regions when looking for a region with non-NULL lastprivate_conditional_map. * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test. From-SVN: r271672
Jakub Jelinek committed -
PR libgomp/90641 * work.c (gomp_init_work_share): Instead of aligning final ordered value to multiples of long long alignment, align to that the first part (ordered team ids) and if inline_ordered_team_ids is not on a long long alignment boundary within the structure, use __alignof__ (long long) - 1 pad size always. * loop.c (GOMP_loop_start): Fix *mem computation if inline_ordered_team_ids is not aligned on long long alignment boundary within the structure. * loop-ull.c (GOMP_loop_ull_start): Likewise. * sections.c (GOMP_sections2_start): Likewise. From-SVN: r271671
Jakub Jelinek committed -
For this test, we can match the codegen expected in the scan-asms by avoiding the extra indirection that's mandated by the ABI for common access and by using -mdynamic-no-pic for the 32b case. gcc/testsuite/ 2019-05-27 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/pr22076.c: Adjust options to match codegen expected by the scan-asms. From-SVN: r271670
Iain Sandoe committed -
* Makefile.am (check-go-tool): Only chmod check-go-dir if it exists. * Makefile.in: Regenerate. From-SVN: r271669
Ian Lance Taylor committed -
The assembler code needs to say it uses AltiVec instructions. libsanitizer/ PR target/90639 * tsan/tsan_rtl_ppc64.S: Add ".machine altivec". From-SVN: r271668
Segher Boessenkool committed -
* config/i386/i386.c (ix86_gen_add3): Remove indirect function. (*ix86_gen_sub3): Ditto. (*ix86_gen_sub3_carry): Ditto. (*ix86_gen_one_cmpl2): Ditto. (*ix86_gen_andsp): Ditto. (ix86_init_large_pic_reg): Use gen_add2_insn instead of ix86_gen_add3. (gen_and2_insn): New static function. (ix86_expand_prologue): Use gen_and2_insn instead of ix86_gen_andsp. Use gen_add3_insn instead of ix86_gen_add3. (ix86_expand_split_stack_prologue): Use gen_add2_insn instead of ix86_gen_add3. (legitimize_tls_address): Use gen_add2_insn instead of ix86_gen_add3. Use gen_sub3_insn instead of ix86_gen_sub3. * config/i386-expand.c (ix86_split_long_move): Use gen_add2_insn instead of ix86_gen_add3. (ix86_expand_strlensi_unroll_1): Use gen_add2_insn instead of ix86_gen_add3. Use gen_sub3_insn instead of ix86_gen_sub3. (construct_plt_address): Use gen_add2_insn instead of ix86_gen_add3. * config/i386/i386-options.c (ix86_option_override_internal): Do not initialize ix86_gen_add3, ix86_gen_sub3, ix86_gen_sub3_carry, ix86_gen_one_cmpl2 and ix86_gen_andsp. From-SVN: r271667
Uros Bizjak committed -
dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index and DW_OP_GNU_const_index opcodes. * dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index and DW_OP_GNU_const_index opcodes. From-SVN: r271664
Eric Botcazou committed -
* config/i386/i386.h (STACK_SIZE_MODE): Define. From-SVN: r271663
Uros Bizjak committed
-