-
Notifications
You must be signed in to change notification settings - Fork 82
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
Attempt to consolidate SSE and ARM NEON SIMD code for GCC/clang and Visual Studio #252
base: master
Are you sure you want to change the base?
Commits on May 10, 2022
-
graphene-macros.h: Add macros for one-liner intrinsic calls
This way, we can try to abstract uses of such calls between different compilers that we support instead of repeating them in the headers due to differences in compiler syntax/feature support.
Configuration menu - View commit details
-
Copy full SHA for fbb5657 - Browse repository at this point
Copy the full SHA fbb5657View commit details -
include/graphene-simd*.h: Reduce duplication in SSE one-liner calls
Use the newly-added macros to abstract the one-liner intrinsic calls for GCC/CLang and Visual Studio for building the SSE code, to reduce duplication. It's not totally exhausive, but should cover quite a number of items.
Configuration menu - View commit details
-
Copy full SHA for 000be8a - Browse repository at this point
Copy the full SHA 000be8aView commit details -
include/graphene-simd*.h: Reduce duplication in ARM NEON one-liner calls
Use the newly-added macros to abstract one-liner intrinsic calls for GCC/CLang and Visual Studio for building the ARM NEON code, to reduce duplication. It's not totally exhausive, but should cover quite a number of items.
Configuration menu - View commit details
-
Copy full SHA for 4bcde64 - Browse repository at this point
Copy the full SHA 4bcde64View commit details -
graphene-macros.h: Add macro to initialize SIMD data arrays
These macros can be used to abstract initializing SIMD data arrays for the different compilers that we support, especially as we already require C99 support for building and using Graphene.
Configuration menu - View commit details
-
Copy full SHA for 5a02723 - Browse repository at this point
Copy the full SHA 5a02723View commit details -
graphene-simd4f.h: Simplify initializing SSE SIMD data arrays
Use the macros that we just added to initialize the graphene_simd4f_t arrays with the floats that we pass into graphene_simd4f_init*() as applicable. This especially simplifies the code for Visual Studio since we already require C99 support for building and using Graphene, and we can reduce some code duplication.
Configuration menu - View commit details
-
Copy full SHA for 4fb484b - Browse repository at this point
Copy the full SHA 4fb484bView commit details
Commits on May 11, 2022
-
graphene-simd4f.h: Typedef graphene_simd4f_uif_t only once
We don't need identical typedefs separate for GCC/CLang and Visual Studio. Put them in one place for all cases.
Configuration menu - View commit details
-
Copy full SHA for b0442e1 - Browse repository at this point
Copy the full SHA b0442e1View commit details -
graphene-simd4f.h: Consolidate graphene_simd4f_get_*() for SSE
We can define them instead to call the respective graphene_simd4f_get() accordingly instead.
Configuration menu - View commit details
-
Copy full SHA for 87ed5e7 - Browse repository at this point
Copy the full SHA 87ed5e7View commit details -
graphene-simd4f.h: Prefix MSVC implementation of SSE SIMD calls
...with graphene_msvc_ instead of just _. This attempts to make things clearer to people.
Configuration menu - View commit details
-
Copy full SHA for 14e30be - Browse repository at this point
Copy the full SHA 14e30beView commit details -
graphene-simd4f.h: Prefix MSVC implementation of ARM NEON SIMD calls
...with graphene_msvc_ instead of just _. This attempts to make things clearer to people.
Configuration menu - View commit details
-
Copy full SHA for 1a7f1e3 - Browse repository at this point
Copy the full SHA 1a7f1e3View commit details