Commit 13846e700f7415b388f06ef912c772907a95e62e
1 parent
3cb0853a
Sparc64 BPr branch target fix (Blue Swirl)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2003 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
1 additions
and
1 deletions
target-sparc/translate.c
@@ -970,7 +970,7 @@ static void disas_sparc_insn(DisasContext * dc) | @@ -970,7 +970,7 @@ static void disas_sparc_insn(DisasContext * dc) | ||
970 | case 0x3: /* V9 BPr */ | 970 | case 0x3: /* V9 BPr */ |
971 | { | 971 | { |
972 | target = GET_FIELD_SP(insn, 0, 13) | | 972 | target = GET_FIELD_SP(insn, 0, 13) | |
973 | - (GET_FIELD_SP(insn, 20, 21) >> 7); | 973 | + (GET_FIELD_SP(insn, 20, 21) << 14); |
974 | target = sign_extend(target, 16); | 974 | target = sign_extend(target, 16); |
975 | target <<= 2; | 975 | target <<= 2; |
976 | rs1 = GET_FIELD(insn, 13, 17); | 976 | rs1 = GET_FIELD(insn, 13, 17); |