[LLVMbugs] [Bug 904] #line directives are mishandled in debug info generation

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sun Sep 10 15:49:01 PDT 2006


http://llvm.org/bugs/show_bug.cgi?id=904

jlaskey at apple.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |WORKSFORME



------- Additional Comments From jlaskey at apple.com  2006-09-10 17:49 -------
Works for llvm-gcc 4.0 (output from dwarfdump and llc -march=c)


=============================================

                Dir  Mod Time   File Len   File Name
                ---- ---------- ---------- ---------------------------
file_names[  1]    1 0x00000000 0x00000000 test.c
file_names[  2]    1 0x00000000 0x00000000 someplace
0x00000051: DW_LNE_set_address( 0x00000000 )
0x00000058: address += 0,  line += 2
            0x0000000000000000      1      3      0

0x00000059: DW_LNE_set_address( 0x00000004 )
0x00000060: DW_LNS_set_file( 2 )
0x00000062: address += 0,  line += -2
            0x0000000000000004      2      1      0

0x00000063: DW_LNE_set_address( 0x00000018 )
0x0000006a: address += 0,  line += 1
            0x0000000000000018      2      2      0

0x0000006b: DW_LNE_set_address( 0x0000001c )
0x00000072: DW_LNE_end_sequence
            0x000000000000001c      2      2      0

=============================================

int f(int ltmp_0_1) {
  int ltmp_1_2;    /* Address-exposed local */
  int ltmp_2_2;    /* Address-exposed local */
  int ltmp_3_2;    /* Address-exposed local */
  int ltmp_4_1;
  struct l_unnamed0 *ltmp_5_3;
  struct l_unnamed0 *ltmp_6_3;
  int ltmp_7_1;
  int ltmp_8_1;
  int ltmp_9_1;
  int ltmp_10_1;

  ltmp_4_1 = (int )0;
  
#line 3 "/Sources/Projects/DwarfTesting/test.c"
;
  ltmp_5_3 = (struct l_unnamed0 *)(&ltmp_1_2);
  *(&ltmp_1_2) = ltmp_0_1;
  ltmp_6_3 = (struct l_unnamed0 *)(&ltmp_2_2);
  
#line 1 "/Sources/Projects/DwarfTesting/someplace"
;
  ltmp_7_1 = *(&ltmp_1_2);
  ltmp_8_1 = *(&ltmp_1_2);
  *(&ltmp_3_2) = (ltmp_7_1*ltmp_8_1);
  ltmp_9_1 = *(&ltmp_3_2);
  *(&ltmp_2_2) = ltmp_9_1;
  ltmp_10_1 = *(&ltmp_2_2);
  
#line 2 "/Sources/Projects/DwarfTesting/someplace"
;
  return ltmp_10_1;
}






------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the llvm-bugs mailing list