<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><div>At 2014-04-19 00:17:20,"Jason Garrett-Glaser" <jason@x264.com> wrote:<br>>>>x86inc handles this already when it references values in the stack.<br>>>>If it didn't, none of x264's asm would function.<br>>>><br>>> yes, for value only<br>>> it didn't align stack for reserve stack space (4th parameters of cglobal)<br>><br>>If it doesn't, that has nothing to do with registers it's pushed on<br>>the stack -- that means that x264asm got a misaligned stack passed to<br>>it in the first place, but wasn't told to assume incoming stacks are<br>>misaligned.<br>><br>>x264asm tracks its own stack_offset when it performs stack operations,<br>>including the allocation of scratch space.<br>><br>In this case, they pass a align stack to our code, but cglobal push 3 registers, so broken stack align.</div></div>