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