| OLD | NEW |
| 1 ; Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 ; Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 ; Use of this source code is governed by a BSD-style license that can be | 2 ; Use of this source code is governed by a BSD-style license that can be |
| 3 ; found in the LICENSE file. | 3 ; found in the LICENSE file. |
| 4 | 4 |
| 5 %include "third_party/x86inc/x86inc.asm" | 5 %include "third_party/x86inc/x86inc.asm" |
| 6 | 6 |
| 7 ; | 7 ; |
| 8 ; This file uses SSE, SSE2, SSE3, and SSSE3, which are supported by all ATOM | 8 ; This file uses SSE, SSE2, SSE3, and SSSE3, which are supported by all ATOM |
| 9 ; processors. | 9 ; processors. |
| 10 ; | 10 ; |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 movd xmm2, %4 | 236 movd xmm2, %4 |
| 237 pavgb %1, xmm2 | 237 pavgb %1, xmm2 |
| 238 %endif | 238 %endif |
| 239 %endmacro | 239 %endmacro |
| 240 | 240 |
| 241 ; | 241 ; |
| 242 ; extern "C" void ConvertARGBToYUVRow_SSSE3(const uint8* argb, | 242 ; extern "C" void ConvertARGBToYUVRow_SSSE3(const uint8* argb, |
| 243 ; uint8* y, | 243 ; uint8* y, |
| 244 ; uint8* u, | 244 ; uint8* u, |
| 245 ; uint8* v, | 245 ; uint8* v, |
| 246 ; int width); | 246 ; ptrdiff_t width); |
| 247 ; | 247 ; |
| 248 %define SYMBOL ConvertARGBToYUVRow_SSSE3 | 248 %define SYMBOL ConvertARGBToYUVRow_SSSE3 |
| 249 %define PIXELSIZE 4 | 249 %define PIXELSIZE 4 |
| 250 %define SUBSAMPLING 0 | 250 %define SUBSAMPLING 0 |
| 251 %define LINE 0 | 251 %define LINE 0 |
| 252 %include "convert_rgb_to_yuv_ssse3.inc" | 252 %include "convert_rgb_to_yuv_ssse3.inc" |
| 253 | 253 |
| 254 ; | 254 ; |
| 255 ; extern "C" void ConvertRGBToYUVRow_SSSE3(const uint8* rgb, | 255 ; extern "C" void ConvertRGBToYUVRow_SSSE3(const uint8* rgb, |
| 256 ; uint8* y, | 256 ; uint8* y, |
| 257 ; uint8* u, | 257 ; uint8* u, |
| 258 ; uint8* v, | 258 ; uint8* v, |
| 259 ; int width); | 259 ; ptrdiff_t width); |
| 260 ; | 260 ; |
| 261 %define SYMBOL ConvertRGBToYUVRow_SSSE3 | 261 %define SYMBOL ConvertRGBToYUVRow_SSSE3 |
| 262 %define PIXELSIZE 3 | 262 %define PIXELSIZE 3 |
| 263 %define SUBSAMPLING 0 | 263 %define SUBSAMPLING 0 |
| 264 %define LINE 0 | 264 %define LINE 0 |
| 265 %include "convert_rgb_to_yuv_ssse3.inc" | 265 %include "convert_rgb_to_yuv_ssse3.inc" |
| 266 | 266 |
| 267 ; | 267 ; |
| 268 ; extern "C" void ConvertARGBToYUVEven_SSSE3(const uint8* argb, | 268 ; extern "C" void ConvertARGBToYUVEven_SSSE3(const uint8* argb, |
| 269 ; uint8* y, | 269 ; uint8* y, |
| 270 ; uint8* u, | 270 ; uint8* u, |
| 271 ; uint8* v, | 271 ; uint8* v, |
| 272 ; int width); | 272 ; ptrdiff_t width); |
| 273 ; | 273 ; |
| 274 %define SYMBOL ConvertARGBToYUVEven_SSSE3 | 274 %define SYMBOL ConvertARGBToYUVEven_SSSE3 |
| 275 %define PIXELSIZE 4 | 275 %define PIXELSIZE 4 |
| 276 %define SUBSAMPLING 1 | 276 %define SUBSAMPLING 1 |
| 277 %define LINE 0 | 277 %define LINE 0 |
| 278 %include "convert_rgb_to_yuv_ssse3.inc" | 278 %include "convert_rgb_to_yuv_ssse3.inc" |
| 279 | 279 |
| 280 ; | 280 ; |
| 281 ; extern "C" void ConvertARGBToYUVOdd_SSSE3(const uint8* argb, | 281 ; extern "C" void ConvertARGBToYUVOdd_SSSE3(const uint8* argb, |
| 282 ; uint8* y, | 282 ; uint8* y, |
| 283 ; uint8* u, | 283 ; uint8* u, |
| 284 ; uint8* v, | 284 ; uint8* v, |
| 285 ; int width); | 285 ; ptrdiff_t width); |
| 286 ; | 286 ; |
| 287 %define SYMBOL ConvertARGBToYUVOdd_SSSE3 | 287 %define SYMBOL ConvertARGBToYUVOdd_SSSE3 |
| 288 %define PIXELSIZE 4 | 288 %define PIXELSIZE 4 |
| 289 %define SUBSAMPLING 1 | 289 %define SUBSAMPLING 1 |
| 290 %define LINE 1 | 290 %define LINE 1 |
| 291 %include "convert_rgb_to_yuv_ssse3.inc" | 291 %include "convert_rgb_to_yuv_ssse3.inc" |
| 292 | 292 |
| 293 ; | 293 ; |
| 294 ; extern "C" void ConvertRGBToYUVEven_SSSE3(const uint8* rgb, | 294 ; extern "C" void ConvertRGBToYUVEven_SSSE3(const uint8* rgb, |
| 295 ; uint8* y, | 295 ; uint8* y, |
| 296 ; uint8* u, | 296 ; uint8* u, |
| 297 ; uint8* v, | 297 ; uint8* v, |
| 298 ; int width); | 298 ; ptrdiff_t width); |
| 299 ; | 299 ; |
| 300 %define SYMBOL ConvertRGBToYUVEven_SSSE3 | 300 %define SYMBOL ConvertRGBToYUVEven_SSSE3 |
| 301 %define PIXELSIZE 3 | 301 %define PIXELSIZE 3 |
| 302 %define SUBSAMPLING 1 | 302 %define SUBSAMPLING 1 |
| 303 %define LINE 0 | 303 %define LINE 0 |
| 304 %include "convert_rgb_to_yuv_ssse3.inc" | 304 %include "convert_rgb_to_yuv_ssse3.inc" |
| 305 | 305 |
| 306 ; | 306 ; |
| 307 ; extern "C" void ConvertRGBToYUVOdd_SSSE3(const uint8* rgb, | 307 ; extern "C" void ConvertRGBToYUVOdd_SSSE3(const uint8* rgb, |
| 308 ; uint8* y, | 308 ; uint8* y, |
| 309 ; uint8* u, | 309 ; uint8* u, |
| 310 ; uint8* v, | 310 ; uint8* v, |
| 311 ; int width); | 311 ; ptrdiff_t width); |
| 312 ; | 312 ; |
| 313 %define SYMBOL ConvertRGBToYUVOdd_SSSE3 | 313 %define SYMBOL ConvertRGBToYUVOdd_SSSE3 |
| 314 %define PIXELSIZE 3 | 314 %define PIXELSIZE 3 |
| 315 %define SUBSAMPLING 1 | 315 %define SUBSAMPLING 1 |
| 316 %define LINE 1 | 316 %define LINE 1 |
| 317 %include "convert_rgb_to_yuv_ssse3.inc" | 317 %include "convert_rgb_to_yuv_ssse3.inc" |
| OLD | NEW |