- 02 Mar, 2016 11 commits
-
-
gcc/testsuite/ChangeLog * gfortran.dg/bessel_6.f90: Reduce accuracy for S/390. From-SVN: r233892
Dominik Vogt committed -
PR c/67854 * gimplify.c (gimplify_va_arg_expr): Use expanded location for the "is promoted to" warning. * gcc.dg/pr67854.c: New test. From-SVN: r233891
Marek Polacek committed -
PR middle-end/70025 * gcc.dg/torture/pr70025.c: New test. From-SVN: r233889
Jakub Jelinek committed -
2016-03-02 Venkataramanan Kumar <venkataramanan.kumar@amd.com> PR tree-optimization/68621 * gcc.dg/tree-ssa/ifc-8.c: Adjust test. From-SVN: r233888
Venkataramanan Kumar committed -
* MAINTAINERS (mep): Remove myself as MeP maintainer. * config.gcc: Deprecate mep-*. From-SVN: r233887
DJ Delorie committed -
PR c++/70036 * parser.c (cp_parser_requires_clause): Call check_for_bare_parameter_packs. From-SVN: r233886
Jason Merrill committed -
From-SVN: r233885
Jason Merrill committed -
PR c++/51489 * constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT the operands. From-SVN: r233878
Jason Merrill committed -
PR c++/69995 * constexpr.c (cxx_eval_call_expression): Unshare arg. (cxx_eval_constant_expression) [DECL_EXPR]: Unshare init. [TARGET_EXPR]: Unshare init. From-SVN: r233877
Jason Merrill committed -
2016-03-01 Vladimir Makarov <vmakarov@redhat.com> PR middle-end/70025 * lra-constraints.c (regno_val_use_in): New. (match_reload): Use it instead of regno_use_in. From-SVN: r233876
Vladimir Makarov committed -
From-SVN: r233874
GCC Administrator committed
-
- 01 Mar, 2016 29 commits
-
-
PR tree-optimization/69196 * tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths): Appropriately clamp the number of statements to copy when the thread path does not traverse a loop backedge. PR tree-optimization/69196 * gcc.dg/tree-ssa/pr69196.c: New test. From-SVN: r233870
Jeff Law committed -
PR rtl-optimization/70007 * gcse.c (compute_ld_motion_mems): Tidy up and also invalidate memory references present in REG_EQUAL notes attached to non-SET patterns. From-SVN: r233867
Eric Botcazou committed -
PR tree-optimization/69196 * tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths): Do count some PHIs in the thread path against the insn count. Decrease final statement count by one as the control statement in the last block will get removed. Remove special cased code for handling PHIs in the last block. PR tree-optimization/69196 * gcc.dg/tree-ssa/vrp46.c: Twiddle threading params to keep it from duplicating code and spoiling the expected output. From-SVN: r233866
Jeff Law committed -
2016-03-01 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70033 * gcc.target/powerpc/p9-lxvx-stxvx-1.c: Make sure compiler supports power9 before doing tests. * gcc.target/powerpc/p9-lxvx-stxvx-2.c: Likewise. * gcc.target/powerpc/p9-lxvx-stxvx-3.c: Likewise. * gcc.target/powerpc/p9-permute.c: Likewise. From-SVN: r233865
Michael Meissner committed -
PR target/70027 * config/i386/i386.c (ix86_output_call_insn): Add -masm=intel asm dialect alternatives to explicit GOTPCREL calls. testsuite/ChangeLog: PR target/70027 * gcc.target/i386/pr70027.c: New test. From-SVN: r233864
Uros Bizjak committed -
From-SVN: r233863
Eric Botcazou committed -
PR ada/70017 * ira.c (do_reload): Issue warning for generic stack checking here... * reload1.c (reload): ...instead of here and streamline it. From-SVN: r233862
Eric Botcazou committed -
PR c/69796 PR c/69974 * c-parser.c (c_parser_translation_unit): Don't change TREE_TYPE of incomplete decls to error_mark_node. * gcc.dg/pr69796.c: New test. * gcc.dg/pr69974.c: New test. From-SVN: r233861
Jakub Jelinek committed -
From-SVN: r233859
Eric Botcazou committed -
From-SVN: r233858
Nick Clifton committed -
PR tree-optimization/69987 * gfortran.dg/pr69987.f90: New test. PR tree-optimization/69989 * gcc.c-torture/compile/pr69989-2.c: New test. From-SVN: r233857
Jeff Law committed -
re PR middle-end/69983 (FAIL: gcc.dg/graphite/scop-sor.c scan-tree-dump-times graphite "number of SCoPs: 1" 1) 2016-03-01 Richard Biener <rguenther@suse.de> PR tree-optimization/69983 * tree-chrec.c (eq_evolutions_p): Handle conversions, compare types and fall back to operand_equal_p. From-SVN: r233856
Richard Biener committed -
PR c++/69795 * c-common.c (reject_gcc_builtin): Check for FUNCTION_DECL rather than any DECL. * g++.dg/parse/invalid1.C: New test. From-SVN: r233855
Marek Polacek committed -
This does not work without: https://gcc.gnu.org/ml/gcc-patches/2016-02/msg01575.html 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> Revert 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/constraints.md ("jm8"): New constraint. * config/s390/predicates.md ("const_int_8bitset_operand"): New predicate. * config/s390/s390.md ("*setmem_long", "*setmem_long_and"): Merge into ... ("*setmem_long<setmem_and>"): New pattern. ("*setmem_long_31z", "*setmem_long_and_31z"): Merge into ... ("*setmem_long_31z<setmem_and>"): New pattern. * config/s390/subst.md ("setmem_31z_subst", "setmem_and_subst"): New substitution rules with the required attributes. From-SVN: r233854
Andreas Krebbel committed -
2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> Revert 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * gensupport.c (process_substs_on_one_elem): Split loop to complete mark_operands_used_in_match_dup on all expressions in the vector first. (adjust_operands_numbers): Inline into process_substs_on_one_elem and remove function. From-SVN: r233853
Andreas Krebbel committed -
2016-03-01 Richard Biener <rguenther@suse.de> PR middle-end/70022 * fold-const.c (fold_indirect_ref_1): Fix range checking for vector BIT_FIELD_REF extract. * gcc.dg/pr70022.c: New testcase. From-SVN: r233852
Richard Biener committed -
2016-03-01 Richard Biener <rguenther@suse.de> PR tree-optimization/69994 * tree-ssa-reassoc.c (ops_equal_values_p): Handle missing case. From-SVN: r233851
Richard Biener committed -
gcc/ PR tree-optimization/69956 * tree-vect-stmts.c (supportable_widening_operation): Support multi-step conversion of boolean vectors. (supportable_narrowing_operation): Likewise. gcc/testsuite/ PR tree-optimization/69956 * gcc.dg/pr69956.c: New test. From-SVN: r233850
Ilya Enkovich committed -
After Y is never used anymore with SImode operands we can finally disallow SImode (if != Pmode) in s390_decompose_address. In fact that was the whole point of the patch series. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.c (s390_decompose_address): Don't accept SImode anymore. From-SVN: r233849
Andreas Krebbel committed -
While trying to get rid of the Y constraint in the setmem patterns I noticed that for these patterns it isn't even a problem since these always only use the constraint with a Pmode match_operand. But while being at it I've tried to fold some of the patterns a bit. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/constraints.md ("jm8"): New constraint. * config/s390/predicates.md ("const_int_8bitset_operand"): New predicate. * config/s390/s390.md ("*setmem_long", "*setmem_long_and"): Merge into ... ("*setmem_long<setmem_and>"): New pattern. ("*setmem_long_31z", "*setmem_long_and_31z"): Merge into ... ("*setmem_long_31z<setmem_and>"): New pattern. * config/s390/subst.md ("setmem_31z_subst", "setmem_and_subst"): New substitution rules with the required attributes. From-SVN: r233848
Andreas Krebbel committed -
This finally removes the Y constraint from the vector patterns while folding some of them using a code iterator. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/subst.md (DSI_VI): New mode iterator. ("addr_style_op_subst"): Use DSI_VI instead of DSI. * config/s390/vector.md ("vec_set<mode>"): Move expander before the insn definition. ("*vec_set<mode>"): Change predicate and add alternative to support only either register or const_int operands as element selector. ("*vec_set<mode>_plus"): New pattern to support reg + const_int operands. ("vec_extract<mode>"): New expander. ("*vec_extract<mode>"): New insn definition supporting reg and const_int element selectors. ("*vec_extract<mode>_plus"): New insn definition supporting reg+const_int element selectors. ("rotl<mode>3", "ashl<mode>3", "ashr<mode>3"): Merge into the following expander+insn definition. ("<vec_shifts_name><mode>3"): New expander. ("*<vec_shifts_name><mode>3<addr_style_op>"): New insn definition. From-SVN: r233847
Andreas Krebbel committed -
This removes the Y constraint from the tabort pattern definition. In this case it is easier without using substitutions. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.md ("*tabort_1"): Change predicate to nonmemory_operand. Add a second alternative to cover register as well as const int operands. ("*tabort_1_plus"): New pattern definition. From-SVN: r233846
Andreas Krebbel committed -
patterns. The arithmetic shift patterns set also the condition code. This adds more substitution potential. Depending on whether the actual result or the CC output will be used 3 different variants of each of these patterns are needed. This multiplied with the PLUS and the AND operands from the earlier substitutions enables a lot of folding. 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.md ("*ashrdi3_cc_31") ("*ashrdi3_cconly_31""*ashrdi3_cc_31_and") ("*ashrdi3_cconly_31_and", "*ashrdi3_31_and", "*ashrdi3_31"): Merge insn definitions into ... ("*ashrdi3_31<addr_style_op_cc><masked_op_cc><setcc><cconly>"): New pattern definition. ("*ashr<mode>3_cc", "*ashr<mode>3_cconly", "ashr<mode>3", ) ("*ashr<mode>3_cc_and", "*ashr<mode>3_cconly_and") ("*ashr<mode>3_and"): Merge insn definitions into ... ("*ashr<mode>3<addr_style_op_cc><masked_op_cc><setcc><cconly>"): New pattern definition. * config/s390/subst.md ("addr_style_op_cc_subst") ("masked_op_cc_subst", "setcc_subst", "cconly_subst"): New substitutions patterns plus attributes. Add ashiftrt to SUBST iterator. From-SVN: r233845
Andreas Krebbel committed -
shift patterns. With this patch the substitution patterns added earlier are used for the logical right shift and all the left shift patterns. 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.md ("<shift><mode>3"): Change predicate of op2 to nonmemory_operand. ("*<shift>di3_31", "*<shift>di3_31_and"): Merge into single pattern definition ... ("*<shift>di3_31<addr_style_op><masked_op>"): New pattern. ("*<shift><mode>3", "*<shift><mode>3_and"): Merge into single pattern definition ... ("*<shift><mode>3<addr_style_op><masked_op>"): New pattern. * config/s390/subst.md: Add ashift and lshiftrt to SUBST iterator. From-SVN: r233844
Andreas Krebbel committed -
This patch introduces substitution patterns to add PLUS const_int, and AND operands to patterns and uses this to rewrite the existing rotate pattern. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/predicates.md (const_int_6bitset_operand): New predicates. * config/s390/s390.md: Include subst.md. ("rotl<mode>3"): New expander. ("rotl<mode>3", "*rotl<mode>3_and"): Merge insn definitions into ... ("*rotl<mode>3<addr_style_op><masked_op>"): New insn definition. * config/s390/subst.md: New file. From-SVN: r233843
Andreas Krebbel committed -
alternatives. So far whenever we wanted to disable an alternative we have used mode attributes emitting constraints matching an earlier alternative assuming that due to this the later alternative will never be chosen. With this patch the `enabled' attribute, which so far is only set from `cpu_facility', is overridden to 0 to disable certain alternatives. This comes handy when defining the substitutions later and while adding it anyway I've used it for the existing cases as well. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.md ("op_type", "atype", "length" attributes): Remove RRR type. It doesn't really exist. ("RRer", "f0", "v0", "vf", "vd", "op1", "Rf"): Remove mode attributes. ("BFP", "DFP", "nDSF", "nDFDI"): Add mode attributes. ("*cmp<mode>_ccs", "floatdi<mode>2", "add<mode>3") ("*add<mode>3_cc", "*add<mode>3_cconly", "sub<mode>3") ("*sub<mode>3_cc", "*sub<mode>3_cconly", "mul<mode>3") ("fma<mode>4", "fms<mode>4", "div<mode>3", "*neg<mode>2") ("*abs<mode>2", "*negabs<mode>2", "sqrt<mode>2"): Override `enabled' attribute. From-SVN: r233842
Andreas Krebbel committed -
When processing substitutions the operands are renumbered. To find a free operand number the array used_operands_numbers is used. Currently this array is used to assign new numbers before all the RTXes in the vector have been processed. I did run into problems with this for insns where a match_dup occurred in a later (use ...) operand referring to an earlier operand (e.g. s390.md "setmem_long"). The patch splits the loop doing the processing into two in order to have all the operand numbers collected already when assigning new numbers. gcc/ChangeLog: 2016-03-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * gensupport.c (process_substs_on_one_elem): Split loop to complete mark_operands_used_in_match_dup on all expressions in the vector first. (adjust_operands_numbers): Inline into process_substs_on_one_elem and remove function. From-SVN: r233841
Andreas Krebbel committed -
2016-02-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR target/70011 * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr299925.c: XFAIL when hardware supports efficient unaligned storage access. From-SVN: r233840
Bill Schmidt committed -
gcc/cp/ChangeLog: PR c++/68948 PR c++/69961 * pt.c (tsubst_baselink): Reinstate the check for an invalid constructor call. gcc/testsuite/ChangeLog: PR c++/69961 * g++.dg/template/pr69961a.C: New test. * g++.dg/template/pr69961b.C: New test. From-SVN: r233838
Patrick Palka committed
-