[PATCH] S/390: DFP support 1/4: Add z9-ec option
Andreas Krebbel
Andreas.Krebbel@de.ibm.com
Wed Mar 21 15:53:00 GMT 2007
> For PowerPC* we're using -mdfp and -mno-dfp to enable hardware DFP
> instructions (not yet implemented). Hard and soft float are orthogonal
> to hard and soft DFP on PowerPC; software emulation of DFP can use
> either one, which affects how arguments are passed.
The options on S/390 work a bit different. For our back end -mhard-float/-msoft-float
is an ABI switch. With -msoft-float we pass floating point numbers in gprs independent
on whether we are dealing with bfp, dfp or hfp values. The -msoft-float switch is
important for our kernel guys who don't want to store/restore any fp register - at least
if no user-space process is involved.
The -mhard-dfp/-msoft-dfp switches instead are NOT ABI relevant. They only enable or
disable the hardware instructions. When -msoft-dfp is used no dfp hw instructions are
available but dfp values are still passed to functions using fp registers. This seems to
be different compared to your -mdfp/-mno-dfp pair. Our switches are not orthogonal.
So it is not possible to use -mhard-dfp together with -msoft-float since the dfp hw
instructions expect the operands in fp registers which aren't available with -msoft-float.
Bye,
-Andreas-
More information about the Gcc-patches
mailing list