Revision eaabeef2 target-ppc/translate.c
b/target-ppc/translate.c | ||
---|---|---|
1483 | 1483 |
/* popcntb : PowerPC 2.03 specification */ |
1484 | 1484 |
static void gen_popcntb(DisasContext *ctx) |
1485 | 1485 |
{ |
1486 |
gen_helper_popcntb(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rS(ctx->opcode)]); |
|
1487 |
} |
|
1488 |
|
|
1489 |
static void gen_popcntw(DisasContext *ctx) |
|
1490 |
{ |
|
1491 |
gen_helper_popcntw(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rS(ctx->opcode)]); |
|
1492 |
} |
|
1493 |
|
|
1486 | 1494 |
#if defined(TARGET_PPC64) |
1487 |
if (ctx->sf_mode) |
|
1488 |
gen_helper_popcntb_64(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rS(ctx->opcode)]); |
|
1489 |
else |
|
1490 |
#endif |
|
1491 |
gen_helper_popcntb(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rS(ctx->opcode)]); |
|
1495 |
/* popcntd: PowerPC 2.06 specification */ |
|
1496 |
static void gen_popcntd(DisasContext *ctx) |
|
1497 |
{ |
|
1498 |
gen_helper_popcntd(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rS(ctx->opcode)]); |
|
1492 | 1499 |
} |
1500 |
#endif |
|
1493 | 1501 |
|
1494 | 1502 |
#if defined(TARGET_PPC64) |
1495 | 1503 |
/* extsw & extsw. */ |
... | ... | |
8226 | 8234 |
GEN_HANDLER(xori, 0x1A, 0xFF, 0xFF, 0x00000000, PPC_INTEGER), |
8227 | 8235 |
GEN_HANDLER(xoris, 0x1B, 0xFF, 0xFF, 0x00000000, PPC_INTEGER), |
8228 | 8236 |
GEN_HANDLER(popcntb, 0x1F, 0x03, 0x03, 0x0000F801, PPC_POPCNTB), |
8237 |
GEN_HANDLER(popcntw, 0x1F, 0x1A, 0x0b, 0x0000F801, PPC_POPCNTWD), |
|
8229 | 8238 |
#if defined(TARGET_PPC64) |
8239 |
GEN_HANDLER(popcntd, 0x1F, 0x1A, 0x0F, 0x0000F801, PPC_POPCNTWD), |
|
8230 | 8240 |
GEN_HANDLER(cntlzd, 0x1F, 0x1A, 0x01, 0x00000000, PPC_64B), |
8231 | 8241 |
#endif |
8232 | 8242 |
GEN_HANDLER(rlwimi, 0x14, 0xFF, 0xFF, 0x00000000, PPC_INTEGER), |
Also available in: Unified diff