[perf-training] Check extension in findFilesWithExtension
authorAmir Ayupov <aaupov@fb.com>
Tue, 10 Jan 2023 02:07:26 +0000 (18:07 -0800)
committerAmir Ayupov <amir.aupov@gmail.com>
Wed, 18 Jan 2023 05:54:00 +0000 (21:54 -0800)
`findFilesWithExtension` helper checks for `endswith(extension)` instead of
exactly matching the file extension. This causes it to match unrelated files,
for example, `.profdata` files while matching `.fdata` files:

http://157.230.108.44:8011/#/builders/56/builds/247
```
Merging data from /worker/worker/bolt-x86_64-ubuntu-clang-bolt-gcc/build/tools/clang/prof.fdata.1124569.fdata...
Merging data from /worker/worker/bolt-x86_64-ubuntu-clang-bolt-gcc/build/tools/clang/test/Frontend/Output/optimization-remark-with-hotness-new-pm.c.tmp.profdata...
```

Reviewed By: phosek

Differential Revision: https://reviews.llvm.org/D141342

clang/utils/perf-training/perf-helper.py

index c6a815e..abbdc77 100644 (file)
@@ -23,7 +23,7 @@ def findFilesWithExtension(path, extension):
   filenames = []
   for root, dirs, files in os.walk(path): 
     for filename in files:
-      if filename.endswith(extension):
+      if filename.endswith(f".{extension}"):
         filenames.append(os.path.join(root, filename))
   return filenames