qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jia Liu <proljc@gmail.com>
To: qemu-devel@nongnu.org
Cc: sw@weilnetz.de, aurelien@aurel32.net
Subject: [Qemu-devel] [PATCH V2 1/4] add MIPS DSP helpers define
Date: Thu, 22 Mar 2012 21:36:09 +0800	[thread overview]
Message-ID: <1332423372-2391-2-git-send-email-proljc@gmail.com> (raw)
In-Reply-To: <1332423372-2391-1-git-send-email-proljc@gmail.com>

This is the helper define of MIPS ASE DSP.

Signed-off-by: Jia Liu <proljc@gmail.com>
---

Version History:

V2:
- Addressed Stefan's review comments, use "one space after comma" codeing style.

V1:
- add MIPS ASE DSP helper define.

 target-mips/helper.h |  152 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 152 insertions(+), 0 deletions(-)

diff --git a/target-mips/helper.h b/target-mips/helper.h
index 442f684..f814a89 100644
--- a/target-mips/helper.h
+++ b/target-mips/helper.h
@@ -297,4 +297,156 @@ DEF_HELPER_0(rdhwr_ccres, tl)
 DEF_HELPER_1(pmon, void, int)
 DEF_HELPER_0(wait, void)
 
+/* MIPS32 DSP */
+DEF_HELPER_1(absqsph, i32, i32)
+DEF_HELPER_1(absqsw, i32, i32)
+DEF_HELPER_2(addqph, i32, i32, i32)
+DEF_HELPER_2(addqsph, i32, i32, i32)
+DEF_HELPER_2(addqsw, i32, i32, i32)
+DEF_HELPER_2(addsc, i32, i32, i32)
+DEF_HELPER_2(addwc, i32, i32, i32)
+DEF_HELPER_1(bitrev, i32, i32)
+DEF_HELPER_2(cmpeqph, void, i32, i32)
+DEF_HELPER_2(cmpltph, void, i32, i32)
+DEF_HELPER_2(cmpleph, void, i32, i32)
+DEF_HELPER_2(cmpgueqqb, i32, i32, i32)
+DEF_HELPER_2(cmpgultqb, i32, i32, i32)
+DEF_HELPER_2(cmpguleqb, i32, i32, i32)
+DEF_HELPER_2(cmpueqqb, void, i32, i32)
+DEF_HELPER_2(cmpultqb, void, i32, i32)
+DEF_HELPER_2(cmpuleqb, void, i32, i32)
+DEF_HELPER_3(dpaqswph, void, int, i32, i32)
+DEF_HELPER_3(dpaqsalw, void, int, i32, i32)
+DEF_HELPER_3(dpauhqbl, void, int, i32, i32)
+DEF_HELPER_3(dpauhqbr, void, int, i32, i32)
+DEF_HELPER_3(dpsqswph, void, int, i32, i32)
+DEF_HELPER_3(dpsqsalw, void, int, i32, i32)
+DEF_HELPER_3(dpsuhqbl, void, int, i32, i32)
+DEF_HELPER_3(dpsuhqbr, void, int, i32, i32)
+DEF_HELPER_3(extp, void, int, int, int)
+DEF_HELPER_3(extpdp, void, int, int, int)
+DEF_HELPER_3(extpdpv, void, int, i32, int)
+DEF_HELPER_3(extpv, void, int, i32, int)
+DEF_HELPER_3(extrsh, void, int, int, int)
+DEF_HELPER_3(extrw, void, int, int, int)
+DEF_HELPER_3(extrrw, void, int, int, int)
+DEF_HELPER_3(extrrsw, void, int, int, int)
+DEF_HELPER_2(extrvsh, i32, int, i32);
+DEF_HELPER_3(extrvw, void, int, i32, int)
+DEF_HELPER_3(extrvrw, void, int, i32, int)
+DEF_HELPER_3(extrvrsw, void, int, i32, int)
+DEF_HELPER_3(insv, void, int, i32, i32)
+DEF_HELPER_2(lbux, tl, tl, int)
+DEF_HELPER_2(lhx, i32, i32, int)
+DEF_HELPER_2(lwx, i32, i32, int)
+DEF_HELPER_3(maqswphl, void, int, i32, i32)
+DEF_HELPER_3(maqsawphl, void, int, i32, i32)
+DEF_HELPER_3(maqswphr, void, int, i32, i32)
+DEF_HELPER_3(maqsawphr, void, int, i32, i32)
+DEF_HELPER_2(modsub, i32, i32, i32)
+DEF_HELPER_2(mthlip, void, int, i32)
+DEF_HELPER_2(muleqswphl, i32, i32, i32)
+DEF_HELPER_2(muleqswphr, i32, i32, i32)
+DEF_HELPER_2(muleusphqbl, i32, i32, i32)
+DEF_HELPER_2(muleusphqbr, i32, i32, i32)
+DEF_HELPER_2(mulqrsph, i32, i32, i32)
+DEF_HELPER_3(mulsaqswph, void, int, i32, i32)
+DEF_HELPER_2(packrlph, i32, i32, i32)
+DEF_HELPER_2(pickqb, i32, i32, i32)
+DEF_HELPER_1(preceqwphl, i32, i32)
+DEF_HELPER_2(pickph, i32, i32, i32)
+DEF_HELPER_1(preceqwphr, i32, i32)
+DEF_HELPER_1(precequphqbl, i32, i32)
+DEF_HELPER_1(precequphqbla, i32, i32)
+DEF_HELPER_1(precequphqbr, i32, i32)
+DEF_HELPER_1(precequphqbra, i32, i32)
+DEF_HELPER_1(preceuphqbl, i32, i32)
+DEF_HELPER_1(preceuphqbla, i32, i32)
+DEF_HELPER_1(preceuphqbr, i32, i32)
+DEF_HELPER_1(preceuphqbra, i32, i32)
+DEF_HELPER_2(precrqqbph, i32, i32, i32)
+DEF_HELPER_2(precrqphw, i32, i32, i32)
+DEF_HELPER_2(precrqrsphw, i32, i32, i32)
+DEF_HELPER_2(precrqusqbph, i32, i32, i32)
+DEF_HELPER_1(radduwqb, i32, i32)
+DEF_HELPER_1(rddsp, i32, i32)
+DEF_HELPER_1(replph, i32, i32)
+DEF_HELPER_1(replqb, i32, i32)
+DEF_HELPER_1(replvph, i32, i32)
+DEF_HELPER_1(replvqb, i32, i32)
+DEF_HELPER_2(shilo, void, int, int)
+DEF_HELPER_2(shilov, void, int, i32)
+DEF_HELPER_2(shllph, i32, int, i32)
+DEF_HELPER_2(shllsph, i32, int, i32)
+DEF_HELPER_2(shllqb, i32, int, i32)
+DEF_HELPER_2(shllsw, i32, int, i32)
+DEF_HELPER_2(shllvph, i32, i32, i32)
+DEF_HELPER_2(shllvsph, i32, i32, i32)
+DEF_HELPER_2(shllvqb, i32, i32, i32)
+DEF_HELPER_2(shllvsw, i32, i32, i32)
+DEF_HELPER_2(shraph, i32, int, i32)
+DEF_HELPER_2(shrarph, i32, int, i32)
+DEF_HELPER_2(shrarw, i32, int, i32)
+DEF_HELPER_2(shravph, i32, i32, i32)
+DEF_HELPER_2(shravrph, i32, i32, i32)
+DEF_HELPER_2(shravrw, i32, i32, i32)
+DEF_HELPER_2(shrlqb, i32, int, i32)
+DEF_HELPER_2(shrlvqb, i32, i32, i32)
+DEF_HELPER_2(subqph, i32, i32, i32)
+DEF_HELPER_2(subqsph, i32, i32, i32)
+DEF_HELPER_2(subqsw, i32, i32, i32)
+DEF_HELPER_2(subuqb, i32, i32, i32)
+DEF_HELPER_2(subusqb, i32, i32, i32)
+DEF_HELPER_2(wrdsp, void, i32, int)
+
+/* MIPS32 DSPR2 */
+DEF_HELPER_1(absqsqb, i32, i32)
+DEF_HELPER_2(addqhph, i32, i32, i32)
+DEF_HELPER_2(addqhrph, i32, i32, i32)
+DEF_HELPER_2(addqhw, i32, i32, i32)
+DEF_HELPER_2(addqhrw, i32, i32, i32)
+DEF_HELPER_2(adduhqb, i32, i32, i32)
+DEF_HELPER_2(adduhrqb, i32, i32, i32)
+DEF_HELPER_2(adduph, i32, i32, i32)
+DEF_HELPER_2(addusph, i32, i32, i32)
+DEF_HELPER_2(adduqb, i32, i32, i32)
+DEF_HELPER_2(addusqb, i32, i32, i32)
+DEF_HELPER_3(append, i32, i32, i32, int)
+DEF_HELPER_3(balign, i32, i32, i32, i32)
+DEF_HELPER_2(cmpgdueqqb, i32, i32, i32)
+DEF_HELPER_2(cmpgdultqb, i32, i32, i32)
+DEF_HELPER_2(cmpgduleqb, i32, i32, i32)
+DEF_HELPER_3(dpawph, void, int, i32, i32)
+DEF_HELPER_3(dpaqxswph, void, int, i32, i32)
+DEF_HELPER_3(dpaqxsawph, void, int, i32, i32)
+DEF_HELPER_3(dpaxwph, void, int, i32, i32)
+DEF_HELPER_3(dpswph, void, int, i32, i32)
+DEF_HELPER_3(dpsqxswph, void, int, i32, i32)
+DEF_HELPER_3(dpsqxsawph, void, int, i32, i32)
+DEF_HELPER_3(dpsxwph, void, int, i32, i32)
+DEF_HELPER_2(mulph, i32, i32, i32)
+DEF_HELPER_2(mulsph, i32, i32, i32)
+DEF_HELPER_2(mulqsph, i32, i32, i32)
+DEF_HELPER_2(mulqrsw, i32, i32, i32)
+DEF_HELPER_2(mulqsw, i32, i32, i32)
+DEF_HELPER_3(mulsawph, void, int, i32, i32)
+DEF_HELPER_2(precrqbph, i32, i32, i32)
+DEF_HELPER_3(precrsraphw, i32, int, i32, i32)
+DEF_HELPER_3(precrsrarphw, i32, int, i32, i32)
+DEF_HELPER_3(prepend, i32, int, i32, i32)
+DEF_HELPER_2(shraqb, i32, int, i32)
+DEF_HELPER_2(shrarqb, i32, int, i32)
+DEF_HELPER_2(shravqb, i32, i32, i32)
+DEF_HELPER_2(shravrqb, i32, i32, i32)
+DEF_HELPER_2(shrlph, i32, int, i32)
+DEF_HELPER_2(shrlvph, i32, i32, i32)
+DEF_HELPER_2(subqhph, i32, i32, i32)
+DEF_HELPER_2(subqhrph, i32, i32, i32)
+DEF_HELPER_2(subqhw, i32, i32, i32)
+DEF_HELPER_2(subqhrw, i32, i32, i32)
+DEF_HELPER_2(subuph, i32, i32, i32)
+DEF_HELPER_2(subusph, i32, i32, i32)
+DEF_HELPER_2(subuhqb, i32, i32, i32)
+DEF_HELPER_2(subuhrqb, i32, i32, i32)
+
 #include "def-helper.h"
-- 
1.7.5.4

  reply	other threads:[~2012-03-22 13:37 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-22 13:36 [Qemu-devel] [PATCH V2 0/4] MIPS ASE DSP Support for Qemu Jia Liu
2012-03-22 13:36 ` Jia Liu [this message]
2012-03-22 13:36 ` [Qemu-devel] [PATCH V2 2/4] add MIPS DSP helpers implement Jia Liu
2012-03-22 13:54   ` Peter Maydell
2012-03-23  1:24     ` Jia Liu
2012-03-22 13:36 ` [Qemu-devel] [PATCH V2 3/4] add MIPS DSP translation Jia Liu
2012-03-22 13:36 ` [Qemu-devel] [PATCH V2 4/4] add MIPS DSP testcase Jia Liu
2012-03-22 14:01 ` [Qemu-devel] [PATCH V2 0/4] MIPS ASE DSP Support for Qemu Peter Maydell
2012-03-23  1:40   ` Jia Liu
2012-03-23  7:21   ` 陳韋任
2012-03-22 14:03 ` Peter Maydell
2012-03-23  1:31   ` Jia Liu
2012-03-23 16:01 ` Richard Henderson
2012-03-26  1:07   ` Jia Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1332423372-2391-2-git-send-email-proljc@gmail.com \
    --to=proljc@gmail.com \
    --cc=aurelien@aurel32.net \
    --cc=qemu-devel@nongnu.org \
    --cc=sw@weilnetz.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).