浏览代码

update_mir_test_checks: Do a better job of disambiguating names

Matching prefixes isn't good enough, because it leads to things like
calling the first constant C3 just because there were two copies
before it. Tighten up the check to match more precisely, but also be
careful about ambiguity when dealing with target opcodes that end in a
number.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316088 91177308-0d34-0410-b5e6-96231b3b80d8
Justin Bogner 7 年之前
父节点
当前提交
2457f45686
共有 1 个文件被更改,包括 4 次插入1 次删除
  1. 4 1
      utils/update_mir_test_checks.py

+ 4 - 1
utils/update_mir_test_checks.py

@@ -266,10 +266,13 @@ def mangle_vreg(opcode, current_names):
                 INSERT_VECTOR_ELT='IVEC',
                 EXTRACT_VECTOR_ELT='EVEC',
                 SHUFFLE_VECTOR='SHUF').get(base, base)
+    # Avoid ambiguity when opcodes end in numbers
+    if len(base.rstrip('0123456789')) < len(base):
+        base += '_'
 
     i = 0
     for name in current_names:
-        if name.startswith(base):
+        if name.rstrip('0123456789') == base:
             i += 1
     if i:
         return '{}{}'.format(base, i)