diff --git a/llvm/test/VISC/MatrixMultiplication/metadata.py b/llvm/test/VISC/MatrixMultiplication/metadata.py
new file mode 100755
index 0000000000000000000000000000000000000000..ffa52fa920046a39199c591ef6e5eea640d99a92
--- /dev/null
+++ b/llvm/test/VISC/MatrixMultiplication/metadata.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python
+import re
+import shutil
+import sys
+
+if len(sys.argv) != 3:
+  print 'usage: ./metadata.py inputfile outputfile'
+  sys.exit()
+
+infilename = sys.argv[1]
+outfilename = sys.argv[2]
+
+with open(infilename, 'r') as f:
+  for line in f:
+    matchObj = re.match(r'!nvvm.annotations = !{(!\d+(,!\d+)*)}', line)
+    if matchObj:
+      kernelsMDstring = matchObj.group(1)
+      kernelsMD = kernelsMDstring.split(',')
+
+kernelIdx = 0
+
+with open(infilename, 'r') as fin:
+  with open(outfilename, 'w') as fout:
+    for line in fin:
+      if kernelsMD and line.startswith(kernelsMD[0]):
+        kernelIdx += 1
+        newline = re.sub(r'metadata !\d+, metadata !\d+', "metadata !\"kernel\", i32 " + str(kernelIdx), line)
+        kernelsMD = kernelsMD[1:]
+      else:
+        matchObj = re.search(r'metadata !{metadata !"kernel"}|metadata !{i32 \d+}', line)
+        if matchObj:
+          newline = ""
+        else:
+          newline = line
+      fout.write(newline)
+