Revision 3b46e624 target-ppc/translate.c
b/target-ppc/translate.c | ||
---|---|---|
1147 | 1147 |
GEN_HANDLER(rlwinm, 0x15, 0xFF, 0xFF, 0x00000000, PPC_INTEGER) |
1148 | 1148 |
{ |
1149 | 1149 |
uint32_t mb, me, sh; |
1150 |
|
|
1150 |
|
|
1151 | 1151 |
sh = SH(ctx->opcode); |
1152 | 1152 |
mb = MB(ctx->opcode); |
1153 | 1153 |
me = ME(ctx->opcode); |
... | ... | |
1676 | 1676 |
GEN_HANDLER(mtfsb0, 0x3F, 0x06, 0x02, 0x001FF800, PPC_FLOAT) |
1677 | 1677 |
{ |
1678 | 1678 |
uint8_t crb; |
1679 |
|
|
1679 |
|
|
1680 | 1680 |
if (unlikely(!ctx->fpu_enabled)) { |
1681 | 1681 |
RET_EXCP(ctx, EXCP_NO_FP, 0); |
1682 | 1682 |
return; |
... | ... | |
1693 | 1693 |
GEN_HANDLER(mtfsb1, 0x3F, 0x06, 0x01, 0x001FF800, PPC_FLOAT) |
1694 | 1694 |
{ |
1695 | 1695 |
uint8_t crb; |
1696 |
|
|
1696 |
|
|
1697 | 1697 |
if (unlikely(!ctx->fpu_enabled)) { |
1698 | 1698 |
RET_EXCP(ctx, EXCP_NO_FP, 0); |
1699 | 1699 |
return; |
... | ... | |
2775 | 2775 |
else |
2776 | 2776 |
#endif |
2777 | 2777 |
gen_op_test_ctr_false(mask); |
2778 |
break;
|
|
2778 |
break; |
|
2779 | 2779 |
case 2: |
2780 | 2780 |
#if defined(TARGET_PPC64) |
2781 | 2781 |
if (ctx->sf_mode) |
... | ... | |
2815 | 2815 |
} |
2816 | 2816 |
|
2817 | 2817 |
GEN_HANDLER(bc, 0x10, 0xFF, 0xFF, 0x00000000, PPC_FLOW) |
2818 |
{
|
|
2818 |
{ |
|
2819 | 2819 |
gen_bcond(ctx, BCOND_IM); |
2820 | 2820 |
} |
2821 | 2821 |
|
2822 | 2822 |
GEN_HANDLER(bcctr, 0x13, 0x10, 0x10, 0x00000000, PPC_FLOW) |
2823 |
{
|
|
2823 |
{ |
|
2824 | 2824 |
gen_bcond(ctx, BCOND_CTR); |
2825 | 2825 |
} |
2826 | 2826 |
|
2827 | 2827 |
GEN_HANDLER(bclr, 0x13, 0x10, 0x00, 0x00000000, PPC_FLOW) |
2828 |
{
|
|
2828 |
{ |
|
2829 | 2829 |
gen_bcond(ctx, BCOND_LR); |
2830 | 2830 |
} |
2831 | 2831 |
|
... | ... | |
2968 | 2968 |
GEN_HANDLER(mfcr, 0x1F, 0x13, 0x00, 0x00000801, PPC_MISC) |
2969 | 2969 |
{ |
2970 | 2970 |
uint32_t crm, crn; |
2971 |
|
|
2971 |
|
|
2972 | 2972 |
if (likely(ctx->opcode & 0x00100000)) { |
2973 | 2973 |
crm = CRM(ctx->opcode); |
2974 | 2974 |
if (likely((crm ^ (crm - 1)) == 0)) { |
... | ... | |
3058 | 3058 |
GEN_HANDLER(mtcrf, 0x1F, 0x10, 0x04, 0x00000801, PPC_MISC) |
3059 | 3059 |
{ |
3060 | 3060 |
uint32_t crm, crn; |
3061 |
|
|
3061 |
|
|
3062 | 3062 |
gen_op_load_gpr_T0(rS(ctx->opcode)); |
3063 | 3063 |
crm = CRM(ctx->opcode); |
3064 | 3064 |
if (likely((ctx->opcode & 0x00100000) || (crm ^ (crm - 1)) == 0)) { |
Also available in: Unified diff