From 3de61b4c0144748e4b9157e2c22fe4ea685981a2 Mon Sep 17 00:00:00 2001 From: Manman Ren Date: Thu, 7 Mar 2013 01:42:00 +0000 Subject: Debug Info: store the files and directories for each compile unit. We now emit a line table for each compile unit. To reduce the prologue size of each line table, the files and directories used by each compile unit are stored in std::map > instead of std::vector< >. The prologue for a lto'ed image can be as big as 93K. Duplicating 93K for each compile unit causes a huge increase of debug info. With this patch, each prologue will only emit the files required by the compile unit. rdar://problem/13342023 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176605 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/DebugInfo/X86/stmt-list-multiple-compile-units.ll | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'test/DebugInfo') diff --git a/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll b/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll index 601d08f..814f86c 100644 --- a/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll +++ b/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll @@ -9,13 +9,16 @@ ; CHECK: DW_TAG_compile_unit ; CHECK: DW_AT_low_pc [DW_FORM_addr] (0x0000000000000000) -; CHECK: DW_AT_stmt_list [DW_FORM_data4] (0x00000049) +; CHECK: DW_AT_stmt_list [DW_FORM_data4] (0x0000003c) ; CHECK: .debug_line contents: ; CHECK-NEXT: Line table prologue: -; CHECK-NEXT: total_length: 0x00000045 +; CHECK-NEXT: total_length: 0x00000038 +; CHECK: file_names[ 1] 0 0x00000000 0x00000000 simple.c ; CHECK: Line table prologue: -; CHECK: total_length: 0x00000047 +; CHECK-NEXT: total_length: 0x00000039 +; CHECK: file_names[ 1] 0 0x00000000 0x00000000 simple2.c +; CHECK-NOT: file_names define i32 @test(i32 %a) nounwind uwtable ssp { entry: -- cgit v1.1