Patch "MIPS: math-emu: <MAXA|MINA>.<D|S>: Fix cases of input values with opposite signs" has been added to the 4.13-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
MIPS: math-emu: <MAXA|MINA>.<D|S>: Fix cases of input values with opposite signs
to the 4.13-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
mips-math-emu-maxa-mina-.-d-s-fix-cases-of-input-values-with-opposite-signs.patch
and it can be found in the queue-4.13 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
1a41b3b441508ae63b1a9ec699ec94065739eb60Mon Sep 17 00:00:00 2001
From: Aleksandar Markovic <[email protected]>
Date: Thu, 27 Jul 2017 18:08:51 +0200
Subject: MIPS: math-emu: <MAXA|MINA>.<D|S>: Fix cases of input values with opposite signs
From: Aleksandar Markovic <[email protected]>
commit 1a41b3b441508ae63b1a9ec699ec94065739eb60 upstream.
Fix the value returned by <MAXA|MINA>.<D|S>, if the inputs are normal fp numbers of the same absolute value, but opposite signs.
A relevant example:
MAXA.S fd,fs,ft:
If fs contains -3.0, and ft contains +3.0, fd is going to contain +3.0 (without this patch, it used to contain -3.0).
Patchwork: https://patchwork.linux-mips.org/patch/16883/
--- arch/mips/math-emu/dp_fmax.c | 8 ++++++-- arch/mips/math-emu/dp_fmin.c | 6 +++++- arch/mips/math-emu/sp_fmax.c | 8 ++++++-- arch/mips/math-emu/sp_fmin.c | 6 +++++- 4 files changed, 22 insertions(+), 6 deletions(-)
arch/mips/math-emu/dp_fmax.c +6 -2
@@ -243,7 +243,11 @@ union ieee754dp ieee754dp_fmaxa(union iereturn y;/* Compare mantissa */ -if (xm <= ym) +if (xm < ym)return y; -return x; +else if (xm > ym) +return x; +else if (xs ==0 ) +return x; +return y; }
arch/mips/math-emu/dp_fmin.c +5 -1
@@ -243,7 +243,11 @@ union ieee754dp ieee754dp_fmina(union iereturn x;/* Compare mantissa */ -if (xm <= ym) +if (xm < ym) +return x; +else if (xm > ym) +return y; +else if (xs ==1 )return x;return y; }
arch/mips/math-emu/sp_fmax.c +6 -2
@@ -243,7 +243,11 @@ union ieee754sp ieee754sp_fmaxa(union iereturn y;/* Compare mantissa */ -if (xm <= ym) +if (xm < ym)return y; -return x; +else if (xm > ym) +return x; +else if (xs ==0 ) +return x; +return y; }
arch/mips/math-emu/sp_fmin.c +5 -1
@@ -243,7 +243,11 @@ union ieee754sp ieee754sp_fmina(union iereturn x;/* Compare mantissa */ -if (xm <= ym) +if (xm < ym) +return x; +else if (xm > ym) +return y; +else if (xs ==1 )return x;return y; }
Patches currently in stable-queue which might be from [email protected] are
queue-4.13/mips-math-emu-maddf-msubf-.-d-s-fix-nan-propagation.patch queue-4.13/mips-math-emu-max-maxa-min-mina-.-d-s-fix-cases-of-both-inputs-zero.patch queue-4.13/mips-math-emu-max-min-.-d-s-fix-cases-of-both-inputs-negative.patch queue-4.13/mips-math-emu-max-maxa-min-mina-.-d-s-fix-quiet-nan-propagation.patch queue-4.13/mips-math-emu-maddf-msubf-.d-fix-accuracy-64-bit-case.patch queue-4.13/mips-math-emu-maddf-msubf-.s-fix-accuracy-32-bit-case.patch queue-4.13/mips-math-emu-maxa-mina-.-d-s-fix-cases-of-input-values-with-opposite-signs.patch queue-4.13/mips-math-emu-maxa-mina-.-d-s-fix-cases-of-both-infinite-inputs.patch queue-4.13/mips-math-emu-mina.-d-s-fix-some-cases-of-infinity-and-zero-inputs.patch queue-4.13/mips-math-emu-maddf-msubf-.-d-s-fix-some-cases-of-zero-inputs.patch queue-4.13/mips-math-emu-maddf-msubf-.-d-s-clean-up-maddf_flags-enumeration.patch queue-4.13/mips-math-emu-maddf-msubf-.-d-s-fix-some-cases-of-infinite-inputs.patch