[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 28/53] target/ppc: remove unnecessary if() around calls to set_dfp
From: |
David Gibson |
Subject: |
[PULL 28/53] target/ppc: remove unnecessary if() around calls to set_dfp{64, 128}() in DFP macros |
Date: |
Fri, 4 Oct 2019 19:37:22 +1000 |
From: Mark Cave-Ayland <address@hidden>
Now that the parameters to both set_dfp64() and set_dfp128() are exactly the
same, there is no need for an explicit if() statement to determine which
function should be called based upon size. Instead we can simply use the
preprocessor to generate the call to set_dfp##size() directly.
Signed-off-by: Mark Cave-Ayland <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: David Gibson <address@hidden>
---
target/ppc/dfp_helper.c | 60 +++++++----------------------------------
1 file changed, 10 insertions(+), 50 deletions(-)
diff --git a/target/ppc/dfp_helper.c b/target/ppc/dfp_helper.c
index c2bb458a78..2c65badae4 100644
--- a/target/ppc/dfp_helper.c
+++ b/target/ppc/dfp_helper.c
@@ -427,11 +427,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *a, \
dnop(&dfp.t, &dfp.a, &dfp.b, &dfp.context);
\
dfp_finalize_decimal##size(&dfp);
\
postprocs(&dfp);
\
- if (size == 64) {
\
- set_dfp64(t, &dfp.vt);
\
- } else if (size == 128) {
\
- set_dfp128(t, &dfp.vt);
\
- }
\
+ set_dfp##size(t, &dfp.vt);
\
}
static void ADD_PPs(struct PPC_DFP *dfp)
@@ -747,11 +743,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *b, \
dfp_finalize_decimal##size(&dfp); \
QUA_PPs(&dfp); \
\
- if (size == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if (size == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_QUAI(dquai, 64)
@@ -769,11 +761,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *a, \
dfp_finalize_decimal##size(&dfp); \
QUA_PPs(&dfp); \
\
- if (size == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if (size == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_QUA(dqua, 64)
@@ -851,11 +839,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *a, \
dfp_finalize_decimal##size(&dfp); \
QUA_PPs(&dfp); \
\
- if (size == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if (size == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_RRND(drrnd, 64)
@@ -874,11 +858,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *b, \
dfp_finalize_decimal##size(&dfp);
\
postprocs(&dfp);
\
\
- if (size == 64) {
\
- set_dfp64(t, &dfp.vt);
\
- } else if (size == 128) {
\
- set_dfp128(t, &dfp.vt);
\
- }
\
+ set_dfp##size(t, &dfp.vt);
\
}
static void RINTX_PPs(struct PPC_DFP *dfp)
@@ -978,11 +958,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *b) \
dfp_finalize_decimal##size(&dfp);
\
CFFIX_PPs(&dfp);
\
\
- if (size == 64) {
\
- set_dfp64(t, &dfp.vt);
\
- } else if (size == 128) {
\
- set_dfp128(t, &dfp.vt);
\
- }
\
+ set_dfp##size(t, &dfp.vt);
\
}
static void CFFIX_PPs(struct PPC_DFP *dfp)
@@ -1088,11 +1064,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *b, \
dfp_set_sign_##size(&dfp.vt, sgn); \
} \
\
- if (size == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if (size == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_DEDPD(ddedpd, 64)
@@ -1160,11 +1132,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *b, \
} \
dfp_finalize_decimal##size(&dfp); \
dfp_set_FPRF_from_FRT(&dfp); \
- if ((size) == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if ((size) == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_ENBCD(denbcd, 64)
@@ -1264,11 +1232,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *a, \
dfp.t.exponent = exp - bias; \
dfp_finalize_decimal##size(&dfp); \
} \
- if (size == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else if (size == 128) { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_IEX(diex, 64)
@@ -1356,11 +1320,7 @@ void helper_##op(CPUPPCState *env, ppc_fprp_t *t,
ppc_fprp_t *a, \
} \
} \
\
- if ((size) == 64) { \
- set_dfp64(t, &dfp.vt); \
- } else { \
- set_dfp128(t, &dfp.vt); \
- } \
+ set_dfp##size(t, &dfp.vt); \
}
DFP_HELPER_SHIFT(dscli, 64, 1)
--
2.21.0
- [PULL 24/53] target/ppc: update {get, set}_dfp{64, 128}() helper functions to read/write DFP numbers correctly, (continued)
- [PULL 24/53] target/ppc: update {get, set}_dfp{64, 128}() helper functions to read/write DFP numbers correctly, David Gibson, 2019/10/04
- [PULL 16/53] spapr: Move handling of special NVLink numa node from reset to init, David Gibson, 2019/10/04
- [PULL 21/53] pseries: Update SLOF firmware image, David Gibson, 2019/10/04
- [PULL 20/53] spapr: Stop providing RTAS blob, David Gibson, 2019/10/04
- [PULL 13/53] ppc: Use FPSCR defines instead of constants, David Gibson, 2019/10/04
- [PULL 26/53] target/ppc: change struct PPC_DFP decimal storage from uint64[2] to ppc_vsr_t, David Gibson, 2019/10/04
- [PULL 18/53] spapr: Skip leading zeroes from memory@ DT node names, David Gibson, 2019/10/04
- [PULL 17/53] spapr: Fixes a leak in CAS, David Gibson, 2019/10/04
- [PULL 15/53] spapr: Simplify handling of pre ISA 3.0 guest workaround handling, David Gibson, 2019/10/04
- [PULL 19/53] spapr: Do not put empty properties for -kernel/-initrd/-append, David Gibson, 2019/10/04
- [PULL 28/53] target/ppc: remove unnecessary if() around calls to set_dfp{64, 128}() in DFP macros,
David Gibson <=
- [PULL 32/53] spapr/xive: skip partially initialized vCPUs in presenter, David Gibson, 2019/10/04
- [PULL 22/53] target/ppc: introduce get_dfp{64, 128}() helper functions, David Gibson, 2019/10/04
- [PULL 25/53] target/ppc: introduce dfp_finalize_decimal{64, 128}() helper functions, David Gibson, 2019/10/04
- [PULL 29/53] spapr-pci: Stop providing assigned-addresses, David Gibson, 2019/10/04
- [PULL 30/53] spapr: Render full FDT on ibm, client-architecture-support, David Gibson, 2019/10/04
- [PULL 27/53] target/ppc: use existing VsrD() macro to eliminate HI_IDX and LO_IDX from dfp_helper.c, David Gibson, 2019/10/04
- [PULL 31/53] target/ppc: use Vsr macros in BCD helpers, David Gibson, 2019/10/04
- [PULL 23/53] target/ppc: introduce set_dfp{64, 128}() helper functions, David Gibson, 2019/10/04
- [PULL 33/53] xics: Minor fixes for XICSFabric interface, David Gibson, 2019/10/04
- [PULL 35/53] xics: Rename misleading ics_simple_*() functions, David Gibson, 2019/10/04