Commit Graph

423 Commits

Author SHA1 Message Date
Christophe Riccio
52f8ecd973 Added AVX optimizations and equal tests 2016-05-30 14:23:58 +02:00
Christophe Riccio
9ed2a9601b Adde vec4 swizzle operators SIMD optimizations 2016-05-30 02:00:32 +02:00
Christophe Riccio
b9199a2c1a Refactoring of swizzle operators, preparing for vec4 swizzle SIMD optimizations 2016-05-30 01:39:16 +02:00
Christophe Riccio
28cb770d14 SIMD common functions optimizations 2016-05-29 19:14:39 +02:00
Christophe Riccio
42d86b8955 Fixed exponential low level API 2016-05-29 03:14:19 +02:00
Christophe Riccio
20cf68679c SIMD sqrt optimizations including lowp 2016-05-29 02:57:53 +02:00
Christophe Riccio
7fe2f5fe65 Renamed instruction set flags 2016-05-28 19:26:59 +02:00
Christophe Riccio
d33e3df02a Fixed SIMD code path selection 2016-05-28 18:24:39 +02:00
Christophe Riccio
ab159770b3 mad optimizations, fixed build 2016-05-28 17:12:48 +02:00
Christophe Riccio
fdec412ff7 Added FMA SIMD optimization 2016-05-28 12:31:43 +02:00
Christophe Riccio
a9fefc7300 Added vec4 SIMD contructor specialization 2016-05-28 01:33:29 +02:00
Christophe Riccio
f577611328 Added bitwise inverse SIMD optimization. Factorized bitwise optimization code 2016-05-27 23:03:38 +02:00
Christophe Riccio
4797ea9540 Added specialized SSE2 and AVX bool mix 2016-05-26 02:47:43 +02:00
Christophe Riccio
72c741d8ea Fixed sign with signed integer function on non-x86 architecture 2016-05-24 13:29:18 +02:00
Christophe Riccio
757fe39587 Removed simd precision qualifier. All precision qualifiers may generate SIMD instructions, precision may affect the generated instructions accordingly 2016-05-22 17:12:32 +02:00
Christophe Riccio
93612791cd Removed Apple specific check for LLVM versions 2016-05-04 18:46:59 +02:00
Christophe Riccio
affd5f3ba0 Fixed CUDA compiler error in type_vec4.inl #504 2016-05-04 16:35:57 +02:00
Christophe Riccio
1f71f6fb3a Improved SIMD and swizzle operators interactions with GCC and Clang, Added raw SIMD API. 2016-05-03 23:57:41 +02:00
Christophe Riccio
be8d6c9ccc Fixed test 2016-05-01 01:40:06 +02:00
Christophe Riccio
fa6f5cdcbb Fixed warning 2016-05-01 01:35:54 +02:00
Christophe Riccio
2f9fc55d88 More experiments to improve SIMD support 2016-05-01 01:12:22 +02:00
Christophe Riccio
234d7d4ba9 Simplify code removing GLM_FORCE_SIZE_FUNC, GLM_META_PROG_HELPERS, GLM_STATIC_CONST_MEMBERS and 'type' type trait. Added experiments for GTX_type_trait 2016-03-13 12:56:26 +01:00
Christophe Riccio
c853df1638 Added uround to GTC_integer, fast round on positive values 2016-03-10 21:17:46 +01:00
Paul Konstantin Gerke
239cf70ade Fixed: outerProduct was defined incorrectly for unmatched vecX types. E.g. outerProduct(vec2, vec4) did not succeed because the matrix return types were wrong. The computing function seemed fine. I used https://en.wikipedia.org/wiki/Outer_product as reference on what the number of columns/rows ''should'' be and fixed it so that it matches the description from wikipedia
Added: tests for outerProduct with unmatched vector dimensions (actually testing all combinations now)
2016-03-05 23:51:20 +01:00
Angelica Wrangler
72a8ba473d Merge pull request #475 from MrApplejuice/master
Fixed: outerProduct defintions and operator signatures for mat2x4 and vec4 #475
2016-03-05 23:18:21 +01:00
Joonas Sarajärvi
bc09ecf898 setup: detect GCC 6.0 2016-02-15 20:27:10 +01:00
Joonas Sarajärvi
f0acbbd4ac setup: detect GCC 6.0 2016-02-04 19:42:25 +02:00
Paul Konstantin Gerke
fb309e0eff Fixed: outerProduct was defined incorrectly for unmatched vecX types. E.g. outerProduct(vec2, vec4) did not succeed because the matrix return types were wrong. The computing function seemed fine. I used https://en.wikipedia.org/wiki/Outer_product as reference on what the number of columns/rows ''should'' be and fixed it so that it matches the description from wikipedia
Added: tests for outerProduct with unmatched vector dimensions (actually testing all combinations now)
2016-01-24 21:14:25 +01:00
humbletim
5d46e5186d remove extraneous test block 2016-01-03 18:30:29 +01:00
Adrian Krupa
c9400562ec Fixed build 2016-01-03 18:25:45 +01:00
humbletim
52c9f124e3 Fixed ldexp and frexp compilation errors 2016-01-03 18:20:13 +01:00
Christophe R
8d4d9d1877 Merge pull request #466 from humbletim/master
Fixed ldexp compilation error #466
2016-01-01 14:34:04 +01:00
Christophe Riccio
d269a92c2d Merge branch 'master' of https://github.com/g-truc/glm 2015-12-24 09:56:00 +01:00
humbletim
ac7ae32856 remove extraneous test block 2015-12-19 19:30:00 -05:00
humbletim
8c55a64fdd Fixed ldexp compilation error 2015-12-19 19:22:33 -05:00
Adrian Krupa
8fd8c56074 Fixed frexp compilation error 2015-11-29 20:53:04 +01:00
Christophe Riccio
b51f4e8981 Added test 2015-11-14 13:25:06 +01:00
Christophe Riccio
a257beb5de Added missing bvec* && and || operators 2015-10-15 04:28:08 +02:00
Christophe R.
143c4c336a Merge pull request #429 from JesseTG/jtg/static-const
Add GLM_STATIC_CONST_MEMBERS #429
2015-10-07 22:28:49 +02:00
Christophe Riccio
8814ae50c9 Fixed GTX_extended_min_max filename typo #386 2015-10-07 21:49:33 +02:00
Jesse Talavera-Greenberg
9604a7549f Add IDENTITY and ZERO constants for all matrices
- Tests, too
2015-10-05 19:26:30 -04:00
Jesse Talavera-Greenberg
5df08dfc78 Wrap tvec4's static constants in GLM_STATIC_CONST_MEMBERS
- Fix the indentation, too
2015-10-05 18:25:01 -04:00
Jesse Talavera-Greenberg
8be318970c Wrap tvec3's static constants in GLM_STATIC_CONST_MEMBERS
- Fixed the indentation, too
2015-10-05 18:24:31 -04:00
Jesse Talavera-Greenberg
4552ec737e Wrap tvec2's static constants in GLM_STATIC_CONST_MEMBERS 2015-10-05 18:23:18 -04:00
Jesse Talavera-Greenberg
5a60b3986b Wrap tvec1's static constants in GLM_STATIC_CONST_MEMBERS 2015-10-05 18:22:43 -04:00
Jesse Talavera-Greenberg
02b011651b Add static constants to vec4
- Tests, too
2015-10-02 18:34:53 -04:00
Jesse Talavera-Greenberg
25bd7014b0 Add static constants for vec3
- Tests, too
2015-10-02 18:34:17 -04:00
Jesse Talavera-Greenberg
b42a46d246 Add static constants for vec2
- Tests, too
2015-10-02 18:33:14 -04:00
Jesse Talavera-Greenberg
b8ff59a61b Add static constants for vec1
- Tests, too
2015-10-02 18:32:39 -04:00
Christophe Riccio
47c77475a9 - Improved overall execution time of unit tests #396 2015-09-06 22:22:20 +02:00
Christophe Riccio
af10e20f68 Fixed core_func_integer test 2015-09-06 22:03:28 +02:00
Christophe Riccio
be983bd7cb Added test 2015-08-31 17:33:22 +02:00
Christophe R
79f6d92c8a Added GLM_SIMD to enable automatic SIMD code generation for generic GLM types #235 #370 2015-08-09 10:50:29 +02:00
Christophe R
f9535f2398 Trying to reproduce #235 2015-08-09 00:24:38 +02:00
Christophe Riccio
bc0f5317fd Updated documentation 2015-08-01 22:54:27 +02:00
Christophe Riccio
d6ae2fd694 Fixed matrix conversions and added unit tests #371 2015-08-01 21:40:36 +02:00
Christophe R.
37d4ca9c4c Merge pull request #368 from JesseTG/jtg/oops-sorry
Fixed some of my own metaprogramming-helper mistakes #368
2015-07-25 23:28:38 +02:00
Christophe Riccio
afa193704c Fixed interactions with GLM_FORCE_NO_CTOR_INIT and default functions #366 2015-07-25 23:23:59 +02:00
Christophe Riccio
a56a40e1f2 Added support of defaulted functions to GLM types, to use them in unions #366 2015-07-25 21:31:51 +02:00
Jesse Talavera-Greenberg
2a947b7ff1 Add GLM_META_PROG_HELPERS tests to each type
- Add new tests to the matrix types
- Add vector tests to use the static values instead of constants
- Wrap the quaternion tests in #ifdefs
- Add new tests to the simdMat4 and simdVec4 tests
2015-07-25 14:33:01 -04:00
Christophe Riccio
f7751bfb06 Added support of defaulted functions to *vec* types #366 2015-07-25 01:24:03 +02:00
Christophe Riccio
562ab0b559 Test fix and warning fixes #364 2015-07-24 01:24:28 +02:00
Christophe Riccio
1e0cf75b2f More testing 2015-07-19 16:55:27 +02:00
Christophe Riccio
f96887863d Added a heap allocation test 2015-07-19 16:41:07 +02:00
Christophe Riccio
dcfddb75b8 Updated list of compiler versions 2015-07-19 02:36:53 +02:00
Christophe Riccio
4f7afb272f Fixed GCC build, GLM_META_PROG_HELPERS unsupported with GCC 4.6 2015-07-19 01:46:49 +02:00
Christophe Riccio
c90f7b0973 Fixed build 2015-07-19 01:04:07 +02:00
Christophe Riccio
6f1b7c24ce Fixed build 2015-07-19 00:34:59 +02:00
Christophe Riccio
47deb9709c Merge pull request #350 from JesseTG/jtg/template-convenience
Add static components and prec members to all vector and quat types #350
2015-07-18 23:49:29 +02:00
Christophe Riccio
357eaf7071 Fixed warnings 2015-07-18 10:00:00 +02:00
Jesse Talavera-Greenberg
a9c26d065b Add static components and prec members to all vector and quaternion types 2015-07-03 14:57:46 -04:00
Christophe Riccio
08eedc6209 Added experiment for new fastCos. More sRGB tests. 2015-06-27 18:36:17 +02:00
Christophe Riccio
042270d049 Added 'fmod' overload to GTX_common with tests, Removed integer specification for 'mod' in GTC_integer #308 2015-02-15 12:38:23 +01:00
Christophe Riccio
d9290d7887 Fixed GTC_packing *pack*norm*x* build and added tests #292 2015-01-09 23:14:10 +01:00
Christophe Riccio
2336264f4e Added ARM instruction set detection 2014-12-20 17:16:52 +01:00
Christophe Riccio
fc8b4404f0 Fixed faceforward build #289 2014-12-19 23:54:25 +01:00
Christophe Riccio
c556770a32 Fixed C++98 only build 2014-12-10 02:52:30 +01:00
Christophe Riccio
5331b67ad0 Clean up GLM_MESSAGES compilation log to report only detected capabilities 2014-12-10 02:27:13 +01:00
Christophe Riccio
83ad80d6b4 Fixed clang build 2014-11-29 20:52:53 +01:00
Christophe Riccio
a42f84ed47 Removed GLM_TEST_ENABLE_PERF 2014-11-29 20:46:58 +01:00
Christophe Riccio
0b9b157e24 Fixed test return type 2014-11-29 20:44:21 +01:00
Christophe Riccio
d79b17bcd1 Fixed test compiler error in Clang 2014-11-29 20:34:34 +01:00
Christophe Riccio
98fd37bef1 Fixed build 2014-11-29 20:28:25 +01:00
Christophe Riccio
a6b31d8fa1 Fixed test build 2014-11-29 20:21:13 +01:00
Christophe Riccio
cfac6e1b06 Fixed _tzcnt_u32 build, only with Windows 2014-11-29 19:10:55 +01:00
Christophe Riccio
7e81213fdd Fixed mod function specialization #281 Fixed bitscan detection 2014-11-29 18:47:58 +01:00
Christophe Riccio
bdd723ed3b Updated deprecated compilers 2014-11-27 23:42:35 +01:00
Christophe Riccio
3f48ffefb0 Updated license 2014-11-26 00:27:12 +01:00
Christophe Riccio
c20df07879 Updated license 2014-11-25 22:25:24 +01:00
Christophe Riccio
e8fbcf76dd Optimizations of log2 for ivec4 2014-11-24 01:56:36 +01:00
Christophe Riccio
0bffce4f4b Optimized findMSB and findLSB 2014-11-22 20:14:48 +01:00
Christophe Riccio
38161f01f8 Further optimized glm::sign for signed and unsigned int #271 2014-11-21 23:43:48 +01:00
Christophe Riccio
f98f2b107a Merge branch 'GTC_integer' 2014-11-21 22:50:00 +01:00
Christophe Riccio
6f8bbecbf5 Updated sign 2014-11-21 22:49:39 +01:00
Christophe Riccio
b0b84a3dc1 Optimized sign for vector types #271 2014-11-21 00:50:47 +01:00
Christophe Riccio
3adf263341 Added GLM_FORCE_EXPLICIT_CTOR to require explicit type conversions #269 2014-11-17 22:59:10 +01:00
Christophe Riccio
1a4bc0d8a5 Added more geometric function tests 2014-11-16 20:52:54 +01:00
Christophe Riccio
2d48d922bd Updated VC support compilers list 2014-11-16 01:12:18 +01:00
Christophe Riccio
72cbc4c065 Fixed uaddCarray and updated tests #253 2014-11-15 22:31:08 +01:00
Christophe Riccio
b90c4c430e Added GLM_HAS_TRIVIAL_QUERIES define 2014-11-15 21:59:46 +01:00