aboutsummaryrefslogtreecommitdiff
path: root/gas/app.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2003-06-07 14:53:59 +0000
committerH.J. Lu <hjl.tools@gmail.com>2003-06-07 14:53:59 +0000
commit5262831592fbfc43b9f107b29464f22d687b318f (patch)
tree8e56229a61cdbe7fa7b4df9287e3f56c2346d78c /gas/app.c
parent789b97bf70a482f12009c430f02eff652ce045d4 (diff)
downloadgdb-5262831592fbfc43b9f107b29464f22d687b318f.zip
gdb-5262831592fbfc43b9f107b29464f22d687b318f.tar.gz
gdb-5262831592fbfc43b9f107b29464f22d687b318f.tar.bz2
2003-06-07 H.J. Lu <hongjiu.lu@intel.com>
* app.c (do_scrub_chars): Add states 14 and 15 to handle predicate for ia64.
Diffstat (limited to 'gas/app.c')
-rw-r--r--gas/app.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/gas/app.c b/gas/app.c
index b1e5f4c..074729f 100644
--- a/gas/app.c
+++ b/gas/app.c
@@ -374,6 +374,12 @@ do_scrub_chars (get, tostart, tolen)
13: After seeing a vertical bar, looking for a second
vertical bar as a parallel expression separator.
#endif
+#ifdef TC_IA64
+ 14: After seeing a `(' at state 0, looking for a `)' as
+ predicate.
+ 15: After seeing a `(' at state 1, looking for a `)' as
+ predicate.
+#endif
*/
/* I added states 9 and 10 because the MIPS ECOFF assembler uses
@@ -674,6 +680,25 @@ do_scrub_chars (get, tostart, tolen)
/* flushchar: */
ch = GET ();
+#ifdef TC_IA64
+ if (ch == '(' && (state == 0 || state == 1))
+ {
+ state += 14;
+ PUT (ch);
+ continue;
+ }
+ else if (state == 14 || state == 15)
+ {
+ if (ch == ')')
+ state -= 14;
+ else
+ {
+ PUT (ch);
+ continue;
+ }
+ }
+#endif
+
recycle:
#if defined TC_ARM && defined OBJ_ELF