2 * Copyright (c) 2011 The WebM project authors. All Rights Reserved.
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
12 #include "vpx_ports/config.h"
15 #include "vpx_scale/yv12config.h"
17 #define ct_assert(name,cond) \
18 static void assert_##name(void) UNUSED;\
19 static void assert_##name(void) {switch(0){case 0:case !!(cond):;}}
21 #define DEFINE(sym, val) int sym = val;
24 #define BLANK() asm volatile("\n->" : : )
33 DEFINE(yv12_buffer_config_y_width
, offsetof(YV12_BUFFER_CONFIG
, y_width
));
34 DEFINE(yv12_buffer_config_y_height
, offsetof(YV12_BUFFER_CONFIG
, y_height
));
35 DEFINE(yv12_buffer_config_y_stride
, offsetof(YV12_BUFFER_CONFIG
, y_stride
));
36 DEFINE(yv12_buffer_config_uv_width
, offsetof(YV12_BUFFER_CONFIG
, uv_width
));
37 DEFINE(yv12_buffer_config_uv_height
, offsetof(YV12_BUFFER_CONFIG
, uv_height
));
38 DEFINE(yv12_buffer_config_uv_stride
, offsetof(YV12_BUFFER_CONFIG
, uv_stride
));
39 DEFINE(yv12_buffer_config_y_buffer
, offsetof(YV12_BUFFER_CONFIG
, y_buffer
));
40 DEFINE(yv12_buffer_config_u_buffer
, offsetof(YV12_BUFFER_CONFIG
, u_buffer
));
41 DEFINE(yv12_buffer_config_v_buffer
, offsetof(YV12_BUFFER_CONFIG
, v_buffer
));
42 DEFINE(yv12_buffer_config_border
, offsetof(YV12_BUFFER_CONFIG
, border
));
44 //add asserts for any offset that is not supported by assembly code
45 //add asserts for any size that is not supported by assembly code