diff options
author | Bastian Koppelmann <kbastian@mail.uni-paderborn.de> | 2015-05-05 19:36:55 +0200 |
---|---|---|
committer | Bastian Koppelmann <kbastian@mail.uni-paderborn.de> | 2015-05-11 14:15:46 +0200 |
commit | 4959d6b3662d94a5add5811ba1ff5243116b8987 (patch) | |
tree | 9548a07400fa76726a00639814c2dc35066d39a9 | |
parent | 7bd0eaec311d188412123a034abb44595deb7dae (diff) | |
download | hqemu-4959d6b3662d94a5add5811ba1ff5243116b8987.zip hqemu-4959d6b3662d94a5add5811ba1ff5243116b8987.tar.gz |
target-tricore: fix BO_OFF10_SEXT calculating the wrong offset
The lower part of the combined offset was sign extended and could lead to
wrong results.
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
-rw-r--r-- | target-tricore/tricore-opcodes.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/target-tricore/tricore-opcodes.h b/target-tricore/tricore-opcodes.h index d3a9bc1..2291f75 100644 --- a/target-tricore/tricore-opcodes.h +++ b/target-tricore/tricore-opcodes.h @@ -107,7 +107,7 @@ /* BO Format */ #define MASK_OP_BO_OFF10(op) (MASK_BITS_SHIFT(op, 16, 21) + \ (MASK_BITS_SHIFT(op, 28, 31) << 6)) -#define MASK_OP_BO_OFF10_SEXT(op) (MASK_BITS_SHIFT_SEXT(op, 16, 21) + \ +#define MASK_OP_BO_OFF10_SEXT(op) (MASK_BITS_SHIFT(op, 16, 21) + \ (MASK_BITS_SHIFT_SEXT(op, 28, 31) << 6)) #define MASK_OP_BO_OP2(op) MASK_BITS_SHIFT(op, 22, 27) #define MASK_OP_BO_S2(op) MASK_BITS_SHIFT(op, 12, 15) |