summaryrefslogtreecommitdiffstats
path: root/llvm/tools/opt-viewer/opt-diff.py
Commit message (Collapse)AuthorAgeFilesLines
* Revert Autogenerate the shebang lines for tools/opt-viewerReid Kleckner2019-08-271-0/+75
| | | | | | | | | | This reverts r369486 (git commit 8d18384809957cc923752e10a86adab129e3df48) The opt-viewer tests don't pass after this change, and fixing them isn't trivial. opt-viewer.py imports optmap, which requires adjusting pythonpath, which is more work than I'm willing to do to fix forward. llvm-svn: 370095
* Autogenerate the shebang lines for tools/opt-viewerChris Bieneman2019-08-211-75/+0
| | | | | | | | | | | | | | | | | | | | | Summary: Since these files depend on the built python modules, they need to use the right python binary to run them. So use configure_file to set the right shebang line. Patch By: cbiesinger (Christian Biesinger) Reviewers: chandlerc, beanz, anemet Reviewed By: anemet Subscribers: compnerd, JDevlieghere, mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D65983 llvm-svn: 369486
* Python compat - no explicit reference to Python versionSerge Guelton2019-01-031-1/+1
| | | | | | | | Update documentation and shebang. Differential Revision: https://reviews.llvm.org/D56252 llvm-svn: 350327
* opt-diff: Support splitting to multiple output filesAdam Nemet2018-02-261-4/+11
| | | | | | | When reading the resulting files back with opt-viewer, they will be parsed in parallel. llvm-svn: 326126
* Fix some opt-viewer test issues and disable on Windows.Zachary Turner2018-01-051-2/+1
| | | | | | Differential Revision: https://reviews.llvm.org/D41784 llvm-svn: 321905
* Make find_opt_files varargAdam Nemet2017-09-291-2/+2
| | | | | | | This is slightly less verbose for the common case of a single build directory and more intuitive when using this API directly from the interpreter. llvm-svn: 314491
* [opt-viewer] Reduce memory consumption by another 20-25%Adam Nemet2017-07-191-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | The Args field of the remark which consists of a list of mappings in YAML is translated into a list of (small) dicts on Python. An empty dict is 280 bytes on my system so we can save memory by using a tuple of tuples instead. Making a tuple of tuples rather than a list of tuples allows Args to be shared with the key of the remark. This is actually an even greater saving. (Keys are alive throughout the entire run in all_remarks.) Here are a few opt-stats runs with different input sizes while measuring heap usage with heapy. Avg remark size is simply estimated as heap-size / # of remarks: | # of files | 60 | 114 | 308 | 605 | 1370 | | # of remarks | 20K | 37K | 146K | 180K | 640K | | total file size (MB) | 22 | 51 | 219 | 202 | 1034 | |------------------------+------+------+------+------+------| | Avg remark size before | 4339 | 4792 | 4761 | 4096 | 4607 | | Avg remark size after | 3446 | 3641 | 3567 | 3146 | 3347 | | Rate | 0.79 | 0.76 | 0.75 | 0.77 | 0.73 | Differential Revision: https://reviews.llvm.org/D35611 llvm-svn: 308538
* [opt-viewer] Accept directories that are searched for opt.yaml filesAdam Nemet2017-07-171-17/+10
| | | | | | | | | | | | This allows to pass the build directory where all the opt.yaml files are rather than find | xargs which may invoke opt-viewer multiple times producing incomplete html output. The patch generalizes the same functionality from opt-diff. Differential Revision: https://reviews.llvm.org/D35491 llvm-svn: 308200
* [opt-viewer] Move under tools, install itAdam Nemet2017-07-061-0/+71
We weren't installing opt-viewer and co before, this fixes the omission. I am also moving the tools from utils/ to tools/. I believe that this is more appropriate since these tools have matured greatly in the past year through contributions by multiple people (thanks!) so they are ready to become external tools. The tools are installed under <install>/share/opt-viewer/. I am *not* adding the llvm- prefix. If people feel strongly about adding that, this is probably a good time since the new location will require some mental adjustment anyway. Fixes PR33521 Differential Revision: https://reviews.llvm.org/D35048 llvm-svn: 307285
OpenPOWER on IntegriCloud