[llvm-bugs] [Bug 46770] New: [ppc] vec_sel variants missing
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jul 17 22:22:54 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=46770
Bug ID: 46770
Summary: [ppc] vec_sel variants missing
Product: new-bugs
Version: trunk
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: clang at evan.coeusgroup.com
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
According to the xlc documentation
(<https://www.ibm.com/support/knowledgecenter/SSXVZZ_16.1.1/com.ibm.compilers.linux.doc/compiler.pdf?view=kc>,
page 501), the following variants of vec_sel should be available:
vector bool long long
vec_sel(vector bool long long
vector bool long long,
vector bool long long);
vector bool long long
vec_sel(vector bool long long
vector bool long long,
vector unsigned long long);
vector signed long long
vec_sel(vector signed long long
vector signed long long,
vector bool long long);
vector signed long long
vec_sel(vector signed long long
vector signed long long,
vector unsigned long long);
vector unsigned long long
vec_sel(vector unsigned long long
vector unsigned long long,
vector bool long long);
vector unsigned long long
vec_sel(vector unsigned long long
vector unsigned long long,
vector unsigned long long);
However, in clang the only variants declared in altivec.h for 64-bit types have
vector double for the first two arguments and the return value.
Reproducing is pretty straightforward, just enable -Wvector-conversion and try
to call one of the functions. For example:
#include <altivec.h>
vector signed long long
foo(vector signed long long a,
vector signed long long b,
vector unsigned long long c) {
return vec_sel(a, b, c);
}
Here it is on Compiler Explorer: https://godbolt.org/z/x71Gnj
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200718/d1740b08/attachment.html>
More information about the llvm-bugs
mailing list