This allows catching whether the functions write outside of the designated rectangle, and if run with "checkasm -v", it also prints out on which side of the rectangle the overwrite was.
Unified · Split
| @@ -44,9 +44,14 @@ static const int offsets[] = {0, 255, -1 }; · 43 unmodified lines | ||
| 44 | 44 | uint32_t r = rnd() & mask; \ |
| 45 | 45 | AV_WN32A(buf0 + k, r); \ |
| 46 | 46 | AV_WN32A(buf1 + k, r); \ |
| 47 | − if (k >= BUF_SIZE) \ | |
| 48 | − continue; \ | |
| 49 | − r = rnd(); \ | |
| 47 | + } \ | |
| 48 | + } while (0) | |
| 49 | + | |
| 50 | +#define randomize_buffers_dst() \ | |
| 51 | + do { \ | |
| 52 | + int k; \ | |
| 53 | + for (k = 0; k < BUF_SIZE; k += 4) { \ | |
| 54 | + uint32_t r = rnd(); \ | |
| 50 | 55 | AV_WN32A(dst0 + k, r); \ |
| 51 | 56 | AV_WN32A(dst1 + k, r); \ |
| 52 | 57 | } \ |
| @@ -100,6 +105,7 @@ static void checkasm_check_hevc_qpel(void) · 47 unmodified lines | ||
| 100 | 105 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 101 | 106 | int16_t *dstw0 = (int16_t *) dst0, *dstw1 = (int16_t *) dst1; |
| 102 | 107 | randomize_buffers(); |
| 108 | + randomize_buffers_dst(); | |
| 103 | 109 | call_ref(dstw0, src0, sizes[size] * SIZEOF_PIXEL, sizes[size], i, j, sizes[size]); |
| 104 | 110 | call_new(dstw1, src1, sizes[size] * SIZEOF_PIXEL, sizes[size], i, j, sizes[size]); |
| 105 | 111 | checkasm_check(int16_t, dstw0, MAX_PB_SIZE * sizeof(int16_t), |
| @@ -118,8 +124,8 @@ static void checkasm_check_hevc_qpel_uni(void) · 12 unmodified lines | ||
| 118 | 124 | { |
| 119 | 125 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE + SRC_EXTRA]); |
| 120 | 126 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE + SRC_EXTRA]); |
| 121 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 122 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 127 | + PIXEL_RECT(dst0, 64, 64); | |
| 128 | + PIXEL_RECT(dst1, 64, 64); | |
| 123 | 129 | |
| 124 | 130 | HEVCDSPContext h; |
| 125 | 131 | int size, bit_depth, i, j; |
| @@ -143,16 +149,18 @@ static void checkasm_check_hevc_qpel_uni(void) · 17 unmodified lines | ||
| 143 | 149 | if (check_func(h.put_hevc_qpel_uni[size][j][i], |
| 144 | 150 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 145 | 151 | randomize_buffers(); |
| 146 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 152 | + CLEAR_PIXEL_RECT(dst0); | |
| 153 | + CLEAR_PIXEL_RECT(dst1); | |
| 154 | + call_ref(dst0, dst0_stride, | |
| 147 | 155 | src0, sizes[size] * SIZEOF_PIXEL, |
| 148 | 156 | sizes[size], i, j, sizes[size]); |
| 149 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 157 | + call_new(dst1, dst1_stride, | |
| 150 | 158 | src1, sizes[size] * SIZEOF_PIXEL, |
| 151 | 159 | sizes[size], i, j, sizes[size]); |
| 152 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 153 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 154 | − size[sizes], size[sizes], "dst"); | |
| 155 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 160 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 161 | + dst1, dst1_stride, | |
| 162 | + size[sizes], size[sizes], "dst"); | |
| 163 | + bench_new(dst1, dst1_stride, | |
| 156 | 164 | src1, sizes[size] * SIZEOF_PIXEL, |
| 157 | 165 | sizes[size], i, j, sizes[size]); |
| 158 | 166 | } |
| @@ -167,8 +175,8 @@ static void checkasm_check_hevc_qpel_uni_w(void) · 8 unmodified lines | ||
| 167 | 175 | { |
| 168 | 176 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE + SRC_EXTRA]); |
| 169 | 177 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE + SRC_EXTRA]); |
| 170 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 171 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 178 | + PIXEL_RECT(dst0, 64, 64); | |
| 179 | + PIXEL_RECT(dst1, 64, 64); | |
| 172 | 180 | |
| 173 | 181 | HEVCDSPContext h; |
| 174 | 182 | int size, bit_depth, i, j; |
| @@ -196,16 +204,18 @@ static void checkasm_check_hevc_qpel_uni_w(void) · 21 unmodified lines | ||
| 196 | 204 | for (wx = weights; *wx >= 0; wx++) { |
| 197 | 205 | for (ox = offsets; *ox >= 0; ox++) { |
| 198 | 206 | randomize_buffers(); |
| 199 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 207 | + CLEAR_PIXEL_RECT(dst0); | |
| 208 | + CLEAR_PIXEL_RECT(dst1); | |
| 209 | + call_ref(dst0, dst0_stride, | |
| 200 | 210 | src0, sizes[size] * SIZEOF_PIXEL, |
| 201 | 211 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 202 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 212 | + call_new(dst1, dst1_stride, | |
| 203 | 213 | src1, sizes[size] * SIZEOF_PIXEL, |
| 204 | 214 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 205 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 206 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 207 | − size[sizes], size[sizes], "dst"); | |
| 208 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 215 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 216 | + dst1, dst1_stride, | |
| 217 | + size[sizes], size[sizes], "dst"); | |
| 218 | + bench_new(dst1, dst1_stride, | |
| 209 | 219 | src1, sizes[size] * SIZEOF_PIXEL, |
| 210 | 220 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 211 | 221 | } |
| @@ -223,8 +233,8 @@ static void checkasm_check_hevc_qpel_bi(void) · 11 unmodified lines | ||
| 223 | 233 | { |
| 224 | 234 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE + SRC_EXTRA]); |
| 225 | 235 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE + SRC_EXTRA]); |
| 226 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 227 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 236 | + PIXEL_RECT(dst0, 64, 64); | |
| 237 | + PIXEL_RECT(dst1, 64, 64); | |
| 228 | 238 | LOCAL_ALIGNED_32(int16_t, ref0, [BUF_SIZE]); |
| 229 | 239 | LOCAL_ALIGNED_32(int16_t, ref1, [BUF_SIZE]); |
| 230 | 240 | |
| @@ -251,16 +261,18 @@ static void checkasm_check_hevc_qpel_bi(void) · 20 unmodified lines | ||
| 251 | 261 | if (check_func(h.put_hevc_qpel_bi[size][j][i], |
| 252 | 262 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 253 | 263 | randomize_buffers_ref(); |
| 254 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 264 | + CLEAR_PIXEL_RECT(dst0); | |
| 265 | + CLEAR_PIXEL_RECT(dst1); | |
| 266 | + call_ref(dst0, dst0_stride, | |
| 255 | 267 | src0, sizes[size] * SIZEOF_PIXEL, |
| 256 | 268 | ref0, sizes[size], i, j, sizes[size]); |
| 257 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 269 | + call_new(dst1, dst1_stride, | |
| 258 | 270 | src1, sizes[size] * SIZEOF_PIXEL, |
| 259 | 271 | ref1, sizes[size], i, j, sizes[size]); |
| 260 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 261 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 262 | − size[sizes], size[sizes], "dst"); | |
| 263 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 272 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 273 | + dst1, dst1_stride, | |
| 274 | + size[sizes], size[sizes], "dst"); | |
| 275 | + bench_new(dst1, dst1_stride, | |
| 264 | 276 | src1, sizes[size] * SIZEOF_PIXEL, |
| 265 | 277 | ref1, sizes[size], i, j, sizes[size]); |
| 266 | 278 | } |
| @@ -275,8 +287,8 @@ static void checkasm_check_hevc_qpel_bi_w(void) · 8 unmodified lines | ||
| 275 | 287 | { |
| 276 | 288 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE + SRC_EXTRA]); |
| 277 | 289 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE + SRC_EXTRA]); |
| 278 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 279 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 290 | + PIXEL_RECT(dst0, 64, 64); | |
| 291 | + PIXEL_RECT(dst1, 64, 64); | |
| 280 | 292 | LOCAL_ALIGNED_32(int16_t, ref0, [BUF_SIZE]); |
| 281 | 293 | LOCAL_ALIGNED_32(int16_t, ref1, [BUF_SIZE]); |
| 282 | 294 | |
| @@ -308,16 +320,18 @@ static void checkasm_check_hevc_qpel_bi_w(void) · 25 unmodified lines | ||
| 308 | 320 | for (wx = weights; *wx >= 0; wx++) { |
| 309 | 321 | for (ox = offsets; *ox >= 0; ox++) { |
| 310 | 322 | randomize_buffers_ref(); |
| 311 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 323 | + CLEAR_PIXEL_RECT(dst0); | |
| 324 | + CLEAR_PIXEL_RECT(dst1); | |
| 325 | + call_ref(dst0, dst0_stride, | |
| 312 | 326 | src0, sizes[size] * SIZEOF_PIXEL, |
| 313 | 327 | ref0, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 314 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 328 | + call_new(dst1, dst1_stride, | |
| 315 | 329 | src1, sizes[size] * SIZEOF_PIXEL, |
| 316 | 330 | ref1, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 317 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 318 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 319 | − size[sizes], size[sizes], "dst"); | |
| 320 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 331 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 332 | + dst1, dst1_stride, | |
| 333 | + size[sizes], size[sizes], "dst"); | |
| 334 | + bench_new(dst1, dst1_stride, | |
| 321 | 335 | src1, sizes[size] * SIZEOF_PIXEL, |
| 322 | 336 | ref1, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 323 | 337 | } |
| @@ -364,6 +378,7 @@ static void checkasm_check_hevc_epel(void) · 40 unmodified lines | ||
| 364 | 378 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 365 | 379 | int16_t *dstw0 = (int16_t *) dst0, *dstw1 = (int16_t *) dst1; |
| 366 | 380 | randomize_buffers(); |
| 381 | + randomize_buffers_dst(); | |
| 367 | 382 | call_ref(dstw0, src0, sizes[size] * SIZEOF_PIXEL, sizes[size], i, j, sizes[size]); |
| 368 | 383 | call_new(dstw1, src1, sizes[size] * SIZEOF_PIXEL, sizes[size], i, j, sizes[size]); |
| 369 | 384 | checkasm_check(int16_t, dstw0, MAX_PB_SIZE * sizeof(int16_t), |
| @@ -382,8 +397,8 @@ static void checkasm_check_hevc_epel_uni(void) · 12 unmodified lines | ||
| 382 | 397 | { |
| 383 | 398 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE]); |
| 384 | 399 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE]); |
| 385 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 386 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 400 | + PIXEL_RECT(dst0, 64, 64); | |
| 401 | + PIXEL_RECT(dst1, 64, 64); | |
| 387 | 402 | |
| 388 | 403 | HEVCDSPContext h; |
| 389 | 404 | int size, bit_depth, i, j; |
| @@ -407,16 +422,18 @@ static void checkasm_check_hevc_epel_uni(void) · 17 unmodified lines | ||
| 407 | 422 | if (check_func(h.put_hevc_epel_uni[size][j][i], |
| 408 | 423 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 409 | 424 | randomize_buffers(); |
| 410 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 425 | + CLEAR_PIXEL_RECT(dst0); | |
| 426 | + CLEAR_PIXEL_RECT(dst1); | |
| 427 | + call_ref(dst0, dst0_stride, | |
| 411 | 428 | src0, sizes[size] * SIZEOF_PIXEL, |
| 412 | 429 | sizes[size], i, j, sizes[size]); |
| 413 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 430 | + call_new(dst1, dst1_stride, | |
| 414 | 431 | src1, sizes[size] * SIZEOF_PIXEL, |
| 415 | 432 | sizes[size], i, j, sizes[size]); |
| 416 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 417 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 418 | − size[sizes], size[sizes], "dst"); | |
| 419 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 433 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 434 | + dst1, dst1_stride, | |
| 435 | + size[sizes], size[sizes], "dst"); | |
| 436 | + bench_new(dst1, dst1_stride, | |
| 420 | 437 | src1, sizes[size] * SIZEOF_PIXEL, |
| 421 | 438 | sizes[size], i, j, sizes[size]); |
| 422 | 439 | } |
| @@ -431,8 +448,8 @@ static void checkasm_check_hevc_epel_uni_w(void) · 8 unmodified lines | ||
| 431 | 448 | { |
| 432 | 449 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE]); |
| 433 | 450 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE]); |
| 434 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 435 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 451 | + PIXEL_RECT(dst0, 64, 64); | |
| 452 | + PIXEL_RECT(dst1, 64, 64); | |
| 436 | 453 | |
| 437 | 454 | HEVCDSPContext h; |
| 438 | 455 | int size, bit_depth, i, j; |
| @@ -460,16 +477,18 @@ static void checkasm_check_hevc_epel_uni_w(void) · 21 unmodified lines | ||
| 460 | 477 | for (wx = weights; *wx >= 0; wx++) { |
| 461 | 478 | for (ox = offsets; *ox >= 0; ox++) { |
| 462 | 479 | randomize_buffers(); |
| 463 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 480 | + CLEAR_PIXEL_RECT(dst0); | |
| 481 | + CLEAR_PIXEL_RECT(dst1); | |
| 482 | + call_ref(dst0, dst0_stride, | |
| 464 | 483 | src0, sizes[size] * SIZEOF_PIXEL, |
| 465 | 484 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 466 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 485 | + call_new(dst1, dst1_stride, | |
| 467 | 486 | src1, sizes[size] * SIZEOF_PIXEL, |
| 468 | 487 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 469 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 470 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 471 | − size[sizes], size[sizes], "dst"); | |
| 472 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 488 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 489 | + dst1, dst1_stride, | |
| 490 | + size[sizes], size[sizes], "dst"); | |
| 491 | + bench_new(dst1, dst1_stride, | |
| 473 | 492 | src1, sizes[size] * SIZEOF_PIXEL, |
| 474 | 493 | sizes[size], *denom, *wx, *ox, i, j, sizes[size]); |
| 475 | 494 | } |
| @@ -487,8 +506,8 @@ static void checkasm_check_hevc_epel_bi(void) · 11 unmodified lines | ||
| 487 | 506 | { |
| 488 | 507 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE]); |
| 489 | 508 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE]); |
| 490 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 491 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 509 | + PIXEL_RECT(dst0, 64, 64); | |
| 510 | + PIXEL_RECT(dst1, 64, 64); | |
| 492 | 511 | LOCAL_ALIGNED_32(int16_t, ref0, [BUF_SIZE]); |
| 493 | 512 | LOCAL_ALIGNED_32(int16_t, ref1, [BUF_SIZE]); |
| 494 | 513 | |
| @@ -515,16 +534,18 @@ static void checkasm_check_hevc_epel_bi(void) · 20 unmodified lines | ||
| 515 | 534 | if (check_func(h.put_hevc_epel_bi[size][j][i], |
| 516 | 535 | "put_hevc_%s%d_%d", type, sizes[size], bit_depth)) { |
| 517 | 536 | randomize_buffers_ref(); |
| 518 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 537 | + CLEAR_PIXEL_RECT(dst0); | |
| 538 | + CLEAR_PIXEL_RECT(dst1); | |
| 539 | + call_ref(dst0, dst0_stride, | |
| 519 | 540 | src0, sizes[size] * SIZEOF_PIXEL, |
| 520 | 541 | ref0, sizes[size], i, j, sizes[size]); |
| 521 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 542 | + call_new(dst1, dst1_stride, | |
| 522 | 543 | src1, sizes[size] * SIZEOF_PIXEL, |
| 523 | 544 | ref1, sizes[size], i, j, sizes[size]); |
| 524 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 525 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 526 | − size[sizes], size[sizes], "dst"); | |
| 527 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 545 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 546 | + dst1, dst1_stride, | |
| 547 | + size[sizes], size[sizes], "dst"); | |
| 548 | + bench_new(dst1, dst1_stride, | |
| 528 | 549 | src1, sizes[size] * SIZEOF_PIXEL, |
| 529 | 550 | ref1, sizes[size], i, j, sizes[size]); |
| 530 | 551 | } |
| @@ -539,8 +560,8 @@ static void checkasm_check_hevc_epel_bi_w(void) · 8 unmodified lines | ||
| 539 | 560 | { |
| 540 | 561 | LOCAL_ALIGNED_32(uint8_t, buf0, [BUF_SIZE]); |
| 541 | 562 | LOCAL_ALIGNED_32(uint8_t, buf1, [BUF_SIZE]); |
| 542 | − LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); | |
| 543 | − LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); | |
| 563 | + PIXEL_RECT(dst0, 64, 64); | |
| 564 | + PIXEL_RECT(dst1, 64, 64); | |
| 544 | 565 | LOCAL_ALIGNED_32(int16_t, ref0, [BUF_SIZE]); |
| 545 | 566 | LOCAL_ALIGNED_32(int16_t, ref1, [BUF_SIZE]); |
| 546 | 567 | |
| @@ -572,16 +593,18 @@ static void checkasm_check_hevc_epel_bi_w(void) · 25 unmodified lines | ||
| 572 | 593 | for (wx = weights; *wx >= 0; wx++) { |
| 573 | 594 | for (ox = offsets; *ox >= 0; ox++) { |
| 574 | 595 | randomize_buffers_ref(); |
| 575 | − call_ref(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 596 | + CLEAR_PIXEL_RECT(dst0); | |
| 597 | + CLEAR_PIXEL_RECT(dst1); | |
| 598 | + call_ref(dst0, dst0_stride, | |
| 576 | 599 | src0, sizes[size] * SIZEOF_PIXEL, |
| 577 | 600 | ref0, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 578 | − call_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 601 | + call_new(dst1, dst1_stride, | |
| 579 | 602 | src1, sizes[size] * SIZEOF_PIXEL, |
| 580 | 603 | ref1, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 581 | − checkasm_check_pixel(dst0, sizes[size] * SIZEOF_PIXEL, | |
| 582 | − dst1, sizes[size] * SIZEOF_PIXEL, | |
| 583 | − size[sizes], size[sizes], "dst"); | |
| 584 | − bench_new(dst1, sizes[size] * SIZEOF_PIXEL, | |
| 604 | + checkasm_check_pixel_padded(dst0, dst0_stride, | |
| 605 | + dst1, dst1_stride, | |
| 606 | + size[sizes], size[sizes], "dst"); | |
| 607 | + bench_new(dst1, dst1_stride, | |
| 585 | 608 | src1, sizes[size] * SIZEOF_PIXEL, |
| 586 | 609 | ref1, sizes[size], *denom, *wx, *wx, *ox, *ox, i, j, sizes[size]); |
| 587 | 610 | } |