DescriptionPPC: [builtins] Introduce proper Float64Log1p, Float64Atan and Float64Atan2 operators.
Port 7ceed92ac036d6b4e402d76a5cea130a3c4cfbf1
Port 89d8c57b9c3b29e7977b13f0a9eed6bd8fb6772d
Original commit message:
Import base::ieee754::atan() and base::ieee754::atan2() from fdlibm and
introduce Float64Atan and Float64Atan2 TurboFan operators based on those,
similar to what we already did for Float64Log and Float64Log1p. Rewrite
Math.atan() and Math.atan2() as TurboFan builtin and use the operators
to also inline Math.atan() and Math.atan2() into optimized TurboFan functions.
Import base::ieee754::log1p() from fdlibm and introduce a Float64Log1p
TurboFan operator based on that, similar to what we do for Float64Log.
Rewrite Math.log1p() as TurboFan builtin and use that operator to also
inline Math.log1p() into optimized TurboFan functions.
Also unify the handling of the special IEEE 754 functions somewhat in
the TurboFan backends. At some point we can hopefully express this
completely in the InstructionSelector (once we have an idea what to do
with the ST(0) return issue on IA-32/X87).
Drive-by-fix: Add some more test coverage for the log function.
R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
BUG=v8:5086, v8:5092, v8:5095
LOG=N
Committed: https://crrev.com/6203906ccd986150ef9cdfedd285c50edbf1eae2
Cr-Commit-Position: refs/heads/master@{#36935}
Patch Set 1 #
Messages
Total messages: 7 (2 generated)
|