more tests and some fixes

This commit is contained in:
Dennis Eichhorn 2024-04-24 03:20:47 +00:00
parent 42fc9c915c
commit 6d3dda5a2f
6 changed files with 63 additions and 5 deletions

44
Input/XInput.h Normal file
View File

@ -0,0 +1,44 @@
/**
* Karaka
*
* @package Stdlib
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link https://jingga.app
*/
#ifndef INPUT_XINPUT_H
#define INPUT_XINPUT_H
#ifdef _WIN32
#include <XInput.h>
#else
#include <linux/joystick.h>
#endif
#include "../Stdlib/Types.h"
uint32 find_joysticks()
{
}
void destory_joysticks()
{
}
void handle_controller_input()
{
for (uint32 controller_index = 0; controller_index < XUSER_MAX_COUNT; ++controller_index) {
XINPUT_STATE controller_state;
if (XInputGetState(controller_index, &controller_state) == ERROR_SUCCESS) {
} else {
}
}
}
#endif

View File

@ -11,10 +11,9 @@
#define STDLIB_INTRINSICS_H
#include <inttypes.h>
#include <emmintrin.h>
#include <xmmintrin.h>
#include <immintrin.h>
#include <smmintrin.h>
#include <x86intrin.h>
#include "Types.h"

View File

@ -23,6 +23,16 @@
return 0; } \
})
#define ASSERT_NOT_EQUALS(a, b, t1, t2) ({\
if ((a) != (b)) { \
printf("."); \
} else { \
printf("\033[31m[F]\033[0m"); \
printf("\n\n%s - %i: ", __FILE__, __LINE__); \
printf((t1), (a)); printf(" == "); printf((t2), (b)); printf("\n"); \
return 0; } \
})
#define ASSERT_EQUALS_WITH_DELTA(a, b, delta, t1, t2) ({\
if (oms_abs((a) - (b)) <= (delta)) { \
printf("."); \

Binary file not shown.

View File

@ -19,7 +19,12 @@ int main(int argc, char** argv)
printf("Intrinsics:\n\n");
ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::sqrt(1.234f), sqrt(1.234f), 0.01, "%f", "%f");
ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::round(1.234f), round(1.234f), 0.01, "%f", "%f");
ASSERT_EQUALS_WITH_DELTA((int) Stdlib::Intrinsics::round_to_int(1.234f), (int) roundf(1.234f), 0.01, "%d", "%d");
//ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::floor(1.234f), 1.0f, 0.01, "%f", "%f");
//ASSERT_EQUALS_WITH_DELTA(Stdlib::Intrinsics::round(1.234f), roundf(1.234f), 0.01, "%f", "%f");
ASSERT_NOT_EQUALS(Stdlib::Intrinsics::hash(123456), Stdlib::Intrinsics::hash(654321), "%d", "%d");
printf("\n\n");

View File

@ -12,6 +12,6 @@ g++ $BASEDIR/Threads/ThreadPoolTest.cpp -o $BASEDIR/Threads/ThreadPoolTest && $B
g++ $BASEDIR/Stdlib/SIMD/SIMD_HelperTest.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_HelperTest && $BASEDIR/Stdlib/SIMD/SIMD_HelperTest && rm $BASEDIR/Stdlib/SIMD/SIMD_HelperTest
g++ -mavx -maes -msse -msse2 -msse3 -msse4.1 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/IntrinsicsTest.cpp -o $BASEDIR/Stdlib/IntrinsicsTest && $BASEDIR/Stdlib/IntrinsicsTest && rm $BASEDIR/Stdlib/IntrinsicsTest
g++ -maes -msse4.2 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/IntrinsicsTest.cpp -o $BASEDIR/Stdlib/IntrinsicsTest && $BASEDIR/Stdlib/IntrinsicsTest && rm $BASEDIR/Stdlib/IntrinsicsTest
g++ -mavx -maes -msse -msse2 -msse3 -msse4.1 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/SIMD/SIMD_F32Test.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_F32Test && $BASEDIR/Stdlib/SIMD/SIMD_F32Test && rm $BASEDIR/Stdlib/SIMD/SIMD_F32Test
g++ -maes -msse4.2 -mavx512f -mpclmul -mavx512dq -march=native $BASEDIR/Stdlib/SIMD/SIMD_F32Test.cpp -o $BASEDIR/Stdlib/SIMD/SIMD_F32Test && $BASEDIR/Stdlib/SIMD/SIMD_F32Test && rm $BASEDIR/Stdlib/SIMD/SIMD_F32Test