When running FP operations, FPSCR flag must be compared to make sure that any exception will behave consistently.
Signed-off-by: Jose Ricardo Ziviani <jos...@linux.vnet.ibm.com> --- risu_reginfo_ppc64le.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/risu_reginfo_ppc64le.c b/risu_reginfo_ppc64le.c index 4dc509c..ee0e55e 100644 --- a/risu_reginfo_ppc64le.c +++ b/risu_reginfo_ppc64le.c @@ -21,6 +21,7 @@ #define XER 37 #define CCR 38 +#define FPREG 32 /* reginfo_init: initialize with a ucontext */ void reginfo_init(struct reginfo *ri, ucontext_t *uc) @@ -82,6 +83,10 @@ int reginfo_is_eq(struct reginfo *m, struct reginfo *a, ucontext_t *uc) } } + if (m->fpregs[FPREG] != a->fpregs[FPREG]) { + return 0; + } + for (i = 0; i < 32; i++) { if (m->vrregs.vrregs[i][0] != a->vrregs.vrregs[i][0] || m->vrregs.vrregs[i][1] != a->vrregs.vrregs[i][1] || -- 2.7.4