TargetInfo no longer includes a reference to SourceManager.

Moved all clients of Diagnostics to use FullSourceLoc instead of SourceLocation.
Added many utility methods to FullSourceLoc to provide shorthand for:

    FullLoc.getManager().someMethod(FullLoc.getLocation());
    
instead we have:

    FullLoc.someMethod();
    
Modified TextDiagnostics (and related classes) to use this short-hand.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44957 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/TextDiagnostics.cpp b/Driver/TextDiagnostics.cpp
index 052ea6b..d992834 100644
--- a/Driver/TextDiagnostics.cpp
+++ b/Driver/TextDiagnostics.cpp
@@ -40,13 +40,12 @@
 }
 
 bool TextDiagnostics::IgnoreDiagnostic(Diagnostic::Level Level,
-                                       SourceLocation Pos,
-                                       SourceManager* SourceMgr) {
+                                       FullSourceLoc Pos) {
   if (Pos.isValid()) {
     // If this is a warning or note, and if it a system header, suppress the
     // diagnostic.
     if (Level == Diagnostic::Warning || Level == Diagnostic::Note) {
-      if (const FileEntry *F = SourceMgr->getFileEntryForLoc(Pos)) {
+      if (const FileEntry *F = Pos.getFileEntryForLoc()) {
         DirectoryLookup::DirType DirInfo = TheHeaderSearch->getFileDirFlavor(F);
         if (DirInfo == DirectoryLookup::SystemHeaderDir ||
             DirInfo == DirectoryLookup::ExternCSystemHeaderDir)