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);
|