<div dir="ltr">preferred-stack-boundary is an option that specifies what the compiler should align procedure stacks to, as a power of 2.  So the value 4 means to align procedure stacks to 16 bytes.  You can probably remove this option, modern compilers should align elements properly by default.  Older compilers did not.<div><br></div><div>All of the floating point options such as --mno-sse5' generally tell the compiler not to use FP instructions or registers in generated kernel code.  This is because the kernel does not fully save the user floating point state across system calls or interrupts.  These options or the equivalent for clang are mandatory.</div><div><br></div><div>I don't know what the -mno-abm options does.</div><div><br></div><div>The indirect-branch mode... ummm. I think that turns on retpoline security mitigations for indirect calls, but I'm not sure.</div><div><br></div><div>The inline-limit option tells the compiler to allow larger inline functions to be inlined.  You can probably remove this.</div><div><br></div><div>-Matt</div></div>