From: Alan Modra Date: Thu, 4 Sep 2014 12:18:25 +0000 (+0930) Subject: re PR debug/60655 (ICE: output_operand: invalid expression as operand) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5c153812634ad41f3bb616a77a29db64b6efdb5d;p=gcc.git re PR debug/60655 (ICE: output_operand: invalid expression as operand) PR debug/60655 * dwarf2out.c (mem_loc_descriptor ): Return NULL if addend can't be output. From-SVN: r214899 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 94cf799dec7..90af3d4c7d8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-09-04 Alan Modra + + PR debug/60655 + * dwarf2out.c (mem_loc_descriptor ): Return NULL if addend + can't be output. + 2014-09-03 Matthew Fortune * target.def (TARGET_DWARF_FRAME_REG_MODE): New target hook. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 21afc3fe21e..23a80d831cb 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -12699,7 +12699,7 @@ mem_loc_descriptor (rtx rtl, enum machine_mode mode, op1 = mem_loc_descriptor (XEXP (rtl, 1), mode, mem_mode, VAR_INIT_STATUS_INITIALIZED); if (op1 == 0) - break; + return NULL; add_loc_descr (&mem_loc_result, op1); add_loc_descr (&mem_loc_result, new_loc_descr (DW_OP_plus, 0, 0));