Sam Hocevar
3402db36c3
optim: better isnan() reimplementation.
il y a 13 ans
Sam Hocevar
de496b15fe
core: remove one multiplication and one selection from the optimised
version of sinf().
il y a 13 ans
Sam Hocevar
105485a3aa
test: new test for trigonometric functions.
il y a 13 ans
Sam Hocevar
7680eca5d8
test: implement a custom isnan()
This version is faster (about 25% on x86_64) and works when extreme
optimisation options such as -ffast-math are used.
il y a 13 ans
Sam Hocevar
744f4ac98d
test: add benchmark tests for trigonometry functions.
il y a 13 ans
Sam Hocevar
09ecf1bd8b
contrib: rebuild the Win32 CppUnit under Linux and fix the includes.
Apparently g++ 4.5.2 on native mingw32 inserts references to __Unwind_Resume
when exceptions are supported. This function is not present in the g++ 4.4
cross-compiler found in Debian, leading to linker errors when cross-
compiling. So we use the latter to build CppUnit itself.
Another problem arises with g++ 4.4, which is the incomplete stripping of
exceptions when -fno-exceptions is used. Since ExceptionTestCaseDecorator.h
has such code, we protect it with #ifdef __EXCEPTIONS in the meantime.
il y a 13 ans
Sam Hocevar
782283a3d0
test: add matrix code to the benchmark program.
il y a 13 ans
Sam Hocevar
cb001ddbcc
core: tune the half precision code so that the best variants are being
used on the PS3 platform.
il y a 13 ans
Sam Hocevar
aa6e832fd7
build: clean up .self files and allow to build the benchmark on the PS3.
il y a 13 ans
Sam Hocevar
e47928e8d1
test: improve the benchmark code to measure a lot more half precision
number conversions.
il y a 13 ans
Sam Hocevar
0bbd1e43c2
test: add a fallback for isnan() when not defined by the system includes.
il y a 13 ans
Sam Hocevar
205fc5fc22
core: rename half::isnan() etc. to half::is_nan() because "isnan" can be
a C macro on some systems (Android NDK, PS3...).
il y a 13 ans
Sam Hocevar
2d85e76ec8
core: minor refactoring in the float / half conversions to accomodate
for future array versions.
il y a 13 ans
Sam Hocevar
8b71ddb30c
core: implement new half / float operations and the associated tests.
il y a 13 ans
Sam Hocevar
92e3387f7c
test: augment the half precision numbers testsuite.
il y a 13 ans
Sam Hocevar
4379388b52
test: add first test routines for the half class.
il y a 13 ans
Sam Hocevar
b111f7e3d8
core: move platform-specific code to specific directories.
il y a 13 ans
Sam Hocevar
6bbe943492
core: rename vec2i to ivec2 etc. to better match GLSL.
il y a 13 ans
Sam Hocevar
0328a6dfa3
test: add a unit test for the recent vector promotion problem.
il y a 13 ans
Sam Hocevar
30e697f7bd
test: start writing really minimalist GL rendering tests.
il y a 13 ans
Sam Hocevar
8eeeca422f
test: add a debug quad test application.
il y a 13 ans
Sam Hocevar
3213d5b7a5
core: add the unary minus operator to vectors.
il y a 13 ans
Sam Hocevar
7329692663
math: implement vector comparisons and add minimal unit tests for this
feature.
il y a 13 ans
Sam Hocevar
8848cf53db
Put everything in the "lol" namespace. Better late than never.
il y a 13 ans
Sam Hocevar
6405ef32ea
Get rid of float3, float4, int3 etc. in favour of GLSL types.
il y a 13 ans
Sam Hocevar
4b484d5bc8
Make the float4x4 constructor fill only the matrix's diagonal. Thus
the float4x4::identity() method is no longer necessary.
il y a 13 ans
Sam Hocevar
7015943141
Add matrix determinant and inverse methods.
il y a 13 ans
Sam Hocevar
da73635c64
Add an optional cppunit dependency for unit tests.
il y a 13 ans