Also contains a few TODOs on future enhancements Reviewed By: bixia Differential Revision: https://reviews.llvm.org/D118418