This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
Patch: add new pa2.0 instructions
- To: binutils@sourceware.cygnus.com
- Subject: Patch: add new pa2.0 instructions
- From: "Jerry Quinn" <jquinn@nortelnetworks.com>
- Date: Tue, 13 Jul 1999 21:56:07 +0000
This adds 2 more instructions supporting the branch target stack on pa2.0.
--
Jerry Quinn Tel: (514) 761-8737
jquinn@nortelnetworks.com Fax: (514) 761-8505
Speech Recognition Research
ChangeLog entry:
Tue Jul 13 17:52:28 EDT 1999 Jerry Quinn <jquinn@nortelnetworks.com>
* include/opcode/hppa.h (pa_opcodes): Add pushnom and pushbts
instructions. Add FLAG_STRICT to new syntax instructions.
*** pa-prev/include/opcode/hppa.h Mon Jul 12 16:11:48 1999
--- gas-src/include/opcode/hppa.h Tue Jul 13 17:50:30 1999
***************
*** 294,312 ****
{ "bb", 0xc4004000, 0xfc004000, "?bnx,Q,w", pa10},
{ "bvb", 0xc0004000, 0xffe04000, "?bnx,w", pa10},
{ "clrbts", 0xe8004005, 0xffffffff, "", pa20},
/* Computation Instructions */
! { "cmpclr", 0x080008a0, 0xfc000fe0, "?Sx,b,t", pa20},
! { "cmpclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa20},
{ "comclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa10},
! { "or", 0x08000260, 0xfc000fe0, "?Lx,b,t", pa20},
{ "or", 0x08000240, 0xfc000fe0, "?lx,b,t", pa10},
{ "xor", 0x080002a0, 0xfc000fe0, "?Lx,b,t", pa20},
{ "xor", 0x08000280, 0xfc000fe0, "?lx,b,t", pa10},
! { "and", 0x08000220, 0xfc000fe0, "?Lx,b,t", pa20},
{ "and", 0x08000200, 0xfc000fe0, "?lx,b,t", pa10},
! { "andcm", 0x08000020, 0xfc000fe0, "?Lx,b,t", pa20},
{ "andcm", 0x08000000, 0xfc000fe0, "?lx,b,t", pa10},
{ "uxor", 0x08000380, 0xfc000fe0, "?ux,b,t", pa10},
{ "uaddcm", 0x08000980, 0xfc000fe0, "?ux,b,t", pa10},
--- 294,314 ----
{ "bb", 0xc4004000, 0xfc004000, "?bnx,Q,w", pa10},
{ "bvb", 0xc0004000, 0xffe04000, "?bnx,w", pa10},
{ "clrbts", 0xe8004005, 0xffffffff, "", pa20},
+ { "pushnom", 0xe8004001, 0xffffffff, "", pa20}, /* Same as pushbts %r0 */
+ { "pushbts", 0xe8004001, 0xffe0ffff, "x", pa20, FLAG_STRICT},
/* Computation Instructions */
! { "cmpclr", 0x080008a0, 0xfc000fe0, "?Sx,b,t", pa20, FLAG_STRICT},
! { "cmpclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa10, FLAG_STRICT},
{ "comclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa10},
! { "or", 0x08000260, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
{ "or", 0x08000240, 0xfc000fe0, "?lx,b,t", pa10},
{ "xor", 0x080002a0, 0xfc000fe0, "?Lx,b,t", pa20},
{ "xor", 0x08000280, 0xfc000fe0, "?lx,b,t", pa10},
! { "and", 0x08000220, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
{ "and", 0x08000200, 0xfc000fe0, "?lx,b,t", pa10},
! { "andcm", 0x08000020, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
{ "andcm", 0x08000000, 0xfc000fe0, "?lx,b,t", pa10},
{ "uxor", 0x08000380, 0xfc000fe0, "?ux,b,t", pa10},
{ "uaddcm", 0x08000980, 0xfc000fe0, "?ux,b,t", pa10},
***************
*** 317,323 ****
{ "addio", 0xb4000800, 0xfc000800, "?ai,b,x", pa10},
{ "addit", 0xb0000000, 0xfc000800, "?ai,b,x", pa10},
{ "addito", 0xb0000800, 0xfc000800, "?ai,b,x", pa10},
! { "add", 0x08000620, 0xfc000fe0, "?Ax,b,t", pa20},
{ "add", 0x08000600, 0xfc000fe0, "?ax,b,t", pa10},
{ "addl", 0x08000a00, 0xfc000fe0, "?ax,b,t", pa10},
{ "addo", 0x08000e00, 0xfc000fe0, "?ax,b,t", pa10},
--- 319,325 ----
{ "addio", 0xb4000800, 0xfc000800, "?ai,b,x", pa10},
{ "addit", 0xb0000000, 0xfc000800, "?ai,b,x", pa10},
{ "addito", 0xb0000800, 0xfc000800, "?ai,b,x", pa10},
! { "add", 0x08000620, 0xfc000fe0, "?Ax,b,t", pa20, FLAG_STRICT},
{ "add", 0x08000600, 0xfc000fe0, "?ax,b,t", pa10},
{ "addl", 0x08000a00, 0xfc000fe0, "?ax,b,t", pa10},
{ "addo", 0x08000e00, 0xfc000fe0, "?ax,b,t", pa10},
***************
*** 332,339 ****
{ "ds", 0x08000440, 0xfc000fe0, "?sx,b,t", pa10},
{ "subi", 0x94000000, 0xfc000800, "?si,b,x", pa10},
{ "subio", 0x94000800, 0xfc000800, "?si,b,x", pa10},
! { "cmpiclr", 0x90000800, 0xfc000800, "?Si,b,x", pa20},
! { "cmpiclr", 0x90000000, 0xfc000800, "?si,b,x", pa20},
{ "comiclr", 0x90000000, 0xfc000800, "?si,b,x", pa10},
{ "sh1add", 0x08000640, 0xfc000fe0, "?ax,b,t", pa10},
{ "sh1addl", 0x08000a40, 0xfc000fe0, "?ax,b,t", pa10},
--- 334,341 ----
{ "ds", 0x08000440, 0xfc000fe0, "?sx,b,t", pa10},
{ "subi", 0x94000000, 0xfc000800, "?si,b,x", pa10},
{ "subio", 0x94000800, 0xfc000800, "?si,b,x", pa10},
! { "cmpiclr", 0x90000800, 0xfc000800, "?Si,b,x", pa20, FLAG_STRICT},
! { "cmpiclr", 0x90000000, 0xfc000800, "?si,b,x", pa10, FLAG_STRICT},
{ "comiclr", 0x90000000, 0xfc000800, "?si,b,x", pa10},
{ "sh1add", 0x08000640, 0xfc000fe0, "?ax,b,t", pa10},
{ "sh1addl", 0x08000a40, 0xfc000fe0, "?ax,b,t", pa10},
***************
*** 374,381 ****
{ "ldsid", 0x000010a0, 0xfc1f3fe0, "(b),t", pa10},
{ "mtsp", 0x00001820, 0xffe01fff, "x,S", pa10},
{ "mtctl", 0x00001840, 0xfc00ffff, "x,^", pa10},
! { "mtsarcm", 0x016018C0, 0xffe0ffff, "x", pa20},
! { "mfia", 0x000014A0, 0xffffffe0, "t", pa20},
{ "mfsp", 0x000004a0, 0xffff1fe0, "S,t", pa10},
{ "mfctl", 0x000008a0, 0xfc1fffe0, "^,t", pa10},
{ "sync", 0x00000400, 0xffffffff, "", pa10},
--- 376,383 ----
{ "ldsid", 0x000010a0, 0xfc1f3fe0, "(b),t", pa10},
{ "mtsp", 0x00001820, 0xffe01fff, "x,S", pa10},
{ "mtctl", 0x00001840, 0xfc00ffff, "x,^", pa10},
! { "mtsarcm", 0x016018C0, 0xffe0ffff, "x", pa20, FLAG_STRICT},
! { "mfia", 0x000014A0, 0xffffffe0, "t", pa20, FLAG_STRICT},
{ "mfsp", 0x000004a0, 0xffff1fe0, "S,t", pa10},
{ "mfctl", 0x000008a0, 0xfc1fffe0, "^,t", pa10},
{ "sync", 0x00000400, 0xffffffff, "", pa10},