From 5c153812634ad41f3bb616a77a29db64b6efdb5d Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 4 Sep 2014 21:48:25 +0930 Subject: [PATCH] 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 --- gcc/ChangeLog | 6 ++++++ gcc/dwarf2out.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) 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)); -- 2.30.2