- 28 May, 2019 14 commits
-
-
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 23 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 -
2019-05-27 Richard Biener <rguenther@suse.de> PR testsuite/90615 * gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c: Add -fno-tree-loop-distribute-patterns. * gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Likewise. * gcc.target/powerpc/vsx-vectorize-1.c: Likewise. From-SVN: r271645
Richard Biener committed -
From-SVN: r271644
GCC Administrator committed -
PR go/90635 libgo: correct typo in USE_LIBFFI AM_CONDITIONAL Only affects the case of passing --without-libffi to configure. Fixes https://gcc.gnu.org/PR90635 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/178998 From-SVN: r271640
Ian Lance Taylor committed -
re PR go/90614 (gcc-9.1.0/libgo/go/syscall/wait.c:54:22: error: unused parameter ‘w’ [-Werror=unused-parameter] Continued (uint32_t *w)) PR go/90614 syscall: avoid unused parameter error if WIFCONTINUED not defined Fixes https://gcc.gnu.org/PR90614 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/178997 From-SVN: r271638
Ian Lance Taylor committed
-
- 26 May, 2019 3 commits
-
-
* config/i386/i386.md (@leave_<mode>): New expander. (*leave): Rename from leave. (*leave_rex64): Rename from leave_rex64. (@monitorx_<mode>): Rename from monitorx_<mode>. (@clzero_<mode>): Rename from clzero_<mode>. * config/i386/sse.md (@sse3_monitor_<mode>): Rename from sse3_monitor_<mode>. * config/i386/i386.c (*ix86_gen_leave): Remove indirect function. (*ix86_gen_monitor): Ditto. (*ix86_gen_monitorx): Ditto. (*ix86_gen_clzero): Ditto. (*ix86_gen_one_cmpl2): Ditto. (ix86_emit_leave): Use gen_leave instead of ix86_gen_leave. * config/i386/i386-expand.c (ix86_expand_builtin) <case IX86_BUILTIN_MONITOR>: Use gen_sse3_monitor instead of ix86_gen_monitor. <case IX86_BUILTIN_MONITORX>: Use gen_monitorx instead of ix86_gen_monitorx. <case IX86_BUILTIN_CLZERO>: Use gen_clzero instead of ix86_gen_clzero. * config/i386/i386-options.c (ix86_option_override_internal): Do not initialize ix86_gen_leave, ix86_gen_monitor, ix86_gen_monitorx, ix86_gen_clzero and ix86_gen_one_cmpl2. * config/i386/i386.md (@tls_global_dynamic_64_<mode>): Rename from tls_global_dynamic_64_<mode>. (@tls_local_dynamic_base_64_<mode>): Rename from tls_local_dynamic_base_64_<mode>. * config/i386/i386.c (*ix86_gen_tls_global_dynamic_64): Remove indirect function. (*ix86_gen_tls_local_dynamic_base_64): Ditto. (legitimize_tls_address): Use gen_tls_global_dynamic_64 function instead of ix86_gen_tls_global_dynamic_64. Use gen_tls_local_dynamic_base_64 instead of ix86_gen_tls_local_dynamic_base_64. * config/i386/i386-options.c (ix86_option_override_internal): Do not initialize ix86_gen_tls_global_dynamic_64 and ix86_gen_tls_local_dynamic_base_64. * config/i386/i386.md (@pro_epilogue_adjust_stack_add_<mode>) Rename from pro_epilogue_adjust_stack_<mode>_add. (@pro_epilogue_adjust_stack_sub_<mode>) Rename from pro_epilogue_adjust_stack_<mode>_sub. (@allocate_stack_worker_probe_<mode>): Rename from allocate_stack_worker_probe_<mode>. (allocate_stack): Use gen_allocate_stack_worker_probe. (probe_stack): Use gen_probe_stack_1. (@probe_stack_1_<mode>): Rename from probe_stack_<mode>. (@adjust_stack_and_probe_<mode>): Rename from adjust_stack_and_probe<mode>. (@probe_stack_range_<mode>): Rename from probe_stack_range<mode>. (stack_protect_set): Use gen_stack_protect_set_1. (@stack_protect_set_1_<mode>): Rename from stack_protect_set_<mode>. (stack_protect_test): Use gen_stack_protect_test_1. (@stack_protect_test_1_<mode>): Rename from stack_protect_test_<mode>. * config/i386/i386.c (*ix86_gen_allocate_stack_worker): Remove indirect function. (*ix86_gen_adjust_stack_and_probe): Ditto. (*ix86_gen_probe_stack_range): Ditto. (pro_epilogue_adjust_stack): Use gen_pro_epilogue_adjust_stack_add instead of gen_pro_epilogue_adjust_stack_{si,di}_add. (ix86_adjust_stack_and_probe_stack_clash): Use gen_adjust_stack_and_probe instead of ix86_gen_adjust_stack_and_probe. (ix86_adjust_stack_and_probe): Ditto. (ix86_emit_probe_stack_range): Use gen_probe_stack_range instead of ix86_gen_probe_stack_range. (ix86_expand_prologue): Use gen_pro_epilogue_adjust_stack_sub instead of gen_pro_epilogue_adjust_stack_{si,di}_sub. * config/i386/x86-tune-sched.c (ix86_macro_fusion_pair_p): Include insn-opinit.h. Use code_for_stack_protect_test_1 instead of CODE_FOR_stack_protect_test_{si,di}. * config/i386/i386-options.c (ix86_option_override_internal): Do not initialize ix86_gen_allocate_stack_worker, ix86_gen_adjust_stack_and_probe and ix86_gen_probe_stack_range. From-SVN: r271636
Uros Bizjak committed -
* doc/xml/manual/appendix_contributing.xml: Update pointer to C++ standard at ansi.org. From-SVN: r271635
Gerald Pfeifer committed -
Darwin requires PIC code in order to support PIE, amend the test scan-asms to match this. 2019-05-26 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/pr39013-1.c: Adjust scan-asms for PIE to account for PIC code on Darwin. * gcc.target/i386/pr39013-2.c: Likewise. * gcc.target/i386/pr64317.c: Likewise. From-SVN: r271634
Iain Sandoe committed
-