This revision was automatically updated to reflect the committed changes. Closed by commit rGe47027d091de: [OpenCL] Use DW_LANG_OpenCL language tag for OpenCL C (authored by stuart).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104118/new/ https://reviews.llvm.org/D104118 Files: clang/lib/CodeGen/CGDebugInfo.cpp clang/test/CodeGenOpenCL/debug-info-programming-language.cl Index: clang/test/CodeGenOpenCL/debug-info-programming-language.cl =================================================================== --- /dev/null +++ clang/test/CodeGenOpenCL/debug-info-programming-language.cl @@ -0,0 +1,17 @@ +// RUN: %clang_cc1 -dwarf-version=5 -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s +// RUN: %clang_cc1 -dwarf-version=3 -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s +// RUN: %clang_cc1 -dwarf-version=3 -gstrict-dwarf -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-C99 %s +// RUN: %clang_cc1 -dwarf-version=5 -gstrict-dwarf -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s + +kernel void empty() {} + +// CHECK-OPENCL: distinct !DICompileUnit(language: DW_LANG_OpenCL, +// CHECK-C99: distinct !DICompileUnit(language: DW_LANG_C99, Index: clang/lib/CodeGen/CGDebugInfo.cpp =================================================================== --- clang/lib/CodeGen/CGDebugInfo.cpp +++ clang/lib/CodeGen/CGDebugInfo.cpp @@ -578,6 +578,9 @@ LangTag = llvm::dwarf::DW_LANG_C_plus_plus; } else if (LO.ObjC) { LangTag = llvm::dwarf::DW_LANG_ObjC; + } else if (LO.OpenCL && (!CGM.getCodeGenOpts().DebugStrictDwarf || + CGM.getCodeGenOpts().DwarfVersion >= 5)) { + LangTag = llvm::dwarf::DW_LANG_OpenCL; } else if (LO.RenderScript) { LangTag = llvm::dwarf::DW_LANG_GOOGLE_RenderScript; } else if (LO.C99) {
Index: clang/test/CodeGenOpenCL/debug-info-programming-language.cl =================================================================== --- /dev/null +++ clang/test/CodeGenOpenCL/debug-info-programming-language.cl @@ -0,0 +1,17 @@ +// RUN: %clang_cc1 -dwarf-version=5 -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s +// RUN: %clang_cc1 -dwarf-version=3 -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s +// RUN: %clang_cc1 -dwarf-version=3 -gstrict-dwarf -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-C99 %s +// RUN: %clang_cc1 -dwarf-version=5 -gstrict-dwarf -emit-llvm -triple %itanium_abi_triple %s -o - \ +// RUN: -x cl -O0 -disable-llvm-passes -debug-info-kind=limited \ +// RUN: | FileCheck --check-prefix=CHECK-OPENCL %s + +kernel void empty() {} + +// CHECK-OPENCL: distinct !DICompileUnit(language: DW_LANG_OpenCL, +// CHECK-C99: distinct !DICompileUnit(language: DW_LANG_C99, Index: clang/lib/CodeGen/CGDebugInfo.cpp =================================================================== --- clang/lib/CodeGen/CGDebugInfo.cpp +++ clang/lib/CodeGen/CGDebugInfo.cpp @@ -578,6 +578,9 @@ LangTag = llvm::dwarf::DW_LANG_C_plus_plus; } else if (LO.ObjC) { LangTag = llvm::dwarf::DW_LANG_ObjC; + } else if (LO.OpenCL && (!CGM.getCodeGenOpts().DebugStrictDwarf || + CGM.getCodeGenOpts().DwarfVersion >= 5)) { + LangTag = llvm::dwarf::DW_LANG_OpenCL; } else if (LO.RenderScript) { LangTag = llvm::dwarf::DW_LANG_GOOGLE_RenderScript; } else if (LO.C99) {
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits