PR gas/11395
* config/tc-hppa.c (pa_ip): Revert last change. Add variable need_cond to determine whether a 64-bit condition is needed for 'A' and 'S' conditions. Default to 32-bit never condition for logical and unit instructions. Add error message for missing branch on bit condition. * hppa.h (pa_opcodes): Revert last change. Exchange 32 and 64-bit "bb" entries. * hppa-dis.c (compare_cond_64_names): Change never condition to ",*". (add_cond_64_names): Likewise. (logical_cond_64_names): Likewise. (unit_cond_64_names): Likewise.
This commit is contained in:
		| @@ -1,3 +1,9 @@ | |||||||
|  | 2010-12-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca> | ||||||
|  |  | ||||||
|  | 	PR gas/11395 | ||||||
|  | 	* hppa.h (pa_opcodes): Revert last change.  Exchange 32 and 64-bit | ||||||
|  | 	"bb" entries. | ||||||
|  |  | ||||||
| 2010-12-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca> | 2010-12-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca> | ||||||
|  |  | ||||||
| 	PR gas/11395 | 	PR gas/11395 | ||||||
|   | |||||||
| @@ -594,10 +594,10 @@ static const struct pa_opcode pa_opcodes[] = | |||||||
| { "addbf",	0xa8000000, 0xfc000000, "?dnx,b,w", pa10, 0}, | { "addbf",	0xa8000000, 0xfc000000, "?dnx,b,w", pa10, 0}, | ||||||
| { "addibt",	0xa4000000, 0xfc000000, "?dn5,b,w", pa10, 0}, | { "addibt",	0xa4000000, 0xfc000000, "?dn5,b,w", pa10, 0}, | ||||||
| { "addibf",	0xac000000, 0xfc000000, "?dn5,b,w", pa10, 0}, | { "addibf",	0xac000000, 0xfc000000, "?dn5,b,w", pa10, 0}, | ||||||
| { "bb",		0xc0004000, 0xffe06000, "?bnx,!,w", pa10, FLAG_STRICT},  |  | ||||||
| { "bb",		0xc0006000, 0xffe06000, "?Bnx,!,w", pa20, FLAG_STRICT},  | { "bb",		0xc0006000, 0xffe06000, "?Bnx,!,w", pa20, FLAG_STRICT},  | ||||||
| { "bb",		0xc4004000, 0xfc006000, "?bnx,Q,w", pa10, FLAG_STRICT},  | { "bb",		0xc0004000, 0xffe06000, "?bnx,!,w", pa10, FLAG_STRICT},  | ||||||
| { "bb",		0xc4004000, 0xfc004000, "?Bnx,B,w", pa20, FLAG_STRICT},  | { "bb",		0xc4004000, 0xfc004000, "?Bnx,B,w", pa20, FLAG_STRICT},  | ||||||
|  | { "bb",		0xc4004000, 0xfc006000, "?bnx,Q,w", pa10, FLAG_STRICT},  | ||||||
| { "bb",		0xc4004000, 0xfc006000, "?bnx,Q,w", pa10, 0},  | { "bb",		0xc4004000, 0xfc006000, "?bnx,Q,w", pa10, 0},  | ||||||
| { "bvb",	0xc0004000, 0xffe04000, "?bnx,w", pa10, 0}, | { "bvb",	0xc0004000, 0xffe04000, "?bnx,w", pa10, 0}, | ||||||
| { "clrbts",	0xe8004005, 0xffffffff, "", pa20, FLAG_STRICT}, | { "clrbts",	0xe8004005, 0xffffffff, "", pa20, FLAG_STRICT}, | ||||||
| @@ -634,20 +634,20 @@ static const struct pa_opcode pa_opcodes[] = | |||||||
| { "addio",	0xb4000800, 0xfc000800, "?ai,b,x", pa10, 0}, | { "addio",	0xb4000800, 0xfc000800, "?ai,b,x", pa10, 0}, | ||||||
| { "addit",	0xb0000000, 0xfc000800, "?ai,b,x", pa10, 0}, | { "addit",	0xb0000000, 0xfc000800, "?ai,b,x", pa10, 0}, | ||||||
| { "addito",	0xb0000800, 0xfc000800, "?ai,b,x", pa10, 0}, | { "addito",	0xb0000800, 0xfc000800, "?ai,b,x", pa10, 0}, | ||||||
| { "add",	0x08000700, 0xfc0007e0, "cY?Ax,b,t", pa20, FLAG_STRICT}, | { "add",	0x08000720, 0xfc0007e0, "cY?Ax,b,t", pa20, FLAG_STRICT}, | ||||||
| { "add",	0x08000700, 0xfc0007e0, "cy?ax,b,t", pa10, FLAG_STRICT}, | { "add",	0x08000700, 0xfc0007e0, "cy?ax,b,t", pa10, FLAG_STRICT}, | ||||||
| { "add",	0x08000200, 0xfc0003e0, "ca?Ax,b,t", pa20, FLAG_STRICT}, | { "add",	0x08000220, 0xfc0003e0, "ca?Ax,b,t", pa20, FLAG_STRICT}, | ||||||
| { "add",	0x08000200, 0xfc0003e0, "ca?ax,b,t", pa10, FLAG_STRICT}, | { "add",	0x08000200, 0xfc0003e0, "ca?ax,b,t", pa10, FLAG_STRICT}, | ||||||
| { "add",	0x08000600, 0xfc000fe0, "?ax,b,t", pa10, 0}, | { "add",	0x08000600, 0xfc000fe0, "?ax,b,t", pa10, 0}, | ||||||
| { "addl",	0x08000a00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | { "addl",	0x08000a00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | ||||||
| { "addo",	0x08000e00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | { "addo",	0x08000e00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | ||||||
| { "addc",	0x08000700, 0xfc000fe0, "?ax,b,t", pa10, 0}, | { "addc",	0x08000700, 0xfc000fe0, "?ax,b,t", pa10, 0}, | ||||||
| { "addco",	0x08000f00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | { "addco",	0x08000f00, 0xfc000fe0, "?ax,b,t", pa10, 0}, | ||||||
| { "sub",	0x080004c0, 0xfc0007e0, "ct?Sx,b,t", pa20, FLAG_STRICT}, | { "sub",	0x080004e0, 0xfc0007e0, "ct?Sx,b,t", pa20, FLAG_STRICT}, | ||||||
| { "sub",	0x080004c0, 0xfc0007e0, "ct?sx,b,t", pa10, FLAG_STRICT}, | { "sub",	0x080004c0, 0xfc0007e0, "ct?sx,b,t", pa10, FLAG_STRICT}, | ||||||
| { "sub",	0x08000500, 0xfc0007e0, "cB?Sx,b,t", pa20, FLAG_STRICT}, | { "sub",	0x08000520, 0xfc0007e0, "cB?Sx,b,t", pa20, FLAG_STRICT}, | ||||||
| { "sub",	0x08000500, 0xfc0007e0, "cb?sx,b,t", pa10, FLAG_STRICT}, | { "sub",	0x08000500, 0xfc0007e0, "cb?sx,b,t", pa10, FLAG_STRICT}, | ||||||
| { "sub",	0x08000400, 0xfc0007e0, "cv?Sx,b,t", pa20, FLAG_STRICT}, | { "sub",	0x08000420, 0xfc0007e0, "cv?Sx,b,t", pa20, FLAG_STRICT}, | ||||||
| { "sub",	0x08000400, 0xfc0007e0, "cv?sx,b,t", pa10, FLAG_STRICT}, | { "sub",	0x08000400, 0xfc0007e0, "cv?sx,b,t", pa10, FLAG_STRICT}, | ||||||
| { "sub",	0x08000400, 0xfc000fe0, "?sx,b,t", pa10, 0}, | { "sub",	0x08000400, 0xfc000fe0, "?sx,b,t", pa10, 0}, | ||||||
| { "subo",	0x08000c00, 0xfc000fe0, "?sx,b,t", pa10, 0}, | { "subo",	0x08000c00, 0xfc000fe0, "?sx,b,t", pa10, 0}, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user