- 28 May, 2019 21 commits
-
-
* 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 19 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 -
2019-05-27 Christophe Lyon <christophe.lyon@linaro.org> PR tree-optimization/88440 gcc/testsuite/ * gcc.target/aarch64/sve/index_offset_1.c: Add -fno-tree-loop-distribute-patterns. * gcc.target/aarch64/sve/single_1.c: Likewise. * gcc.target/aarch64/sve/single_2.c: Likewise. * gcc.target/aarch64/sve/single_3.c: Likewise. * gcc.target/aarch64/sve/single_4.c: Likewise. * gcc.target/aarch64/sve/vec_init_1.c: Likewise. * gcc.target/aarch64/vect-fmovd-zero.c: Likewise. * gcc.target/aarch64/vect-fmovf-zero.c: Likewise. * gcc.target/arm/ivopts.c: Likewise. From-SVN: r271662
Christophe Lyon committed -
2019-05-27 Richard Biener <rguenther@suse.de> PR tree-optimization/90637 * tree-ssa-sink.c (statement_sink_location): Honor the computed sink location for single-uses. * gcc.dg/gomp/pr90637.c: New testcase. From-SVN: r271661
Richard Biener committed -
* gcc-interface/trans.c (Call_to_gnu): Do not initialize the temporary created out of addressability concerns if it's for the _Init parameter of an initialization procedure. From-SVN: r271659
Eric Botcazou committed -
* gcc-interface/ada-builtin-types.def: New file. * gcc-interface/ada-builtins.def: Likewise. * gcc-interface/ada-tree.h (BUILT_IN_LIKELY): New macro. (BUILT_IN_UNLIKELY): Likewise. * gcc-interface/trans.c (independent_iterations_p): Initialize the auto-vector to 16 elements. (Call_to_gnu): Remove local variable and change the vector of actual parameters to an auto-vector. Do not convert actual parameters to the argument type for front-end built-in functions. Add support for front-end built-in functions. (build_noreturn_cond): Use internal instead of built-in function. * gcc-interface/utils.c (c_builtin_type): Include ada-builtin-types.def (install_builtin_function_types): Likewise. (install_builtin_functions): Include ada-builtins.def first. From-SVN: r271658
Eric Botcazou committed -
* gcc-interface/utils.c (maybe_pad_type): Issue the warning for the specific case of component types preferably. From-SVN: r271655
Eric Botcazou committed -
* gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks. (gnat_to_gnu): Do not convert the result if it is a reference to an unconstrained array used as the prefix of an attribute reference that requires an lvalue. From-SVN: r271653
Eric Botcazou committed -
re PR tree-optimization/90610 (526.blender_r miscompared on znver1 with -Ofast -march=native since r271463) 2019-05-27 Richard Biener <rguenther@suse.de> PR middle-end/90610 * match.pd (vec_perm): Avoid clobbering op0 when not generating a bit-insert. From-SVN: r271652
Richard Biener committed -
* gcc-interface/trans.c (Gigi_Types_Compatible): New predicate. (Identifier_to_gnu): Use it to assert that the type of the identifier and that of its entity are compatible for gigi. Rename a couple of local variables and separate the processing of the result type. From-SVN: r271650
Eric Botcazou committed -
trans.c (Call_to_gnu): Use the unpadded type when putting back an intermediate conversion the type of... * gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when putting back an intermediate conversion the type of the actuals. From-SVN: r271647
Eric Botcazou committed -
trans.c (gnat_to_gnu): Convert the count to the unsigned version of its base type before proceeding. * gcc-interface/trans.c (gnat_to_gnu) <Shift operations>: Convert the count to the unsigned version of its base type before proceeding. From-SVN: r271646
Eric Botcazou committed
-