[commit: ghc] wip/T16212-fixed, wip/sgraf-no-exnstr: Compile count{Leading, Trailing}Zeros to corresponding x86_64 instructions under -mbmi2 (c1d9416)

git at git.haskell.org git at git.haskell.org
Fri Feb 1 05:54:50 UTC 2019


Repository : ssh://git@git.haskell.org/ghc

On branches: wip/T16212-fixed,wip/sgraf-no-exnstr
Link       : http://ghc.haskell.org/trac/ghc/changeset/c1d9416f2672b8d844141c0393fe773676749777/ghc

>---------------------------------------------------------------

commit c1d9416f2672b8d844141c0393fe773676749777
Author: Dmitry Ivanov <ethercrow at gmail.com>
Date:   Sat Dec 8 16:45:02 2018 +0100

    Compile count{Leading,Trailing}Zeros to corresponding x86_64 instructions under -mbmi2
    
    This works similarly to existing implementation for popCount.
    Trac ticket: #16086.


>---------------------------------------------------------------

c1d9416f2672b8d844141c0393fe773676749777
 compiler/nativeGen/X86/CodeGen.hs | 83 ++++++++++++++++++++++++++-------------
 compiler/nativeGen/X86/Instr.hs   |  6 +++
 compiler/nativeGen/X86/Ppr.hs     |  2 +
 docs/users_guide/using.rst        | 10 +++++
 libraries/base/Data/Bits.hs       |  8 ++++
 libraries/base/GHC/Int.hs         | 13 ++++++
 libraries/base/GHC/Word.hs        | 13 ++++++
 7 files changed, 107 insertions(+), 28 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc c1d9416f2672b8d844141c0393fe773676749777


More information about the ghc-commits mailing list