On Fri, Feb 24, 2017 at 01:26:25AM +0530, Nikunj A Dadhania wrote: > Patches: > 01-06 Cleans up the XER split out variables and now the > flag bits are stored in XER at their respective places > > 07-14 Contains implentation of CA32 and OV32 bits added to the > ISA 3.0. Various fixed-point arithmetic instructions are > updated to take care of the newer flags. > > 15 Finally the last patch adds new instruction mcrxrx, that helps > reading the carry (CA and CA32) and the overflow (OV and OV32) flags
I've applied 1/15, I've rest the left pending correction of 2/15 and discussions on the rest. > > > Booted the POWER8 guest fine, needs more testing as changes are > intrusive in nature. > > Changelog: > v3: > * Get rid of cpu_ca, cpu_ov, cpu_so split out variables > * As most of the patches under went changes, dropped the > reviewed-bys(except neg[.] patch) > > v2: > * Add missing condition in narrow mode(add/subf), multiply and divide > * Drop nego patch, subf implementation is sufficient for setting OV and OV32 > * Retaining neg[.], as the code is simplified. > * Fix OV resetting in compute_ov() > > v1: > * Use these ISA 3.0 flag to enable CA32 and OV32 > * Re-write ca32 compute routine > * Add setting of flags for "neg." and "nego." > > Nikunj A Dadhania (15): > target/ppc: introduce helper_update_ov_legacy > target/ppc: update ov flag from remaining paths > target/ppc: introduce helper_update_ca_legacy > target/ppc: add gen_op_update_ca_legacy() helper > target/ppc: add gen_op_update_ov_legacy() helper > target/ppc: remove xer split-out flags(so, ov, ca) > target/ppc: support for 32-bit carry and overflow > target/ppc: update ca32 in arithmetic add > target/ppc: update ca32 in arithmetic substract > target/ppc: add gen_op_update_ov_isa300() > target/ppc: update OV/OV32 for mull[d,w] insns > target/ppc: update OV/OV32 for divide operations > target/ppc: update OV/OV32 flags for add/sub > target/ppc: use tcg ops for neg instruction > target/ppc: add mcrxrx instruction > > target/ppc/cpu.c | 8 +- > target/ppc/cpu.h | 33 ++-- > target/ppc/int_helper.c | 90 ++++++----- > target/ppc/translate.c | 396 > +++++++++++++++++++++++++++++++++++------------- > 4 files changed, 371 insertions(+), 156 deletions(-) > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature