]> git.proxmox.com Git - qemu.git/commitdiff
target-arm : fix thumb2 parallel add/sub opcode decoding
authorChih-Min Chao <cmchao@gmail.com>
Mon, 28 Jun 2010 15:54:05 +0000 (23:54 +0800)
committerAurelien Jarno <aurelien@aurel32.net>
Thu, 1 Jul 2010 21:57:02 +0000 (23:57 +0200)
Signed-off-by: Chih-Min Chao <cmchao@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
(cherry picked from commit ed89a2f1b11db03fbdb0ddab93c25913a16c0374)

target-arm/translate.c

index 45bf77256f274c0fb8824f5916ffc9a181745d59..d910f72fae9d3c679065a42b0f6543e13bdcb269 100644 (file)
@@ -561,7 +561,7 @@ static void gen_arm_parallel_addsub(int op1, int op2, TCGv a, TCGv b)
 
 /* For unknown reasons Arm and Thumb-2 use arbitrarily different encodings.  */
 #define PAS_OP(pfx) \
-    switch (op2) {  \
+    switch (op1) {  \
     case 0: gen_pas_helper(glue(pfx,add8)); break; \
     case 1: gen_pas_helper(glue(pfx,add16)); break; \
     case 2: gen_pas_helper(glue(pfx,addsubx)); break; \
@@ -573,7 +573,7 @@ static void gen_thumb2_parallel_addsub(int op1, int op2, TCGv a, TCGv b)
 {
     TCGv_ptr tmp;
 
-    switch (op1) {
+    switch (op2) {
 #define gen_pas_helper(name) glue(gen_helper_,name)(a, a, b, tmp)
     case 0:
         tmp = tcg_temp_new_ptr();