  We present ScaffCC, a scalable compilation and analysis framework based on
LLVM, which can be used for compiling quantum computing applications at the
logical level. Drawing upon mature compiler technologies, we discuss
similarities and differences between compilation of classical and quantum
programs, and adapt our methods to optimizing the compilation time and output
for the quantum case. Our work also integrates a reversible-logic synthesis
tool in the compiler to facilitate coding of quantum circuits. Lastly, we
present some useful quantum program analysis scenarios and discuss their
implications, specifically with an elaborate discussion of timing analysis for
critical path estimation. Our work focuses on bridging the gap between
high-level quantum algorithm specifi- cations and low-level physical
implementations, while providing good scalability to larger and more
interesting problems
