X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fdwarf2out.c;h=1f72f906d3828d0f1761aa950ea926ba44535829;hp=e7e2e8f9a723cac763fc63b71990cccb6c8d9ebe;hb=924259e26cf12fc48e8ae4cc2f27bc67e53174bd;hpb=414b8bf004a3bc121dff39da187a2b06501717f8 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index e7e2e8f9a72..1f72f906d38 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -1040,7 +1040,7 @@ def_cfa_1 (const char *label, dw_cfa_location *loc_p) cfi = new_cfi (); - if (loc.reg == old_cfa.reg && !loc.indirect) + if (loc.reg == old_cfa.reg && !loc.indirect && !old_cfa.indirect) { /* Construct a "DW_CFA_def_cfa_offset " instruction, indicating the CFA register did not change but the offset did. The data @@ -1056,7 +1056,8 @@ def_cfa_1 (const char *label, dw_cfa_location *loc_p) #ifndef MIPS_DEBUGGING_INFO /* SGI dbx thinks this means no offset. */ else if (loc.offset == old_cfa.offset && old_cfa.reg != INVALID_REGNUM - && !loc.indirect) + && !loc.indirect + && !old_cfa.indirect) { /* Construct a "DW_CFA_def_cfa_register " instruction, indicating the CFA register has changed to but the