Commit 459e518560f4f7525bceb17ba0882b4cdaf698c1
1 parent
a8cf66bb
CRIS: Move operations can be optimized as arithmetic ones for cc evaluation.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6199 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
2 additions
and
1 deletions
target-cris/translate.c
... | ... | @@ -975,6 +975,7 @@ static int arith_cc(DisasContext *dc) |
975 | 975 | case CC_OP_CMP: return 1; |
976 | 976 | case CC_OP_NEG: return 1; |
977 | 977 | case CC_OP_OR: return 1; |
978 | + case CC_OP_AND: return 1; | |
978 | 979 | case CC_OP_XOR: return 1; |
979 | 980 | case CC_OP_MULU: return 1; |
980 | 981 | case CC_OP_MULS: return 1; |
... | ... | @@ -1000,7 +1001,7 @@ static void gen_tst_cc (DisasContext *dc, TCGv cc, int cond) |
1000 | 1001 | * code is true. |
1001 | 1002 | */ |
1002 | 1003 | arith_opt = arith_cc(dc) && !dc->flags_uptodate; |
1003 | - move_opt = (dc->cc_op == CC_OP_MOVE) && dc->flags_uptodate; | |
1004 | + move_opt = (dc->cc_op == CC_OP_MOVE); | |
1004 | 1005 | switch (cond) { |
1005 | 1006 | case CC_EQ: |
1006 | 1007 | if (arith_opt || move_opt) { | ... | ... |