This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [google/gcc-4_9] Add -ftwo-level-line-tables and -gline-tables-only options


patch is ok for google branch.

Dehao

On Thu, Jan 29, 2015 at 1:11 PM, Cary Coutant <ccoutant@google.com> wrote:
> Here's a very slightly revised patch, fixing a couple of bugs found
> during GDB testing.
>
> In out_logical_entry, I should pass along the value of is_stmt when
> creating a logical for the calling context, so that we get a
> breakpoint location for the point of call:
>
>        context = out_logical_entry (table, caller_file_num, s.line,
>                                    caller_discrim, block->caller,
> +                                  is_stmt, true);
>
> And later in out_logical_entry, I should set table->is_stmt only when
> we explicitly set is_stmt in the assembly output:
>
>        if (is_stmt != table->is_stmt)
>         {
>           fputs (" is_stmt ", asm_out_file);
>           putc (is_stmt ? '1' : '0', asm_out_file);
> +         table->is_stmt = is_stmt;
>         }
>
> Instead of at the bottom of the function:
>
>    table->file_num = file_num;
>    table->line_num = line_num;
>    table->discrim_num = discriminator;
> -  table->is_stmt = is_stmt;
>    table->in_use = true;
>
> This sometimes caused lines where is_stmt should have been set to be
> marked is_stmt == 0 because we thought it was already set.
>
> -cary


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]