[fpc-devel] What's the difference between -Cp and -Op?
jonas at freepascal.org
Wed Sep 7 20:15:10 CEST 2022
On 2022-09-07 16:34, J. Gareth Moreton via fpc-devel wrote:
> So this one has eluded me a little bit... what's the exact difference
> between the -Cp and -Op options?
-Cp: the code is only guaranteed to run on this cpu and usually also
later ones (the code generator/optimiser can use instruction that are
not available on earlier/other cpus). E.g.: use BMI2 instructions.
-Op: the code is optimised for this cpu, but will still run on
earlier/later ones. E.g., use lea instead of shl on a particular cpu
because it's faster there, even if it's not the case on all of them.
-Cf: use this instruction set to perform floating point calculations. It
is independently handled from the two previous settings, even if it can
indirectly also influence the minimum required CPU.
More information about the fpc-devel