Jump to content

minxomat

Active Members
  • Posts

    304
  • Joined

  • Last visited

  • Days Won

    5

Community Answers

  1. minxomat's post in Details on how AutoIt handles fractional exponents. was marked as the answer   
    I'll just answer this for myself by testing. It seems to still use MSVCs qmath.h or similar native library implementation:
     

    #include <AssembleIt.au3> Local $double_qmathPow Local $asmstrc = DllStructCreate("double __x;double __y;") $asmstrc.__x = 5.8 $asmstrc.__y = 0.9535 Func _QMATH_NAKED__QMATH_INLINE_double__QMATH_LINK_qmathPow() _(" use32 ") _(" fld qword[esp+12] ") _(" fld qword[esp+4] ") _(" ftst ") _(" fstsw ax ") _(" sahf ") _(" jz pow_zero ") _(" fyl2x ") _(" fld1 ") _(" fld st1 ") _(" fprem ") _(" f2xm1 ") _(" faddp st1, st0 ") _(" fscale ") _(" pow_zero: ") _(" fstp st1 ") _(" ret ") EndFunc ;_AssembleIt($double_qmathPowurntype, $Name_of_Func_with_code, $Type1 = "type", $Param1 = 0, $Type2 = "type", $Param2 = 0....up to 20 params) $double_qmathPow = _AssembleIt("double", "_QMATH_NAKED__QMATH_INLINE_double__QMATH_LINK_qmathPow", "double", $asmstrc.__x, "double", $asmstrc.__y) ;thats all^^ $double_autoit = $asmstrc.__x ^ $asmstrc.__y ConsoleWrite(@LF) ConsoleWrite("+> (FASM)qmathPow: " & $double_qmathPow & @LF) ConsoleWrite("+> (AutoIt)^ : " & $double_autoit & @LF)
×
×
  • Create New...