1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-02-09 14:14:39 +02:00

help some gcc version to optimize out those functions

Originally committed as revision 9785 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Aurelien Jacobs 2007-07-24 08:54:56 +00:00
parent 4611b64ec1
commit 73f51a4d3e
2 changed files with 8 additions and 0 deletions

View File

@ -2641,6 +2641,7 @@ static void put_mspel8_mc22_c(uint8_t *dst, uint8_t *src, int stride){
}
static void h263_v_loop_filter_c(uint8_t *src, int stride, int qscale){
if(ENABLE_ANY_H263) {
int x;
const int strength= ff_h263_loop_filter_strength[qscale];
@ -2674,8 +2675,10 @@ static void h263_v_loop_filter_c(uint8_t *src, int stride, int qscale){
src[x+ stride] = p3 + d2;
}
}
}
static void h263_h_loop_filter_c(uint8_t *src, int stride, int qscale){
if(ENABLE_ANY_H263) {
int y;
const int strength= ff_h263_loop_filter_strength[qscale];
@ -2709,6 +2712,7 @@ static void h263_h_loop_filter_c(uint8_t *src, int stride, int qscale){
src[y*stride+1] = p3 + d2;
}
}
}
static void h261_loop_filter_c(uint8_t *src, int stride){
int x,y,xy,yz;

View File

@ -622,6 +622,7 @@ static void add_bytes_mmx(uint8_t *dst, uint8_t *src, int w){
"paddb %%mm1, %%mm6 \n\t"
static void h263_v_loop_filter_mmx(uint8_t *src, int stride, int qscale){
if(ENABLE_ANY_H263) {
const int strength= ff_h263_loop_filter_strength[qscale];
asm volatile(
@ -639,6 +640,7 @@ static void h263_v_loop_filter_mmx(uint8_t *src, int stride, int qscale){
: "g" (2*strength), "m"(ff_pb_FC)
);
}
}
static inline void transpose4x4(uint8_t *dst, uint8_t *src, int dst_stride, int src_stride){
asm volatile( //FIXME could save 1 instruction if done as 8x4 ...
@ -670,6 +672,7 @@ static inline void transpose4x4(uint8_t *dst, uint8_t *src, int dst_stride, int
}
static void h263_h_loop_filter_mmx(uint8_t *src, int stride, int qscale){
if(ENABLE_ANY_H263) {
const int strength= ff_h263_loop_filter_strength[qscale];
uint64_t temp[4] __attribute__ ((aligned(8)));
uint8_t *btemp= (uint8_t*)temp;
@ -719,6 +722,7 @@ static void h263_h_loop_filter_mmx(uint8_t *src, int stride, int qscale){
"r" ((long)(3*stride))
);
}
}
#ifdef CONFIG_ENCODERS
static int pix_norm1_mmx(uint8_t *pix, int line_size) {