All of lore.kernel.org
 help / color / mirror / Atom feed
From: Max Filippov <jcmvbkbc@gmail.com>
To: qemu-devel@nongnu.org
Cc: jcmvbkbc@gmail.com
Subject: [Qemu-devel] [PATCH 1/7] target-xtensa: increase xtensa options accuracy
Date: Mon, 10 Oct 2011 06:25:59 +0400	[thread overview]
Message-ID: <1318213565-3268-2-git-send-email-jcmvbkbc@gmail.com> (raw)
In-Reply-To: <1318213565-3268-1-git-send-email-jcmvbkbc@gmail.com>

- add separate options for each operation in the MISC_OP;
- add an option for MULSH/MULUH;
- put S32C1I under conditional store option.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
---
 target-xtensa/cpu.h       |    6 +++++-
 target-xtensa/translate.c |   14 +++++++-------
 2 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/target-xtensa/cpu.h b/target-xtensa/cpu.h
index b43e565..df168d5 100644
--- a/target-xtensa/cpu.h
+++ b/target-xtensa/cpu.h
@@ -52,9 +52,13 @@ enum {
     XTENSA_OPTION_EXTENDED_L32R,
     XTENSA_OPTION_16_BIT_IMUL,
     XTENSA_OPTION_32_BIT_IMUL,
+    XTENSA_OPTION_32_BIT_IMUL_HIGH,
     XTENSA_OPTION_32_BIT_IDIV,
     XTENSA_OPTION_MAC16,
-    XTENSA_OPTION_MISC_OP,
+    XTENSA_OPTION_MISC_OP_NSA,
+    XTENSA_OPTION_MISC_OP_MINMAX,
+    XTENSA_OPTION_MISC_OP_SEXT,
+    XTENSA_OPTION_MISC_OP_CLAMPS,
     XTENSA_OPTION_COPROCESSOR,
     XTENSA_OPTION_BOOLEAN,
     XTENSA_OPTION_FP_COPROCESSOR,
diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
index 70bea62..1688bb2 100644
--- a/target-xtensa/translate.c
+++ b/target-xtensa/translate.c
@@ -1116,13 +1116,13 @@ static void disas_xtensa_insn(DisasContext *dc)
                     break;
 
                 case 14: /*NSAu*/
-                    HAS_OPTION(XTENSA_OPTION_MISC_OP);
+                    HAS_OPTION(XTENSA_OPTION_MISC_OP_NSA);
                     gen_window_check2(dc, RRR_S, RRR_T);
                     gen_helper_nsa(cpu_R[RRR_T], cpu_R[RRR_S]);
                     break;
 
                 case 15: /*NSAUu*/
-                    HAS_OPTION(XTENSA_OPTION_MISC_OP);
+                    HAS_OPTION(XTENSA_OPTION_MISC_OP_NSA);
                     gen_window_check2(dc, RRR_S, RRR_T);
                     gen_helper_nsau(cpu_R[RRR_T], cpu_R[RRR_S]);
                     break;
@@ -1434,7 +1434,7 @@ static void disas_xtensa_insn(DisasContext *dc)
 
             case 10: /*MULUHi*/
             case 11: /*MULSHi*/
-                HAS_OPTION(XTENSA_OPTION_32_BIT_IMUL);
+                HAS_OPTION(XTENSA_OPTION_32_BIT_IMUL_HIGH);
                 {
                     TCGv_i64 r = tcg_temp_new_i64();
                     TCGv_i64 s = tcg_temp_new_i64();
@@ -1521,7 +1521,7 @@ static void disas_xtensa_insn(DisasContext *dc)
                 break;
 
             case 2: /*SEXTu*/
-                HAS_OPTION(XTENSA_OPTION_MISC_OP);
+                HAS_OPTION(XTENSA_OPTION_MISC_OP_SEXT);
                 gen_window_check2(dc, RRR_R, RRR_S);
                 {
                     int shift = 24 - RRR_T;
@@ -1540,7 +1540,7 @@ static void disas_xtensa_insn(DisasContext *dc)
                 break;
 
             case 3: /*CLAMPSu*/
-                HAS_OPTION(XTENSA_OPTION_MISC_OP);
+                HAS_OPTION(XTENSA_OPTION_MISC_OP_CLAMPS);
                 gen_window_check2(dc, RRR_R, RRR_S);
                 {
                     TCGv_i32 tmp1 = tcg_temp_new_i32();
@@ -1568,7 +1568,7 @@ static void disas_xtensa_insn(DisasContext *dc)
             case 5: /*MAXu*/
             case 6: /*MINUu*/
             case 7: /*MAXUu*/
-                HAS_OPTION(XTENSA_OPTION_MISC_OP);
+                HAS_OPTION(XTENSA_OPTION_MISC_OP_MINMAX);
                 gen_window_check3(dc, RRR_R, RRR_S, RRR_T);
                 {
                     static const TCGCond cond[] = {
@@ -1921,7 +1921,7 @@ static void disas_xtensa_insn(DisasContext *dc)
             break;
 
         case 14: /*S32C1Iy*/
-            HAS_OPTION(XTENSA_OPTION_MP_SYNCHRO);
+            HAS_OPTION(XTENSA_OPTION_CONDITIONAL_STORE);
             gen_window_check2(dc, RRI8_S, RRI8_T);
             {
                 int label = gen_new_label();
-- 
1.7.6.4

  reply	other threads:[~2011-10-10  2:26 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-10  2:25 [Qemu-devel] [PATCH 0/7] target-xtensa: add overlay parsing header and convert hand-written core definitions to use overlays Max Filippov
2011-10-10  2:25 ` Max Filippov [this message]
2011-10-10  2:26 ` [Qemu-devel] [PATCH 2/7] target-xtensa: remove hand-written xtensa cores implementations Max Filippov
2011-10-10  2:26 ` [Qemu-devel] [PATCH 3/7] target-xtensa: implement external interrupt mapping Max Filippov
2011-10-10  2:26 ` [Qemu-devel] [PATCH 4/7] target-xtensa: extract core configuration from overlay Max Filippov
2011-10-10  2:26 ` [Qemu-devel] [PATCH 5/7] target-xtensa: add dc232b core Max Filippov
2011-10-10  2:26 ` [Qemu-devel] [PATCH 6/7] target-xtensa: add fsf core Max Filippov
2011-10-15  9:02   ` Blue Swirl
2011-10-15 13:15     ` Max Filippov
2011-10-15 13:44       ` Max Filippov
2011-10-15 13:50         ` Blue Swirl
2011-10-15 14:08           ` [Qemu-devel] [PATCH v2] " Max Filippov
2011-10-17 10:45     ` [Qemu-devel] GPLv3 troubles (was: [PATCH 6/7] target-xtensa: add fsf core) Andreas Färber
2011-10-17 10:47       ` [Qemu-devel] GPLv3 troubles Paolo Bonzini
2011-10-17 11:07         ` Andreas Färber
2011-10-17 11:10           ` Paolo Bonzini
2011-10-17 16:39             ` Andreas Färber
2011-10-17 16:47               ` Peter Maydell
2011-10-17 16:51                 ` Anthony Liguori
2011-10-17 17:58                   ` Andreas Färber
2011-10-17 18:16                     ` Anthony Liguori
2011-10-17 18:18                       ` Peter Maydell
2011-10-17 18:20                       ` Stefan Weil
2011-10-17 18:29                         ` Anthony Liguori
2011-10-17 18:34                           ` Peter Maydell
2011-10-17 18:37                             ` Anthony Liguori
2011-10-17 19:33                           ` Blue Swirl
2011-10-17 19:43                   ` Blue Swirl
2011-10-17 17:01                 ` Andreas Färber
2011-10-17 12:38       ` Anthony Liguori
2011-10-17 12:50         ` Paolo Bonzini
2011-10-17 14:17           ` Anthony Liguori
2011-10-17 14:27             ` Paolo Bonzini
2011-10-17 16:30             ` Andreas Färber
2011-10-17 16:47               ` Anthony Liguori
2011-10-17 17:46                 ` Stefan Weil
2011-10-17 19:29                   ` Blue Swirl
2011-10-17 20:44                   ` Avi Kivity
2011-10-18  8:01                     ` Markus Armbruster
2011-10-18 13:03                       ` Anthony Liguori
2011-10-18 14:33                         ` Andreas Färber
2011-10-18 14:36                           ` Anthony Liguori
2011-10-18 14:44                             ` nicolas.sauzede
2011-10-18 15:00                         ` andrzej zaborowski
2011-10-18 15:19                         ` Peter Maydell
2011-10-18 15:31                           ` Paolo Bonzini
2011-10-18 16:01                             ` Anthony Liguori
2011-10-18 16:15                               ` Peter Maydell
2011-10-18 16:20                                 ` Avi Kivity
2011-10-18 16:30                                 ` Anthony Liguori
2011-10-18 16:32                                   ` Peter Maydell
2011-10-18 16:37                               ` Paolo Bonzini
2011-10-18 18:44                                 ` Blue Swirl
2011-10-18 15:56                           ` Anthony Liguori
2011-10-18 16:14                             ` Peter Maydell
2011-10-25 14:34                         ` Dor Laor
2012-01-25 21:16                           ` Stefan Weil
2012-01-26 18:05                   ` Michael Walle
2011-10-17 17:52                 ` Andreas Färber
2011-10-10  2:26 ` [Qemu-devel] [PATCH 7/7] target-xtensa: rename dc232b board to sim Max Filippov
2011-10-15 21:29 ` [Qemu-devel] [PATCH 0/7] target-xtensa: add overlay parsing header and convert hand-written core definitions to use overlays Blue Swirl
2011-10-15 21:52   ` Max Filippov
2011-10-16  6:15     ` Stefan Weil

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=1318213565-3268-2-git-send-email-jcmvbkbc@gmail.com \
    --to=jcmvbkbc@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.