-
Notifications
You must be signed in to change notification settings - Fork 231
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
extra header to map the simde names to the original names #38
Comments
This seems like a really good idea at first. In fact, IIRC earlier versions of SIMDe did actually support this, though not with an additional header; I believe you had to define something like The biggest problem is that SIMDe isn't designed just for porting to other architectures (e.g., running SSE code on ARM), but for porting to anything which doesn't have native support for the ISA extension in question (e.g., AVX2 on processors that don't support it). If we did this, we would quickly run into problems with incompatible types, such as It also introduces various other less severe issues, like creating identifiers that start with FWIW, I really haven't had any trouble automatically converting stuff to SIMDe, and I don't even bother with a script; just something like
You may have to add some extensions (*.cc, *.cpp, *.hpp, etc.) for C++ projects, but it's pretty straightforward. I imagine if someone uses some of the Microsoft extensions ( |
i see your point. i can just say from my experience with this one project, that a simple find and replace does not work too well for larger projects, as the replace would hit a lot of non-sse code as well. this is what i had to come up with to get things converted for the vcvrack 1.0 branch and the Valley plugin for it:
and that then run recursively across the project :) |
hi nemequ,
just one other idea i ran across while using simde: it would be really nice if there would be some optional extra header available as part of simde, which maps all the simde_ names back to their regular counterparts. this way one could simply replace the occurence of the original *mintrin.h includes with the simde headers plus those new headers and should be able to run code unmodified if everything works fine. right now it looks like i have to change all occurences of the original sse _m..., _m... etc to their simde counterparts by hand or some script which is error prone.
maybe such a suggested new header might be created automatically somehow from the simde sources
best wishes - hexdump
The text was updated successfully, but these errors were encountered: