aboutsummaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2001-12-23 22:15:31 -0800
committerRichard Henderson <rth@gcc.gnu.org>2001-12-23 22:15:31 -0800
commit7abcb63a4201377eaf76df5eb4d18265f3848818 (patch)
tree88ce145b6021c196dc1ca65dc4fcae3d5145d98d /gcc/stmt.c
parent6be2e1f88c80e2cb686d02ac55a518b819900ead (diff)
downloadgcc-7abcb63a4201377eaf76df5eb4d18265f3848818.zip
gcc-7abcb63a4201377eaf76df5eb4d18265f3848818.tar.gz
gcc-7abcb63a4201377eaf76df5eb4d18265f3848818.tar.bz2
stmt.c (resolve_operand_names): Handle operand modifiers.
* stmt.c (resolve_operand_names): Handle operand modifiers. * gcc.dg/asm-4.c: Test operand modifiers. From-SVN: r48299
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 5682a26..c87612a 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);
}