Revert "Revert "DI: Fold constant arguments into a single MDString""
[oota-llvm.git] / test / DebugInfo / COFF / asan-module-without-functions.ll
1 ; RUN: llc -mcpu=core2 -mtriple=i686-pc-win32 -O0 < %s | FileCheck --check-prefix=X86 %s
2
3 ; This LL file was generated by running clang on the following code with
4 ; -fsanitize=address
5 ; D:\asan.c:
6 ; 1 unsigned char c = 42;
7 ;
8 ; This file defines no functions, so just make sure we don't try to emit
9 ; the line table for functions of zero size.
10 ; X86-NOT: .section        .debug$S,"rn"
11
12 ; ModuleID = 'asan.c'
13 target datalayout = "e-m:w-p:32:32-i64:64-f80:32-n8:16:32-S32"
14 target triple = "i686-pc-win32"
15
16 @c = global { i8, [63 x i8] } { i8 42, [63 x i8] zeroinitializer }, align 32
17 @llvm.global_ctors = appending global [1 x { i32, void ()* }] [{ i32, void ()* } { i32 1, void ()* @asan.module_ctor }]
18 @__asan_gen_ = private constant [7 x i8] c"asan.c\00", align 1
19 @__asan_gen_1 = private unnamed_addr constant [2 x i8] c"c\00", align 1
20 @0 = internal global [1 x { i32, i32, i32, i32, i32, i32 }] [{ i32, i32, i32, i32, i32, i32 } { i32 ptrtoint ({ i8, [63 x i8] }* @c to i32), i32 1, i32 64, i32 ptrtoint ([2 x i8]* @__asan_gen_1 to i32), i32 ptrtoint ([7 x i8]* @__asan_gen_ to i32), i32 0 }]
21 @llvm.global_dtors = appending global [1 x { i32, void ()* }] [{ i32, void ()* } { i32 1, void ()* @asan.module_dtor }]
22
23 define internal void @asan.module_ctor() {
24   call void @__asan_init_v3()
25   call void @__asan_register_globals(i32 ptrtoint ([1 x { i32, i32, i32, i32, i32, i32 }]* @0 to i32), i32 1)
26   ret void
27 }
28
29 declare void @__asan_init_v3()
30
31 declare void @__asan_before_dynamic_init(i32)
32
33 declare void @__asan_after_dynamic_init()
34
35 declare void @__asan_register_globals(i32, i32)
36
37 declare void @__asan_unregister_globals(i32, i32)
38
39 define internal void @asan.module_dtor() {
40   call void @__asan_unregister_globals(i32 ptrtoint ([1 x { i32, i32, i32, i32, i32, i32 }]* @0 to i32), i32 1)
41   ret void
42 }
43
44 !llvm.dbg.cu = !{!0}
45 !llvm.module.flags = !{!3, !4}
46 !llvm.ident = !{!5}
47
48 !0 = metadata !{metadata !"0x11\0012\00clang version 3.5.0 \000\00\000\00\002", metadata !1, metadata !2, metadata !2, metadata !2, metadata !2, metadata !2} ; [ DW_TAG_compile_unit ] [D:\/asan.c] [DW_LANG_C99]
49 !1 = metadata !{metadata !"asan.c", metadata !"D:\5C"}
50 !2 = metadata !{}
51 !3 = metadata !{i32 2, metadata !"Dwarf Version", i32 4}
52 !4 = metadata !{i32 1, metadata !"Debug Info Version", i32 2}
53 !5 = metadata !{metadata !"clang version 3.5.0 "}