xref: /llvm-project/llvm/test/DebugInfo/COFF/language.ll (revision ef006eb0bc5e8d069deee7e7d93d7cf5d55fd791)
1; RUN: sed -e 's/<LANG1>/DW_LANG_C/;s/<LANG2>/C/' %s > %t
2; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
3;
4; RUN: sed -e 's/<LANG1>/DW_LANG_C89/;s/<LANG2>/C/' %s > %t
5; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
6;
7; RUN: sed -e 's/<LANG1>/DW_LANG_C99/;s/<LANG2>/C/' %s > %t
8; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
9;
10; RUN: sed -e 's/<LANG1>/DW_LANG_C11/;s/<LANG2>/C/' %s > %t
11; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
12;
13; RUN: sed -e 's/<LANG1>/DW_LANG_C_plus_plus/;s/<LANG2>/Cpp/' %s > %t
14; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
15;
16; RUN: sed -e 's/<LANG1>/DW_LANG_C_plus_plus_03/;s/<LANG2>/Cpp/' %s > %t
17; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
18;
19; RUN: sed -e 's/<LANG1>/DW_LANG_C_plus_plus_11/;s/<LANG2>/Cpp/' %s > %t
20; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
21;
22; RUN: sed -e 's/<LANG1>/DW_LANG_C_plus_plus_14/;s/<LANG2>/Cpp/' %s > %t
23; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
24;
25; RUN: sed -e 's/<LANG1>/DW_LANG_Fortran77/;s/<LANG2>/Fortran/' %s > %t
26; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
27;
28; RUN: sed -e 's/<LANG1>/DW_LANG_Fortran90/;s/<LANG2>/Fortran/' %s > %t
29; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
30;
31; RUN: sed -e 's/<LANG1>/DW_LANG_Fortran95/;s/<LANG2>/Fortran/' %s > %t
32; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
33;
34; RUN: sed -e 's/<LANG1>/DW_LANG_Fortran03/;s/<LANG2>/Fortran/' %s > %t
35; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
36;
37; RUN: sed -e 's/<LANG1>/DW_LANG_Fortran08/;s/<LANG2>/Fortran/' %s > %t
38; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
39;
40; RUN: sed -e 's/<LANG1>/DW_LANG_Rust/;s/<LANG2>/Rust/' %s > %t
41; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
42;
43; RUN: sed -e 's/<LANG1>/DW_LANG_ObjC/;s/<LANG2>/ObjC/' %s > %t
44; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
45;
46; RUN: sed -e 's/<LANG1>/DW_LANG_ObjC_plus_plus/;s/<LANG2>/ObjCpp/' %s > %t
47; RUN: llc -filetype=obj -o - %t | llvm-readobj --codeview - | FileCheck %t
48
49; CHECK:      CodeViewDebugInfo [
50; CHECK:        Subsection [
51; CHECK:          SubSectionType: Symbols (0xF1)
52; CHECK:          Compile3Sym {
53; CHECK-NEXT:        Kind: S_COMPILE3 (0x113C)
54; CHECK-NEXT:        Language: <LANG2>
55; CHECK-NEXT:        Flags [ (0x0)
56; CHECK-NEXT:        ]
57; CHECK-NEXT:        Machine: X64 (0xD0)
58; CHECK-NEXT:        FrontendVersion: {{[0-9.]*}}
59; CHECK-NEXT:        BackendVersion: {{[0-9.]*}}
60; CHECK-NEXT:        VersionName: clang
61; CHECK-NEXT:     }
62; CHECK:        ]
63; CHECK:      ]
64
65; ModuleID = 'empty'
66source_filename = "empty"
67target datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128"
68target triple = "x86_64-pc-windows-msvc19.0.24215"
69
70!llvm.dbg.cu = !{!0}
71!llvm.module.flags = !{!2, !3}
72
73!0 = distinct !DICompileUnit(language: <LANG1>, file: !1, producer: "clang", emissionKind: FullDebug)
74!1 = !DIFile(filename: "empty", directory: "path/to")
75!2 = !{i32 2, !"CodeView", i32 1}
76!3 = !{i32 2, !"Debug Info Version", i32 3}
77