diff options
author | jmuizelaar <jmuizelaar@mozilla.com> | 2014-10-09 11:43:02 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-10-09 11:43:02 -0700 |
commit | 60e4ad7b29f50ebd7698d2d37580d5c8da5ce600 (patch) | |
tree | 1141961fe3fcaed60f76ee319cab400c96936667 /samplecode/SampleCode.h | |
parent | 12b1831ea49f3d88e93b7d2793d94852d03813e8 (diff) |
Improve SkARGB32_A8_BlitMask_SSE2
With clang this:
- movzbl -3(%rbx), %edx
- pxor %xmm5, %xmm5
- pinsrw $0, %edx, %xmm5
- pinsrw $1, %edx, %xmm5
- movzbl -2(%rbx), %edx
- pinsrw $2, %edx, %xmm5
- pinsrw $3, %edx, %xmm5
- movzbl -1(%rbx), %edx
- pinsrw $4, %edx, %xmm5
- pinsrw $5, %edx, %xmm5
- movzbl (%rbx), %edx
- pinsrw $6, %edx, %xmm5
- pinsrw $7, %edx, %xmm5
becomes:
+ movd (%rbx), %xmm4
+ punpcklbw %xmm9, %xmm4
+ punpcklwd %xmm4, %xmm4
And clang already does better codegen than msvc 2013 on this.
BUG=skia:
Review URL: https://codereview.chromium.org/609823003
Diffstat (limited to 'samplecode/SampleCode.h')
0 files changed, 0 insertions, 0 deletions