diff options
author | Nathan Rossi <nathan.rossi@xilinx.com> | 2014-05-27 15:52:48 +1000 |
---|---|---|
committer | Nathan Rossi <nathan.rossi@xilinx.com> | 2014-05-27 15:52:48 +1000 |
commit | 7c19cb06a61500f9aab21e9e95173d0305bff25c (patch) | |
tree | a5b65e80b55b0bccd6216b39a239e374c1a4b5b3 /recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch | |
parent | 56afae038a1c5a8165371cd295ab50ba2400efd8 (diff) | |
download | meta-xilinx-7c19cb06a61500f9aab21e9e95173d0305bff25c.tar.gz |
gdb: Update gdb for microblaze
* Update recipe for gdb to 7.7
* Update patches for gdb, based on xlnx/master-rebase from the Xilinx
binutils-gdb repository
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Diffstat (limited to 'recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch')
-rw-r--r-- | recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch b/recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch new file mode 100644 index 00000000..3575cd7e --- /dev/null +++ b/recipes-devtools/gdb/files/0001-Patch-microblaze-Add-wdc.ext.clear-and-wdc.ext.flush.patch | |||
@@ -0,0 +1,69 @@ | |||
1 | From 8ab9a20c73acedbb636a41842a681872af8ae1d6 Mon Sep 17 00:00:00 2001 | ||
2 | From: David Holsgrove <david.holsgrove@xilinx.com> | ||
3 | Date: Wed, 8 May 2013 11:03:36 +1000 | ||
4 | Subject: [PATCH 01/16] [Patch, microblaze]: Add wdc.ext.clear and | ||
5 | wdc.ext.flush insns | ||
6 | |||
7 | Added two new instructions, wdc.ext.clear and wdc.ext.flush, | ||
8 | to enable MicroBlaze to flush an external cache, which is | ||
9 | used with the new coherency support for multiprocessing. | ||
10 | |||
11 | Signed-off-by:nagaraju <nmekala@xilix.com> | ||
12 | Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com> | ||
13 | Upstream-Status: Pending | ||
14 | --- | ||
15 | opcodes/microblaze-opc.h | 5 ++++- | ||
16 | opcodes/microblaze-opcm.h | 6 +++--- | ||
17 | 2 files changed, 7 insertions(+), 4 deletions(-) | ||
18 | |||
19 | diff --git a/opcodes/microblaze-opc.h b/opcodes/microblaze-opc.h | ||
20 | index e3cc1d9..f453097 100644 | ||
21 | --- a/opcodes/microblaze-opc.h | ||
22 | +++ b/opcodes/microblaze-opc.h | ||
23 | @@ -91,6 +91,7 @@ | ||
24 | #define OPCODE_MASK_H3 0xFC000600 /* High 6 bits and bits 21, 22. */ | ||
25 | #define OPCODE_MASK_H32 0xFC00FC00 /* High 6 bits and bit 16-21. */ | ||
26 | #define OPCODE_MASK_H34B 0xFC0000FF /* High 6 bits and low 8 bits. */ | ||
27 | +#define OPCODE_MASK_H35B 0xFC0004FF /* High 6 bits and low 9 bits. */ | ||
28 | #define OPCODE_MASK_H34C 0xFC0007E0 /* High 6 bits and bits 21-26. */ | ||
29 | |||
30 | /* New Mask for msrset, msrclr insns. */ | ||
31 | @@ -101,7 +102,7 @@ | ||
32 | #define DELAY_SLOT 1 | ||
33 | #define NO_DELAY_SLOT 0 | ||
34 | |||
35 | -#define MAX_OPCODES 289 | ||
36 | +#define MAX_OPCODES 291 | ||
37 | |||
38 | struct op_code_struct | ||
39 | { | ||
40 | @@ -174,7 +175,9 @@ struct op_code_struct | ||
41 | {"wic", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000068, OPCODE_MASK_H34B, wic, special_inst }, | ||
42 | {"wdc", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000064, OPCODE_MASK_H34B, wdc, special_inst }, | ||
43 | {"wdc.clear", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000066, OPCODE_MASK_H34B, wdcclear, special_inst }, | ||
44 | + {"wdc.ext.clear", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000466, OPCODE_MASK_H35B, wdcextclear, special_inst }, | ||
45 | {"wdc.flush", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000074, OPCODE_MASK_H34B, wdcflush, special_inst }, | ||
46 | + {"wdc.ext.flush", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000476, OPCODE_MASK_H35B, wdcextflush, special_inst }, | ||
47 | {"mts", INST_TYPE_SPECIAL_R1, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MTS, 0x9400C000, OPCODE_MASK_H13S, mts, special_inst }, | ||
48 | {"mfs", INST_TYPE_RD_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MFS, 0x94008000, OPCODE_MASK_H23S, mfs, special_inst }, | ||
49 | {"br", INST_TYPE_R2, INST_PC_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x98000000, OPCODE_MASK_H124, br, branch_inst }, | ||
50 | diff --git a/opcodes/microblaze-opcm.h b/opcodes/microblaze-opcm.h | ||
51 | index 6868389..8f5c1cb 100644 | ||
52 | --- a/opcodes/microblaze-opcm.h | ||
53 | +++ b/opcodes/microblaze-opcm.h | ||
54 | @@ -31,9 +31,9 @@ enum microblaze_instr | ||
55 | idiv, idivu, bsll, bsra, bsrl, get, put, nget, nput, cget, cput, | ||
56 | ncget, ncput, muli, bslli, bsrai, bsrli, mului, or, and, xor, | ||
57 | andn, pcmpbf, pcmpbc, pcmpeq, pcmpne, sra, src, srl, sext8, sext16, | ||
58 | - wic, wdc, wdcclear, wdcflush, mts, mfs, mbar, br, brd, | ||
59 | - brld, bra, brad, brald, microblaze_brk, beq, beqd, bne, bned, blt, | ||
60 | - bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni, | ||
61 | + wic, wdc, wdcclear, wdcextclear, wdcflush, wdcextflush, mts, mfs, mbar, | ||
62 | + br, brd, brld, bra, brad, brald, microblaze_brk, beq, beqd, bne, bned, | ||
63 | + blt, bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni, | ||
64 | imm, rtsd, rtid, rtbd, rted, bri, brid, brlid, brai, braid, bralid, | ||
65 | brki, beqi, beqid, bnei, bneid, blti, bltid, blei, bleid, bgti, | ||
66 | bgtid, bgei, bgeid, lbu, lbur, lhu, lhur, lw, lwr, lwx, sb, sbr, sh, | ||
67 | -- | ||
68 | 1.9.0 | ||
69 | |||