forked from llvm-mirror/llvm
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This script is used to remove nodes with the label %tmp(.#)* and all
edges associated with said node from the dot files produced by DSA. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23708 91177308-0d34-0410-b5e6-96231b3b80d8
- Loading branch information
Patrick Meredith
committed
Oct 13, 2005
1 parent
dcdadef
commit b89dd23
Showing
1 changed file
with
30 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#! /usr/bin/python | ||
|
||
#changelog: | ||
#10/13/2005: exntended to remove variables of the form %tmp(.#)* rather than just | ||
#%tmp.#, i.e. it now will remove %tmp.12.3.15 etc, additionally fixed a spelling error in | ||
#the comments | ||
#10/12/2005: now it only removes nodes and edges for which the label is %tmp.# rather | ||
#than removing all lines for which the lable CONTAINS %tmp.# | ||
import re | ||
import sys | ||
if( len(sys.argv) < 3 ): | ||
print 'usage is: ./DSAclean <dot_file_to_be_cleaned> <out_put_file>' | ||
sys.exit(1) | ||
#get a file object | ||
input = open(sys.argv[1], 'r') | ||
output = open(sys.argv[2], 'w') | ||
#we'll get this one line at a time...while we could just put the whole thing in a string | ||
#it would kill old computers | ||
buffer = input.readline() | ||
while buffer != '': | ||
if re.compile("label(\s*)=(\s*)\"\s%tmp(.\d*)*(\s*)\"").search(buffer): | ||
#skip next line, write neither this line nor the next | ||
buffer = input.readline() | ||
else: | ||
#this isn't a tmp Node, we can write it | ||
output.write(buffer) | ||
#prepare for the next iteration | ||
buffer = input.readline() | ||
input.close() | ||
output.close() |