From: Stuart B. <zu...@us...> - 2007-03-12 18:29:58
|
Update of /cvsroot/hppaqemu/hppaqemu/target-hppa In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv3672 Modified Files: translate.c Log Message: Decode COMB[TF] and COMIB[TF] properly. Index: translate.c =================================================================== RCS file: /cvsroot/hppaqemu/hppaqemu/target-hppa/translate.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** translate.c 12 Mar 2007 18:01:01 -0000 1.20 --- translate.c 12 Mar 2007 18:29:51 -0000 1.21 *************** *** 1560,1566 **** case 0x23: /* COMIBF */ { ! uint32_t r1, r2, c, w1, n, w, disp; ! r2 = field(insn, 21, 5); ! r1 = field(insn, 16, 5); c = field(insn, 13, 3); w1 = field_signext(insn, 2, 11); --- 1560,1586 ---- case 0x23: /* COMIBF */ { ! uint32_t c, w1, n, w, disp; ! switch(op) { ! case 0x20: /* COMBT */ ! case 0x22: /* COMBF */ ! { ! uint32_t r1, r2; ! r2 = field(insn, 21, 5); ! r1 = field(insn, 16, 5); ! gen_op_movl_T0_reg(r1); ! gen_op_movl_T1_reg(r2); ! break; ! } ! case 0x21: /* COMIBT */ ! case 0x23: /* COMIBF */ ! { ! uint32_t r, im5; ! r = field(insn, 21, 5); ! im5 = field_signext(insn, 16, 5); ! gen_op_movl_T0_im(im5); ! gen_op_movl_T1_reg(r); ! break; ! } ! } c = field(insn, 13, 3); w1 = field_signext(insn, 2, 11); |