Revision 849f1035 libavcodec/snow.h
libavcodec/snow.h | ||
---|---|---|
137 | 137 |
|
138 | 138 |
/* C bits used by mmx/sse2/altivec */ |
139 | 139 |
|
140 |
static always_inline void snow_interleave_line_header(int * i, int width, DWTELEM * low, DWTELEM * high){ |
|
140 |
static av_always_inline void snow_interleave_line_header(int * i, int width, DWTELEM * low, DWTELEM * high){
|
|
141 | 141 |
(*i) = (width) - 2; |
142 | 142 |
|
143 | 143 |
if (width & 1){ |
... | ... | |
146 | 146 |
} |
147 | 147 |
} |
148 | 148 |
|
149 |
static always_inline void snow_interleave_line_footer(int * i, DWTELEM * low, DWTELEM * high){ |
|
149 |
static av_always_inline void snow_interleave_line_footer(int * i, DWTELEM * low, DWTELEM * high){
|
|
150 | 150 |
for (; (*i)>=0; (*i)-=2){ |
151 | 151 |
low[(*i)+1] = high[(*i)>>1]; |
152 | 152 |
low[*i] = low[(*i)>>1]; |
153 | 153 |
} |
154 | 154 |
} |
155 | 155 |
|
156 |
static always_inline void snow_horizontal_compose_lift_lead_out(int i, DWTELEM * dst, DWTELEM * src, DWTELEM * ref, int width, int w, int lift_high, int mul, int add, int shift){ |
|
156 |
static av_always_inline void snow_horizontal_compose_lift_lead_out(int i, DWTELEM * dst, DWTELEM * src, DWTELEM * ref, int width, int w, int lift_high, int mul, int add, int shift){
|
|
157 | 157 |
for(; i<w; i++){ |
158 | 158 |
dst[i] = src[i] - ((mul * (ref[i] + ref[i + 1]) + add) >> shift); |
159 | 159 |
} |
... | ... | |
163 | 163 |
} |
164 | 164 |
} |
165 | 165 |
|
166 |
static always_inline void snow_horizontal_compose_liftS_lead_out(int i, DWTELEM * dst, DWTELEM * src, DWTELEM * ref, int width, int w){ |
|
166 |
static av_always_inline void snow_horizontal_compose_liftS_lead_out(int i, DWTELEM * dst, DWTELEM * src, DWTELEM * ref, int width, int w){
|
|
167 | 167 |
for(; i<w; i++){ |
168 | 168 |
dst[i] = src[i] - (((-(ref[i] + ref[(i+1)])+W_BO) - 4 * src[i]) >> W_BS); |
169 | 169 |
} |
Also available in: Unified diff