ghc-hetmet.git
15 years agoTry not to avoid vectorising purely scalar functions
Roman Leshchinskiy [Fri, 6 Mar 2009 11:55:08 +0000 (11:55 +0000)]
Try not to avoid vectorising purely scalar functions

15 years agoPackage dph needs to be cleaned in stage=1, too
Manuel M T Chakravarty [Fri, 6 Mar 2009 03:16:28 +0000 (03:16 +0000)]
Package dph needs to be cleaned in stage=1, too

15 years agoAdd --version to runghc. Trac #2757.
Ian Lynagh [Thu, 5 Mar 2009 16:20:45 +0000 (16:20 +0000)]
Add --version to runghc. Trac #2757.
We use the GHC version number, as the old runghc one doesn't seem very
useful.

15 years agoadd final newlines
Simon Marlow [Thu, 5 Mar 2009 14:00:14 +0000 (14:00 +0000)]
add final newlines
My Windows build has started complaining about lacking final newlines,
I'm not entirely sure why.

15 years agoremove foo.exe.manifest when --embed-manifest is on
Simon Marlow [Thu, 5 Mar 2009 11:27:26 +0000 (11:27 +0000)]
remove foo.exe.manifest when --embed-manifest is on

15 years agoadd --with-ld=c:/mingw/bin/ld
Simon Marlow [Thu, 5 Mar 2009 11:26:18 +0000 (11:26 +0000)]
add --with-ld=c:/mingw/bin/ld

15 years agoDocument -fwarn-unrecognised-pragmas; fixes trac #3031
Ian Lynagh [Thu, 5 Mar 2009 14:31:28 +0000 (14:31 +0000)]
Document -fwarn-unrecognised-pragmas; fixes trac #3031

15 years agoOn OS X/x86, tell gcc to generate instructions for i686. Fixes trac #2983.
Ian Lynagh [Thu, 5 Mar 2009 14:20:50 +0000 (14:20 +0000)]
On OS X/x86, tell gcc to generate instructions for i686. Fixes trac #2983.
By default, gcc on OS X will generate SSE instructions, which need
things 16-byte aligned, but we don't 16-byte align things. Thus drop
back to generic i686 compatibility.

15 years agoBy default, only HsColour the docs if we find HsColour. Fixes trac #3004.
Ian Lynagh [Thu, 5 Mar 2009 13:27:23 +0000 (13:27 +0000)]
By default, only HsColour the docs if we find HsColour. Fixes trac #3004.
If you manually set HSCOLOUR_SRCS=YES then the build will fail if
HsColour wasn't found.

15 years agoMake -fdicts-cheap cope with implication constraints
simonpj@microsoft.com [Thu, 5 Mar 2009 13:44:47 +0000 (13:44 +0000)]
Make -fdicts-cheap cope with implication constraints

See the Note [Dictionary-like types] in TcType for the full story here
Should only affect programs that use -fdicts-cheap, for
which you'll get better arities

15 years agoFinally fix Trac #3066
simonpj@microsoft.com [Thu, 5 Mar 2009 09:09:35 +0000 (09:09 +0000)]
Finally fix Trac #3066

This is a fix to
  Tue Mar  3 17:42:58 GMT 2009  simonpj@microsoft.com
    * Fix Trac #3066: checking argument types in foreign calls
which I embarassingly got wrong.

Have to be careful when expanding recursive newtypes.

Pls merge.

15 years agoFix a broken link. Spotted by Norman Ramsey in trac #3068.
Ian Lynagh [Wed, 4 Mar 2009 16:53:51 +0000 (16:53 +0000)]
Fix a broken link. Spotted by Norman Ramsey in trac #3068.

15 years agoFix spelling (Trac#3069)
simonpj@microsoft.com [Wed, 4 Mar 2009 09:22:32 +0000 (09:22 +0000)]
Fix spelling (Trac#3069)

15 years agoLayout only
simonpj@microsoft.com [Wed, 4 Mar 2009 09:19:56 +0000 (09:19 +0000)]
Layout only

15 years agoFix a long-standing latent bug (and the build): check res_ty not sig_ty
simonpj@microsoft.com [Wed, 4 Mar 2009 09:19:13 +0000 (09:19 +0000)]
Fix a long-standing latent bug (and the build): check res_ty not sig_ty

15 years agoFix #3067: GHCi panics with 'initTc:LIE' while :stepping on code with funny types
pepe iborra [Tue, 3 Mar 2009 19:37:06 +0000 (19:37 +0000)]
Fix #3067: GHCi panics with 'initTc:LIE' while :stepping on code with funny types

The problem is that calls to boxyUnify would panic if the types involved
contained type functions.
It looks like one should wrap these calls with getLIE, although I don't
really know what I am doing here

15 years agoFix Trac #3066: checking argument types in foreign calls
simonpj@microsoft.com [Tue, 3 Mar 2009 17:42:58 +0000 (17:42 +0000)]
Fix Trac #3066: checking argument types in foreign calls

When checking argument types in a foreign call we were stupidly
looking through foralls.  The fix is easy.

Merge to 6.10.2

15 years agoFix Trac #3057 in deriving Functor
simonpj@microsoft.com [Tue, 3 Mar 2009 17:06:12 +0000 (17:06 +0000)]
Fix Trac #3057 in deriving Functor

The universal type variables of a data constructor are not necessarily
identical to those of its parent type constructor, especially if the
data type is imported.

While I was at it, I did a significant refactoring to make all this
traversal of types more comprehensible, by adding the data type
FFoldType.

15 years agofix assertion failure with -debug non-threaded RTS (by deleting code!)
Simon Marlow [Tue, 3 Mar 2009 14:39:42 +0000 (14:39 +0000)]
fix assertion failure with -debug non-threaded RTS (by deleting code!)

15 years agoimprovements: generate LaTeX tables for more than one run
Simon Marlow [Tue, 3 Mar 2009 14:13:46 +0000 (14:13 +0000)]
improvements: generate LaTeX tables for more than one run

15 years agoA few bug fixes; some improvements spurred by paper writing
dias@eecs.harvard.edu [Tue, 3 Mar 2009 15:02:28 +0000 (15:02 +0000)]
A few bug fixes; some improvements spurred by paper writing
Among others:
- Fixed Stg->C-- translation of let-no-escapes -- it's important to use the
  right continuation...
- Fixed infinite recursion in X86 backend (shortcutJump mishandled infinite loops)
- Fixed yet another wrong calling convention -- primops take args only in vanilla regs,
  but they may return results on the stack!
- Removed StackInfo from LGraph and Block -- now in LastCall and CmmZ
- Updated avail-variable and liveness code

15 years agoComments only
simonpj@microsoft.com [Tue, 3 Mar 2009 11:15:13 +0000 (11:15 +0000)]
Comments only

15 years agoFilter out carriage returns in doc strings
David Waern [Sat, 28 Feb 2009 14:53:51 +0000 (14:53 +0000)]
Filter out carriage returns in doc strings

We want the internal format to contain LFs only. This makes it easier to work
with the doc strings for clients of the GHC API.

15 years agoz-encode digits at the start of a symbol name; fixes trac #2997
Ian Lynagh [Fri, 27 Feb 2009 18:00:29 +0000 (18:00 +0000)]
z-encode digits at the start of a symbol name; fixes trac #2997
Digits already have a couple of meanings in z-encoding (Z3T is a tuple,
and z123U is a unicode character), so we encode digits as unicode
characters to avoid trying to squeeze in another meaning.

Also removed a little GHC < 6.2 compatibility hack.

15 years agoWhitespace only
Ian Lynagh [Fri, 27 Feb 2009 16:34:35 +0000 (16:34 +0000)]
Whitespace only

15 years agoImprove documentation of bang patterns
simonpj@microsoft.com [Fri, 27 Feb 2009 10:15:03 +0000 (10:15 +0000)]
Improve documentation of bang patterns

15 years agoUse 'nonIOok' instead of 'True'; cosmetics only
simonpj@microsoft.com [Mon, 23 Feb 2009 10:16:59 +0000 (10:16 +0000)]
Use 'nonIOok' instead of 'True'; cosmetics only

15 years agoTweak +RTS --info docs
Ian Lynagh [Fri, 27 Feb 2009 02:07:58 +0000 (02:07 +0000)]
Tweak +RTS --info docs

15 years agoIn +RTS --info output, use YES rather than Yes
Ian Lynagh [Fri, 27 Feb 2009 01:02:30 +0000 (01:02 +0000)]
In +RTS --info output, use YES rather than Yes

15 years agoFIX #1891 (describe +RTS --info output in GHC user guide)
Andrew Coppin [Sat, 14 Feb 2009 15:02:34 +0000 (15:02 +0000)]
FIX #1891 (describe +RTS --info output in GHC user guide)

15 years agoIf we are given -Werror, then pass -Werror to cpp
Ian Lynagh [Thu, 26 Feb 2009 00:16:06 +0000 (00:16 +0000)]
If we are given -Werror, then pass -Werror to cpp

15 years agoStrip tag bits from closure pointers before trying to deference them.
Ben.Lippmeier@anu.edu.au [Tue, 24 Feb 2009 10:13:46 +0000 (10:13 +0000)]
Strip tag bits from closure pointers before trying to deference them.

15 years agoSPARC NCG: Split out sanity checking into its own module
Ben.Lippmeier@anu.edu.au [Mon, 23 Feb 2009 07:12:07 +0000 (07:12 +0000)]
SPARC NCG: Split out sanity checking into its own module

15 years agoSPARC NCG: Add jumps to end of blocks when working out condition codes
Ben.Lippmeier@anu.edu.au [Mon, 23 Feb 2009 06:21:35 +0000 (06:21 +0000)]
SPARC NCG: Add jumps to end of blocks when working out condition codes

15 years agoSPARC NCG: Enforce the invariant that each block ends with a jump.
Ben.Lippmeier@anu.edu.au [Mon, 23 Feb 2009 06:07:07 +0000 (06:07 +0000)]
SPARC NCG: Enforce the invariant that each block ends with a jump.

 - If each basic block doesn't end with a jump then the register
   liveness determinator will get the cross-block liveness info
   wrong, resulting in a bad allocation.

15 years agoAdd targets clean.library.dph and remake.library.dph
Manuel M T Chakravarty [Tue, 24 Feb 2009 11:20:37 +0000 (11:20 +0000)]
Add targets clean.library.dph and remake.library.dph
- Package dph ist a meta package that contains a number of subpackages inside.
- This patch adds two targets to clean and remake all subpackages with a
  single command.

15 years ago:steplocal and :stepmodule should not polute trace history
Peter Hercek [Sun, 22 Feb 2009 20:10:02 +0000 (20:10 +0000)]
:steplocal and :stepmodule should not polute trace history

15 years agoDo not print anything to stdout when stopping at a breakpoint with custom code attached
Peter Hercek [Sun, 22 Feb 2009 19:55:51 +0000 (19:55 +0000)]
Do not print anything to stdout when stopping at a breakpoint with custom code attached

15 years agonewPinnedByteArray#: align the result to 16-bytes (part of #2917)
Simon Marlow [Thu, 19 Feb 2009 10:32:45 +0000 (10:32 +0000)]
newPinnedByteArray#: align the result to 16-bytes (part of #2917)

15 years agoOnly use STAGE3_PACKAGE_CONF for building GHC itself
Ian Lynagh [Sat, 21 Feb 2009 15:15:30 +0000 (15:15 +0000)]
Only use STAGE3_PACKAGE_CONF for building GHC itself
In particular, when building dph with the stage2 compiler, we want to
register it in the main package.conf.

15 years agoExport blockUserSignals and unblockUserSignals (needed for #2870)
Simon Marlow [Thu, 19 Feb 2009 11:34:18 +0000 (11:34 +0000)]
Export blockUserSignals and unblockUserSignals (needed for #2870)

15 years ago#2860: remove redundant unblocking of signals
Simon Marlow [Thu, 19 Feb 2009 10:32:58 +0000 (10:32 +0000)]
#2860: remove redundant unblocking of signals

15 years agonewPinnedByteArray#: align the result to 16-bytes (part of #2917)
Simon Marlow [Thu, 19 Feb 2009 10:32:45 +0000 (10:32 +0000)]
newPinnedByteArray#: align the result to 16-bytes (part of #2917)

15 years agoRewrite of signal-handling (ghc patch; see also base and unix patches)
Simon Marlow [Thu, 19 Feb 2009 10:31:42 +0000 (10:31 +0000)]
Rewrite of signal-handling (ghc patch; see also base and unix patches)

The API is the same (for now).  The new implementation has the
capability to define signal handlers that have access to the siginfo
of the signal (#592), but this functionality is not exposed in this
patch.

#2451 is the ticket for the new API.

The main purpose of bringing this in now is to fix race conditions in
the old signal handling code (#2858).  Later we can enable the new
API in the HEAD.

Implementation differences:

 - More of the signal-handling is moved into Haskell.  We store the
   table of signal handlers in an MVar, rather than having a table of
   StablePtrs in the RTS.

 - In the threaded RTS, the siginfo of the signal is passed down the
   pipe to the IO manager thread, which manages the business of
   starting up new signal handler threads.  In the non-threaded RTS,
   the siginfo of caught signals is stored in the RTS, and the
   scheduler starts new signal handler threads.

15 years agoFix an off-by-one; fixes the second bug in trac #3001
Ian Lynagh [Wed, 18 Feb 2009 23:56:20 +0000 (23:56 +0000)]
Fix an off-by-one; fixes the second bug in trac #3001

15 years agoInstall libHSffi_p.a
Ian Lynagh [Wed, 18 Feb 2009 16:59:13 +0000 (16:59 +0000)]
Install libHSffi_p.a

15 years agoFix ghc and ghci wrappers on Windows
Ian Lynagh [Wed, 18 Feb 2009 00:50:34 +0000 (00:50 +0000)]
Fix ghc and ghci wrappers on Windows

15 years agoMake versioned ghc and ghci programs on Windows; fixes trac #2827
Ian Lynagh [Tue, 17 Feb 2009 21:50:48 +0000 (21:50 +0000)]
Make versioned ghc and ghci programs on Windows; fixes trac #2827

15 years agoSPARC NCG: Unsigned comparisons are unsigned
Ben.Lippmeier@anu.edu.au [Tue, 17 Feb 2009 03:52:00 +0000 (03:52 +0000)]
SPARC NCG: Unsigned comparisons are unsigned

15 years agoSPARC NCG: Fix word size conversions
Ben.Lippmeier@anu.edu.au [Tue, 17 Feb 2009 02:33:22 +0000 (02:33 +0000)]
SPARC NCG: Fix word size conversions

15 years agoSPARC NCG: Split up into chunks, and fix warnings.
Ben.Lippmeier@anu.edu.au [Mon, 16 Feb 2009 02:00:38 +0000 (02:00 +0000)]
SPARC NCG: Split up into chunks, and fix warnings.

15 years agoSPARC NCG: Reorganise Reg and RegInfo
Ben.Lippmeier@anu.edu.au [Mon, 16 Feb 2009 00:09:45 +0000 (00:09 +0000)]
SPARC NCG: Reorganise Reg and RegInfo

15 years agoNCG: Cleanup old file
Ben.Lippmeier@anu.edu.au [Mon, 16 Feb 2009 00:08:47 +0000 (00:08 +0000)]
NCG: Cleanup old file

15 years agoNCG: validate fixes for ppc-darwin
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 08:36:01 +0000 (08:36 +0000)]
NCG: validate fixes for ppc-darwin

15 years agoNCG: validate fixes for ghc-6.6
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 07:13:34 +0000 (07:13 +0000)]
NCG: validate fixes for ghc-6.6

15 years agoNCG: validate fixes for i386-darwin
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 07:32:34 +0000 (07:32 +0000)]
NCG: validate fixes for i386-darwin

15 years agoNCG: validate fixes for x86_64-linux
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 07:23:25 +0000 (07:23 +0000)]
NCG: validate fixes for x86_64-linux

15 years agoNCG: Haddock validate fix
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 06:37:10 +0000 (06:37 +0000)]
NCG: Haddock validate fix

15 years agoNCG: Validate fixes for x86-linux
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 06:23:21 +0000 (06:23 +0000)]
NCG: Validate fixes for x86-linux

15 years agoSPARC NCG: Don't release top half of f6 and f8
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 06:19:40 +0000 (06:19 +0000)]
SPARC NCG: Don't release top half of f6 and f8

15 years agoNCG: Split up the native code generator into arch specific modules
Ben.Lippmeier@anu.edu.au [Sun, 15 Feb 2009 05:51:58 +0000 (05:51 +0000)]
NCG: Split up the native code generator into arch specific modules

  - nativeGen/Instruction defines a type class for a generic
    instruction set. Each of the instruction sets we have,
    X86, PPC and SPARC are instances of it.

  - The register alloctors use this type class when they need
    info about a certain register or instruction, such as
    regUsage, mkSpillInstr, mkJumpInstr, patchRegs..

  - nativeGen/Platform defines some data types enumerating
    the architectures and operating systems supported by the
    native code generator.

  - DynFlags now keeps track of the current build platform, and
    the PositionIndependentCode module uses this to decide what
    to do instead of relying of #ifdefs.

  - It's not totally retargetable yet. Some info info about the
    build target is still hardwired, but I've tried to contain
    most of it to a single module, TargetRegs.

  - Moved the SPILL and RELOAD instructions into LiveInstr.

  - Reg and RegClass now have their own modules, and are shared
    across all architectures.

15 years agoSPARC NCG: Make linear allocator use info in SPARC.Regs again
Ben.Lippmeier@anu.edu.au [Wed, 11 Feb 2009 05:40:21 +0000 (05:40 +0000)]
SPARC NCG: Make linear allocator use info in SPARC.Regs again

15 years agoSPARC NCG: Enumerate freeRegs / globalRegMaybe instead of using #ifdefery
Ben.Lippmeier@anu.edu.au [Wed, 11 Feb 2009 02:53:30 +0000 (02:53 +0000)]
SPARC NCG: Enumerate freeRegs / globalRegMaybe instead of using #ifdefery

15 years agoNCG: Split PprMach into arch specific modules
Ben.Lippmeier@anu.edu.au [Thu, 5 Feb 2009 08:12:42 +0000 (08:12 +0000)]
NCG: Split PprMach into arch specific modules
  - There are still some #ifdefs for choosing between i386, x86_64,
      linux, darwin and other OS's.
  - Also reformat SPARC.RegInfo to remove some of the visual noise.

15 years agoPut RelaxedPolyRec in the cabal file rather than a pragma
Ian Lynagh [Fri, 13 Feb 2009 18:56:35 +0000 (18:56 +0000)]
Put RelaxedPolyRec in the cabal file rather than a pragma
This should fix the build with GHC 6.6

15 years agoupdate Sparc store/load barrier (#3019), and fix comments
Simon Marlow [Thu, 12 Feb 2009 09:23:40 +0000 (09:23 +0000)]
update Sparc store/load barrier (#3019), and fix comments

15 years agocomment wibbles
Simon Marlow [Wed, 11 Feb 2009 15:28:44 +0000 (15:28 +0000)]
comment wibbles

15 years agoNCG: Use sync instead of msync for a memory barrier for powerpc
Ben.Lippmeier@anu.edu.au [Fri, 13 Feb 2009 00:49:10 +0000 (00:49 +0000)]
NCG: Use sync instead of msync for a memory barrier for powerpc
  Darwin 9.6.0 + GCC 4.0.1 doesn't understand "msync".
  I think "sync" means the same thing.

15 years agoNCG: Split block reorder thing in linear allocator into separate fn
Ben.Lippmeier@anu.edu.au [Fri, 13 Feb 2009 00:48:19 +0000 (00:48 +0000)]
NCG: Split block reorder thing in linear allocator into separate fn

15 years agoNCG: Validate fixes for powerpc
Ben.Lippmeier@anu.edu.au [Fri, 13 Feb 2009 00:47:25 +0000 (00:47 +0000)]
NCG: Validate fixes for powerpc

15 years agoNCG: Add missing ops to powerpc isJumpish
Ben.Lippmeier@anu.edu.au [Fri, 13 Feb 2009 00:46:47 +0000 (00:46 +0000)]
NCG: Add missing ops to powerpc isJumpish

15 years agoOnly pass --with-hscolour to cabal-bin once
Ian Lynagh [Thu, 12 Feb 2009 14:10:23 +0000 (14:10 +0000)]
Only pass --with-hscolour to cabal-bin once

15 years agoQuote some more arguments to cabal-bin
Ian Lynagh [Thu, 12 Feb 2009 14:11:20 +0000 (14:11 +0000)]
Quote some more arguments to cabal-bin

15 years agoAdd more targets to the list that we need to include all libraries for
Ian Lynagh [Wed, 11 Feb 2009 17:33:33 +0000 (17:33 +0000)]
Add more targets to the list that we need to include all libraries for

15 years agoFix Trac #3017: ensure that we quantify over enough type variables when equalities...
simonpj@microsoft.com [Wed, 11 Feb 2009 17:47:33 +0000 (17:47 +0000)]
Fix Trac #3017: ensure that we quantify over enough type variables when equalities are involved

The function FunDeps.grow was not doing the right thing when type equality
constraints were involved.  That wasn't really its fault: its input was
being filtered by fdPredsOfInsts.

To fix this I did a bit of refactoring, so that the (revolting) fdPredsOfInsts
is now less important (maybe we can get rid of it in due course).  The 'grow'
function moves from FunDeps to
 Inst.growInstsTyVars
 TcMTType.growThetaTyVars
 TcMType.growTyVars

The main comments are with the first of these, in
Note [Growing the tau-tvs using constraints] in Inst.

Push to the branch if conflict free.

15 years agogeneral tidy up
Simon Marlow [Wed, 11 Feb 2009 15:24:29 +0000 (15:24 +0000)]
general tidy up

15 years agoone more bugfix: a load/load memory barrier is required in stealWSDeque_()
Simon Marlow [Wed, 11 Feb 2009 15:24:21 +0000 (15:24 +0000)]
one more bugfix: a load/load memory barrier is required in stealWSDeque_()

15 years agoFix trac #3001: Biographical profiling segfaults
Ian Lynagh [Wed, 11 Feb 2009 15:34:57 +0000 (15:34 +0000)]
Fix trac #3001: Biographical profiling segfaults
We were zeroing the wrong memory

15 years agoTweak the mangler; fixes trac #2871
Ian Lynagh [Wed, 11 Feb 2009 15:03:40 +0000 (15:03 +0000)]
Tweak the mangler; fixes trac #2871
It was getting confused by lines like:
 # 9 "C:\Temp\/ghc620_0/ghc620_0.hc" 1

15 years agoOn sparc, pass -mcpu=v9 when assembling with object splitting enabled
Ian Lynagh [Wed, 11 Feb 2009 14:16:00 +0000 (14:16 +0000)]
On sparc, pass -mcpu=v9 when assembling with object splitting enabled
Fixes trac #2872.

15 years agoTurn another ASSERT into a WARN (temproraily)
simonpj@microsoft.com [Wed, 11 Feb 2009 09:40:28 +0000 (09:40 +0000)]
Turn another ASSERT into a WARN (temproraily)

Fix Trac #3011 by temporarily making it only a WARN if we assign twice
to the same unification variable.

15 years agoImprove documentation for LANGUAGE pragma (esp wrt cpp)
simonpj@microsoft.com [Wed, 11 Feb 2009 09:39:39 +0000 (09:39 +0000)]
Improve documentation for LANGUAGE pragma (esp wrt cpp)

15 years agoDon't use the absolute path to the bindist tarball
Ian Lynagh [Tue, 10 Feb 2009 21:52:15 +0000 (21:52 +0000)]
Don't use the absolute path to the bindist tarball
On Windows, we end up doing something like
    rsync c:/build/ghc-6.10.1-unknown-mingw32.tar.bz2 haskell.org:dist
and it thinks that it is meant to get the file from the host called "c".
Now we just do
    rsync ghc-6.10.1-unknown-mingw32.tar.bz2 haskell.org:dist
so rsync understand what we mean.

15 years agoFix cleaning and installing the libraries
Ian Lynagh [Tue, 10 Feb 2009 22:55:38 +0000 (22:55 +0000)]
Fix cleaning and installing the libraries
When cleaning or installing, we need to ignore what $stage is, and
just clean/install all the libraries.

15 years agoscheduleYield(): check the wakeup queue before yielding
Simon Marlow [Mon, 9 Feb 2009 11:25:36 +0000 (11:25 +0000)]
scheduleYield(): check the wakeup queue before yielding

15 years agoImprovements to the "can't find module" error message (#2980)
Simon Marlow [Fri, 6 Feb 2009 16:57:43 +0000 (16:57 +0000)]
Improvements to the "can't find module" error message (#2980)
If the module was found in multiple hidden packages, we list them all.

Could not find module `Data.Generics':
  it is a member of the hidden package `base-3.0.3.0'
  it is a member of the hidden package `syb'
  Use -v to see a list of the files searched for.

15 years agobuild fix: add -I../rts/parallel
Simon Marlow [Fri, 6 Feb 2009 14:59:21 +0000 (14:59 +0000)]
build fix: add -I../rts/parallel

15 years agocrucial bugfix: add a store/load memory barrier to popWSDeque()
Simon Marlow [Fri, 6 Feb 2009 13:08:04 +0000 (13:08 +0000)]
crucial bugfix: add a store/load memory barrier to popWSDeque()

15 years agobugfix: an unsigned comparison should be signed
Simon Marlow [Fri, 6 Feb 2009 13:07:45 +0000 (13:07 +0000)]
bugfix: an unsigned comparison should be signed

15 years agotiny cleanup
Simon Marlow [Fri, 6 Feb 2009 13:07:15 +0000 (13:07 +0000)]
tiny cleanup

15 years agoadd debugging code and comments
Simon Marlow [Fri, 6 Feb 2009 13:06:09 +0000 (13:06 +0000)]
add debugging code and comments

15 years agoadd an assertion
Simon Marlow [Fri, 6 Feb 2009 13:03:38 +0000 (13:03 +0000)]
add an assertion

15 years agoadd a single-threaded version of cas()
Simon Marlow [Fri, 6 Feb 2009 13:01:30 +0000 (13:01 +0000)]
add a single-threaded version of cas()

15 years agoadd a store/load memory barrier
Simon Marlow [Fri, 6 Feb 2009 13:01:15 +0000 (13:01 +0000)]
add a store/load memory barrier

15 years agoRefactor the spark queue implementation into a generic work-stealing deque
Simon Marlow [Thu, 5 Feb 2009 12:46:48 +0000 (12:46 +0000)]
Refactor the spark queue implementation into a generic work-stealing deque
So we can use this abstraction elsewhere in the RTS

15 years agoHandle the case where setitimer(ITIMER_VIRTUAL) is not always available
Ian Lynagh [Sun, 8 Feb 2009 19:14:31 +0000 (19:14 +0000)]
Handle the case where setitimer(ITIMER_VIRTUAL) is not always available
Patch from sthibaul. Fixes trac #2883.

15 years agoCorrect an IsFunction that should be IsData
Ian Lynagh [Sat, 7 Feb 2009 00:58:34 +0000 (00:58 +0000)]
Correct an IsFunction that should be IsData

15 years agoFix calling maths functions when compiling via C
Ian Lynagh [Fri, 6 Feb 2009 22:31:19 +0000 (22:31 +0000)]
Fix calling maths functions when compiling via C

15 years agoAdd a panic to fix the build on amd64/Linux; to be fixed properly later
Ian Lynagh [Fri, 6 Feb 2009 15:31:35 +0000 (15:31 +0000)]
Add a panic to fix the build on amd64/Linux; to be fixed properly later

15 years agoFix the build on OS X: only understands .space, not .skip
Ian Lynagh [Fri, 6 Feb 2009 15:12:03 +0000 (15:12 +0000)]
Fix the build on OS X: only understands .space, not .skip