Hi - I'm trying to use gas 2.15 on PA-RISC, and I want to issue an ldcws instruction like:

    ldcws,co 0(%r20), %r19

which is accepted by the HP assembler, but gas barfs with:

   Error: Invalid Short Load/Store Completer.

gas apparently doesn't like the cache control hint completor, which is critical for semaphore performance on PA-RISC. I've tried every reasonable combination of characters for the completer that I can think of, and nothing seems to work.

Here's a patch to 2.15 which I believe fixes the issue:

--- binutils-2.16-old/include/opcode/hppa.h     Fri May  6 15:50:54 2005
+++ binutils-2.16/include/opcode/hppa.h Fri May  6 15:41:24 2005
@@ -437,8 +437,8 @@
 { "ldbs",      0x0c001000, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
 { "ldbs",      0x0c001000, 0xfc001fc0, "cM5(b),t", pa10, 0},
 { "ldwas",     0x0c001180, 0xfc00dfc0, "cM5(b),t", pa10, 0},
-{ "ldcws",     0x0c0011c0, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
-{ "ldcws",     0x0c0011c0, 0xfc001fc0, "cM5(b),t", pa10, 0},
+{ "ldcws",     0x0c0011c0, 0xfc001fc0, "cd5(s,b),t", pa10, 0},
+{ "ldcws",     0x0c0011c0, 0xfc001fc0, "cd5(b),t", pa10, 0},
 { "stws",      0x0c001280, 0xfc001fc0, "cMx,V(s,b)", pa10, 0},
 { "stws",      0x0c001280, 0xfc001fc0, "cMx,V(b)", pa10, 0},
 { "sths",      0x0c001240, 0xfc001fc0, "cMx,V(s,b)", pa10, 0},


Thanks, Dan



_______________________________________________
bug-binutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to