Refactoring and enhancement to FMA combine.