Hi, On Mon, Oct 5, 2015 at 5:54 AM, Henrik Gramner <hen...@gramner.com> wrote:
> On Mon, Oct 5, 2015 at 10:55 AM, Matt Oliver <protogo...@gmail.com> wrote: > > This patch has broken the 32bit msvc builds: > > > http://fate.ffmpeg.org/report.cgi?time=20151005065109&slot=x86_32-msvc12-windows-native > > > > I had a look through the code but couldnt find the cause. The error > message > > just points to the code line for a macro instantiation and I'm not > familiar > > enough with the code to be able to work out where within the macro the > > error is actually occurring and why. So ill leave this one to someone > more > > familiar with the code. > > I see where the problem is. > > Using stack space in cglobal requires an extra register if the stack > alignment is less than mmsize (32-bit msvc only has 4-byte stack > alignment), and if the function already utilizes all available > registers that will result in failure. > > The fix is either to reduce the number of registers used by the > function or to only enable the function on x86-32 if the stack is at > least 16-byte aligned. x86inc has the variable STACK_ALIGNMENT which > can be tested for this, in C there's the HAVE_ALIGNED_STACK define > which is set if the stack is 16-byte aligned. Yeah, it should use 6 regs, I'll send a patch. Ronald _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel