Add clz opcode.

opcodes/
	* microblaze-opc.h: Increase MAX_OPCODES (op_code_struct):  add clz insn
	* microblaze-opcm.h (microblaze_instr): add clz

gas/testsuite/
	* gas/microblaze/allinsn.s: Add clz insn
	* gas/microblaze/allinsn.d: Likewise
This commit is contained in:
Michael Eager 2012-11-14 16:45:01 +00:00
parent e692c2171e
commit ed8ec0ec78
6 changed files with 20 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2012-11-08 David Holsgrove <david.holsgrove@xilinx.com>
* gas/microblaze/allinsn.s: Add clz insn
* gas/microblaze/allinsn.d: Likewise
2012-11-14 David Holsgrove <david.holsgrove@xilinx.com>
* gas/microblaze/allinsn.exp: New file - test newly added opcodes

View File

@ -22,3 +22,6 @@ Disassembly of section .text:
00000014 <swr>:
14: d8000200 swr r0, r0, r0
00000018 <clz>:
18: 900000e0 clz r0, r0

View File

@ -24,4 +24,8 @@ shr:
.global swr
swr:
swr r0,r0,r0
.text
.global clz
clz:
clz r0,r0

View File

@ -1,3 +1,8 @@
2012-11-14 Edgar E. Iglesias <edgar.iglesias@gmail.com>
* microblaze-opc.h: Increase MAX_OPCODES (op_code_struct): add clz insn
* microblaze-opcm.h (microblaze_instr): add clz
2012-11-14 Edgar E. Iglesias <edgar.iglesias@gmail.com>
* microblaze-opc.h: Increase MAX_OPCODES (op_code_struct): add lbur,

View File

@ -96,7 +96,7 @@
#define DELAY_SLOT 1
#define NO_DELAY_SLOT 0
#define MAX_OPCODES 284
#define MAX_OPCODES 285
struct op_code_struct
{
@ -394,6 +394,7 @@ struct op_code_struct
{"tneaputd", INST_TYPE_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x4C0006E0, OPCODE_MASK_H34C, tneaputd, anyware_inst },
{"necaputd", INST_TYPE_R1_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x4C000760, OPCODE_MASK_H34C, necaputd, anyware_inst },
{"tnecaputd", INST_TYPE_R2, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x4C0007E0, OPCODE_MASK_H34C, tnecaputd, anyware_inst },
{"clz", INST_TYPE_RD_R1, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x900000E0, OPCODE_MASK_H34, clz, special_inst },
{"", 0, 0, 0, 0, 0, 0, 0, 0},
};

View File

@ -25,7 +25,7 @@
enum microblaze_instr
{
add, rsub, addc, rsubc, addk, rsubk, addkc, rsubkc, cmp, cmpu,
add, rsub, addc, rsubc, addk, rsubk, addkc, rsubkc, clz, cmp, cmpu,
addi, rsubi, addic, rsubic, addik, rsubik, addikc, rsubikc, mul,
mulh, mulhu, mulhsu,
idiv, idivu, bsll, bsra, bsrl, get, put, nget, nput, cget, cput,