OLD | NEW |
1 ; | 1 ; |
2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 ; | 3 ; |
4 ; Use of this source code is governed by a BSD-style license | 4 ; Use of this source code is governed by a BSD-style license |
5 ; that can be found in the LICENSE file in the root of the source | 5 ; that can be found in the LICENSE file in the root of the source |
6 ; tree. An additional intellectual property rights grant can be found | 6 ; tree. An additional intellectual property rights grant can be found |
7 ; in the file PATENTS. All contributing project authors may | 7 ; in the file PATENTS. All contributing project authors may |
8 ; be found in the AUTHORS file in the root of the source tree. | 8 ; be found in the AUTHORS file in the root of the source tree. |
9 ; | 9 ; |
10 | 10 |
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
457 pop rbp | 457 pop rbp |
458 ret | 458 ret |
459 %undef flimit2 | 459 %undef flimit2 |
460 | 460 |
461 | 461 |
462 ;void vp9_plane_add_noise_mmx (unsigned char *start, unsigned char *noise, | 462 ;void vp9_plane_add_noise_mmx (unsigned char *start, unsigned char *noise, |
463 ; unsigned char blackclamp[16], | 463 ; unsigned char blackclamp[16], |
464 ; unsigned char whiteclamp[16], | 464 ; unsigned char whiteclamp[16], |
465 ; unsigned char bothclamp[16], | 465 ; unsigned char bothclamp[16], |
466 ; unsigned int width, unsigned int height, int pitch) | 466 ; unsigned int width, unsigned int height, int pitch) |
467 extern sym(rand) | |
468 global sym(vp9_plane_add_noise_mmx) PRIVATE | 467 global sym(vp9_plane_add_noise_mmx) PRIVATE |
469 sym(vp9_plane_add_noise_mmx): | 468 sym(vp9_plane_add_noise_mmx): |
470 push rbp | 469 push rbp |
471 mov rbp, rsp | 470 mov rbp, rsp |
472 SHADOW_ARGS_TO_STACK 8 | 471 SHADOW_ARGS_TO_STACK 8 |
473 GET_GOT rbx | 472 GET_GOT rbx |
474 push rsi | 473 push rsi |
475 push rdi | 474 push rdi |
476 ; end prolog | 475 ; end prolog |
477 | 476 |
478 .addnoise_loop: | 477 .addnoise_loop: |
479 call sym(rand) WRT_PLT | 478 call sym(LIBVPX_RAND) WRT_PLT |
480 mov rcx, arg(1) ;noise | 479 mov rcx, arg(1) ;noise |
481 and rax, 0xff | 480 and rax, 0xff |
482 add rcx, rax | 481 add rcx, rax |
483 | 482 |
484 ; we rely on the fact that the clamping vectors are stored contiguously | 483 ; we rely on the fact that the clamping vectors are stored contiguously |
485 ; in black/white/both order. Note that we have to reload this here because | 484 ; in black/white/both order. Note that we have to reload this here because |
486 ; rdx could be trashed by rand() | 485 ; rdx could be trashed by rand() |
487 mov rdx, arg(2) ; blackclamp | 486 mov rdx, arg(2) ; blackclamp |
488 | 487 |
489 | 488 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
525 SECTION_RODATA | 524 SECTION_RODATA |
526 align 16 | 525 align 16 |
527 Blur: | 526 Blur: |
528 times 16 dw 16 | 527 times 16 dw 16 |
529 times 8 dw 64 | 528 times 8 dw 64 |
530 times 16 dw 16 | 529 times 16 dw 16 |
531 times 8 dw 0 | 530 times 8 dw 0 |
532 | 531 |
533 rd: | 532 rd: |
534 times 4 dw 0x40 | 533 times 4 dw 0x40 |
OLD | NEW |