[GHC] #13629: sqrt should use machine instruction on x86_64
GHC
ghc-devs at haskell.org
Fri Apr 28 20:38:40 UTC 2017
#13629: sqrt should use machine instruction on x86_64
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner: (none)
Type: bug | Status: closed
Priority: normal | Milestone: 8.4.1
Component: Compiler (NCG) | Version: 8.0.1
Resolution: fixed | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: Runtime | Test Case:
performance bug | numeric/num009
Blocked By: | Blocking:
Related Tickets: #13570 | Differential Rev(s): Phab:D3508
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by bgamari):
I think I would prefer to make the C call cheaper (by, for instance,
marking it as pure so that the sinker can better optimize code around it)
than to bring x87 into the fold. x87's `fsin` is terribly imprecise (and
consequently causes the `num009` test to fail on platforms where it is
used). Moreover, as you point out, x87 performance varies widely between
microarchitectures. Finally, x87's architecture is really a nuisance for
the native codegen, requiring a number of hacks. It would be nice if some
day we could do away with x87 support entirely (although this likely won't
happen any time soon).
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13629#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list