1. 23 Mar, 2001 9 commits
    • simonpj's avatar
      [project @ 2001-03-23 14:51:54 by simonpj] · 09fe7371
      simonpj authored
      Fix renamer error that prevented PrelBase compiling
    • rrt's avatar
      [project @ 2001-03-23 13:00:39 by rrt] · 1c4b7a51
      rrt authored
      Include config.h, not Stg.h
    • simonmar's avatar
      [project @ 2001-03-23 12:29:07 by simonmar] · 8889d5c0
      simonmar authored
      Add test for :def, :undef
    • simonmar's avatar
      [project @ 2001-03-23 12:12:18 by simonmar] · ef46487b
      simonmar authored
      make :def work again
    • simonmar's avatar
      [project @ 2001-03-23 12:11:26 by simonmar] · ea21fc75
      simonmar authored
      unused import
    • simonpj's avatar
      [project @ 2001-03-23 10:47:21 by simonpj] · 08002107
      simonpj authored
      Comments, plus dead code elim
    • simonpj's avatar
      [project @ 2001-03-23 10:46:27 by simonpj] · 644c1be9
      simonpj authored
      	Correct size calculations for INLINE notes
      Amazingly, CoreUnfold.size_up wasn't treating an InlineMe note
      as small.  (InlineMe was only dealt with at top level.)  As
      the comment now says:
       	-- This can be important.  If you have an instance decl like this:
       	-- 	instance Foo a => Foo [a] where
       	--	   {-# INLINE op1, op2 #-}
       	--	   op1 = ...
       	--	   op2 = ...
       	-- then we'll get a dfun which is a pair of two INLINE lambdas
      This fixes a problem Manuel encountered.
    • simonpj's avatar
      [project @ 2001-03-23 10:44:08 by simonpj] · 86d20be7
      simonpj authored
      	Remove a redundant test in WorkWrap
      We were making a worker/wrapper for an INLINE
      function when it wasn't necessary, and that's a Bad Idea.
      As the comment with WorkWrap.tryWW now says:
      	-- It's very important to refrain from w/w-ing an INLINE function
      	-- If we do so by mistake we transform
      	--	f = __inline (\x -> E)
      	-- into
      	--	f = __inline (\x -> case x of (a,b) -> fw E)
      	--	fw = \ab -> (__inline (\x -> E)) (a,b)
      	-- and the original __inline now vanishes, so E is no longer
      	-- inside its __inline wrapper.  Death!  Disaster!
      There was one case when we did w/w it (to do with coercions),
      but it turned out to be a vestige, as the OUT OF DATE NOTE says.
    • qrczak's avatar
      [project @ 2001-03-23 09:33:22 by qrczak] · 6aae7d06
      qrczak authored
      hsc2hs lexical rules clarified.
  2. 22 Mar, 2001 5 commits
    • simonmar's avatar
      [project @ 2001-03-22 12:12:23 by simonmar] · 2947e534
      simonmar authored
      Move the bug reporting section earlier, and mention the SourceForge
      bug tracker.
      Update the release notes.
      I think I'm just about done in here...
    • simonpj's avatar
      [project @ 2001-03-22 11:20:36 by simonpj] · f4742cfc
      simonpj authored
      Improve error message for ambiguity
    • simonpj's avatar
      [project @ 2001-03-22 11:19:28 by simonpj] · c0c4923f
      simonpj authored
      Improve error reporting for signatures not in scope
    • simonpj's avatar
      [project @ 2001-03-22 11:00:54 by simonpj] · 2d4a0023
      simonpj authored
      Add a bit more info about -fno-implicit-prelude
    • hwloidl's avatar
      [project @ 2001-03-22 03:51:08 by hwloidl] · 20fc2f0c
      hwloidl authored
      -*- outline -*-
      Time-stamp: <Thu Mar 22 2001 03:50:16 Stardate: [-30]6365.79 hwloidl>
      This commit covers changes in GHC to get GUM (way=mp) and GUM/GdH (way=md)
      working. It is a merge of my working version of GUM, based on GHC 4.06,
      with GHC 4.11. Almost all changes are in the RTS (see below).
      GUM is reasonably stable, we used the 4.06 version in large-ish programs for
      recent papers. Couple of things I want to change, but nothing urgent.
      GUM/GdH has just been merged and needs more testing. Hope to do that in the
      next weeks. It works in our working build but needs tweaking to run.
      GranSim doesn't work yet (*sigh*). Most of the code should be in, but needs
      more debugging.
      ToDo: I still want to make the following minor modifications before the release
      - Better wrapper skript for parallel execution [ghc/compiler/main]
      - Update parallel docu: started on it but it's minimal [ghc/docs/users_guide]
      - Clean up [nofib/parallel]: it's a real mess right now (*sigh*)
      - Update visualisation tools (minor things only IIRC) [ghc/utils/parallel]
      - Add a Klingon-English glossary
      * RTS:
      Almost all changes are restricted to ghc/rts/parallel and should not
      interfere with the rest. I only comment on changes outside the parallel
      - Several changes in Schedule.c (scheduling loop; createThreads etc);
        should only affect parallel code
      - Added ghc/rts/hooks/ShutdownEachPEHook.c
      - ghc/rts/Linker.[ch]: GUM doesn't know about Stable Names (ifdefs)!!
      - StgMiscClosures.h: END_TSO_QUEUE etc now defined here (from StgMiscClosures.hc)
                           END_ECAF_LIST was missing a leading stg_
      - SchedAPI.h: taskStart now defined in here; it's only a wrapper around
                    scheduleThread now, but might use some init, shutdown later
      - RtsAPI.h: I have nuked the def of rts_evalNothing
      * Compiler:
      - ghc/compiler/main/DriverState.hs
        added PVM-ish flags to the parallel way
        added new ways for parallel ticky profiling and distributed exec
      - ghc/compiler/main/DriverPipeline.hs
        added a fct run_phase_MoveBinary which is called with way=mp after linking;
        it moves the bin file into a PVM dir and produces a wrapper script for
        parallel execution
        maybe cleaner to add a MoveBinary phase in DriverPhases.hs but this way
        it's less intrusive and MoveBinary makes probably only sense for mp anyway
      * Nofib:
      - nofib/spectral/Makefile, nofib/real/Makefile, ghc/tests/programs/Makefile:
        modified to skip some tests if HWL_NOFIB_HACK is set; only tmp to record
        which test prgs cause problems in my working build right now
  3. 21 Mar, 2001 6 commits
  4. 20 Mar, 2001 18 commits
  5. 19 Mar, 2001 2 commits