[commit: ghc] master: Add -falignment-sanitization flag (cecd2f2)

git at git.haskell.org git at git.haskell.org
Mon Oct 30 01:51:26 UTC 2017


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/cecd2f2d708d419878205ddd8b87bba18e6483d9/ghc

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

commit cecd2f2d708d419878205ddd8b87bba18e6483d9
Author: Ben Gamari <bgamari.foss at gmail.com>
Date:   Sun Oct 29 20:46:45 2017 -0400

    Add -falignment-sanitization flag
    
    Here we add a flag to instruct the native code generator to add
    alignment checks in all info table dereferences. This is helpful in
    catching pointer tagging issues.
    
    Thanks to @jrtc27 for uncovering the tagging issues on Sparc which
    inspired this flag.
    
    Test Plan: Validate
    
    Reviewers: simonmar, austin, erikd
    
    Reviewed By: simonmar
    
    Subscribers: rwbarton, trofi, thomie, jrtc27
    
    Differential Revision: https://phabricator.haskell.org/D4101


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

cecd2f2d708d419878205ddd8b87bba18e6483d9
 compiler/cmm/CLabel.hs                  |  4 +++-
 compiler/cmm/CmmInfo.hs                 | 12 +++++++++++-
 compiler/cmm/CmmMachOp.hs               |  9 ++++++++-
 compiler/cmm/PprC.hs                    |  2 ++
 compiler/llvmGen/LlvmCodeGen/CodeGen.hs |  4 ++++
 compiler/main/DynFlags.hs               |  2 ++
 compiler/nativeGen/X86/CodeGen.hs       | 18 ++++++++++++++++++
 docs/users_guide/debugging.rst          |  7 +++++++
 rts/RtsMessages.c                       | 10 ++++++++++
 rts/RtsSymbols.c                        |  1 +
 rts/StgStartup.cmm                      |  6 ++++++
 11 files changed, 72 insertions(+), 3 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 cecd2f2d708d419878205ddd8b87bba18e6483d9


More information about the ghc-commits mailing list