Linking between markdown and rst files is currently not supported very well, e.g. the current llvm-addr2line docs  link to "llvm-symbolizer" instead of "llvm-symbolizer.html". This is weirdly broken in different ways depending on which versions of sphinx and recommonmark are being used, so workaround the bug by using rst everywhere.
Yay, thank you for working on this!
Unrelated, but i think it would be great for the next step to ensure that
every [installable] binary has a doc/man page,
and ideally require that via tooling for future binaries.
Please add .. program:: llvm-addr2line etc to the tops of these files.
Here and elsewhere, use :program:'llvm-addr2line' (using backticks instead of apostrophe) etc to match llvm-readelf, llvm-symbolizer etc.
Does using the :manpage: link make more sense for the link here, since you use it in the "See Also" block below?
"print segment sizes" is factually wrong. llvm-size doesn't look at program headers at all. Perhaps "print size information".
llvm-strings actually prints strings in all files, not just object files.
Sorry, didn't realize that worked everywhere.
For the Running **llvm-ranlib** is equivalent to running **llvm-ar s** line, I changed the **llvm-ar s** to ``llvm-ar s`` to be styled more like a code snippet, not a program name (since it's two words). The rest are updated to :program: