| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2014 The Android Open Source Project | 2 * Copyright 2014 The Android Open Source Project |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #ifdef CRBUG_399842_FIXED |
| 9 |
| 8 #if defined(__clang__) || (defined(__GNUC__) && !defined(SK_BUILD_FOR_MAC)) | 10 #if defined(__clang__) || (defined(__GNUC__) && !defined(SK_BUILD_FOR_MAC)) |
| 9 | 11 |
| 10 #define EXTRACT_ALPHA(var1, var2) \ | 12 #define EXTRACT_ALPHA(var1, var2) \ |
| 11 movdqa %var1, %var2; /* Clone source pixels to extract alpha
*/\ | 13 movdqa %var1, %var2; /* Clone source pixels to extract alpha
*/\ |
| 12 psrlw $8, %var2; /* Discard red and blue, leaving alpha a
nd green */\ | 14 psrlw $8, %var2; /* Discard red and blue, leaving alpha a
nd green */\ |
| 13 pshufhw $0xF5, %var2, %var2; /* Repeat alpha for scaling (high) */\ | 15 pshufhw $0xF5, %var2, %var2; /* Repeat alpha for scaling (high) */\ |
| 14 movdqa %xmm6, %xmm4; \ | 16 movdqa %xmm6, %xmm4; \ |
| 15 pshuflw $0xF5, %var2, %var2; /* Repeat alpha for scaling (low) */\ | 17 pshuflw $0xF5, %var2, %var2; /* Repeat alpha for scaling (low) */\ |
| 16 movdqa %xmm5, %xmm3; \ | 18 movdqa %xmm5, %xmm3; \ |
| 17 psubw %var2, %xmm4 /* Finalize alpha calculations */ | 19 psubw %var2, %xmm4 /* Finalize alpha calculations */ |
| (...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 459 .section .rodata | 461 .section .rodata |
| 460 #endif | 462 #endif |
| 461 .p2align 4 | 463 .p2align 4 |
| 462 .LAlphaCheckMask: | 464 .LAlphaCheckMask: |
| 463 .long 0xFF000000, 0xFF000000, 0xFF000000, 0xFF000000 | 465 .long 0xFF000000, 0xFF000000, 0xFF000000, 0xFF000000 |
| 464 .LInverseAlphaCalc: | 466 .LInverseAlphaCalc: |
| 465 .word 256, 256, 256, 256, 256, 256, 256, 256 | 467 .word 256, 256, 256, 256, 256, 256, 256, 256 |
| 466 .LResultMergeMask: | 468 .LResultMergeMask: |
| 467 .long 0x00FF00FF, 0x00FF00FF, 0x00FF00FF, 0x00FF00FF | 469 .long 0x00FF00FF, 0x00FF00FF, 0x00FF00FF, 0x00FF00FF |
| 468 #endif | 470 #endif |
| 471 |
| 472 #endif // CRBUG_399842_FIXED |
| OLD | NEW |