From patchwork Thu Oct 19 11:37:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Frager, Neal" X-Patchwork-Id: 155452 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2010:b0:403:3b70:6f57 with SMTP id fe16csp318138vqb; Thu, 19 Oct 2023 04:38:00 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHKyHJTx8jKoxI5x9rAcv5FKCCQFmTdqunyyK3TKvohaLZ5qEQO650tnEewBk8EtxMOcVyv X-Received: by 2002:ac8:5714:0:b0:41c:b9b6:ec11 with SMTP id 20-20020ac85714000000b0041cb9b6ec11mr2099351qtw.3.1697715480084; Thu, 19 Oct 2023 04:38:00 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1697715480; cv=pass; d=google.com; s=arc-20160816; b=lhpVr+29nkvGHQQp0SP060lgGg7S95BuiXhu4Se/vi2nicV5GI6Vjql7Y5WtM884ER hZ0rkBJ77/IPYwUyPhbEWKqp/iRxiANz8iYIw1jfTH7Fd52lREhn9M9GVhxdpUVMJgNo COdeUe5mNqlP4WIlJts2VafpYSo1ah5oPPje8KiXTtYqYuCGhajU4H8O8dVyNiJu8Iz7 UuYjOOjRaKxGUDLR8YEgX8ajnk5GOv0kTlw1KI3o9Pkhp5PXRw/QI0WIspnd8uQB8s++ v0L/475sEN0yzF14t5yFJvnoYb9zfNBoX1NX9quG4oVj5S8ymvwdcTKC+JAKMZGxjqx3 SQ4g== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=iH8vs/IMR3ULSm74GF7iMiFqenFz5PsPv714vhBx8UM=; fh=JX284ANVpcP1Jok0DYwjB2X6uRjfrK2OT20UgObNi7I=; b=rxxT6bWXWka2Cm9jgVzDqbN/jDetNx9RVoVD01v690Ckzy5kmpR+IzV1xIG6+CFd7M IlJ68gXFZH8ci4ULsc5XvhtqAjNk+20ael5uVIslIGp/0v8lr7+aU2btOpAuGTqmvhde P3F8053qwxAtsN9qiCf2tKUdXsOs9CMX2mApa/UREBibNjGNh6d54tZMCsQbOonmWsQ/ Dp1s7kacNpundy+VUNhU4pa/rm20euHLyo2L/g3GvyqcJZAdGdsocPe+GtuYj7rKP+tW Eln4xn4Xhs7BvibqH8CjtkHvGGx7xqVWZSuUJmIqGhyZn9/aa4YYhruqCVaW1PBB33UU bFGw== ARC-Authentication-Results: i=3; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=WsOm+00y; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id p20-20020a05622a049400b004122d8bd13csi1368793qtx.804.2023.10.19.04.38.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Oct 2023 04:38:00 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=WsOm+00y; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CE8913858414 for ; Thu, 19 Oct 2023 11:37:59 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2080.outbound.protection.outlook.com [40.107.237.80]) by sourceware.org (Postfix) with ESMTPS id 2E0EF3858D1E for ; Thu, 19 Oct 2023 11:37:54 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2E0EF3858D1E Authentication-Results: sourceware.org; dmarc=fail (p=quarantine dis=none) header.from=amd.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=amd.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2E0EF3858D1E Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.237.80 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697715475; cv=pass; b=CSieho8dRaALLdNfgtCxk4LkQZHS8O7AY+agKBppqHKM3CFgIL3e5IekRYyA0dz7ZsWTYR5AIYPKYPJG3KLx0zkoZ4ypRoL/xAShhl9TQqIlAxzYvym1lImRN7LPEEXZfupxtJereMiZRUn3G4QnItdjeWB3OSCRBNJ3HzSg+LI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697715475; c=relaxed/simple; bh=LmnJODHFpG83AnRi6Sn1prjGwrS+py73Y+WBc53FPag=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=M0M7AeHNIA2MwVYaa+CU1RaAeXeoH3e87xyqfdoDJCpJeEy9v9Qk60ceUEjxl+EOEX8kzotPaVGuoLjHeRK8Dl7UZnmlCWqvnpv516Ug/4OYtMisI47+zHVEKDkPprlyEGGho5mQnFqIl5HrmcCrn5PjXXViLod5R4qnt1SKbF0= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y4nKeP/XgqVg0fyV5CcJiOOGcn/widRvKRJyT5hEXXuP+VT0NBWnB8DqrJx+IrQ5+2d4adk+QJPGFl9fvcLdeTsQp8J0jiB2mriCRybkjXGLVb+K1lPDqwwUvnmSodhBgzq4P9pY6bqPF9c/gbpOqzs5jxlJsPwtcmUEOq9zF/gnJ/b6uXyENDMZEF7JMyoVWn5TUefTgoy0lKtQJJ6PZ6aPJZeYMLHS8RfDh7eb+LSIfgacu6Tfg2YRq/d22Mq7BcOmoKGPxK5TlEEgPJW2opoCVJ0kfd9sw4K0SgoXcCZP8EqNVcD0IiT4HXoUUHr10UJPfO38zOujURDiTaENlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=iH8vs/IMR3ULSm74GF7iMiFqenFz5PsPv714vhBx8UM=; b=PLYJIXC1YK9jBr8p9jDz2T4zHXilzIU2ILHoyADgS8lt51nyNB0giEVKFuoMmkYpVbfUZgWdCGlSFwCg/nS2MK+ZeTIXTomdf/rkgHRJqX77IPInSHHd8w3imR5piI3Xqlkf9g8b0kly/CWJXjt1E4gRcqwoBTJlWdMZLns4XaTF8EHZSbM35n65NMl9EEx5ThWsH806TdjdgJbDbOCWVJqVLkvjRJi/jG2sqh5o0zfeVVZKY+bWN1feUkLEAx/A6tOf4KMtNLqqVWtyVpbG/dP5eRAlUhGV387US4DqJ4XXJcaZtQy0Z3yvOqSj6hS4ARzo3SbwIMshqI4K+QBgDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=sourceware.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iH8vs/IMR3ULSm74GF7iMiFqenFz5PsPv714vhBx8UM=; b=WsOm+00yIA8bThJPhkXpzpN5Xm4kNSoRmMUaPOwGRkrBIYlqmUOvfvrGxWAojyRJbVRyNSHJLcDWNye6AdD4FMErZdUw4TTh2+L4wyEsR/JTNmK2jOZ6m8SFi8rmTgnX9mHFJ+pRqiHr6jrVmIPLLHN2vTT/R0yZoR3QmxwtJns= Received: from DM6PR02CA0068.namprd02.prod.outlook.com (2603:10b6:5:177::45) by SA1PR12MB5669.namprd12.prod.outlook.com (2603:10b6:806:237::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Thu, 19 Oct 2023 11:37:50 +0000 Received: from DS2PEPF00003445.namprd04.prod.outlook.com (2603:10b6:5:177:cafe::4b) by DM6PR02CA0068.outlook.office365.com (2603:10b6:5:177::45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21 via Frontend Transport; Thu, 19 Oct 2023 11:37:50 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS2PEPF00003445.mail.protection.outlook.com (10.167.17.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6907.24 via Frontend Transport; Thu, 19 Oct 2023 11:37:50 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 19 Oct 2023 06:37:49 -0500 Received: from xirengwts09.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend Transport; Thu, 19 Oct 2023 06:37:48 -0500 From: Neal Frager To: , , , CC: , , , , , , , , Neal Frager Subject: [PATCH v1 1/1] opcodes: microblaze: Fix bit masking bug Date: Thu, 19 Oct 2023 12:37:40 +0100 Message-ID: <20231019113740.2071556-1-neal.frager@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PEPF00003445:EE_|SA1PR12MB5669:EE_ X-MS-Office365-Filtering-Correlation-Id: 6e5ea387-a07e-49aa-49a8-08dbd097d338 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 38MFxp21OYglqzS3IC1ANV79Xt9btppWU0esOBpIBRGx8oTJb+bXNSfhna6CJGIaqMdfnj+RQ7PVVfw0eaZiKLiOkZMLAgdvxUvPnohTwbOh/Y1hOMWoLI+Qc51HHGKAg180ft29FZd3Lz0xAKfKvXyz65t6eRKzjD2unMU0AGH3z2iB3Na5AAbl6zd/IVFIf1yh404Rr1yeY49nxK9ftUSyWUsfC0tHgv7zCV+GEd7c+8Pw62EUaGzO/FZZFltdr4TBbyZ7nPxpmNSo/gAIk3YVThOrxhWtCG6x4F5m4BIO6emzMf6OJsu1iJoFGcYAL05r1yq2VL0Lpm5PdLjpbQQDMnI/ABGZRV9fKOon03oOsVYL8KngzjXmmcTBlFhG6kUbVZY9hlksKmLiBpHXCsaGcuNgFopqb3ba0kh+TlnuN8DlFG1fll8UfbvTkjISB5iLCRJ0zgkolcBiaZuZnqsYIPZFKdCqwxXtugE3BH3LdExYynNBqtEHMkU13av71g7d+KDsy/RSLk+sU8cZvV2Qbs1xIHMRJRIFOHwEXcheXKgYRCca6gFrcSX/Cs0ShlTe8xRORsEcsgT6djBz/QyspOwZPvixcXObd+D4382ETSw0UEA+au0F2i/xmq+xXhEWn2xwk4E93Iekmit29fxlBXdQ98J2V9wa9J3KTYXPMW7qPjVNzvTcaKIfOxHUERb3VTS1Z2jh6qOQj6Y9B+9D2ZR83IlH+pgYZ06TkyENgDr/c0tpTeIS7jllz8YiIbcztHsKwlIYM27FR7D7Pok4ONAia13tXP7uz4wQ43Y= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230031)(4636009)(396003)(136003)(39860400002)(376002)(346002)(230922051799003)(82310400011)(186009)(1800799009)(64100799003)(451199024)(36840700001)(46966006)(40470700004)(40480700001)(40460700003)(47076005)(41300700001)(5660300002)(44832011)(4326008)(8676002)(2906002)(86362001)(83380400001)(1076003)(82740400003)(426003)(81166007)(26005)(336012)(356005)(36860700001)(2616005)(36756003)(8936002)(478600001)(6666004)(70586007)(70206006)(110136005)(54906003)(316002)(2101003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:37:50.4596 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6e5ea387-a07e-49aa-49a8-08dbd097d338 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS2PEPF00003445.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB5669 X-Spam-Status: No, score=-11.4 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1780183707135155582 X-GMAIL-MSGID: 1780183707135155582 There is currently a bug in the bit masking for the barrel shift instructions because the bit mask is not including all of the register bits which must be zero. With this patch, the disassembler can be sure that the 32-bit value is indeed a barrel shift instruction and not a data value in memory. This fix can be verified by assembling and disassembling the following: .text .long 0x65005f5f With this patch, the bug is fixed, and the objdump will know that 0x65005f5f is not a barrel shift instruction. Signed-off-by: Neal Frager --- gas/testsuite/gas/microblaze/allinsn.d | 4 ++-- opcodes/microblaze-dis.c | 4 ++-- opcodes/microblaze-opc.h | 11 +++++++---- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/gas/testsuite/gas/microblaze/allinsn.d b/gas/testsuite/gas/microblaze/allinsn.d index 312e3fb3805..83175f134dc 100644 --- a/gas/testsuite/gas/microblaze/allinsn.d +++ b/gas/testsuite/gas/microblaze/allinsn.d @@ -49,7 +49,7 @@ Disassembly of section .text: 40: 900001e2 swaph r0, r0 00000044 : - 44: 64004041 bsrli r0, r0, 1 + 44: 64004041 bsefi r0, r0, 1, 1 00000048 : - 48: 64008041 bsrli r0, r0, 1 + 48: 64008041 bsifi r0, r0, 1, 1 diff --git a/opcodes/microblaze-dis.c b/opcodes/microblaze-dis.c index 468797befc7..0b5262255fb 100644 --- a/opcodes/microblaze-dis.c +++ b/opcodes/microblaze-dis.c @@ -35,7 +35,7 @@ #define get_int_field_imm(instr) ((instr & IMM_MASK) >> IMM_LOW) #define get_int_field_r1(instr) ((instr & RA_MASK) >> RA_LOW) -#define NUM_STRBUFS 3 +#define NUM_STRBUFS 4 #define STRBUF_SIZE 25 struct string_buf @@ -279,7 +279,7 @@ print_insn_microblaze (bfd_vma memaddr, struct disassemble_info * info) prev_insn_vma = curr_insn_vma; if (op->name == NULL) - print_func (stream, ".short 0x%04x", (unsigned int) inst); + print_func (stream, ".long 0x%04x", (unsigned int) inst); else { print_func (stream, "%s", op->name); diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h index 811b5cbeb0f..b9045f67969 100644 --- a/opcodes/microblaze-opc.h +++ b/opcodes/microblaze-opc.h @@ -92,8 +92,11 @@ #define OPCODE_MASK_H124 0xFFFF07FF /* High 16, and low 11 bits. */ #define OPCODE_MASK_H1234 0xFFFFFFFF /* All 32 bits. */ #define OPCODE_MASK_H3 0xFC000600 /* High 6 bits and bits 21, 22. */ +#define OPCODE_MASK_H3B 0xFC00F9E0 /* High 6 bits and bits 16:20 and + bits 23:26. */ #define OPCODE_MASK_H32 0xFC00FC00 /* High 6 bits and bit 16-21. */ -#define OPCODE_MASK_H32B 0xFC00C000 /* High 6 bits and bit 16, 17. */ +#define OPCODE_MASK_H32B 0xFC00F820 /* High 6 bits and bits 16:20 and + bit 26 */ #define OPCODE_MASK_H34B 0xFC0000FF /* High 6 bits and low 8 bits. */ #define OPCODE_MASK_H35B 0xFC0004FF /* High 6 bits and low 9 bits. */ #define OPCODE_MASK_H34C 0xFC0007E0 /* High 6 bits and bits 21-26. */ @@ -160,9 +163,9 @@ const struct op_code_struct {"ncget", INST_TYPE_RD_RFSL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x6C006000, OPCODE_MASK_H32, ncget, anyware_inst }, {"ncput", INST_TYPE_R1_RFSL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x6C00E000, OPCODE_MASK_H32, ncput, anyware_inst }, {"muli", INST_TYPE_RD_R1_IMM, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x60000000, OPCODE_MASK_H, muli, mult_inst }, - {"bslli", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000400, OPCODE_MASK_H3, bslli, barrel_shift_inst }, - {"bsrai", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000200, OPCODE_MASK_H3, bsrai, barrel_shift_inst }, - {"bsrli", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000000, OPCODE_MASK_H3, bsrli, barrel_shift_inst }, + {"bslli", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000400, OPCODE_MASK_H3B, bslli, barrel_shift_inst }, + {"bsrai", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000200, OPCODE_MASK_H3B, bsrai, barrel_shift_inst }, + {"bsrli", INST_TYPE_RD_R1_IMM5, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64000000, OPCODE_MASK_H3B, bsrli, barrel_shift_inst }, {"bsefi", INST_TYPE_RD_R1_IMMW_IMMS, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64004000, OPCODE_MASK_H32B, bsefi, barrel_shift_inst }, {"bsifi", INST_TYPE_RD_R1_IMMW_IMMS, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x64008000, OPCODE_MASK_H32B, bsifi, barrel_shift_inst }, {"or", INST_TYPE_RD_R1_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x80000000, OPCODE_MASK_H4, microblaze_or, logical_inst },