diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2010-12-27 02:05:14 +0000 |
---|---|---|
committer | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2010-12-27 02:05:14 +0000 |
commit | 6b6e3976711b1e2693c5a56c3baa9f1d28d277bb (patch) | |
tree | f5740c671ef505075c87ca2141261f4f3c8b4b01 /include/opcode | |
parent | 589e430baaacf262a725154b4c437387f4ac2160 (diff) | |
download | cygnal-6b6e3976711b1e2693c5a56c3baa9f1d28d277bb.tar.gz cygnal-6b6e3976711b1e2693c5a56c3baa9f1d28d277bb.tar.bz2 cygnal-6b6e3976711b1e2693c5a56c3baa9f1d28d277bb.zip |
PR gas/11395
* config/tc-hppa.c (pa_ip): Set doubleword carry/borrow bit when a
doubleword completer or doubleword condition is found in an add/sub
instruction. Reject match for 'A'/'S' only if there is no condition
and d bit is not set.
* gas/hppa/basic/add2.s: Add test for a simple doubleword carry
instruction.
* gas/hppa/basic/sub2.s: Add tests for simple word and doubleword
borrow instructions.
* gas/hppa/basic/basic.exp: Update regexps for above.
* opcode/hppa.h: Clear "d" bit in "add" and "sub" patterns.
Diffstat (limited to 'include/opcode')
-rw-r--r-- | include/opcode/hppa.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/opcode/hppa.h b/include/opcode/hppa.h index 8d767b4bc..3927fcbc0 100644 --- a/include/opcode/hppa.h +++ b/include/opcode/hppa.h @@ -634,20 +634,20 @@ static const struct pa_opcode pa_opcodes[] = { "addio", 0xb4000800, 0xfc000800, "?ai,b,x", pa10, 0}, { "addit", 0xb0000000, 0xfc000800, "?ai,b,x", pa10, 0}, { "addito", 0xb0000800, 0xfc000800, "?ai,b,x", pa10, 0}, -{ "add", 0x08000720, 0xfc0007e0, "cY?Ax,b,t", pa20, FLAG_STRICT}, +{ "add", 0x08000700, 0xfc0007e0, "cY?Ax,b,t", pa20, FLAG_STRICT}, { "add", 0x08000700, 0xfc0007e0, "cy?ax,b,t", pa10, FLAG_STRICT}, -{ "add", 0x08000220, 0xfc0003e0, "ca?Ax,b,t", pa20, FLAG_STRICT}, +{ "add", 0x08000200, 0xfc0003e0, "ca?Ax,b,t", pa20, FLAG_STRICT}, { "add", 0x08000200, 0xfc0003e0, "ca?ax,b,t", pa10, FLAG_STRICT}, { "add", 0x08000600, 0xfc000fe0, "?ax,b,t", pa10, 0}, { "addl", 0x08000a00, 0xfc000fe0, "?ax,b,t", pa10, 0}, { "addo", 0x08000e00, 0xfc000fe0, "?ax,b,t", pa10, 0}, { "addc", 0x08000700, 0xfc000fe0, "?ax,b,t", pa10, 0}, { "addco", 0x08000f00, 0xfc000fe0, "?ax,b,t", pa10, 0}, -{ "sub", 0x080004e0, 0xfc0007e0, "ct?Sx,b,t", pa20, FLAG_STRICT}, +{ "sub", 0x080004c0, 0xfc0007e0, "ct?Sx,b,t", pa20, FLAG_STRICT}, { "sub", 0x080004c0, 0xfc0007e0, "ct?sx,b,t", pa10, FLAG_STRICT}, -{ "sub", 0x08000520, 0xfc0007e0, "cB?Sx,b,t", pa20, FLAG_STRICT}, +{ "sub", 0x08000500, 0xfc0007e0, "cB?Sx,b,t", pa20, FLAG_STRICT}, { "sub", 0x08000500, 0xfc0007e0, "cb?sx,b,t", pa10, FLAG_STRICT}, -{ "sub", 0x08000420, 0xfc0007e0, "cv?Sx,b,t", pa20, FLAG_STRICT}, +{ "sub", 0x08000400, 0xfc0007e0, "cv?Sx,b,t", pa20, FLAG_STRICT}, { "sub", 0x08000400, 0xfc0007e0, "cv?sx,b,t", pa10, FLAG_STRICT}, { "sub", 0x08000400, 0xfc000fe0, "?sx,b,t", pa10, 0}, { "subo", 0x08000c00, 0xfc000fe0, "?sx,b,t", pa10, 0}, |