GCC maintainers: The following patch fixes an issue with the builtin test test_ne_long(). The issue is the arguments need to be "bool long long" not "bool long" to get the correct 64-bit value when running in 32-bit mode.
The patch has been tested on: powerpc64-unknown-linux-gnu (Power 7 64-bit, 32-bit) with no regressions. Is this OK for trunk? Carl Love -------------------------------------------------------------------------- gcc/testsuite/ChangeLog: 2017-01-13 Carl Love <c...@us.ibm.com> * gcc.target/powerpc/builtins-3-p9.c (test_ne_long()): Test fails in 32-bit mode because the arguments are of type "bool long" not "bool long long". The arguments need to be "bool long long" to get a correct 64-bit value in 32-bit mode. --- gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c index d846e29..e3db2da 100644 --- a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c +++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c @@ -22,8 +22,8 @@ test_ne_int (vector bool int x, vector bool int y) return vec_cmpne (x, y); } -vector bool long -test_ne_long (vector bool long x, vector bool long y) +vector bool long long +test_ne_long (vector bool long long x, vector bool long long y) { return vec_cmpne (x, y); } -- 1.8.3.1