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
commitb57d375bdea3e29a7636cc9f786b55733f0bb9f2 (patch)
treec189facf61e989868527603a5364d90bfecd5792 /gas/dw2gencfi.c
parent92757bc91688685a680cc6c6cd03324b894c4501 (diff)
downloadbinutils-gdb-b57d375bdea3e29a7636cc9f786b55733f0bb9f2.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 9601b30d778..eb2f476b711 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: