diff options
author | Jason Merrill <jason@redhat.com> | 2000-06-30 03:51:39 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2000-06-30 03:51:39 -0400 |
commit | 3139472f7ac7f5869a7b1b4d063f9dc70c6dd383 (patch) | |
tree | dc92efdd2990407fe662bcca18a7397adc378ac6 | |
parent | 07a3fa9ce96e0d02c98e424a7e70778e2774ad60 (diff) | |
download | gcc-3139472f7ac7f5869a7b1b4d063f9dc70c6dd383.zip gcc-3139472f7ac7f5869a7b1b4d063f9dc70c6dd383.tar.gz gcc-3139472f7ac7f5869a7b1b4d063f9dc70c6dd383.tar.bz2 |
dwarf2out.c (output_loc_operands): Don't abort on codes that have no operands.
* dwarf2out.c (output_loc_operands): Don't abort on codes that have
no operands.
From-SVN: r34805
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 22 |
2 files changed, 22 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fdc55f3..a0dd12a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-06-29 Jason Merrill <jason@redhat.com> + + * dwarf2out.c (output_loc_operands): Don't abort on codes that have + no operands. + 2000-06-29 Jim Wilson <wilson@cygnus.com> * config/ia64/ia64.h (PREFERRED_RELOAD_CLASS): Return NO_REGS for diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 6a438b5..c8aff3a 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -2622,10 +2622,6 @@ output_loc_operands (loc) switch (loc->dw_loc_opc) { #ifdef DWARF2_DEBUGGING_INFO - /* We currently don't make any attempt to make sure these are - aligned properly like we do for the main unwind info, so - don't support emitting things larger than a byte if we're - only doing unwinding. */ case DW_OP_addr: ASM_OUTPUT_DWARF_ADDR_CONST (asm_out_file, val1->v.val_addr); fputc ('\n', asm_out_file); @@ -2650,6 +2646,21 @@ output_loc_operands (loc) ASM_OUTPUT_DWARF_DATA2 (asm_out_file, val1->v.val_int); fputc ('\n', asm_out_file); break; +#else + case DW_OP_addr: + case DW_OP_const2u: + case DW_OP_const2s: + case DW_OP_const4u: + case DW_OP_const4s: + case DW_OP_const8u: + case DW_OP_const8s: + case DW_OP_skip: + case DW_OP_bra: + /* We currently don't make any attempt to make sure these are + aligned properly like we do for the main unwind info, so + don't support emitting things larger than a byte if we're + only doing unwinding. */ + abort (); #endif case DW_OP_const1u: case DW_OP_const1s: @@ -2731,7 +2742,8 @@ output_loc_operands (loc) fputc ('\n', asm_out_file); break; default: - abort (); + /* Other codes have no operands. */ + break; } } |