ruiu added a comment. I think we can detemplate this class without creating a class hierarchy. Most part of the class does not use ELFT, so I think we can template member functions and then detemplate the class. https://reviews.llvm.org/D35868