Commit e5105083e6c41f546c81d94f5e974597d8490f5e
1 parent
5ef4efa4
tcg: fix commit r6805
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6810 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
6 additions
and
18 deletions
tcg/tcg-op.h
@@ -757,22 +757,14 @@ static inline void tcg_gen_and_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) | @@ -757,22 +757,14 @@ static inline void tcg_gen_and_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) | ||
757 | 757 | ||
758 | static inline void tcg_gen_andi_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) | 758 | static inline void tcg_gen_andi_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) |
759 | { | 759 | { |
760 | - if (TCGV_EQUAL_I64(arg1, arg2)) { | ||
761 | - tcg_gen_mov_i64(ret, arg1); | ||
762 | - } else { | ||
763 | - tcg_gen_andi_i32(TCGV_LOW(ret), TCGV_LOW(arg1), arg2); | ||
764 | - tcg_gen_andi_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), arg2 >> 32); | ||
765 | - } | 760 | + tcg_gen_andi_i32(TCGV_LOW(ret), TCGV_LOW(arg1), arg2); |
761 | + tcg_gen_andi_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), arg2 >> 32); | ||
766 | } | 762 | } |
767 | 763 | ||
768 | static inline void tcg_gen_or_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) | 764 | static inline void tcg_gen_or_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) |
769 | { | 765 | { |
770 | - if (TCGV_EQUAL_I64(arg1, arg2)) { | ||
771 | - tcg_gen_mov_i64(ret, arg1); | ||
772 | - } else { | ||
773 | - tcg_gen_or_i32(TCGV_LOW(ret), TCGV_LOW(arg1), TCGV_LOW(arg2)); | ||
774 | - tcg_gen_or_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), TCGV_HIGH(arg2)); | ||
775 | - } | 766 | + tcg_gen_or_i32(TCGV_LOW(ret), TCGV_LOW(arg1), TCGV_LOW(arg2)); |
767 | + tcg_gen_or_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), TCGV_HIGH(arg2)); | ||
776 | } | 768 | } |
777 | 769 | ||
778 | static inline void tcg_gen_ori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) | 770 | static inline void tcg_gen_ori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) |
@@ -783,12 +775,8 @@ static inline void tcg_gen_ori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) | @@ -783,12 +775,8 @@ static inline void tcg_gen_ori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) | ||
783 | 775 | ||
784 | static inline void tcg_gen_xor_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) | 776 | static inline void tcg_gen_xor_i64(TCGv_i64 ret, TCGv_i64 arg1, TCGv_i64 arg2) |
785 | { | 777 | { |
786 | - if (TCGV_EQUAL_I64(arg1, arg2)) { | ||
787 | - tcg_gen_movi_i64(ret, 0); | ||
788 | - } else { | ||
789 | - tcg_gen_xor_i32(TCGV_LOW(ret), TCGV_LOW(arg1), TCGV_LOW(arg2)); | ||
790 | - tcg_gen_xor_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), TCGV_HIGH(arg2)); | ||
791 | - } | 778 | + tcg_gen_xor_i32(TCGV_LOW(ret), TCGV_LOW(arg1), TCGV_LOW(arg2)); |
779 | + tcg_gen_xor_i32(TCGV_HIGH(ret), TCGV_HIGH(arg1), TCGV_HIGH(arg2)); | ||
792 | } | 780 | } |
793 | 781 | ||
794 | static inline void tcg_gen_xori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) | 782 | static inline void tcg_gen_xori_i64(TCGv_i64 ret, TCGv_i64 arg1, int64_t arg2) |