aboutsummaryrefslogtreecommitdiff
path: root/opcodes/sparc-dis.c
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2002-02-11 13:24:51 +0000
committerAlexandre Oliva <aoliva@redhat.com>2002-02-11 13:24:51 +0000
commit56930d376b3c19f44f084e9db6eecd0a5390e445 (patch)
treebb3236a8359ec1deb78032336196728f6d7621af /opcodes/sparc-dis.c
parent6c1b24e42ff5b8b00d661fc2fdab1a8f87c6b5e5 (diff)
downloadbinutils-56930d376b3c19f44f084e9db6eecd0a5390e445.zip
binutils-56930d376b3c19f44f084e9db6eecd0a5390e445.tar.gz
binutils-56930d376b3c19f44f084e9db6eecd0a5390e445.tar.bz2
* sparc-dis.c (print_insn_sparc): Make sure 0xFFFFFFFF is not
sign-extended.
Diffstat (limited to 'opcodes/sparc-dis.c')
-rw-r--r--opcodes/sparc-dis.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/opcodes/sparc-dis.c b/opcodes/sparc-dis.c
index 3590507..4c59398 100644
--- a/opcodes/sparc-dis.c
+++ b/opcodes/sparc-dis.c
@@ -419,7 +419,7 @@ print_insn_sparc (memaddr, info)
case 'h':
(*info->fprintf_func) (stream, "%%hi(%#x)",
- (0xFFFFFFFF
+ ((unsigned) 0xFFFFFFFF
& ((int) X_IMM22 (insn) << 10)));
break;
@@ -716,7 +716,8 @@ print_insn_sparc (memaddr, info)
{
(*info->fprintf_func) (stream, "\t! ");
info->target =
- (0xFFFFFFFF & (int) X_IMM22 (prev_insn) << 10);
+ ((unsigned) 0xFFFFFFFF
+ & ((int) X_IMM22 (prev_insn) << 10));
if (imm_added_to_rs1)
info->target += X_SIMM (insn, 13);
else