<div dir="ltr"><div><div>We've got both an sqrtf and an expf opcode in our architecture. If I call sqrt() on the C side, I see the sqrtf opcode show up in the generated assembly. However, if I call exp() on the C side, I don't see the expf opcode show up on the generated assembly, I see a call to an exp function from libm.<br><br></div>Here's what we've got in our TargetInstrinfo.td file for both of these instructions:<br>def SQRTF64 : Other2ROp< 0b0001101, "sqrtF", fsqrt, OpInfo_F64, II_ELEMF3 >;<br>def SQRTF32 : Other2ROp< 0b0001101, "sqrtF", fsqrt, OpInfo_F32, II_ELEMF1 >;<br><br>def EXPF64 :   Other2ROp< 0b0001010, "expF", fexp2, OpInfo_F64, II_ELEMF3 >;<br>def EXPF32 :   Other2ROp< 0b0001010, "expF", fexp2, OpInfo_F32, II_ELEMF1 >;<br><br><br></div><div>..essentially the same kind of definition for both SQRTF and EXPF, but for the latter I don't see expf opcodes being generated.<br><br></div><div>Any idea what might be missing for exp?<br><br></div><div>Phil<br></div></div>