| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2015 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2015 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 |
| 11 #include <assert.h> |
| 11 #include "vp9/common/mips/msa/vp9_idct_msa.h" | 12 #include "vp9/common/mips/msa/vp9_idct_msa.h" |
| 12 | 13 |
| 13 void vp9_idct8x8_64_add_msa(const int16_t *input, uint8_t *dst, | 14 void vp9_idct8x8_64_add_msa(const int16_t *input, uint8_t *dst, |
| 14 int32_t dst_stride) { | 15 int32_t dst_stride) { |
| 15 v8i16 in0, in1, in2, in3, in4, in5, in6, in7; | 16 v8i16 in0, in1, in2, in3, in4, in5, in6, in7; |
| 16 | 17 |
| 17 /* load vector elements of 8x8 block */ | 18 /* load vector elements of 8x8 block */ |
| 18 LD_SH8(input, 8, in0, in1, in2, in3, in4, in5, in6, in7); | 19 LD_SH8(input, 8, in0, in1, in2, in3, in4, in5, in6, in7); |
| 19 | 20 |
| 20 /* rows transform */ | 21 /* rows transform */ |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 173 | 174 |
| 174 /* final rounding (add 2^4, divide by 2^5) and shift */ | 175 /* final rounding (add 2^4, divide by 2^5) and shift */ |
| 175 SRARI_H4_SH(in0, in1, in2, in3, 5); | 176 SRARI_H4_SH(in0, in1, in2, in3, 5); |
| 176 SRARI_H4_SH(in4, in5, in6, in7, 5); | 177 SRARI_H4_SH(in4, in5, in6, in7, 5); |
| 177 | 178 |
| 178 /* add block and store 8x8 */ | 179 /* add block and store 8x8 */ |
| 179 VP9_ADDBLK_ST8x4_UB(dst, dst_stride, in0, in1, in2, in3); | 180 VP9_ADDBLK_ST8x4_UB(dst, dst_stride, in0, in1, in2, in3); |
| 180 dst += (4 * dst_stride); | 181 dst += (4 * dst_stride); |
| 181 VP9_ADDBLK_ST8x4_UB(dst, dst_stride, in4, in5, in6, in7); | 182 VP9_ADDBLK_ST8x4_UB(dst, dst_stride, in4, in5, in6, in7); |
| 182 } | 183 } |
| OLD | NEW |