Revision c045af25

b/target-i386/translate.c
3472 3472
        case 0x171: /* shift xmm, im */
3473 3473
        case 0x172:
3474 3474
        case 0x173:
3475
            if (b1 >= 2) {
3476
	        goto illegal_op;
3477
            }
3475 3478
            val = ldub_code(s->pc++);
3476 3479
            if (is_xmm) {
3477 3480
                gen_op_movl_T0_im(val);
......
3699 3702
            rm = modrm & 7;
3700 3703
            reg = ((modrm >> 3) & 7) | rex_r;
3701 3704
            mod = (modrm >> 6) & 3;
3705
            if (b1 >= 2) {
3706
                goto illegal_op;
3707
            }
3702 3708

  
3703 3709
            sse_op2 = sse_op_table6[b].op[b1];
3704 3710
            if (!sse_op2)
......
3798 3804
            rm = modrm & 7;
3799 3805
            reg = ((modrm >> 3) & 7) | rex_r;
3800 3806
            mod = (modrm >> 6) & 3;
3807
            if (b1 >= 2) {
3808
                goto illegal_op;
3809
            }
3801 3810

  
3802 3811
            sse_op2 = sse_op_table7[b].op[b1];
3803 3812
            if (!sse_op2)

Also available in: Unified diff