Add basic substitution to the C++ mangler. It currently only looks at types.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82102 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGenCXX/function-template-specialization.cpp b/test/CodeGenCXX/function-template-specialization.cpp
index 1d3c5f6..1efb857 100644
--- a/test/CodeGenCXX/function-template-specialization.cpp
+++ b/test/CodeGenCXX/function-template-specialization.cpp
@@ -9,10 +9,10 @@
 
 void test(int *iptr, float *fptr, int diff) {
   // FIXME: should be "_Z4nextIiiEPT_S1_RKT0_"
-  // RUN: grep "_Z4nextIiiEPiPiRKi" %t &&
+  // RUN: grep "_Z4nextIiiEPiS_RKi" %t &&
   iptr = next(iptr, diff);
   // FIXME: should be "_Z4nextIfiEPT_S1_RKT0_"
-  // RUN: grep "_Z4nextIfiEPfPfRKi" %t &&
+  // RUN: grep "_Z4nextIfiEPfS_RKi" %t &&
   fptr = next(fptr, diff);
 }
 
@@ -22,6 +22,6 @@
 void test2(int *iptr, double *dptr, int diff) {
   iptr = next(iptr, diff);
   // FIXME: should be "_Z4nextIdiEPT_S1_RKT0_"
-  // RUN: grep "_Z4nextIdiEPdPdRKi" %t
+  // RUN: grep "_Z4nextIdiEPdS_RKi" %t
   dptr = next(dptr, diff);
 }