| #include "test/jemalloc_test.h" |
| |
| #include "jemalloc/internal/div.h" |
| |
| TEST_BEGIN(test_div_exhaustive) { |
| for (size_t divisor = 2; divisor < 1000 * 1000; ++divisor) { |
| div_info_t div_info; |
| div_init(&div_info, divisor); |
| size_t max = 1000 * divisor; |
| if (max < 1000 * 1000) { |
| max = 1000 * 1000; |
| } |
| for (size_t dividend = 0; dividend < 1000 * divisor; |
| dividend += divisor) { |
| size_t quotient = div_compute( |
| &div_info, dividend); |
| expect_zu_eq(dividend, quotient * divisor, |
| "With divisor = %zu, dividend = %zu, " |
| "got quotient %zu", divisor, dividend, quotient); |
| } |
| } |
| } |
| TEST_END |
| |
| int |
| main(void) { |
| return test_no_reentrancy( |
| test_div_exhaustive); |
| } |