[commit: ghc] wip/hie-module: NCG: fast compilation of very large strings (#16190) (1d9a1d9)

git at git.haskell.org git at git.haskell.org
Fri Feb 15 10:15:43 UTC 2019


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

On branch  : wip/hie-module
Link       : http://ghc.haskell.org/trac/ghc/changeset/1d9a1d9fb8fe0a1fea2c44c4246f102ff3e1f3a3/ghc

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

commit 1d9a1d9fb8fe0a1fea2c44c4246f102ff3e1f3a3
Author: Sylvain Henry <sylvain at haskus.fr>
Date:   Mon Feb 11 17:40:00 2019 +0100

    NCG: fast compilation of very large strings (#16190)
    
    This patch adds an optimization into the NCG: for large strings
    (threshold configurable via -fbinary-blob-threshold=NNN flag), instead
    of printing `.asciz "..."` in the generated ASM source, we print
    `.incbin "tmpXXX.dat"` and we dump the contents of the string into a
    temporary "tmpXXX.dat" file.
    
    See the note for more details.


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

1d9a1d9fb8fe0a1fea2c44c4246f102ff3e1f3a3
 compiler/main/DynFlags.hs               |  6 +++++
 compiler/nativeGen/PPC/Ppr.hs           |  3 +--
 compiler/nativeGen/PprBase.hs           | 48 +++++++++++++++++++++++++++++++++
 compiler/nativeGen/SPARC/Ppr.hs         |  8 +-----
 compiler/nativeGen/X86/Ppr.hs           |  4 +--
 docs/users_guide/using-optimisation.rst | 16 +++++++++++
 6 files changed, 73 insertions(+), 12 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 1d9a1d9fb8fe0a1fea2c44c4246f102ff3e1f3a3


More information about the ghc-commits mailing list