summaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-24 06:15:31 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-24 06:15:31 +0000
commitf9477390b376afc765528e92fc3f115f898cab93 (patch)
tree88ce145b6021c196dc1ca65dc4fcae3d5145d98d /gcc/stmt.c
parent727dae1bfcecdb605a4d04678ba63b09d2f91ee1 (diff)
downloadgcc-f9477390b376afc765528e92fc3f115f898cab93.tar.gz
* stmt.c (resolve_operand_names): Handle operand modifiers.
* gcc.dg/asm-4.c: Test operand modifiers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48299 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r--gcc/stmt.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 5682a26868c..c87612aa3c3 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -2080,8 +2080,16 @@ resolve_operand_names (string, outputs, inputs, pconstraints)
p = buffer;
while ((p = strchr (p, '%')) != NULL)
{
- if (*++p != '[')
- continue;
+ if (p[1] == '[')
+ p += 1;
+ else if (ISALPHA (p[1]) && p[2] == '[')
+ p += 2;
+ else
+ {
+ p += 1;
+ continue;
+ }
+
p = resolve_operand_name_1 (p, outputs, inputs);
}