On Mon, May 06, 2013 at 07:53:07PM +0200, Alexander Graf wrote: > The implementation for rldcl tried to always fetch its > parameters from the opcode, even though the opcode was > already passed in in decoded and different forms. > > Use the parameters instead, fixing rldcl. > > Reported-by: Torbjorn Granlund <t...@gmplib.org> > Signed-off-by: Alexander Graf <ag...@suse.de> > --- > target-ppc/translate.c | 2 -- > 1 files changed, 0 insertions(+), 2 deletions(-) > > diff --git a/target-ppc/translate.c b/target-ppc/translate.c > index 0886f4d..a018616 100644 > --- a/target-ppc/translate.c > +++ b/target-ppc/translate.c > @@ -1733,8 +1733,6 @@ static inline void gen_rldnm(DisasContext *ctx, > uint32_t mb, uint32_t me) > { > TCGv t0; > > - mb = MB(ctx->opcode); > - me = ME(ctx->opcode); > t0 = tcg_temp_new(); > tcg_gen_andi_tl(t0, cpu_gpr[rB(ctx->opcode)], 0x3f); > tcg_gen_rotl_tl(t0, cpu_gpr[rS(ctx->opcode)], t0);
Reviewed-by: Aurelien Jarno <aurel...@aurel32.net> -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurel...@aurel32.net http://www.aurel32.net