1 | // SPDX-License-Identifier: GPL-2.0-or-later |
2 | /* SPU opcode list |
3 | |
4 | Copyright 2006 Free Software Foundation, Inc. |
5 | |
6 | This file is part of GDB, GAS, and the GNU binutils. |
7 | |
8 | */ |
9 | |
10 | #include <linux/kernel.h> |
11 | #include <linux/bug.h> |
12 | #include "spu.h" |
13 | |
14 | /* This file holds the Spu opcode table */ |
15 | |
16 | |
17 | /* |
18 | Example contents of spu-insn.h |
19 | id_tag mode mode type opcode mnemonic asmtype dependency FPU L/S? branch? instruction |
20 | QUAD WORD (0,RC,RB,RA,RT) latency |
21 | APUOP(M_LQD, 1, 0, RI9, 0x1f8, "lqd", ASM_RI9IDX, 00012, FXU, 1, 0) Load Quadword d-form |
22 | */ |
23 | |
24 | const struct spu_opcode spu_opcodes[] = { |
25 | #define APUOP(TAG,MACFORMAT,OPCODE,MNEMONIC,ASMFORMAT,DEP,PIPE) \ |
26 | { MACFORMAT, OPCODE, MNEMONIC, ASMFORMAT }, |
27 | #define APUOPFB(TAG,MACFORMAT,OPCODE,FB,MNEMONIC,ASMFORMAT,DEP,PIPE) \ |
28 | { MACFORMAT, OPCODE, MNEMONIC, ASMFORMAT }, |
29 | #include "spu-insns.h" |
30 | #undef APUOP |
31 | #undef APUOPFB |
32 | }; |
33 | |
34 | const int spu_num_opcodes = ARRAY_SIZE(spu_opcodes); |
35 | |