[libcxx-commits] [PATCH] D99124: [libc++] Simpler Python script for generating a graph of libc++'s header dependencies
Arthur O'Dwyer via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Mar 22 15:56:20 PDT 2021
Quuxplusone created this revision.
Quuxplusone added reviewers: ldionne, cjdb, libc++, EricWF.
Quuxplusone added a project: libc++.
Herald added a subscriber: arichardson.
Quuxplusone requested review of this revision.
Herald added a subscriber: libcxx-commits.
Herald added 1 blocking reviewer(s): libc++.
I've temporarily named this script `graph_header_deps2.py` because `graph_header_deps.py` already exists — @ericwf wrote it in February 2020. My attempts to play around with `graph_header_deps.py` were mostly fruitless; I needed to modify it in various ways to make it work without a lot of structure around it, and then even when I got it working, it generated pretty ugly graphs.
Existing graph_header_deps.py usage (after my local changes to simplify the usage) (producing https://i.imgur.com/zATrsaP.jpg )
mkdir foo
time ./graph_header_deps.py --libcxx-only -o foo --clang-command ~/llvm-project/build/bin/clang++
dot -Tpng < foo/all_headers.dot > old.png
file old.png
real 0m37.453s
user 0m34.025s
sys 0m2.742s
old.png: PNG image data, 25882 x 3035, 8-bit/color RGBA, non-interlaced
New graph_header_deps2.py usage (producing https://i.imgur.com/ZU0G52U.png )
time ./graph_header_deps2.py | dot -Tpng > new.png
file new.png
real 0m1.063s
user 0m0.837s
sys 0m0.077s
new.png: PNG image data, 6162 x 1344, 8-bit/color RGBA, non-interlaced
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D99124
Files:
libcxx/utils/graph_header_deps.py
libcxx/utils/graph_header_deps2.py
libcxx/utils/libcxx/graph.py
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D99124.332461.patch
Type: text/x-patch
Size: 22067 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210322/cd90502c/attachment-0001.bin>
More information about the libcxx-commits
mailing list