Index: llvm/trunk/lib/Target/NVPTX/NVPTXAsmPrinter.cpp =================================================================== --- llvm/trunk/lib/Target/NVPTX/NVPTXAsmPrinter.cpp +++ llvm/trunk/lib/Target/NVPTX/NVPTXAsmPrinter.cpp @@ -881,8 +881,22 @@ if (NTM.getDrvInterface() == NVPTX::NVCL) O << ", texmode_independent"; + bool HasFullDebugInfo = false; + for (DICompileUnit *CU : M.debug_compile_units()) { + switch(CU->getEmissionKind()) { + case DICompileUnit::NoDebug: + case DICompileUnit::DebugDirectivesOnly: + break; + case DICompileUnit::LineTablesOnly: + case DICompileUnit::FullDebug: + HasFullDebugInfo = true; + break; + } + if (HasFullDebugInfo) + break; + } // FIXME: remove comment once debug info is properly supported. - if (MMI && MMI->hasDebugInfo()) + if (MMI && MMI->hasDebugInfo() && HasFullDebugInfo) O << "//, debug"; O << "\n"; Index: llvm/trunk/test/DebugInfo/NVPTX/debug-file-loc-only.ll =================================================================== --- llvm/trunk/test/DebugInfo/NVPTX/debug-file-loc-only.ll +++ llvm/trunk/test/DebugInfo/NVPTX/debug-file-loc-only.ll @@ -8,7 +8,7 @@ ;__device__ void bar() {} ;} -; CHECK: .target sm_{{[0-9]+}}//, debug +; CHECK: .target sm_{{[0-9]+$}} ; CHECK: .visible .func foo() ; CHECK: .loc [[FOO:[0-9]+]] 1 31