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>
PR tree-optimization/92420
......@@ -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
argument) is reversed. Patch the arguments here before building
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 != VSX_BUILTIN_XVCMPGEDP_P)
{
tree t;
t = args[2], args[2] = args[1], args[1] = t;
t = arg_type[2], arg_type[2] = arg_type[1], arg_type[1] = t;
std::swap (args[1], args[2]);
std::swap (arg_type[1], arg_type[2]);
args[0] = fold_build2 (BIT_XOR_EXPR, TREE_TYPE (args[0]), args[0],
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