OSDN Git Service

2000-12-07 Ben Elliston <bje@redhat.com>
authorbje <bje>
Thu, 7 Dec 2000 12:27:00 +0000 (12:27 +0000)
committerbje <bje>
Thu, 7 Dec 2000 12:27:00 +0000 (12:27 +0000)
* sim-decode.scm (-gen-extract-case): Do not emit a definition for
"insn" when there are zero ifields to extract.

cgen/ChangeLog
cgen/sim-decode.scm

index 6964456..7028df7 100644 (file)
@@ -1,3 +1,8 @@
+2000-12-07  Ben Elliston  <bje@redhat.com>
+
+       * sim-decode.scm (-gen-extract-case): Do not emit a definition for
+       "insn" when there are zero ifields to extract.
+
 2000-12-04  Frank Ch. Eigler  <fche@redhat.com>
 
        * utils-sim.scm (gen-define-argbuf-macro): Handle sfmt=#f case, to be
index 78629a9..f6dcaab 100644 (file)
@@ -433,10 +433,13 @@ void
    " extract_" (gen-sym sfmt) ":\n"
    "  {\n"
    "    const IDESC *idesc = &" IDESC-TABLE-VAR "[itype];\n"
-   "    CGEN_INSN_INT insn = "
-   (if (adata-integral-insn? CURRENT-ARCH)
-       "entire_insn;\n"
-       "base_insn;\n")
+   (if (< (length (sfmt-iflds sfmt)) 0)
+       (string-append
+       "    CGEN_INSN_INT insn = "
+       (if (adata-integral-insn? CURRENT-ARCH)
+           "entire_insn;\n"
+           "base_insn;\n"))
+       "")
    (gen-define-field-macro sfmt)
    (gen-define-ifields (sfmt-iflds sfmt) (sfmt-length sfmt) "    " #f)
    "\n"