Skip to content

Commit

Permalink
[IE CLDNN] Autoremove comments from processed cl files (#1152)
Browse files Browse the repository at this point in the history
  • Loading branch information
vladimir-paramuzov authored Jul 2, 2020
1 parent cff39c3 commit c8a6a7b
Showing 1 changed file with 22 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import argparse
import glob
import ntpath
import re

class OpenCL2CHeaders(object):

Expand Down Expand Up @@ -64,6 +65,27 @@ def cl_file_to_str(self, filename):
max_characters = 16350
characters = 1 # Newline character above

comment_regexp = re.compile(r'(^)?[^\S\n]*/(?:\*(.*?)\*/[^\S\n]*|/[^\n]*)($)?', re.DOTALL | re.MULTILINE)

def comment_replacer(match):
begin, mid, end = match.group(1,2,3)
if mid is None:
return ''
elif begin is not None or end is not None:
return ''
elif '\n' in mid:
return '\n'
else:
return ' '

return

# Remove comments
content = comment_regexp.sub(comment_replacer, content)
# Remove empty lines
content = os.linesep.join([s for s in content.splitlines() if s])
# Remove multiple spaces
content = re.sub(' +', ' ', content)
for i, line in enumerate(content.split('\n')):
if (i + 1) % max_lines == 0 or characters + len(line) + 1 > max_characters:
res += ')__krnl"\n + R"__krnl('
Expand Down

0 comments on commit c8a6a7b

Please sign in to comment.