summaryrefslogtreecommitdiff
path: root/target-tricore/tricore-opcodes.h
diff options
context:
space:
mode:
authorBastian Koppelmann <kbastian@mail.uni-paderborn.de>2014-09-26 20:36:09 +0100
committerBastian Koppelmann <kbastian@mail.uni-paderborn.de>2014-10-20 12:25:07 +0100
commit3a16ecb06355d0bfc8b547eba094ebaa44dce39f (patch)
tree12b8a1f2134b0e6cf4ce0ec71cf876a2cc38eadd /target-tricore/tricore-opcodes.h
parentb74f2b5bb3b7b806a896c97386a597205055bb9e (diff)
downloadqemu-3a16ecb06355d0bfc8b547eba094ebaa44dce39f.tar.gz
target-tricore: Add instructions of BO opcode format
Add instructions of BO opcode format. Add microcode generator functions gen_swap, gen_ldmst. Add microcode generator functions gen_st/ld_preincr, which write back the address after the memory access. Add helper for circular and bit reverse addr mode calculation. Add sign extended bitmask for BO_OFF10 field. Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> Reviewed-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-tricore/tricore-opcodes.h')
-rw-r--r--target-tricore/tricore-opcodes.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/target-tricore/tricore-opcodes.h b/target-tricore/tricore-opcodes.h
index 342414feff..7e6f33bd62 100644
--- a/target-tricore/tricore-opcodes.h
+++ b/target-tricore/tricore-opcodes.h
@@ -105,6 +105,8 @@
/* 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) + \
+ (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)
#define MASK_OP_BO_S1D(op) MASK_BITS_SHIFT(op, 8, 11)