get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/1019128/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 1019128,
    "url": "http://patchwork.ozlabs.org/api/patches/1019128/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/1545989148-13582-17-git-send-email-aleksandar.markovic@rt-rk.com/",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api",
        "name": "QEMU Development",
        "link_name": "qemu-devel",
        "list_id": "qemu-devel.nongnu.org",
        "list_email": "qemu-devel@nongnu.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<1545989148-13582-17-git-send-email-aleksandar.markovic@rt-rk.com>",
    "list_archive_url": null,
    "date": "2018-12-28T09:25:23",
    "name": "[PULL,16/41] disas: nanoMIPS: Name some functions in a more descriptive way",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "62390882768e34483bc9ed5c322f94ce429a93a8",
    "submitter": {
        "id": 68635,
        "url": "http://patchwork.ozlabs.org/api/people/68635/?format=api",
        "name": "Aleksandar Markovic",
        "email": "aleksandar.markovic@rt-rk.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/1545989148-13582-17-git-send-email-aleksandar.markovic@rt-rk.com/mbox/",
    "series": [
        {
            "id": 83742,
            "url": "http://patchwork.ozlabs.org/api/series/83742/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=83742",
            "date": "2018-12-28T09:25:09",
            "name": "[PULL,01/41] MAINTAINERS: target/mips: Add MIPS files under default-configs directory",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/83742/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1019128/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1019128/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>",
        "X-Original-To": "incoming@patchwork.ozlabs.org",
        "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org",
        "Authentication-Results": [
            "ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=208.118.235.17; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org;\n\tdmarc=none (p=none dis=none) header.from=rt-rk.com"
        ],
        "Received": [
            "from lists.gnu.org (lists.gnu.org [208.118.235.17])\n\t(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 43R2FT6PhWz9s7h\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 28 Dec 2018 20:57:49 +1100 (AEDT)",
            "from localhost ([127.0.0.1]:58028 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1gcotn-0001N7-NY\n\tfor incoming@patchwork.ozlabs.org; Fri, 28 Dec 2018 04:57:47 -0500",
            "from eggs.gnu.org ([208.118.235.92]:52562)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <aleksandar.markovic@rt-rk.com>) id 1gconB-0008M8-Fs\n\tfor qemu-devel@nongnu.org; Fri, 28 Dec 2018 04:51:03 -0500",
            "from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <aleksandar.markovic@rt-rk.com>) id 1gcoPD-0003Js-GG\n\tfor qemu-devel@nongnu.org; Fri, 28 Dec 2018 04:26:22 -0500",
            "from mx2.rt-rk.com ([89.216.37.149]:49264 helo=mail.rt-rk.com)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <aleksandar.markovic@rt-rk.com>)\n\tid 1gcoPC-00036Q-F7\n\tfor qemu-devel@nongnu.org; Fri, 28 Dec 2018 04:26:11 -0500",
            "from localhost (localhost [127.0.0.1])\n\tby mail.rt-rk.com (Postfix) with ESMTP id 924E01A2128;\n\tFri, 28 Dec 2018 10:25:55 +0100 (CET)",
            "from rtrkw774-lin.domain.local (rtrkw774-lin.domain.local\n\t[10.10.13.43])\n\tby mail.rt-rk.com (Postfix) with ESMTPSA id 609321A20C6;\n\tFri, 28 Dec 2018 10:25:55 +0100 (CET)"
        ],
        "X-Virus-Scanned": "amavisd-new at rt-rk.com",
        "From": "Aleksandar Markovic <aleksandar.markovic@rt-rk.com>",
        "To": "qemu-devel@nongnu.org",
        "Date": "Fri, 28 Dec 2018 10:25:23 +0100",
        "Message-Id": "<1545989148-13582-17-git-send-email-aleksandar.markovic@rt-rk.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1545989148-13582-1-git-send-email-aleksandar.markovic@rt-rk.com>",
        "References": "<1545989148-13582-1-git-send-email-aleksandar.markovic@rt-rk.com>",
        "X-detected-operating-system": "by eggs.gnu.org: GNU/Linux 3.x [fuzzy]",
        "X-Received-From": "89.216.37.149",
        "Subject": "[Qemu-devel] [PULL 16/41] disas: nanoMIPS: Name some functions in a\n\tmore descriptive way",
        "X-BeenThere": "qemu-devel@nongnu.org",
        "X-Mailman-Version": "2.1.21",
        "Precedence": "list",
        "List-Id": "<qemu-devel.nongnu.org>",
        "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.nongnu.org/archive/html/qemu-devel/>",
        "List-Post": "<mailto:qemu-devel@nongnu.org>",
        "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>",
        "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>",
        "Cc": "peter.maydell@linaro.org, amarkovic@wavecomp.com",
        "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org",
        "Sender": "\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"
    },
    "content": "From: Aleksandar Markovic <amarkovic@wavecomp.com>\n\nRename some functions that have names that are hard to understand.\n\nReviewed-by: Aleksandar Rikalo <arikalo@wavecomp.com>\nReviewed-by: Stefan Markovic <smarkovic@wavecomp.com>\nSigned-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>\n---\n disas/nanomips.cpp | 112 ++++++++++++++++++++++++++---------------------------\n disas/nanomips.h   |  32 +++++++--------\n 2 files changed, 72 insertions(+), 72 deletions(-)",
    "diff": "diff --git a/disas/nanomips.cpp b/disas/nanomips.cpp\nindex d8829f5..281d8d9 100644\n--- a/disas/nanomips.cpp\n+++ b/disas/nanomips.cpp\n@@ -687,7 +687,7 @@ uint64 NMD::extract_shift3_2_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil3il3bs9Fmsb11(uint64 instruction)\n+uint64 NMD::extract_u_11_10_9_8_7_6_5_4_3__s3(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 3, 9) << 3;\n@@ -711,7 +711,7 @@ uint64 NMD::extract_rtz3_9_8_7(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil1il1bs17Fmsb17(uint64 instruction)\n+uint64 NMD::extract_u_17_to_1__s1(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 1, 17) << 1;\n@@ -771,7 +771,7 @@ uint64 NMD::extract_shift_4_3_2_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_shiftxil7il1bs4Fmsb4(uint64 instruction)\n+uint64 NMD::extract_shiftx_10_9_8_7__s1(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 7, 4) << 1;\n@@ -840,7 +840,7 @@ uint64 NMD::extract_rs_20_19_18_17_16(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil1il1bs2Fmsb2(uint64 instruction)\n+uint64 NMD::extract_u_2_1__s1(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 1, 2) << 1;\n@@ -938,7 +938,7 @@ uint64 NMD::extract_rs_4_3_2_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil3il3bs18Fmsb20(uint64 instruction)\n+uint64 NMD::extract_u_20_to_3__s3(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 3, 18) << 3;\n@@ -946,7 +946,7 @@ uint64 NMD::extr_uil3il3bs18Fmsb20(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il2bs4Fmsb5(uint64 instruction)\n+uint64 NMD::extract_u_3_2_1_0__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 4) << 2;\n@@ -962,7 +962,7 @@ uint64 NMD::extract_cofun_25_24_23(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il2bs3Fmsb4(uint64 instruction)\n+uint64 NMD::extract_u_2_1_0__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 3) << 2;\n@@ -1229,7 +1229,7 @@ uint64 NMD::extract_msbt_10_9_8_7_6(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il2bs6Fmsb7(uint64 instruction)\n+uint64 NMD::extract_u_5_4_3_2_1_0__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 6) << 2;\n@@ -1263,7 +1263,7 @@ uint64 NMD::extract_rs3_6_5_4(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il32bs32Fmsb63(uint64 instruction)\n+uint64 NMD::extract_u_31_to_0__s32(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 32) << 32;\n@@ -1311,7 +1311,7 @@ uint64 NMD::extract_op_25_24_23_22_21(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il2bs7Fmsb8(uint64 instruction)\n+uint64 NMD::extract_u_6_5_4_3_2_1_0__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 7) << 2;\n@@ -1343,7 +1343,7 @@ uint64 NMD::extract_eu_3_2_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil4il4bs4Fmsb7(uint64 instruction)\n+uint64 NMD::extract_u_7_6_5_4__s4(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 4, 4) << 4;\n@@ -1387,7 +1387,7 @@ uint64 NMD::extract_u_20_19_18_17_16_15_14_13(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil2il2bs16Fmsb17(uint64 instruction)\n+uint64 NMD::extract_u_17_to_2__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 2, 16) << 2;\n@@ -1437,7 +1437,7 @@ uint64 NMD::extract_u_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil3il3bs1_il8il2bs1Fmsb3(uint64 instruction)\n+uint64 NMD::extract_u_3_8__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 3, 1) << 3;\n@@ -1454,7 +1454,7 @@ uint64 NMD::extract_fd_10_9_8_7_6(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il2bs5Fmsb6(uint64 instruction)\n+uint64 NMD::extract_u_4_3_2_1_0__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 5) << 2;\n@@ -1487,7 +1487,7 @@ uint64 NMD::extract_ct_25_24_23_22_21(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil2il2bs19Fmsb20(uint64 instruction)\n+uint64 NMD::extract_u_20_to_2__s2(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 2, 19) << 2;\n@@ -1505,7 +1505,7 @@ int64 NMD::extract_s_4_2_1_0(uint64 instruction)\n }\n \n \n-uint64 NMD::extr_uil0il1bs4Fmsb4(uint64 instruction)\n+uint64 NMD::extract_u_3_2_1_0__s1(uint64 instruction)\n {\n     uint64 value = 0;\n     value |= extract_bits(instruction, 0, 4) << 1;\n@@ -1539,7 +1539,7 @@ bool NMD::BEQC_16__cond(uint64 instruction)\n {\n     uint64 rs3 = extract_rs3_6_5_4(instruction);\n     uint64 rt3 = extract_rt3_9_8_7(instruction);\n-    uint64 u = extr_uil0il1bs4Fmsb4(instruction);\n+    uint64 u = extract_u_3_2_1_0__s1(instruction);\n     return rs3 < rt3 && u != 0;\n }\n \n@@ -1548,7 +1548,7 @@ bool NMD::BNEC_16__cond(uint64 instruction)\n {\n     uint64 rs3 = extract_rs3_6_5_4(instruction);\n     uint64 rt3 = extract_rt3_9_8_7(instruction);\n-    uint64 u = extr_uil0il1bs4Fmsb4(instruction);\n+    uint64 u = extract_u_3_2_1_0__s1(instruction);\n     return rs3 >= rt3 && u != 0;\n }\n \n@@ -1562,7 +1562,7 @@ bool NMD::MOVE_cond(uint64 instruction)\n \n bool NMD::P16_BR1_cond(uint64 instruction)\n {\n-    uint64 u = extr_uil0il1bs4Fmsb4(instruction);\n+    uint64 u = extract_u_3_2_1_0__s1(instruction);\n     return u != 0;\n }\n \n@@ -1890,7 +1890,7 @@ std::string NMD::ADDIU_GP_B_(uint64 instruction)\n std::string NMD::ADDIU_GP_W_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil2il2bs19Fmsb20(instruction);\n+    uint64 u_value = extract_u_20_to_2__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -1933,7 +1933,7 @@ std::string NMD::ADDIU_NEG_(uint64 instruction)\n  */\n std::string NMD::ADDIU_R1_SP_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il2bs6Fmsb7(instruction);\n+    uint64 u_value = extract_u_5_4_3_2_1_0__s2(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n \n     std::string rt3 = GPR(encode_gpr3(rt3_value));\n@@ -1954,7 +1954,7 @@ std::string NMD::ADDIU_R1_SP_(uint64 instruction)\n  */\n std::string NMD::ADDIU_R2_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il2bs3Fmsb4(instruction);\n+    uint64 u_value = extract_u_2_1_0__s2(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -2874,7 +2874,7 @@ std::string NMD::BC2NEZC(uint64 instruction)\n  */\n std::string NMD::BEQC_16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il1bs4Fmsb4(instruction);\n+    uint64 u_value = extract_u_3_2_1_0__s1(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -3160,7 +3160,7 @@ std::string NMD::BLTUC(uint64 instruction)\n  */\n std::string NMD::BNEC_16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il1bs4Fmsb4(instruction);\n+    uint64 u_value = extract_u_3_2_1_0__s1(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -5795,7 +5795,7 @@ std::string NMD::DLSA(uint64 instruction)\n std::string NMD::DLUI_48_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_41_40_39_38_37(instruction);\n-    uint64 u_value = extr_uil0il32bs32Fmsb63(instruction);\n+    uint64 u_value = extract_u_31_to_0__s32(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8066,7 +8066,7 @@ std::string NMD::LBX(uint64 instruction)\n std::string NMD::LD_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil3il3bs18Fmsb20(instruction);\n+    uint64 u_value = extract_u_20_to_3__s3(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8136,7 +8136,7 @@ std::string NMD::LD_U12_(uint64 instruction)\n std::string NMD::LDC1_GP_(uint64 instruction)\n {\n     uint64 ft_value = extract_ft_20_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil2il2bs16Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_2__s2(instruction);\n \n     std::string ft = FPR(copy(ft_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8373,7 +8373,7 @@ std::string NMD::LDXS(uint64 instruction)\n  */\n std::string NMD::LH_16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil1il1bs2Fmsb2(instruction);\n+    uint64 u_value = extract_u_2_1__s1(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -8398,7 +8398,7 @@ std::string NMD::LH_16_(uint64 instruction)\n std::string NMD::LH_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil1il1bs17Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_1__s1(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8491,7 +8491,7 @@ std::string NMD::LHE(uint64 instruction)\n  */\n std::string NMD::LHU_16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil1il1bs2Fmsb2(instruction);\n+    uint64 u_value = extract_u_2_1__s1(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -8516,7 +8516,7 @@ std::string NMD::LHU_16_(uint64 instruction)\n std::string NMD::LHU_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil1il1bs17Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_1__s1(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8941,7 +8941,7 @@ std::string NMD::LUI(uint64 instruction)\n  */\n std::string NMD::LW_16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il2bs4Fmsb5(instruction);\n+    uint64 u_value = extract_u_3_2_1_0__s2(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n@@ -8967,7 +8967,7 @@ std::string NMD::LW_4X4_(uint64 instruction)\n {\n     uint64 rs4_value = extract_rs4_4_2_1_0(instruction);\n     uint64 rt4_value = extract_rt4_9_7_6_5(instruction);\n-    uint64 u_value = extr_uil3il3bs1_il8il2bs1Fmsb3(instruction);\n+    uint64 u_value = extract_u_3_8__s2(instruction);\n \n     std::string rt4 = GPR(encode_gpr4(rt4_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -8990,7 +8990,7 @@ std::string NMD::LW_4X4_(uint64 instruction)\n std::string NMD::LW_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil2il2bs19Fmsb20(instruction);\n+    uint64 u_value = extract_u_20_to_2__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -9011,7 +9011,7 @@ std::string NMD::LW_GP_(uint64 instruction)\n  */\n std::string NMD::LW_GP16_(uint64 instruction)\n {\n-    uint64 u_value = extr_uil0il2bs7Fmsb8(instruction);\n+    uint64 u_value = extract_u_6_5_4_3_2_1_0__s2(instruction);\n     uint64 rt3_value = extract_rt3_9_8_7(instruction);\n \n     std::string rt3 = GPR(encode_gpr3(rt3_value));\n@@ -9058,7 +9058,7 @@ std::string NMD::LW_S9_(uint64 instruction)\n std::string NMD::LW_SP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_9_8_7_6_5(instruction);\n-    uint64 u_value = extr_uil0il2bs5Fmsb6(instruction);\n+    uint64 u_value = extract_u_4_3_2_1_0__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -9104,7 +9104,7 @@ std::string NMD::LW_U12_(uint64 instruction)\n std::string NMD::LWC1_GP_(uint64 instruction)\n {\n     uint64 ft_value = extract_ft_20_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil2il2bs16Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_2__s2(instruction);\n \n     std::string ft = FPR(copy(ft_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -9318,7 +9318,7 @@ std::string NMD::LWPC_48_(uint64 instruction)\n std::string NMD::LWU_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil2il2bs16Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_2__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -12329,7 +12329,7 @@ std::string NMD::RESTORE_32_(uint64 instruction)\n {\n     uint64 count_value = extract_count_19_18_17_16(instruction);\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil3il3bs9Fmsb11(instruction);\n+    uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);\n     uint64 gp_value = extract_gp_2(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n@@ -12352,7 +12352,7 @@ std::string NMD::RESTORE_JRC_16_(uint64 instruction)\n {\n     uint64 count_value = extract_count_3_2_1_0(instruction);\n     uint64 rt1_value = extract_rtl_11(instruction);\n-    uint64 u_value = extr_uil4il4bs4Fmsb7(instruction);\n+    uint64 u_value = extract_u_7_6_5_4__s4(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n     return img::format(\"RESTORE.JRC %s%s\", u,\n@@ -12374,7 +12374,7 @@ std::string NMD::RESTORE_JRC_32_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n     uint64 count_value = extract_count_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil3il3bs9Fmsb11(instruction);\n+    uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);\n     uint64 gp_value = extract_gp_2(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n@@ -12396,7 +12396,7 @@ std::string NMD::RESTORE_JRC_32_(uint64 instruction)\n std::string NMD::RESTOREF(uint64 instruction)\n {\n     uint64 count_value = extract_count_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil3il3bs9Fmsb11(instruction);\n+    uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n     std::string count = IMMEDIATE(copy(count_value));\n@@ -12511,7 +12511,7 @@ std::string NMD::ROTX(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n     uint64 rs_value = extract_rs_20_19_18_17_16(instruction);\n-    uint64 shiftx_value = extr_shiftxil7il1bs4Fmsb4(instruction);\n+    uint64 shiftx_value = extract_shiftx_10_9_8_7__s1(instruction);\n     uint64 stripe_value = extract_stripe_6(instruction);\n     uint64 shift_value = extract_shift_4_3_2_1_0(instruction);\n \n@@ -12672,7 +12672,7 @@ std::string NMD::SAVE_16_(uint64 instruction)\n {\n     uint64 count_value = extract_count_3_2_1_0(instruction);\n     uint64 rt1_value = extract_rtl_11(instruction);\n-    uint64 u_value = extr_uil4il4bs4Fmsb7(instruction);\n+    uint64 u_value = extract_u_7_6_5_4__s4(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n     return img::format(\"SAVE %s%s\", u,\n@@ -12694,7 +12694,7 @@ std::string NMD::SAVE_32_(uint64 instruction)\n {\n     uint64 count_value = extract_count_19_18_17_16(instruction);\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil3il3bs9Fmsb11(instruction);\n+    uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);\n     uint64 gp_value = extract_gp_2(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n@@ -12716,7 +12716,7 @@ std::string NMD::SAVE_32_(uint64 instruction)\n std::string NMD::SAVEF(uint64 instruction)\n {\n     uint64 count_value = extract_count_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil3il3bs9Fmsb11(instruction);\n+    uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);\n \n     std::string u = IMMEDIATE(copy(u_value));\n     std::string count = IMMEDIATE(copy(count_value));\n@@ -13024,7 +13024,7 @@ std::string NMD::SCWPE(uint64 instruction)\n std::string NMD::SD_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil3il3bs18Fmsb20(instruction);\n+    uint64 u_value = extract_u_20_to_3__s3(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -13134,7 +13134,7 @@ std::string NMD::SDBBP_32_(uint64 instruction)\n std::string NMD::SDC1_GP_(uint64 instruction)\n {\n     uint64 ft_value = extract_ft_20_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil2il2bs16Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_2__s2(instruction);\n \n     std::string ft = FPR(copy(ft_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -13584,7 +13584,7 @@ std::string NMD::SEQI(uint64 instruction)\n std::string NMD::SH_16_(uint64 instruction)\n {\n     uint64 rtz3_value = extract_rtz3_9_8_7(instruction);\n-    uint64 u_value = extr_uil1il1bs2Fmsb2(instruction);\n+    uint64 u_value = extract_u_2_1__s1(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n     std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));\n@@ -13608,7 +13608,7 @@ std::string NMD::SH_16_(uint64 instruction)\n std::string NMD::SH_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil1il1bs17Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_1__s1(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -15158,7 +15158,7 @@ std::string NMD::SUBUH_R_QB(uint64 instruction)\n std::string NMD::SW_16_(uint64 instruction)\n {\n     uint64 rtz3_value = extract_rtz3_9_8_7(instruction);\n-    uint64 u_value = extr_uil0il2bs4Fmsb5(instruction);\n+    uint64 u_value = extract_u_3_2_1_0__s2(instruction);\n     uint64 rs3_value = extract_rs3_6_5_4(instruction);\n \n     std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));\n@@ -15183,7 +15183,7 @@ std::string NMD::SW_4X4_(uint64 instruction)\n {\n     uint64 rs4_value = extract_rs4_4_2_1_0(instruction);\n     uint64 rtz4_value = extract_rtz4_9_7_6_5(instruction);\n-    uint64 u_value = extr_uil3il3bs1_il8il2bs1Fmsb3(instruction);\n+    uint64 u_value = extract_u_3_8__s2(instruction);\n \n     std::string rtz4 = GPR(encode_gpr4_zero(rtz4_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -15206,7 +15206,7 @@ std::string NMD::SW_4X4_(uint64 instruction)\n std::string NMD::SW_GP16_(uint64 instruction)\n {\n     uint64 rtz3_value = extract_rtz3_9_8_7(instruction);\n-    uint64 u_value = extr_uil0il2bs7Fmsb8(instruction);\n+    uint64 u_value = extract_u_6_5_4_3_2_1_0__s2(instruction);\n \n     std::string rtz3 = GPR(encode_gpr3_store(rtz3_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -15228,7 +15228,7 @@ std::string NMD::SW_GP16_(uint64 instruction)\n std::string NMD::SW_GP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_25_24_23_22_21(instruction);\n-    uint64 u_value = extr_uil2il2bs19Fmsb20(instruction);\n+    uint64 u_value = extract_u_20_to_2__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -15274,7 +15274,7 @@ std::string NMD::SW_S9_(uint64 instruction)\n std::string NMD::SW_SP_(uint64 instruction)\n {\n     uint64 rt_value = extract_rt_9_8_7_6_5(instruction);\n-    uint64 u_value = extr_uil0il2bs5Fmsb6(instruction);\n+    uint64 u_value = extract_u_4_3_2_1_0__s2(instruction);\n \n     std::string rt = GPR(copy(rt_value));\n     std::string u = IMMEDIATE(copy(u_value));\n@@ -15320,7 +15320,7 @@ std::string NMD::SW_U12_(uint64 instruction)\n std::string NMD::SWC1_GP_(uint64 instruction)\n {\n     uint64 ft_value = extract_ft_20_19_18_17_16(instruction);\n-    uint64 u_value = extr_uil2il2bs16Fmsb17(instruction);\n+    uint64 u_value = extract_u_17_to_2__s2(instruction);\n \n     std::string ft = FPR(copy(ft_value));\n     std::string u = IMMEDIATE(copy(u_value));\ndiff --git a/disas/nanomips.h b/disas/nanomips.h\nindex f04a1a8..d3722f6 100644\n--- a/disas/nanomips.h\n+++ b/disas/nanomips.h\n@@ -218,7 +218,7 @@ private:\n     uint64 extract_shift_20_19_18_17_16(uint64 instruction);\n     uint64 extract_shift_10_9_8_7_6(uint64 instruction);\n     uint64 extract_shiftx_11_10_9_8_7_6(uint64 instruction);\n-    uint64 extr_shiftxil7il1bs4Fmsb4(uint64 instruction);\n+    uint64 extract_shiftx_10_9_8_7__s1(uint64 instruction);\n     uint64 extract_size_20_19_18_17_16(uint64 instruction);\n     uint64 extract_stripe_6(uint64 instruction);\n     uint64 extract_stype_20_19_18_17_16(uint64 instruction);\n@@ -227,24 +227,24 @@ private:\n     uint64 extract_u_15_to_0(uint64 instruction);\n     uint64 extract_u_17_to_0(uint64 instruction);\n     uint64 extract_u_1_0(uint64 instruction);\n-    uint64 extr_uil0il1bs4Fmsb4(uint64 instruction);\n-    uint64 extr_uil0il2bs3Fmsb4(uint64 instruction);\n-    uint64 extr_uil0il2bs4Fmsb5(uint64 instruction);\n-    uint64 extr_uil0il2bs5Fmsb6(uint64 instruction);\n-    uint64 extr_uil0il2bs6Fmsb7(uint64 instruction);\n-    uint64 extr_uil0il2bs7Fmsb8(uint64 instruction);\n-    uint64 extr_uil0il32bs32Fmsb63(uint64 instruction);\n+    uint64 extract_u_3_2_1_0__s1(uint64 instruction);\n+    uint64 extract_u_2_1_0__s2(uint64 instruction);\n+    uint64 extract_u_3_2_1_0__s2(uint64 instruction);\n+    uint64 extract_u_4_3_2_1_0__s2(uint64 instruction);\n+    uint64 extract_u_5_4_3_2_1_0__s2(uint64 instruction);\n+    uint64 extract_u_6_5_4_3_2_1_0__s2(uint64 instruction);\n+    uint64 extract_u_31_to_0__s32(uint64 instruction);\n     uint64 extract_u_10(uint64 instruction);\n     uint64 extract_u_17_16_15_14_13_12_11(uint64 instruction);\n     uint64 extract_u_20_19_18_17_16_15_14_13(uint64 instruction);\n-    uint64 extr_uil1il1bs17Fmsb17(uint64 instruction);\n-    uint64 extr_uil1il1bs2Fmsb2(uint64 instruction);\n-    uint64 extr_uil2il2bs16Fmsb17(uint64 instruction);\n-    uint64 extr_uil2il2bs19Fmsb20(uint64 instruction);\n-    uint64 extr_uil3il3bs18Fmsb20(uint64 instruction);\n-    uint64 extr_uil3il3bs1_il8il2bs1Fmsb3(uint64 instruction);\n-    uint64 extr_uil3il3bs9Fmsb11(uint64 instruction);\n-    uint64 extr_uil4il4bs4Fmsb7(uint64 instruction);\n+    uint64 extract_u_17_to_1__s1(uint64 instruction);\n+    uint64 extract_u_2_1__s1(uint64 instruction);\n+    uint64 extract_u_17_to_2__s2(uint64 instruction);\n+    uint64 extract_u_20_to_2__s2(uint64 instruction);\n+    uint64 extract_u_20_to_3__s3(uint64 instruction);\n+    uint64 extract_u_3_8__s2(uint64 instruction);\n+    uint64 extract_u_11_10_9_8_7_6_5_4_3__s3(uint64 instruction);\n+    uint64 extract_u_7_6_5_4__s4(uint64 instruction);\n \n     bool ADDIU_32__cond(uint64 instruction);\n     bool ADDIU_RS5__cond(uint64 instruction);\n",
    "prefixes": [
        "PULL",
        "16/41"
    ]
}