| 225 | } |
| 226 | |
| 227 | void test_xor_u8_16(TestResult& result) { |
| 228 | uint8_t a_data[16] = {0xFF, 0xF0, 0xAA, 0x55, 0xFF, 0xF0, 0xAA, 0x55, 0xFF, 0xF0, 0xAA, 0x55, 0xFF, 0xF0, 0xAA, 0x55}; |
| 229 | uint8_t b_data[16] = {0xF0, 0xFF, 0x55, 0xAA, 0xF0, 0xFF, 0x55, 0xAA, 0xF0, 0xFF, 0x55, 0xAA, 0xF0, 0xFF, 0x55, 0xAA}; |
| 230 | uint8_t expected[16] = {0x0F, 0x0F, 0xFF, 0xFF, 0x0F, 0x0F, 0xFF, 0xFF, 0x0F, 0x0F, 0xFF, 0xFF, 0x0F, 0x0F, 0xFF, 0xFF}; |
| 231 | uint8_t output[16] = {0}; |
| 232 | |
| 233 | simd_u8x16 a = load_u8_16(a_data); |
| 234 | simd_u8x16 b = load_u8_16(b_data); |
| 235 | simd_u8x16 c = xor_u8_16(a, b); |
| 236 | store_u8_16(output, c); |
| 237 | |
| 238 | if (!compare_u8_arrays(expected, output, 16)) { |
| 239 | result.fail("XOR operation produced incorrect results"); |
| 240 | } |
| 241 | } |
| 242 | |
| 243 | void test_andnot_u8_16(TestResult& result) { |
| 244 | uint8_t a_data[16] = {0xF0, 0x0F, 0xAA, 0x55, 0xF0, 0x0F, 0xAA, 0x55, 0xF0, 0x0F, 0xAA, 0x55, 0xF0, 0x0F, 0xAA, 0x55}; |
nothing calls this directly
no test coverage detected