Revision b8b45b68 target-arm/translate.c

b/target-arm/translate.c
8001 8001
                        gen_bx(s, tmp);
8002 8002
                        break;
8003 8003
                    case 5: /* Exception return.  */
8004
                        /* Unpredictable in user mode.  */
8005
                        goto illegal_op;
8004
                        if (IS_USER(s)) {
8005
                            goto illegal_op;
8006
                        }
8007
                        if (rn != 14 || rd != 15) {
8008
                            goto illegal_op;
8009
                        }
8010
                        tmp = load_reg(s, rn);
8011
                        tcg_gen_subi_i32(tmp, tmp, insn & 0xff);
8012
                        gen_exception_return(s, tmp);
8013
                        break;
8006 8014
                    case 6: /* mrs cpsr.  */
8007 8015
                        tmp = new_tmp();
8008 8016
                        if (IS_M(env)) {

Also available in: Unified diff