Please sign in to comment.
Assume gcc 2.95+ with DOS and Win32 builds. These versions of gcc have
introduced extra stack alignment to avoid huge penalties of MMX, SSE, and floating point operations on unaligned variables on the stack. In John, we are not using any floating point and none of the MMX instructions refer to locations on the stack. Thus, this extra alignment is not needed and we now disable it with -mpreferred-stack-boundary=2 to avoid the overhead on function entry associated with this gcc feature.
- Loading branch information...