summaryrefslogtreecommitdiff
path: root/gas/dw2gencfi.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2005-11-17 08:33:36 +0000
committerJan Beulich <jbeulich@novell.com>2005-11-17 08:33:36 +0000
commit0e7f6a1c9c1f5af2e17f92b66b73b367d5bdc28e (patch)
treeccb05a2fe14b4f8162417d4137d74d1c032a4653 /gas/dw2gencfi.c
parent7231d0d133640764fae318033e62187e67a72f03 (diff)
downloadbinutils-redhat-0e7f6a1c9c1f5af2e17f92b66b73b367d5bdc28e.tar.gz
gas/
2005-11-17 Jan Beulich <jbeulich@novell.com> * dw2gencfi.c (dot_cfi): Put argument parsing for cases DW_CFA_restore and DW_CFA_undefined in a loop.
Diffstat (limited to 'gas/dw2gencfi.c')
-rw-r--r--gas/dw2gencfi.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/gas/dw2gencfi.c b/gas/dw2gencfi.c
index 9601b30d77..eb2f476b71 100644
--- a/gas/dw2gencfi.c
+++ b/gas/dw2gencfi.c
@@ -502,13 +502,27 @@ dot_cfi (int arg)
break;
case DW_CFA_restore:
- reg1 = cfi_parse_reg ();
- cfi_add_CFA_restore (reg1);
+ for (;;)
+ {
+ reg1 = cfi_parse_reg ();
+ cfi_add_CFA_restore (reg1);
+ SKIP_WHITESPACE ();
+ if (*input_line_pointer != ',')
+ break;
+ ++input_line_pointer;
+ }
break;
case DW_CFA_undefined:
- reg1 = cfi_parse_reg ();
- cfi_add_CFA_undefined (reg1);
+ for (;;)
+ {
+ reg1 = cfi_parse_reg ();
+ cfi_add_CFA_undefined (reg1);
+ SKIP_WHITESPACE ();
+ if (*input_line_pointer != ',')
+ break;
+ ++input_line_pointer;
+ }
break;
case DW_CFA_same_value: