It is a good idea to use separate directory for compile unit if all other source locations are separating file name and directory names.

llvm-svn: 62726
diff --git a/llvm-gcc-4.2/gcc/llvm-debug.cpp b/llvm-gcc-4.2/gcc/llvm-debug.cpp
index 80856d8..faa0efb 100644
--- a/llvm-gcc-4.2/gcc/llvm-debug.cpp
+++ b/llvm-gcc-4.2/gcc/llvm-debug.cpp
@@ -757,6 +757,8 @@
 DICompileUnit DebugInfo::createCompileUnit(const std::string &FullPath){
   // Get source file information.
   std::string Directory;
+  std::string FileName;
+  DirectoryAndFile(FullPath, Directory, FileName);
   
   // Set up Language number.
   unsigned LangTag;
@@ -780,7 +782,7 @@
   else
     LangTag = DW_LANG_C89;
 
-  return DebugFactory.CreateCompileUnit(LangTag, FullPath, "",
+  return DebugFactory.CreateCompileUnit(LangTag, FileName, Directory, 
                                         version_string);
 }