mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-10 11:04:58 -06:00
target/arm: Remove value_global from DisasCompare
This field was only used to avoid freeing globals. Since we no longer free any temps, this is dead. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
720923eddd
commit
84156ff0cf
2 changed files with 0 additions and 6 deletions
|
@ -672,7 +672,6 @@ void arm_test_cc(DisasCompare *cmp, int cc)
|
||||||
{
|
{
|
||||||
TCGv_i32 value;
|
TCGv_i32 value;
|
||||||
TCGCond cond;
|
TCGCond cond;
|
||||||
bool global = true;
|
|
||||||
|
|
||||||
switch (cc) {
|
switch (cc) {
|
||||||
case 0: /* eq: Z */
|
case 0: /* eq: Z */
|
||||||
|
@ -703,7 +702,6 @@ void arm_test_cc(DisasCompare *cmp, int cc)
|
||||||
case 9: /* ls: !C || Z -> !(C && !Z) */
|
case 9: /* ls: !C || Z -> !(C && !Z) */
|
||||||
cond = TCG_COND_NE;
|
cond = TCG_COND_NE;
|
||||||
value = tcg_temp_new_i32();
|
value = tcg_temp_new_i32();
|
||||||
global = false;
|
|
||||||
/* CF is 1 for C, so -CF is an all-bits-set mask for C;
|
/* CF is 1 for C, so -CF is an all-bits-set mask for C;
|
||||||
ZF is non-zero for !Z; so AND the two subexpressions. */
|
ZF is non-zero for !Z; so AND the two subexpressions. */
|
||||||
tcg_gen_neg_i32(value, cpu_CF);
|
tcg_gen_neg_i32(value, cpu_CF);
|
||||||
|
@ -715,7 +713,6 @@ void arm_test_cc(DisasCompare *cmp, int cc)
|
||||||
/* Since we're only interested in the sign bit, == 0 is >= 0. */
|
/* Since we're only interested in the sign bit, == 0 is >= 0. */
|
||||||
cond = TCG_COND_GE;
|
cond = TCG_COND_GE;
|
||||||
value = tcg_temp_new_i32();
|
value = tcg_temp_new_i32();
|
||||||
global = false;
|
|
||||||
tcg_gen_xor_i32(value, cpu_VF, cpu_NF);
|
tcg_gen_xor_i32(value, cpu_VF, cpu_NF);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -723,7 +720,6 @@ void arm_test_cc(DisasCompare *cmp, int cc)
|
||||||
case 13: /* le: Z || N != V */
|
case 13: /* le: Z || N != V */
|
||||||
cond = TCG_COND_NE;
|
cond = TCG_COND_NE;
|
||||||
value = tcg_temp_new_i32();
|
value = tcg_temp_new_i32();
|
||||||
global = false;
|
|
||||||
/* (N == V) is equal to the sign bit of ~(NF ^ VF). Propagate
|
/* (N == V) is equal to the sign bit of ~(NF ^ VF). Propagate
|
||||||
* the sign bit then AND with ZF to yield the result. */
|
* the sign bit then AND with ZF to yield the result. */
|
||||||
tcg_gen_xor_i32(value, cpu_VF, cpu_NF);
|
tcg_gen_xor_i32(value, cpu_VF, cpu_NF);
|
||||||
|
@ -751,7 +747,6 @@ void arm_test_cc(DisasCompare *cmp, int cc)
|
||||||
no_invert:
|
no_invert:
|
||||||
cmp->cond = cond;
|
cmp->cond = cond;
|
||||||
cmp->value = value;
|
cmp->value = value;
|
||||||
cmp->value_global = global;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void arm_jump_cc(DisasCompare *cmp, TCGLabel *label)
|
void arm_jump_cc(DisasCompare *cmp, TCGLabel *label)
|
||||||
|
|
|
@ -157,7 +157,6 @@ typedef struct DisasContext {
|
||||||
typedef struct DisasCompare {
|
typedef struct DisasCompare {
|
||||||
TCGCond cond;
|
TCGCond cond;
|
||||||
TCGv_i32 value;
|
TCGv_i32 value;
|
||||||
bool value_global;
|
|
||||||
} DisasCompare;
|
} DisasCompare;
|
||||||
|
|
||||||
/* Share the TCG temporaries common between 32 and 64 bit modes. */
|
/* Share the TCG temporaries common between 32 and 64 bit modes. */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue