lower the interface to getLineNumber like we did for
getColumnNumber.  This fixes a FIXME in 
SourceManager::getPresumedLoc because we now just decompose
the sloc once.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63701 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/HTMLDiagnostics.cpp b/lib/Driver/HTMLDiagnostics.cpp
index 1e11905..1561fc4 100644
--- a/lib/Driver/HTMLDiagnostics.cpp
+++ b/lib/Driver/HTMLDiagnostics.cpp
@@ -461,10 +461,10 @@
   SourceManager& SM = R.getSourceMgr();
   
   SourceLocation InstantiationStart = SM.getInstantiationLoc(Range.getBegin());
-  unsigned StartLineNo = SM.getLineNumber(InstantiationStart);
+  unsigned StartLineNo = SM.getInstantiationLineNumber(InstantiationStart);
   
   SourceLocation InstantiationEnd = SM.getInstantiationLoc(Range.getEnd());
-  unsigned EndLineNo = SM.getLineNumber(InstantiationEnd);
+  unsigned EndLineNo = SM.getInstantiationLineNumber(InstantiationEnd);
   
   if (EndLineNo < StartLineNo)
     return;
diff --git a/lib/Driver/TextDiagnosticPrinter.cpp b/lib/Driver/TextDiagnosticPrinter.cpp
index cf3733f..39367f0 100644
--- a/lib/Driver/TextDiagnosticPrinter.cpp
+++ b/lib/Driver/TextDiagnosticPrinter.cpp
@@ -45,11 +45,11 @@
   SourceLocation Begin = SM.getInstantiationLoc(R.getBegin());
   SourceLocation End = SM.getInstantiationLoc(R.getEnd());
   
-  unsigned StartLineNo = SM.getLineNumber(Begin);
+  unsigned StartLineNo = SM.getInstantiationLineNumber(Begin);
   if (StartLineNo > LineNo || SM.getFileID(Begin) != FID)
     return;  // No intersection.
   
-  unsigned EndLineNo = SM.getLineNumber(End);
+  unsigned EndLineNo = SM.getInstantiationLineNumber(End);
   if (EndLineNo < LineNo || SM.getFileID(End) != FID)
     return;  // No intersection.
   
@@ -167,7 +167,8 @@
 
     // Highlight all of the characters covered by Ranges with ~ characters.
     for (unsigned i = 0; i != Info.getNumRanges(); ++i)
-      HighlightRange(Info.getRange(i), ILoc.getManager(), ILoc.getLineNumber(),
+      HighlightRange(Info.getRange(i), ILoc.getManager(),
+                     ILoc.getInstantiationLineNumber(),
                      ILoc.getFileID(), CaretLine, SourceLine);
     
     // Next, insert the caret itself.