87 ss <<
"\nāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n";
88 ss <<
"ā FastLED SIMD Operations Test Suite ā\n";
89 ss <<
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā\n";
92 FL_PRINT(
"\nStarting SIMD operation tests...\n");
97 FL_PRINT(
"\n[CATEGORY] Load/Store Operations");
98 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
107 FL_PRINT(
"\n[CATEGORY] Arithmetic Operations");
108 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
118 FL_PRINT(
"\n[CATEGORY] Comparison Operations");
119 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
129 FL_PRINT(
"\n[CATEGORY] Bitwise Operations");
130 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
140 FL_PRINT(
"\n[CATEGORY] Broadcast Operations");
141 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
149 FL_PRINT(
"\n[CATEGORY] Floating Point Operations");
150 FL_PRINT(
"āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā");
168 FL_PRINT(
"\nSIMD_TEST_SUITE_COMPLETE");
171 err <<
"\nSIMD test suite failed with " <<
failed_tests <<
" error(s)";
187 FL_PRINT(
"SIMD test suite complete");
fl::vector< TestResult > test_results
const char * c_str() const FL_NOEXCEPT
string str() const FL_NOEXCEPT
#define FL_PRINT(X)
Print without prefix (like FL_WARN but without "WARN: " prefix) Uses sstream for dynamic formatting (...
Centralized logging categories for FastLED hardware interfaces and subsystems.
void test_load_store_f32_4(TestResult &result)
void test_load_store_u8_16(TestResult &result)
void test_or_u8_16(TestResult &result)
void test_set1_u32_4(TestResult &result)
void test_add_sat_u8_16(TestResult &result)
void test_avg_u8_16(TestResult &result)
void test_load_store_u32_4(TestResult &result)
void test_min_f32_4(TestResult &result)
void test_and_u8_16(TestResult &result)
void run_test(const char *test_name, TestFunc test_func, fl::vector< TestResult > &results, int &total_tests, int &passed_tests, int &failed_tests)
Run a single test and record result.
void test_max_f32_4(TestResult &result)
void test_set1_f32_4(TestResult &result)
void test_min_u8_16(TestResult &result)
void test_mul_f32_4(TestResult &result)
void print_final_banner(int failed_tests)
Print final result banner (PASS/FAIL)
void test_sub_sat_u8_16(TestResult &result)
void test_add_f32_4(TestResult &result)
void test_div_f32_4(TestResult &result)
void test_xor_u8_16(TestResult &result)
void test_sub_f32_4(TestResult &result)
void test_scale_u8_16(TestResult &result)
void test_max_u8_16(TestResult &result)
void test_avg_round_u8_16(TestResult &result)
void test_blend_u8_16(TestResult &result)
void print_summary(const fl::vector< TestResult > &test_results, int total_tests, int passed_tests, int failed_tests)
Print summary table of all test results.
void test_andnot_u8_16(TestResult &result)
void test_sqrt_f32_4(TestResult &result)
Umbrella header for SIMD subsystem.