[PATCH] D63461: [Util] Add a helper script for converting -print-before-all output into a file based equivelent
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 19 15:02:43 PDT 2019
This revision was automatically updated to reflect the committed changes.
Closed by commit rL363884: [Util] Add a helper script for converting -print-before-all output into a fileā¦ (authored by reames, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D63461?vs=205197&id=205682#toc
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63461/new/
https://reviews.llvm.org/D63461
Files:
llvm/trunk/utils/chunk-print-before-all.py
Index: llvm/trunk/utils/chunk-print-before-all.py
===================================================================
--- llvm/trunk/utils/chunk-print-before-all.py
+++ llvm/trunk/utils/chunk-print-before-all.py
@@ -0,0 +1,42 @@
+#!/usr/bin/env python
+# Given a -print-before-all -print-module-scope log from an opt invocation,
+# chunk it into a series of individual IR files, one for each pass invocation.
+# If the log ends with an obvious stack trace, try to split off a separate
+# "crashinfo.txt" file leaving only the valid input IR in the last chunk.
+# Files are written to current working directory.
+
+import sys
+
+basename = "chunk-"
+chunk_id = 0
+
+def print_chunk(lines):
+ global chunk_id
+ global basename
+ fname = basename + str(chunk_id) + ".ll"
+ chunk_id = chunk_id + 1
+ print "writing chunk " + fname + " (" + str(len(lines)) + " lines)"
+ with open(fname, "w") as f:
+ f.writelines(lines)
+
+is_dump = False
+cur = []
+for line in sys.stdin:
+ if line.startswith("*** IR Dump Before ") and len(cur) != 0:
+ print_chunk(cur);
+ cur = []
+ cur.append("; " + line)
+ elif line.startswith("Stack dump:"):
+ print_chunk(cur);
+ cur = []
+ cur.append(line)
+ is_dump = True
+ else:
+ cur.append(line)
+
+if is_dump:
+ print "writing crashinfo.txt (" + str(len(cur)) + " lines)"
+ with open("crashinfo.txt", "w") as f:
+ f.writelines(cur)
+else:
+ print_chunk(cur);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63461.205682.patch
Type: text/x-patch
Size: 1492 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190619/7c6d5009/attachment.bin>
More information about the llvm-commits
mailing list