1. 18 Apr, 2007 10 commits
  2. 17 Apr, 2007 1 commit
  3. 18 Apr, 2007 1 commit
  4. 10 Apr, 2007 1 commit
  5. 17 Apr, 2007 3 commits
    • Simon Marlow's avatar
      Re-working of the breakpoint support · cdce6477
      Simon Marlow authored
      This is the result of Bernie Pope's internship work at MSR Cambridge,
      with some subsequent improvements by me.  The main plan was to
      
       (a) Reduce the overhead for breakpoints, so we could enable 
           the feature by default without incurrent a significant penalty
       (b) Scatter more breakpoint sites throughout the code
      
      Currently we can set a breakpoint on almost any subexpression, and the
      overhead is around 1.5x slower than normal GHCi.  I hope to be able to
      get this down further and/or allow breakpoints to be turned off.
      
      This patch also fixes up :print following the recent changes to
      constructor info tables.  (most of the :print tests now pass)
      
      We now support single-stepping, which just enables all breakpoints.
      
        :step <expr>     executes <expr> with single-stepping turned on
        :step            single-steps from the current breakpoint
      
      The mechanism is quite different to the previous implementation.  We
      share code with the HPC (haskell program coverage) implementation now.
      The coverage pass annotates source code with "tick" locations which
      are tracked by the coverage tool.  In GHCi, each "tick" becomes a
      potential breakpoint location.
      
      Previously breakpoints were compiled into code that magically invoked
      a nested instance of GHCi.  Now, a breakpoint causes the current
      thread to block and control is returned to GHCi.
      
      See the wiki page for more details and the current ToDo list:
      
        http://hackage.haskell.org/trac/ghc/wiki/NewGhciDebugger
      cdce6477
    • Simon Marlow's avatar
    • Simon Marlow's avatar
      con_desc should be an OFFSET_FIELD · 6e9450db
      Simon Marlow authored
      6e9450db
  6. 16 Apr, 2007 9 commits
  7. 15 Apr, 2007 2 commits
  8. 14 Apr, 2007 1 commit
  9. 13 Apr, 2007 1 commit
  10. 12 Apr, 2007 9 commits
  11. 11 Apr, 2007 2 commits