summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wortmann <scpmw@leeds.ac.uk>2015-04-03 00:23:56 -0500
committerAustin Seipp <austin@well-typed.com>2015-04-03 00:32:57 -0500
commit59f7a7b6091e9c0564f3f370d09398d8c9cd8ad5 (patch)
treed08dce8b1bf2e5db15951477f3d3bb34c473a40a
parent78c79e39b36b6e76d911ca7a25e2db79d5a01ec0 (diff)
downloadhaskell-59f7a7b6091e9c0564f3f370d09398d8c9cd8ad5.tar.gz
Restore unwind information generation
While we want to reduce the amount of information generated into debug_info, it really doesn't make sense to remove block information for unwinding. This is a simple oversight introduced in 4ab57024, which severly reduces the usefulness of generated unwind data. Thanks to bitonic for spotting this! Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D792 GHC Trac Issues: #10236
-rw-r--r--compiler/nativeGen/Dwarf.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/nativeGen/Dwarf.hs b/compiler/nativeGen/Dwarf.hs
index d7c2f61c14..ff86fd8200 100644
--- a/compiler/nativeGen/Dwarf.hs
+++ b/compiler/nativeGen/Dwarf.hs
@@ -35,11 +35,11 @@ dwarfGen df modLoc us blocks = do
-- Convert debug data structures to DWARF info records
-- We strip out block information, as it is not currently useful for
-- anything. In future we might want to only do this for -g1.
- let procs = map stripBlocks $ debugSplitProcs blocks
+ let procs = debugSplitProcs blocks
stripBlocks dbg = dbg { dblBlocks = [] }
compPath <- getCurrentDirectory
let dwarfUnit = DwarfCompileUnit
- { dwChildren = map (procToDwarf df) procs
+ { dwChildren = map (procToDwarf df) (map stripBlocks procs)
, dwName = fromMaybe "" (ml_hs_file modLoc)
, dwCompDir = addTrailingPathSeparator compPath
, dwProducer = cProjectName ++ " " ++ cProjectVersion