|
|
// SPDX-License-Identifier: GPL-2.0-or-later |
|
|
/* SPU opcode list |
|
|
|
|
|
Copyright 2006 Free Software Foundation, Inc. |
|
|
|
|
|
This file is part of GDB, GAS, and the GNU binutils. |
|
|
|
|
|
*/ |
|
|
|
|
|
#include <linux/kernel.h> |
|
|
#include <linux/bug.h> |
|
|
#include "spu.h" |
|
|
|
|
|
/* This file holds the Spu opcode table */ |
|
|
|
|
|
|
|
|
/* |
|
|
Example contents of spu-insn.h |
|
|
id_tag mode mode type opcode mnemonic asmtype dependency FPU L/S? branch? instruction |
|
|
QUAD WORD (0,RC,RB,RA,RT) latency |
|
|
APUOP(M_LQD, 1, 0, RI9, 0x1f8, "lqd", ASM_RI9IDX, 00012, FXU, 1, 0) Load Quadword d-form |
|
|
*/ |
|
|
|
|
|
const struct spu_opcode spu_opcodes[] = { |
|
|
#define APUOP(TAG,MACFORMAT,OPCODE,MNEMONIC,ASMFORMAT,DEP,PIPE) \ |
|
|
{ MACFORMAT, OPCODE, MNEMONIC, ASMFORMAT }, |
|
|
#define APUOPFB(TAG,MACFORMAT,OPCODE,FB,MNEMONIC,ASMFORMAT,DEP,PIPE) \ |
|
|
{ MACFORMAT, OPCODE, MNEMONIC, ASMFORMAT }, |
|
|
#include "spu-insns.h" |
|
|
#undef APUOP |
|
|
#undef APUOPFB |
|
|
}; |
|
|
|
|
|
const int spu_num_opcodes = ARRAY_SIZE(spu_opcodes);
|
|
|
|