Custom Query (6599 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (13 - 15 of 6599)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Ticket Resolution Summary Owner Reporter
#1438 fixed Integrate Hpc core tools into GHC AndyGill AndyGill
Description

We want to include the hpc core tools with ghc, so we need to pick a location, decide a build strategy, and invent version control story about the tools.

#1907 worksforme HPC and Template Haskell don't mix AndyGill guest
Description

When compiling code that uses Template Haskell with HPC, ghc fails part way with

ghc: _objs/Common/ArrayTH.hpc_o: unknown symbol `_hs_hpc_module'

I guess this is expected for the same reasons that HPC is known not to mix with GHCi. However, I would have expected the same workaround as for profiling to work, namely building the normal objects first and then building with -fhpc -osuf hpc_o, and it doesn't.

#2052 fixed hpc ignores files containing LINES pragmas that refer to .hsc files AndyGill dons
Description

ghc -hpc generates no ticks for files containing LINE pragmas that point back to .hsc files. Removing the LINE pragmas, and ticks are generated.

An example. This simple .hsc file:

main = print "hello, world"

Generates this A.hs file:

{-# LINE 1 "A.hsc" #-}
main = print "hello, world"
{-# LINE 2 "A.hsc" #-}

Compiling this with -fhpc, we see no ticks produced:

{ AbsBinds [] [] [Main.main <= [] main_aif]

    Main.main :: GHC.IOBase.IO ()
    []
    { print_aie = System.IO.print @ [GHC.Base.Char] $dShow_ail
      main_aif = print_aie "hello, world" }
  :Main.main = GHC.TopHandler.runMainIO @ () Main.main
  $dShow_ail = GHC.Show.$f21 @ GHC.Base.Char $dShow_aiW
  $dShow_aiW = GHC.Show.$f18 }

Run this, and get the hpc report:

$ ./a.out 
"hello, world"

$ hpc report a.out.tix 
100% expressions used (0/0)
100% boolean coverage (0/0)

0/0 declarations.

However, an identical file, without LINE pragmas, goes through just fine:

$ ghc -fhpc B.hs -ddump-hpc 
{ AbsBinds [] [] [Main.main <= [] main_aif]
    Main.main :: GHC.IOBase.IO ()
    []
    { print_aie = System.IO.print @ [GHC.Base.Char] $dShow_ail
      -- tick id = (2, [])
      main_aif = tick<1>(print_aie (tick<0>("got you"))) }
  :Main.main = GHC.TopHandler.runMainIO @ () Main.main
  $dShow_ail = GHC.Show.$f21 @ GHC.Base.Char $dShow_aiW
  $dShow_aiW = GHC.Show.$f18 }

And the result has valid hpc .tix

$ hpc report a.out.tix 
100% expressions used (2/2)
100% boolean coverage (0/0)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Note: See TracQuery for help on using queries.