These flags are documented as controlling the use of push instructions on x86 and x86_64 targets: '-mpush-args' '-mno-push-args' Use PUSH operations to store outgoing parameters. This method is shorter and usually equally fast as method using SUB/MOV operations and is enabled by default. In some cases disabling it may improve performance because of improved scheduling and reduced dependencies. Jeff