Optimizing Hardware Design by Composing Utility-Directed Transformations | IEEE Journals & Magazine | IEEE Xplore