2 * Copyright (c) 2010 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 #if CONFIG_VP8_ENCODER
16 #include "vpx_scale/yv12config.h"
19 #if CONFIG_VP8_DECODER
20 #include "onyxd_int.h"
23 #define DEFINE(sym, val) int sym = val;
26 #define BLANK() asm volatile("\n->" : : )
34 #if CONFIG_VP8_DECODER || CONFIG_VP8_ENCODER
35 DEFINE(yv12_buffer_config_y_width
, offsetof(YV12_BUFFER_CONFIG
, y_width
));
36 DEFINE(yv12_buffer_config_y_height
, offsetof(YV12_BUFFER_CONFIG
, y_height
));
37 DEFINE(yv12_buffer_config_y_stride
, offsetof(YV12_BUFFER_CONFIG
, y_stride
));
38 DEFINE(yv12_buffer_config_uv_width
, offsetof(YV12_BUFFER_CONFIG
, uv_width
));
39 DEFINE(yv12_buffer_config_uv_height
, offsetof(YV12_BUFFER_CONFIG
, uv_height
));
40 DEFINE(yv12_buffer_config_uv_stride
, offsetof(YV12_BUFFER_CONFIG
, uv_stride
));
41 DEFINE(yv12_buffer_config_y_buffer
, offsetof(YV12_BUFFER_CONFIG
, y_buffer
));
42 DEFINE(yv12_buffer_config_u_buffer
, offsetof(YV12_BUFFER_CONFIG
, u_buffer
));
43 DEFINE(yv12_buffer_config_v_buffer
, offsetof(YV12_BUFFER_CONFIG
, v_buffer
));
44 DEFINE(yv12_buffer_config_border
, offsetof(YV12_BUFFER_CONFIG
, border
));
47 #if CONFIG_VP8_DECODER
48 DEFINE(detok_scan
, offsetof(DETOK
, scan
));
49 DEFINE(detok_ptr_block2leftabove
, offsetof(DETOK
, ptr_block2leftabove
));
50 DEFINE(detok_coef_tree_ptr
, offsetof(DETOK
, vp8_coef_tree_ptr
));
51 DEFINE(detok_teb_base_ptr
, offsetof(DETOK
, teb_base_ptr
));
52 DEFINE(detok_norm_ptr
, offsetof(DETOK
, norm_ptr
));
53 DEFINE(detok_ptr_coef_bands_x
, offsetof(DETOK
, ptr_coef_bands_x
));
55 DEFINE(detok_A
, offsetof(DETOK
, A
));
56 DEFINE(detok_L
, offsetof(DETOK
, L
));
58 DEFINE(detok_qcoeff_start_ptr
, offsetof(DETOK
, qcoeff_start_ptr
));
59 DEFINE(detok_current_bc
, offsetof(DETOK
, current_bc
));
60 DEFINE(detok_coef_probs
, offsetof(DETOK
, coef_probs
));
61 DEFINE(detok_eob
, offsetof(DETOK
, eob
));
63 DEFINE(bool_decoder_user_buffer_end
, offsetof(BOOL_DECODER
, user_buffer_end
));
64 DEFINE(bool_decoder_user_buffer
, offsetof(BOOL_DECODER
, user_buffer
));
65 DEFINE(bool_decoder_value
, offsetof(BOOL_DECODER
, value
));
66 DEFINE(bool_decoder_count
, offsetof(BOOL_DECODER
, count
));
67 DEFINE(bool_decoder_range
, offsetof(BOOL_DECODER
, range
));
69 DEFINE(tokenextrabits_min_val
, offsetof(TOKENEXTRABITS
, min_val
));
70 DEFINE(tokenextrabits_length
, offsetof(TOKENEXTRABITS
, Length
));
73 //add asserts for any offset that is not supported by assembly code
74 //add asserts for any size that is not supported by assembly code