-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rename overloaded intrinsics #117
Comments
I am not sure if we should provide such intrinsics for C++ template. In the previous discussion #7, we decide to provide 1-to-1 intrinsics. Is it possible to provide wrapper functions in users' code to meet the purpose? |
|
It may make sense to define them in the overloaded interface. Wait for others' opinions. |
+1 from me. |
This is a good feature to have. Let's revisit this after the v1.0 release? |
The Conversely, These all become a nightmare as soon as people start using typedef under conditional compilation and then having to map all the intrinsic operations through at the same time. |
I notice the overloaded intrinsic function name is very unfriendly to C++ template.
For example, if we want to do element-wise max for two array, we will write
To make it support unsigned and float, we will write
However, they cannot write in a simple C++ template, since max has different name (
vmax
,vmaxu
,vfmax
).We should make intrinsics have same name if they have same semantic.
For example,
vadd
,vfadd
->vadd
vwadd
,vfwadd
->vwadd
vmax
,vmaxu
,vfmax
->vmax
vmseq
,vmfeq
->vmseq
vredsum
,vfredusum
->vredsum
Old intrinsics will be kept (backward compatibility).
The text was updated successfully, but these errors were encountered: