1. A method, performed by a computer, for synthesizing computer machine instructions, comprising: selecting, based on an operation of a program, at least a first computer machine instruction and a second computer machine instruction from an instruction set of a processor; determining a first template of the first computer machine instruction, wherein the first template comprises zero or more first inputs and one or more first outputs of the first computer machine instruction; determining a second template of the second computer machine instruction, wherein the second template comprises zero or more second inputs and one or more second outputs of the second computer machine instruction; aggregating functionality of the first computer machine instruction and the second computer machine instruction to generate a third computer machine instruction designed to perform the operation; determining a third template of the third computer machine instruction based on the first template and the second template, wherein the third template indicates one or more relationships between: at least one of: the first inputs, the first outputs, the second inputs, or the second outputs, and at least one of: one or more third inputs of the third computer machine instruction, or one or more third outputs of the third computer machine instruction; and adding the third computer machine instruction to the instruction set of the processor.