--- mjpegtools-1.6.0/mplex/multplex.cc 2002-04-29 12:30:56.000000000 -0400 +++ mjpegtools-1.6.0/mplex/multplex.cc 2003-07-25 01:51:57.228994776 -0400 @@ -2,6 +2,7 @@ #include #include #include +#include #include #include --- mjpegtools-1.6.0/mplex/stillsstream.cc 2002-04-19 11:14:17.000000000 -0400 +++ mjpegtools-1.6.0/mplex/stillsstream.cc 2003-07-25 01:52:12.769632240 -0400 @@ -22,6 +22,7 @@ #include +#include #include "stillsstream.hh" #include "interact.hh" --- mjpegtools-1.6.0/mplex/systems.cc 2003-07-25 01:51:14.205535336 -0400 +++ mjpegtools-1.6.0/mplex/systems.cc 2003-07-25 01:51:44.020002848 -0400 @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include --- mjpegtools-1.6.0/yuvdenoise/motion.c 2002-05-06 04:13:37.000000000 -0400 +++ mjpegtools-1.6.0/yuvdenoise/motion.c 2003-07-25 01:52:38.339744992 -0400 @@ -251,6 +251,9 @@ " movl %1 , %%eax; /* load frameadress into eax */\n" " movl %2 , %%ebx; /* load frameadress into ebx */\n" " movl %3 , %%ecx; /* load width into ecx */\n" + " shrl $1 , %%ecx; /* shift width to scale it in the asm. */\n" + " /* why? we need an lvalue as input... gcc33... */\n" + " /* (carrbc1@wfu.edu) */\n" " /* */\n" ".rept 4 ; /* Loop for 4 lines */\n" " movd (%%eax), %%mm1; /* 4 Pixels from filtered frame to mm1 */\n" @@ -270,7 +273,7 @@ " /* */\n" " movq %%mm0 , %0 ; /* make mm0 available to gcc ... */\n" :"=m" (a) - :"m" (frm), "m" (ref), "m" (denoiser.frame.w/2) + :"m" (frm), "m" (ref), "m" (denoiser.frame.w) :"%eax", "%ebx", "%ecx" ); #endif @@ -295,7 +298,10 @@ " movl %1 , %%eax; /* load frameadress into eax */\n" " movl %2 , %%ebx; /* load frameadress into ebx */\n" " movl %3 , %%ecx; /* load width into ecx */\n" - " ; /* */\n" + " shrl $1 , %%ecx; /* shift width to scale it in the asm. */\n" + " /* why? we need an lvalue as input... gcc33... */\n" + " /* (carrbc1@wfu.edu) */\n" + " /* */\n" " .rept 4 ; /* */\n" " movd (%%eax), %%mm1; /* 4 Pixels from filtered frame to mm1 */\n" " movd (%%ebx), %%mm2; /* 4 Pixels from filtered frame to mm2 */\n" @@ -307,7 +313,7 @@ " /* */\n" " movq %%mm0 , %0 ; /* make mm0 available to gcc ... */\n" :"=m" (a) - :"m" (frm), "m" (ref), "m" (denoiser.frame.w/2) + :"m" (frm), "m" (ref), "m" (denoiser.frame.w) :"%eax", "%ebx", "%ecx" ); #endif @@ -349,6 +355,7 @@ static uint32_t a; #ifdef HAVE_ASM_MMX static uint32_t bit_mask[2] = {0x7f7f7f7f,0x7f7f7f7f}; + static uint32_t* bit_mask_addr = bit_mask; __asm__ __volatile__ ( @@ -380,7 +387,7 @@ " /* */" " movq %%mm0 , %0 ; /* make mm0 available to gcc ... */" :"=m" (a) - :"m" (frm1),"m" (frm2), "m" (ref), "m" (denoiser.frame.w), "m" (bit_mask) + :"m" (frm1),"m" (frm2), "m" (ref), "m" (denoiser.frame.w), "m" (bit_mask_addr) :"%eax", "%ebx", "%ecx", "%edx" ); #endif