  Before executing a quantum algorithm, one must first decompose the algorithm
into machine-level instructions compatible with the architecture of the quantum
computer, a process known as quantum compiling. There are many different
quantum circuit decompositions for the same algorithm but it is desirable to
compile leaner circuits. A fundamentally important cost metric is the $T$ count
-- the number of $T$ gates in a circuit. For the single qubit case, optimal
compiling is essentially a solved problem. However, multi-qubit compiling is a
harder problem with optimal algorithms requiring classical runtime exponential
in the number of qubits. Here, we present and compare several efficient quantum
compilers for multi-qubit Clifford + $T$ circuits. We implemented our compilers
in C++ and benchmarked them on random circuits, from which we determine that
our TODD compiler yields the lowest $T$ counts on average. We also benchmarked
TODD on a library of reversible logic circuits that appear in quantum
algorithms and found that it reduced the $T$ count for 97\% of the circuits
with an average $T$-count saving of 20\% when compared against the best of all
previous circuit decompositions.
