* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
/* vu0.h. Mips cop2/vu0 opcode list for GDB, the GNU debugger.
|
|
|
|
Copyright 1998 Free Software Foundation, Inc.
|
|
|
|
|
|
|
|
This file is part of GDB, GAS, and the GNU binutils.
|
|
|
|
|
|
|
|
GDB, GAS, and the GNU binutils are free software; you can redistribute
|
|
|
|
them and/or modify them under the terms of the GNU General Public
|
|
|
|
License as published by the Free Software Foundation; either version
|
|
|
|
1, or (at your option) any later version.
|
|
|
|
|
|
|
|
GDB, GAS, and the GNU binutils are distributed in the hope that they
|
|
|
|
will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
|
|
|
|
the GNU General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this file; see the file COPYING. If not, write to the Free
|
|
|
|
Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
|
|
|
|
|
|
|
{"lqc2", "1,o(b)", 0xd8000000, 0xfc000000, 0, T5},
|
|
|
|
{"qmfc2", "t,2", 0x48200000, 0xffe007ff, 0, T5},
|
|
|
|
{"qmfc2.ni", "t,2", 0x48200000, 0xffe007ff, 0, T5},
|
|
|
|
{"qmfc2.i", "t,2", 0x48200001, 0xffe007ff, 0, T5},
|
|
|
|
{"qmtc2", "t,2", 0x48a00000, 0xffe007ff, 0, T5},
|
|
|
|
{"qmtc2.ni", "t,2", 0x48a00000, 0xffe007ff, 0, T5},
|
|
|
|
{"qmtc2.i", "t,2", 0x48a00001, 0xffe007ff, 0, T5},
|
|
|
|
{"sqc2", "1,o(b)", 0xe8000000, 0xfc000000, 0, T5},
|
|
|
|
{"vabs", "&1K,2K", 0x4a0001fd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vadd", "&3K,2K,1K", 0x4a000028, 0xfe00003f, 0, T5},
|
|
|
|
{"vaddi", "&3K,2K,J", 0x4a000022, 0xfe1f003f, 0, T5},
|
|
|
|
{"vaddq", "&3K,2K,Q", 0x4a000020, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vaddw", "&3K,2K,1#w", 0x4a000003, 0xfe00003f, 0, T5},
|
|
|
|
{"vaddx", "&3K,2K,1#x", 0x4a000000, 0xfe00003f, 0, T5},
|
|
|
|
{"vaddy", "&3K,2K,1#y", 0x4a000001, 0xfe00003f, 0, T5},
|
|
|
|
{"vaddz", "&3K,2K,1#z", 0x4a000002, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vadda", "&UK,1K,2K", 0x4a0002bc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vaddai", "&UK,2K,J", 0x4a00023e, 0xfe1f07ff, 0, T5},
|
|
|
|
{"vaddaq", "&UK,2K,Q", 0x4a00023c, 0xfe1f07ff, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vaddaw", "&UK,2K,1#w", 0x4a00003f, 0xfe0007ff, 0, T5},
|
|
|
|
{"vaddax", "&UK,2K,1#x", 0x4a00003c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vadday", "&UK,2K,1#y", 0x4a00003d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vaddaz", "&UK,2K,1#z", 0x4a00003e, 0xfe0007ff, 0, T5},
|
1998-03-22 19:56:37 +00:00
|
|
|
{"vcallms","O", 0x4a000038, 0xffe0003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vcallmsr", "9", 0x4a009839, 0xffffffff, 0, T5},
|
|
|
|
{"vclip","2", 0x4be001ff, 0xffff07ff, 0, T5},
|
|
|
|
{"vdiv","Q,8,7", 0x4a0003bc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vftoi0", "&1K,2K", 0x4a00017c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vftoi4", "&1K,2K", 0x4a00017d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vftoi12", "&1K,2K", 0x4a00017e, 0xfe0007ff, 0, T5},
|
|
|
|
{"vftoi15", "&1K,2K", 0x4a00017f, 0xfe0007ff, 0, T5},
|
|
|
|
{"viadd","6,5,4", 0x4a000030, 0xffe0003f, 0, T5},
|
|
|
|
{"viaddi","4,5,0", 0x4a000032, 0xffe0003f, 0, T5},
|
|
|
|
{"viand","6,5,4", 0x4a000034, 0xffe0003f, 0, T5},
|
|
|
|
{"vilwr.w", "4,(5)", 0x4a2003fe, 0xffe007ff, 0, T5},
|
|
|
|
{"vilwr.x", "4,(5)", 0x4b0003fe, 0xffe007ff, 0, T5},
|
|
|
|
{"vilwr.y", "4,(5)", 0x4a8003fe, 0xffe007ff, 0, T5},
|
|
|
|
{"vilwr.z", "4,(5)", 0x4a4003fe, 0xffe007ff, 0, T5},
|
|
|
|
{"vior","6,5,4", 0x4a000035, 0xffe0003f, 0, T5},
|
|
|
|
{"viswr.w", "4,(5)", 0x4a2003ff, 0xffe007ff, 0, T5},
|
|
|
|
{"viswr.x", "4,(5)", 0x4b0003ff, 0xffe007ff, 0, T5},
|
|
|
|
{"viswr.y", "4,(5)", 0x4a8003ff, 0xffe007ff, 0, T5},
|
|
|
|
{"viswr.z", "4,(5)", 0x4a4003ff, 0xffe007ff, 0, T5},
|
|
|
|
{"visub","6,5,4", 0x4a000031, 0xffe0003f, 0, T5},
|
|
|
|
{"vitof0", "&1K,2K", 0x4a00013c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vitof4", "&1K,2K", 0x4a00013d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vitof12", "&1K,2K", 0x4a00013e, 0xfe0007ff, 0, T5},
|
|
|
|
{"vitof15", "&1K,2K", 0x4a00013f, 0xfe0007ff, 0, T5},
|
|
|
|
{"vlqd", "&2K,(--4)K", 0x4a00037e, 0xfe0007ff, 0, T5},
|
|
|
|
{"vlqi", "&2K,(4++)K", 0x4a00037c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmadd", "&3K,2K,1K", 0x4a000029, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaddi", "&3K,2K,J", 0x4a000023, 0xfe1f003f, 0, T5},
|
|
|
|
{"vmaddq", "&3K,2K,Q", 0x4a000021, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmaddw", "&3K,2K,1#w", 0x4a00000b, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaddx", "&3K,2K,1#x", 0x4a000008, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaddy", "&3K,2K,1#y", 0x4a000009, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaddz", "&3K,2K,1#z", 0x4a00000a, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmadda", "&UK,2K,1K", 0x4a0002bd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmaddai", "&UK,2K,J", 0x4a00023f, 0xfe1f07ff, 0, T5},
|
|
|
|
{"vmaddaq", "&UK,2K,Q", 0x4a00023d, 0xfe1f07ff, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmaddaw", "&UK,2K,1#w", 0x4a0000bf, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmaddax", "&UK,2K,1#x", 0x4a0000bc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmadday", "&UK,2K,1#y", 0x4a0000bd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmaddaz", "&UK,2K,1#z", 0x4a0000be, 0xfe0007ff, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmax", "&3K,2K,1K", 0x4a00002b, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaxi", "&3K,2K,J", 0x4a00001b, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmaxw", "&3K,2K,1#w", 0x4a000013, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaxx", "&3K,2K,1#x", 0x4a000010, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaxy", "&3K,2K,1#y", 0x4a000011, 0xfe00003f, 0, T5},
|
|
|
|
{"vmaxz", "&3K,2K,1#z", 0x4a000012, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmfir", "&1K,5", 0x4a0003fd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmini", "&3K,2K,1K", 0x4a00002f, 0xfe00003f, 0, T5},
|
|
|
|
{"vminii", "&3K,2K,J", 0x4a00001f, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vminiw", "&3K,2K,1#w", 0x4a000017, 0xfe00003f, 0, T5},
|
|
|
|
{"vminix", "&3K,2K,1#x", 0x4a000014, 0xfe00003f, 0, T5},
|
|
|
|
{"vminiy", "&3K,2K,1#y", 0x4a000015, 0xfe00003f, 0, T5},
|
|
|
|
{"vminiz", "&3K,2K,1#z", 0x4a000016, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmove", "&1K,2K", 0x4a00033c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmr32", "&1K,2K", 0x4a00033d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmsub", "&3K,2K,1K", 0x4a00002d, 0xfe00003f, 0, T5},
|
|
|
|
{"vmsubi", "&3K,2K,J", 0x4a000027, 0xfe1f003f, 0, T5},
|
|
|
|
{"vmsubq", "&3K,2K,Q", 0x4a000025, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmsubw", "&3K,2K,1#w", 0x4a00000f, 0xfe00003f, 0, T5},
|
|
|
|
{"vmsubx", "&3K,2K,1#x", 0x4a00000c, 0xfe00003f, 0, T5},
|
|
|
|
{"vmsuby", "&3K,2K,1#y", 0x4a00000d, 0xfe00003f, 0, T5},
|
|
|
|
{"vmsubz", "&3K,2K,1#z", 0x4a00000e, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmsuba", "&UK,1K,2K", 0x4a0002fd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmsubai", "&UK,2K,J", 0x4a00027f, 0xfe1f07ff, 0, T5},
|
|
|
|
{"vmsubaq", "&UK,2K,Q", 0x4a00027d, 0xfe1f07ff, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmsubaw", "&UK,2K,1#w", 0x4a0000ff, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmsubax", "&UK,2K,1#x", 0x4a0000fc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmsubay", "&UK,2K,1#y", 0x4a0000fd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmsubaz", "&UK,2K,1#z", 0x4a0000fe, 0xfe0007ff, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmtir", "&4,2K", 0x4a0003fc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmul", "&3K,2K,1K", 0x4a00002a, 0xfe00003f, 0, T5},
|
|
|
|
{"vmuli", "&3K,2K,J", 0x4a00001e, 0xfe1f003f, 0, T5},
|
|
|
|
{"vmulq", "&3K,2K,Q", 0x4a00001c, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmulw", "&3K,2K,1#w", 0x4a00001b, 0xfe00003f, 0, T5},
|
|
|
|
{"vmulx", "&3K,2K,1#x", 0x4a000018, 0xfe00003f, 0, T5},
|
|
|
|
{"vmuly", "&3K,2K,1#y", 0x4a000019, 0xfe00003f, 0, T5},
|
|
|
|
{"vmulz", "&3K,2K,1#z", 0x4a00001a, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vmula", "&UK,2K,1K", 0x4a0002be, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmulai", "&UK,2K,J", 0x4a0001fe, 0xfe1f07ff, 0, T5},
|
|
|
|
{"vmulaq", "&UK,2K,Q", 0x4a0001fc, 0xfe1f07ff, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vmulaw", "&UK,2K,1#w", 0x4a0001bf, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmulax", "&UK,2K,1#x", 0x4a0001bc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmulay", "&UK,2K,1#y", 0x4a0001bd, 0xfe0007ff, 0, T5},
|
|
|
|
{"vmulaz", "&UK,2K,1#z", 0x4a0001be, 0xfe0007ff, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vnop","", 0x4a0002ff, 0xffffffff, 0, T5},
|
|
|
|
{"vopmula.xyz", "U,2,1", 0x4bc002fe, 0xffe007ff, 0, T5},
|
|
|
|
{"vopmsub.xyz", "3,2,1", 0x4bc0002e, 0xffe0003f, 0, T5},
|
|
|
|
{"vrget", "1K,X", 0x4a20043d, 0xffe0ffff, 0, T5},
|
|
|
|
{"vrinit", "X,8", 0x4a00043e, 0xff9f07ff, 0, T5},
|
|
|
|
{"vrnext", "1K,X", 0x4a20043c, 0xffe0ffff, 0, T5},
|
|
|
|
{"vrsqrt","Q,8,7", 0x4a0003be, 0xfe0007ff, 0, T5},
|
|
|
|
{"vrxor", "X,8", 0x4a00043f, 0xff9f07ff, 0, T5},
|
|
|
|
{"vsqd", "&2K,(--4)K", 0x4a00037f, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsqi", "&2K,(4++)K", 0x4a00037d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsqrt", "Q,7", 0x4a2003bd, 0xfe60ffff, 0, T5},
|
|
|
|
{"vsub", "&3K,2K,1K", 0x4a00002c, 0xfe00003f, 0, T5},
|
|
|
|
{"vsubi", "&3K,2K,J", 0x4a000026, 0xfe1f003f, 0, T5},
|
|
|
|
{"vsubq", "&3K,2K,Q", 0x4a000024, 0xfe1f003f, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vsubw", "&3K,2K,1#w", 0x4a000007, 0xfe00003f, 0, T5},
|
|
|
|
{"vsubx", "&3K,2K,1#x", 0x4a000004, 0xfe00003f, 0, T5},
|
|
|
|
{"vsuby", "&3K,2K,1#y", 0x4a000005, 0xfe00003f, 0, T5},
|
|
|
|
{"vsubz", "&3K,2K,1#z", 0x4a000006, 0xfe00003f, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vsuba", "&UK,2K,1K", 0x4a0002fc, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsubai", "&UK,2K,J", 0x4a00027e, 0xfe1f07ff, 0, T5},
|
|
|
|
{"vsubaq", "&UK,2K,Q", 0x4a00027c, 0xfe1f07ff, 0, T5},
|
1998-03-20 16:01:43 +00:00
|
|
|
{"vsubaw", "&UK,2K,1#w", 0x4a00007f, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsubax", "&UK,2K,1#x", 0x4a00007c, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsubay", "&UK,2K,1#y", 0x4a00007d, 0xfe0007ff, 0, T5},
|
|
|
|
{"vsubaz", "&UK,2K,1#z", 0x4a00007e, 0xfe0007ff, 0, T5},
|
* vu0.h: New file with cop2/vu0 instructions.
* mips-opc.c: Include vu0.h.
* mips-dis.c (print_insn_arg): Handle new args 0-9, +, -, %, K, &,
J, Q, X, and U.
(print_insn_mips): Do not emit a tab after an instruction if the
first arg is an instruction completer (&). If the next arg is an
escape character (%), then print the next arg verbatim.
* Makefile.am (mips-opc.lo): Depend on vu0.h
1998-03-19 21:05:23 +00:00
|
|
|
{"vwaitq","", 0x4a0003bf, 0xffffffff, 0, T5},
|