Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-25 Thread Tom Musta
On 10/24/2013 5:10 PM, Peter Maydell wrote: Can't you use the min and max softfloat functions? Those are there specifically because the corner cases mean you can't implement them using the comparisons. (For instance for the example you quote of max(-0.0, +0.0) they return +0.0 as you require.)

Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-25 Thread Peter Maydell
On 25 October 2013 14:52, Tom Musta tommu...@gmail.com wrote: On 10/24/2013 5:10 PM, Peter Maydell wrote: Can't you use the min and max softfloat functions? Those are there specifically because the corner cases mean you can't implement them using the comparisons. (For instance for the

[Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-24 Thread Tom Musta
This patch adds the VSX floating point maximum and minimum instructions: - xsmaxdp, xvmaxdp, xvmaxsp - xsmindp, xvmindp, xvminsp Because of the Power ISA definitions of maximum and minimum on various boundary cases, the standard softfloat comparison routines (e.g. float64_lt) do not work as

Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-24 Thread Richard Henderson
On 10/24/2013 09:26 AM, Tom Musta wrote: Because of the Power ISA definitions of maximum and minimum on various boundary cases, the standard softfloat comparison routines (e.g. float64_lt) do not work as well as one might think. Therefore specific routines for comparing 64 and 32 bit

Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-24 Thread Tom Musta
On 10/24/2013 3:45 PM, Richard Henderson wrote: On 10/24/2013 09:26 AM, Tom Musta wrote: Because of the Power ISA definitions of maximum and minimum on various boundary cases, the standard softfloat comparison routines (e.g. float64_lt) do not work as well as one might think. Therefore

Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-24 Thread Richard Henderson
On 10/24/2013 02:07 PM, Tom Musta wrote: See, for example, table 58 (Actions for xsmaxdp) on p. 369 of the V2.06 ISA. Bah, I typoed my search in the document and looked at the Altivec insn, which is only one letter different, and doesn't have the same guarantees. Reviewed-by: Richard

Re: [Qemu-devel] [PATCH 15/19] Add VSX xmax/xmin Instructions

2013-10-24 Thread Peter Maydell
On 24 October 2013 17:26, Tom Musta tommu...@gmail.com wrote: This patch adds the VSX floating point maximum and minimum instructions: - xsmaxdp, xvmaxdp, xvmaxsp - xsmindp, xvmindp, xvminsp Because of the Power ISA definitions of maximum and minimum on various boundary cases, the