target-tricore: Add instructions of RRR1 opcode format, which have 0xe3 as first...
commit068fac77c81b5d227903d0b7ecd108edff4eb0eb
authorBastian Koppelmann <kbastian@mail.uni-paderborn.de>
Wed, 25 Feb 2015 11:55:52 +0000 (25 11:55 +0000)
committerBastian Koppelmann <kbastian@mail.uni-paderborn.de>
Mon, 16 Mar 2015 15:44:48 +0000 (16 15:44 +0000)
tree52042b0430e1bfa0f9f41bc1652c0645985167ca
parent62e47b2e6d17020b78a676e086bf98cfeba595b7
target-tricore: Add instructions of RRR1 opcode format, which have 0xe3 as first opcode

Add helpers helper_subadr_h/_ssov which subs one halfword and adds one
halfword, rounds / and saturates each half word independently.

Add microcode helper functions:
    * gen_msubad_h/ads_h: multiply two halfwords left justified and sub from the
                          first one word and add the second one word
                          / and saturate each resulting word independetly.
    * gen_msubadm_h/adms_h: multiply two halfwords in q-format left justified
                            and sub from the first one word and add to
                            the second one word / and saturate each resulting
                            word independetly.
    * gen_msubadr32_h/32s_h: multiply two halfwords in q-format left justified
                             and sub from the first one word and add to
                             the second one word, round both results / and
                             saturate each resulting word independetly.

Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
target-tricore/helper.h
target-tricore/op_helper.c
target-tricore/translate.c
target-tricore/tricore-opcodes.h