[x86] Teach the test update script to strip trailing whitespace.
authorChandler Carruth <chandlerc@gmail.com>
Wed, 4 Feb 2015 10:46:48 +0000 (10:46 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Wed, 4 Feb 2015 10:46:48 +0000 (10:46 +0000)
This is done in a bit of a strange way to use a multiline RE instead of
looping over the lines. Suggestions welcome here for a more pythonic way
of doing this as long as its reasonably fast.

llvm-svn: 228131

llvm/utils/update_llc_test_checks.py

index c998723..cb1ae09 100755 (executable)
@@ -24,6 +24,7 @@ def llc(args, cmd_args, ir):
 
 
 ASM_SCRUB_WHITESPACE_RE = re.compile(r'(?!^(|  \w))[ \t]+', flags=re.M)
+ASM_SCRUB_TRAILING_WHITESPACE_RE = re.compile(r'[ \t]+$', flags=re.M)
 ASM_SCRUB_SHUFFLES_RE = (
     re.compile(
         r'^(\s*\w+) [^#\n]+#+ ((?:[xyz]mm\d+|mem) = .*)$',
@@ -47,6 +48,8 @@ def scrub_asm(asm):
   asm = ASM_SCRUB_RIP_RE.sub(r'{{.*}}(%rip)', asm)
   # Strip kill operands inserted into the asm.
   asm = ASM_SCRUB_KILL_COMMENT_RE.sub('', asm)
+  # Strip trailing whitespace.
+  asm = ASM_SCRUB_TRAILING_WHITESPACE_RE.sub(r'', asm)
   return asm