Commit 4f67832e by Jakub Jelinek Committed by Jakub Jelinek

re PR bootstrap/92433 (r276645 breaks bootstrap on powerpc)

	PR bootstrap/92433
	* config/rs6000/rs6000-c.c (altivec_build_resolved_builtin): Guard
	ALTIVEC_BUILTIN_VEC_VCMPGE_P argument swapping with n == 3 check.  Use
	std::swap.

From-SVN: r278066
parent 7cec9588
2019-11-11 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/92433
* config/rs6000/rs6000-c.c (altivec_build_resolved_builtin): Guard
ALTIVEC_BUILTIN_VEC_VCMPGE_P argument swapping with n == 3 check. Use
std::swap.
2019-11-11 Richard Sandiford <richard.sandiford@arm.com> 2019-11-11 Richard Sandiford <richard.sandiford@arm.com>
PR tree-optimization/92420 PR tree-optimization/92420
...@@ -6076,14 +6076,14 @@ altivec_build_resolved_builtin (tree *args, int n, ...@@ -6076,14 +6076,14 @@ altivec_build_resolved_builtin (tree *args, int n,
condition (LT vs. EQ, which is recognizable by bit 1 of the first condition (LT vs. EQ, which is recognizable by bit 1 of the first
argument) is reversed. Patch the arguments here before building argument) is reversed. Patch the arguments here before building
the resolved CALL_EXPR. */ the resolved CALL_EXPR. */
if (desc->code == ALTIVEC_BUILTIN_VEC_VCMPGE_P if (n == 3
&& desc->code == ALTIVEC_BUILTIN_VEC_VCMPGE_P
&& desc->overloaded_code != ALTIVEC_BUILTIN_VCMPGEFP_P && desc->overloaded_code != ALTIVEC_BUILTIN_VCMPGEFP_P
&& desc->overloaded_code != VSX_BUILTIN_XVCMPGEDP_P) && desc->overloaded_code != VSX_BUILTIN_XVCMPGEDP_P)
{ {
tree t; std::swap (args[1], args[2]);
t = args[2], args[2] = args[1], args[1] = t; std::swap (arg_type[1], arg_type[2]);
t = arg_type[2], arg_type[2] = arg_type[1], arg_type[1] = t;
args[0] = fold_build2 (BIT_XOR_EXPR, TREE_TYPE (args[0]), args[0], args[0] = fold_build2 (BIT_XOR_EXPR, TREE_TYPE (args[0]), args[0],
build_int_cst (NULL_TREE, 2)); build_int_cst (NULL_TREE, 2));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment