aboutsummaryrefslogtreecommitdiff
path: root/target-microblaze
diff options
context:
space:
mode:
Diffstat (limited to 'target-microblaze')
-rw-r--r--target-microblaze/helper.h2
-rw-r--r--target-microblaze/op_helper.c7
-rw-r--r--target-microblaze/translate.c8
3 files changed, 7 insertions, 10 deletions
diff --git a/target-microblaze/helper.h b/target-microblaze/helper.h
index 9c2a1e4b6d..1696b885b6 100644
--- a/target-microblaze/helper.h
+++ b/target-microblaze/helper.h
@@ -2,7 +2,7 @@
DEF_HELPER_1(raise_exception, void, i32)
DEF_HELPER_0(debug, void)
-DEF_HELPER_FLAGS_3(addkc, TCG_CALL_PURE | TCG_CALL_CONST, i32, i32, i32, i32)
+DEF_HELPER_FLAGS_3(carry, TCG_CALL_PURE | TCG_CALL_CONST, i32, i32, i32, i32)
DEF_HELPER_2(cmp, i32, i32, i32)
DEF_HELPER_2(cmpu, i32, i32, i32)
diff --git a/target-microblaze/op_helper.c b/target-microblaze/op_helper.c
index 59e4674ded..d75a53cc54 100644
--- a/target-microblaze/op_helper.c
+++ b/target-microblaze/op_helper.c
@@ -128,12 +128,9 @@ uint32_t helper_cmpu(uint32_t a, uint32_t b)
return t;
}
-uint32_t helper_addkc(uint32_t a, uint32_t b, uint32_t cf)
+uint32_t helper_carry(uint32_t a, uint32_t b, uint32_t cf)
{
- uint32_t d, ncf;
-
- d = a + b + cf;
-
+ uint32_t ncf;
ncf = compute_carry(a, b, cf);
return ncf;
}
diff --git a/target-microblaze/translate.c b/target-microblaze/translate.c
index 0c5edc3583..220743195c 100644
--- a/target-microblaze/translate.c
+++ b/target-microblaze/translate.c
@@ -232,13 +232,13 @@ static void dec_add(DisasContext *dc)
if (dc->rd) {
TCGv ncf = tcg_temp_new();
- gen_helper_addkc(ncf, cpu_R[dc->ra], *(dec_alu_op_b(dc)), cf);
+ gen_helper_carry(ncf, cpu_R[dc->ra], *(dec_alu_op_b(dc)), cf);
tcg_gen_add_tl(cpu_R[dc->rd], cpu_R[dc->ra], *(dec_alu_op_b(dc)));
tcg_gen_add_tl(cpu_R[dc->rd], cpu_R[dc->rd], cf);
write_carry(dc, ncf);
tcg_temp_free(ncf);
} else {
- gen_helper_addkc(cf, cpu_R[dc->ra], *(dec_alu_op_b(dc)), cf);
+ gen_helper_carry(cf, cpu_R[dc->ra], *(dec_alu_op_b(dc)), cf);
write_carry(dc, cf);
}
tcg_temp_free(cf);
@@ -302,13 +302,13 @@ static void dec_sub(DisasContext *dc)
if (dc->rd) {
TCGv ncf = tcg_temp_new();
- gen_helper_addkc(ncf, na, *(dec_alu_op_b(dc)), cf);
+ gen_helper_carry(ncf, na, *(dec_alu_op_b(dc)), cf);
tcg_gen_add_tl(cpu_R[dc->rd], na, *(dec_alu_op_b(dc)));
tcg_gen_add_tl(cpu_R[dc->rd], cpu_R[dc->rd], cf);
write_carry(dc, ncf);
tcg_temp_free(ncf);
} else {
- gen_helper_addkc(cf, na, *(dec_alu_op_b(dc)), cf);
+ gen_helper_carry(cf, na, *(dec_alu_op_b(dc)), cf);
write_carry(dc, cf);
}
tcg_temp_free(cf);