On 12 October 2015 at 10:11, Abhishek Aggarwal wrote: > I was befuddled by the following 3 assembly instructions (generated > right in the beginning of 'main' function): > lea 0x4(%esp), %ecx > and 0xfffffff0, %esp > pushl -0x4(%ecx) > > I am not able to understand the purpose of these 3 instructions. Can > anyone explain me about them? I didn't observe these 3 instructions > when I compiled the same code with '-m64' switch instead of '-m32'.
Your question is off-topic on this mailing list, because it's not about development of GCC. Questions about what x86 assembly means are not really relevant on the gcc-help list either, as it's not specific to GCC, and you should be able to find the answer in a description of x86 assembly programming, or http://stackoverflow.com/questions/4175281/what-does-it-mean-to-align-the-stack