[PATCH] D49426: [DEBUG_INFO] fix .loc directives emitted for missing prologues

Tom Weaver via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 18 06:24:31 PDT 2018


TWeaver added a comment.

In https://reviews.llvm.org/D49426#1166190, @CarlosAlbertoEnciso wrote:

> In https://reviews.llvm.org/D49426#1165346, @TWeaver wrote:
>
> > In https://reviews.llvm.org/D49426#1165146, @dblaikie wrote:
> >
> > > Could you provide a small example dump of the invalid line table you're addressing?
> >
> >
> > I fed the resulting .elf into dwarfdump with -l and got the following output:
>
>
> What is the ouput generated by llvm-dwarfdump?


Hiya Carlos,

thanks for your review.

heres the line table dump from llvm-dwarfdump.

  .debug_line contents:
  debug_line[0x00000000]
  Line table prologue:
      total_length: 0x00000070
           version: 4
   prologue_length: 0x0000004e
   min_inst_length: 1
  max_ops_per_inst: 1
   default_is_stmt: 1
         line_base: -5
        line_range: 14
       opcode_base: 13
  standard_opcode_lengths[DW_LNS_copy] = 0
  standard_opcode_lengths[DW_LNS_advance_pc] = 1
  standard_opcode_lengths[DW_LNS_advance_line] = 1
  standard_opcode_lengths[DW_LNS_set_file] = 1
  standard_opcode_lengths[DW_LNS_set_column] = 1
  standard_opcode_lengths[DW_LNS_negate_stmt] = 0
  standard_opcode_lengths[DW_LNS_set_basic_block] = 0
  standard_opcode_lengths[DW_LNS_const_add_pc] = 0
  standard_opcode_lengths[DW_LNS_fixed_advance_pc] = 1
  standard_opcode_lengths[DW_LNS_set_prologue_end] = 0
  standard_opcode_lengths[DW_LNS_set_epilogue_begin] = 0
  standard_opcode_lengths[DW_LNS_set_isa] = 1
  include_directories[  1] = "/home/clangbox/dev/clang/lldb_release/bin"
  file_names[  1]:
             name: "leafCall.cpp"
        dir_index: 1
         mod_time: 0x00000000
           length: 0x00000000
  
  Address            Line   Column File   ISA Discriminator Flags
  ------------------ ------ ------ ------ --- ------------- -------------
  0x0000000000400480      2      0      1   0             0  is_stmt
  0x0000000000400480      3      3      1   0             0  is_stmt prologue_end
  0x0000000000400490      7      0      1   0             0  is_stmt
  0x0000000000400490      8      3      1   0             0  is_stmt prologue_end
  0x0000000000400496      8      3      1   0             0  is_stmt end_sequence


https://reviews.llvm.org/D49426





More information about the llvm-commits mailing list