logo       

Related Msgs: audio.musicbrai...    enbd.general/20...    ietf.idr/2002-0...    java.ant-contri...    gnu.make.genera...    qplus.devel/200...    video.freevo.cv...    os.netbsd.ports...    yellowdog.gener...    xfree86.cvs/200...    search.nutch.us...    freedesktop.xse...    programming.swi...    capabilities.ge...    telephony.pbx.a...    mail.sylpheed.c...    db.firebase.por...    boot-loaders.u-...    recreation.radi...    netbsd.bugs/200...    web.zope.plone....    user-groups.lin...   

cvs commit: fptools/ghc/compiler/absCSyn AbsCSyn.lhs PprAbsC.lhs fptools: msg#00069

Subject: cvs commit: fptools/ghc/compiler/absCSyn AbsCSyn.lhs PprAbsC.lhs fptools/ghc/compiler/codeGen CgExpr.lhs CgHeapery.lhs CgTailCall.lhs fptools/ghc/includes Closures.h RtsFlags.h SpecBasics.h SpecBurst.h Speculate.h StgMacros.h StgMiscClosures.h ...
rje         2003/08/14 10:41:06 PDT

  Modified files:        (Branch: speceval_2)
    ghc/compiler/absCSyn AbsCSyn.lhs PprAbsC.lhs 
    ghc/compiler/codeGen CgExpr.lhs CgHeapery.lhs CgTailCall.lhs 
    ghc/includes         Closures.h RtsFlags.h SpecBasics.h 
                         SpecBurst.h Speculate.h StgMacros.h 
                         StgMiscClosures.h TSO.h 
    ghc/rts              Exception.hc GC.c HeapStackCheck.hc 
                         RtsFlags.c Schedule.c SpecBurst.c 
                         SpecIntel.c Speculate.c 
  Added files:           (Branch: speceval_2)
    ghc/rts              UnsafeIO.hc 
  Log:
  Added a second variety of burst profiling (BURST2).
        - though I don't expect it to replace normal BURST
  Fixed a few bugs
  
  AbsCSyn.lhs
  PprAbsC.lhs
  CgExpr.lhs
  CgHeapery.lhs
  StgMiscClosures.h
        Added a new kind of heap/stack check to be used when returning from
        a speculation.
        This is virtually the same as a R1_UNPT heap/stack check.
        The only reason to use a different check is to allow the runtime
        system to easily tell if the stack check took place while
        returning from a speculation.
  
  CgHeapery.lhs
        Undid the "every function allocates heap" change.
        This turned out to be too big an overhead.
        The "correct" thing to do is to always allocate heap in "loop breakers"
                but that change hasn't been made yet.
  
  CgTailCall.lhs
        Minor reformatting to stop the layout rule biting me when
                DEBUG is off.
  
  Closures.h
        Changed some nats to ints.
        Afraid I can't quite remember now why I did this, but there was probably
                a reason.
  
  RtsFlags.h
  SpecBasics.h
  Speculate.h
  TSO.h
  Exception.hc
  HeapStackCheck.hc
  RtsFlags.c
  SpecBurst.c
  SpecIntel.c
  Speculate.c
        Added an additional burst profiling mode called BURST2.
        This mode is there largely to allow comparative benchmarking
                against normal burst profiling.
        Normal BURST profiling is more elegant and I would expect it to
                usually be faster.
        I may remove BURST2 profiling at some point as it clutters up the
                code somewhat.
  
  StgMacros.h
        Initialising specknob to 64 (may revert to 0 later)
        Removed an assertion that the work done since the CostBase
                is greater than zero, as the work done may overflow
                for the root computation.
                (it cannot overflow for speculations, as they always
                get aborted before the work becomes large)
        Various other faff
  
  GC.c
        Fixed the following bug:
                AP_STACK objects are stored as large objects.
                Such objects were being scavenged with scavenge_one.
                But if the AP_STACK had been updated, this would
                        result in applying scavenge_one to an IND.
                        which isn't allowed.
                Thanks to Simon Marlow for the fix.
        Also fixed a bug in which the detagging for a relocated TSO
                was wrong.
  
  Schedule.c
        If a thread is blocked, don't deal with it in the sampling code.
                If speculation is taking place then the code for ThreadBlock
                        will abort it properly.
        Minor tweak to set the specknob (but not the goodness)
                to zero after an abort.
                The let will thus not be profiled until we profile it again.
                This prevents repeated aborts while profiling is disabled,
                but avoids having to turn profiling on to profile speculations
                that are aborting due to having called unsafePerformIO.
                I may undo this change later.
  
  Revision  Changes    Path
  1.51.2.7  +5 -0      fptools/ghc/compiler/absCSyn/AbsCSyn.lhs
  1.95.2.10 +1 -0      fptools/ghc/compiler/absCSyn/PprAbsC.lhs
  1.52.2.13 +2 -2      fptools/ghc/compiler/codeGen/CgExpr.lhs
  1.36.2.3  +6 -2      fptools/ghc/compiler/codeGen/CgHeapery.lhs
  1.36.2.13 +3 -2      fptools/ghc/compiler/codeGen/CgTailCall.lhs
  1.32.2.7  +2 -2      fptools/ghc/includes/Closures.h
  1.45.2.10 +8 -0      fptools/ghc/includes/RtsFlags.h
  1.1.2.3   +11 -2     fptools/ghc/includes/Attic/SpecBasics.h
  1.1.2.3   +10 -5     fptools/ghc/includes/Attic/SpecBurst.h
  1.1.2.12  +5 -3      fptools/ghc/includes/Attic/Speculate.h
  1.50.2.16 +10 -6     fptools/ghc/includes/StgMacros.h
  1.45.2.4  +4 -0      fptools/ghc/includes/StgMiscClosures.h
  1.28.2.8  +2 -1      fptools/ghc/includes/TSO.h
  1.26.2.11 +4 -2      fptools/ghc/rts/Exception.hc
  1.146.2.14 +15 -7     fptools/ghc/rts/GC.c
  1.27.2.7  +16 -1     fptools/ghc/rts/HeapStackCheck.hc
  1.64.2.12 +20 -0     fptools/ghc/rts/RtsFlags.c
  1.160.2.17 +4 -1      fptools/ghc/rts/Schedule.c
  1.1.2.4   +72 -3     fptools/ghc/rts/Attic/SpecBurst.c
  1.1.2.3   +1 -1      fptools/ghc/rts/Attic/SpecIntel.c
  1.1.2.11  +3 -1      fptools/ghc/rts/Attic/Speculate.c



Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo