ghc.git
7 years agoRetain ordering of finalizers during GC (#7160)
Simon Marlow [Mon, 20 Aug 2012 12:52:07 +0000 (13:52 +0100)] 
Retain ordering of finalizers during GC (#7160)

This came up since the addition of C finalizers, since Haskell
finalizers are already stored in an explicit list.  C finalizers on
the other hand get a WEAK object each, so in order to run them in the
right order we have to make sure that list stays in the correct
order.  I hate adding new invariants, but this is the quickest way to
fix the bug for now.  A better way to fix it would be to have a single
WEAK object with a list of finaliers attached to it, and a primop
for adding finalizers to the list.

7 years agoremove tabs
Simon Marlow [Thu, 9 Aug 2012 10:05:28 +0000 (11:05 +0100)] 
remove tabs

7 years agoremove tabs
Simon Marlow [Thu, 9 Aug 2012 10:04:57 +0000 (11:04 +0100)] 
remove tabs

7 years agoremove tabs
Simon Marlow [Thu, 9 Aug 2012 10:04:15 +0000 (11:04 +0100)] 
remove tabs

7 years agoAvoid the quadratic append trap in flattenCmmAGraph
Simon Marlow [Thu, 9 Aug 2012 09:43:59 +0000 (10:43 +0100)] 
Avoid the quadratic append trap in flattenCmmAGraph

Fixes a perf problem in perf/compiler/T783

7 years agoExport startProfTimer and stopProfTimer symbols.
Paolo Capriotti [Mon, 20 Aug 2012 15:25:49 +0000 (16:25 +0100)] 
Export startProfTimer and stopProfTimer symbols.

This fixes unresolved symbols error when dynamically linking base.

7 years agoProfiling: open .prof when -hr<cc> is specified
Takano Akio [Wed, 15 Aug 2012 02:16:40 +0000 (11:16 +0900)] 
Profiling: open .prof when -hr<cc> is specified

The code for retainer profiling is used with e.g. +RTS -hc -hrfoo -RTS,
as well as with +RTS -hr -RTS.

7 years agoWhen pattern matching against a constructor with equalities,
Simon Peyton Jones [Mon, 20 Aug 2012 13:28:00 +0000 (14:28 +0100)] 
When pattern matching against a constructor with equalities,
require either -XGADTs *or* -XTypeFamilies (rather than only the former)

Fixes Trac #7156

7 years agoImprove documentation for rank-1 types (Trac #7137)
Simon Peyton Jones [Mon, 20 Aug 2012 13:26:08 +0000 (14:26 +0100)] 
Improve documentation for rank-1 types (Trac #7137)

7 years agoAllow a vew pattern or bang pattern in a record pattern.
Takano Akio [Thu, 16 Aug 2012 10:13:47 +0000 (11:13 +0100)] 
Allow a vew pattern or bang pattern in a record pattern.

e.g.
        data T = MkT { x,y :: Int }

        f (MkT { x = !v, y = negate -> w }) = v + w

7 years agoUse TcMType.growThetaTyVars (which works) rather than TcSimplify.growPreds (which...
Simon Peyton Jones [Wed, 15 Aug 2012 17:10:54 +0000 (18:10 +0100)] 
Use TcMType.growThetaTyVars (which works) rather than TcSimplify.growPreds (which doesn't)

I think this got left behind when we simplified and improved TcSimplify.  The effect
was that we had a function like
   class P a b | a -> b
   class Q b c | b -> c

   f :: (P a b, Q b c) => a -> a

and were were failing to quanitfy over 'c', even though it is (indirectly) determined
by 'a'.

This make Programatica fail to compile: Trac #7147

7 years agoTest FlexibleInstance not UndecidableInstances in the ambiguity check
Simon Peyton Jones [Wed, 15 Aug 2012 15:02:03 +0000 (16:02 +0100)] 
Test FlexibleInstance not UndecidableInstances in the ambiguity check

Fixes Trac #7131

7 years agoRequire DataKinds for promoted list/tuple syntax in types
Simon Peyton Jones [Wed, 15 Aug 2012 15:01:19 +0000 (16:01 +0100)] 
Require DataKinds for promoted list/tuple syntax in types

Fixes Trac #7151

7 years agoPut kind variables before type variables when quantifying
Simon Peyton Jones [Wed, 15 Aug 2012 14:59:26 +0000 (15:59 +0100)] 
Put kind variables before type variables when quantifying

This is a pretty egregious error; I'm surprised it has lasted so long!

Fixes Trac #7124

7 years agoMerge branch 'master' of darcs.haskell.org:/home/darcs/ghc
Simon Peyton Jones [Wed, 15 Aug 2012 13:24:43 +0000 (14:24 +0100)] 
Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc

7 years agoFix Trac #7145, by recording uses of constructor "children" in export lists
Simon Peyton Jones [Wed, 15 Aug 2012 13:24:26 +0000 (14:24 +0100)] 
Fix Trac #7145, by recording uses of constructor "children" in export lists

7 years agoComments about shadowing
Simon Peyton Jones [Wed, 15 Aug 2012 13:23:42 +0000 (14:23 +0100)] 
Comments about shadowing

7 years agoTH: Pragmas refactoring.
Mikhail Vorozhtsov [Tue, 10 Jul 2012 14:37:42 +0000 (21:37 +0700)] 
TH: Pragmas refactoring.

Also adds RULES and 'SPECIALIZE instance' support.

7 years agoMake .t files when running haddock
Ian Lynagh [Tue, 14 Aug 2012 17:24:01 +0000 (18:24 +0100)] 
Make .t files when running haddock

These files contain the "+RTS -t --machin-readable" output, so that
we can spot performance regressions.

7 years agoImprove documentation of the way that defaulting to IO happens in GHCi
Simon Peyton Jones [Tue, 14 Aug 2012 16:31:48 +0000 (17:31 +0100)] 
Improve documentation of the way that defaulting to IO happens in GHCi

Thanks to John Hughes for the suggestion.

7 years agoDocument -fdefer-type-errors
Simon Peyton Jones [Tue, 14 Aug 2012 16:31:18 +0000 (17:31 +0100)] 
Document -fdefer-type-errors

Thanks to Paolo for most of the work.

7 years agoBetter debug printing
Simon Peyton Jones [Tue, 14 Aug 2012 16:06:21 +0000 (17:06 +0100)] 
Better debug printing

7 years agoComments
Simon Peyton Jones [Tue, 14 Aug 2012 16:06:10 +0000 (17:06 +0100)] 
Comments

7 years agoFix Trac #7128, by zonking kind varaibles more assiduously when typechecking a class...
Simon Peyton Jones [Tue, 14 Aug 2012 16:06:00 +0000 (17:06 +0100)] 
Fix Trac #7128, by zonking kind varaibles more assiduously when typechecking a class declaration

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Mon, 13 Aug 2012 21:52:17 +0000 (22:52 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoFix GHCi segfault during startup on linux-powerpc (#2972).
Erik de Castro Lopo [Mon, 30 Jul 2012 19:53:49 +0000 (05:53 +1000)] 
Fix GHCi segfault during startup on linux-powerpc (#2972).

Slightly modified version of a patch from Ben Collins <bcollins@ubuntu.com>
who did the final debugging that showed the segfault was being caused the
memory protection mechanism.

Due to the requirement of "jump islands" to handle 24 bit relative jump
offsets, GHCi on PowerPC did not use mmap to load object files like the
other architectures. Instead, it allocated memory using malloc and fread
to load the object code. However there is a quirk in the GNU libc malloc
implementation. For memory regions over certain size (dynamic and
configurable), malloc will use mmap to obtain the required memory instead
of sbrk and malloc's call to mmap sets the memory readable and writable,
but not executable. That means when GHCi loads code into a memory region
that was mmapped instead of malloc-ed and tries to execute it we get a
segfault.

This solution drops the malloc/fread object loading in favour of using
mmap and then puts the jump island for each object code module at the
end of the mmaped region for that object.

This patch may also be a solution on other ELF based powerpc systems
but does not work on darwin-powerpc.

7 years agoFix environment update for type instance declarations in GHCi (#7117)
Paolo Capriotti [Mon, 13 Aug 2012 17:26:34 +0000 (18:26 +0100)] 
Fix environment update for type instance declarations in GHCi (#7117)

Patch by Patrick Palka <patrick@parcs.ath.cx>

7 years agoGive suggestions for unrecognised command line arguments
Joachim Breitner [Thu, 9 Aug 2012 14:10:56 +0000 (16:10 +0200)] 
Give suggestions for unrecognised command line arguments

7 years agoRespect verbosity for "flags changed" message (#7139)
Paolo Capriotti [Mon, 13 Aug 2012 12:36:38 +0000 (13:36 +0100)] 
Respect verbosity for "flags changed" message (#7139)

Also, print that message on stdout.

7 years agoFix ambiguous flag resolution (#7138)
Paolo Capriotti [Mon, 13 Aug 2012 11:48:29 +0000 (12:48 +0100)] 
Fix ambiguous flag resolution (#7138)

Pick longest flag when more than one matches in findArg.

This fixes an issue where -ignore-dot-ghci wasn't honored, because the
flag was parsed as "-i gnore-dot-ghci".

7 years agoUpdate 'unboxed tuples' section of users guide.
Austin Seipp [Sun, 5 Aug 2012 20:06:33 +0000 (15:06 -0500)] 
Update 'unboxed tuples' section of users guide.

In particular, many of the restrictions on using unboxed tuples went
away thanks to Max Bolingbroke, and they can now be bound to variables
without pattern matching, and passed as arguments.

Also fix a little formatting in glasgow-exts.xml. Some other parts
of this section may be out of date.

Signed-off-by: Austin Seipp <mad.one@gmail.com>
7 years agoDon't pass -Wimplicit to the C++ compiler.
Austin Seipp [Sun, 5 Aug 2012 08:26:45 +0000 (03:26 -0500)] 
Don't pass -Wimplicit to the C++ compiler.

Supresses an ugly warning from gcc 4.6+ saying this is a C/ObjC flag
only.

Signed-off-by: Austin Seipp <mad.one@gmail.com>
7 years agoUse the right arch name in the Windows installer filename
Ian Lynagh [Sun, 12 Aug 2012 18:43:51 +0000 (19:43 +0100)] 
Use the right arch name in the Windows installer filename

7 years agoFollow RTS symbol changes in Linker.c
Ian Lynagh [Fri, 10 Aug 2012 22:21:09 +0000 (23:21 +0100)] 
Follow RTS symbol changes in Linker.c

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Fri, 10 Aug 2012 21:28:13 +0000 (22:28 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoAlways define startProfTimer and stopProfTimer
Ian Lynagh [Fri, 10 Aug 2012 21:26:51 +0000 (22:26 +0100)] 
Always define startProfTimer and stopProfTimer

This allows us to provide access to them in the base library.

7 years agoFix build failure on OS X (#7119)
Simon Marlow [Thu, 9 Aug 2012 10:41:06 +0000 (11:41 +0100)] 
Fix build failure on OS X (#7119)

When refactoring this recently I accidentally put the
dead-strip-preventer symbol (only used on OS X) in the wrong section.

7 years agoRemove uses of fixC from the codeGen, and make the FCode monad strict
Simon Marlow [Wed, 8 Aug 2012 15:31:58 +0000 (16:31 +0100)] 
Remove uses of fixC from the codeGen, and make the FCode monad strict

7 years agoOnly run the second round of control-flow optimisations when -O is on
Simon Marlow [Wed, 8 Aug 2012 15:06:31 +0000 (16:06 +0100)] 
Only run the second round of control-flow optimisations when -O is on

7 years agoa couple of small optimisations
Simon Marlow [Wed, 8 Aug 2012 15:05:11 +0000 (16:05 +0100)] 
a couple of small optimisations

7 years agoAdd cast to placate gcc 4.6 on linux-powerpc (#7113).
Erik de Castro Lopo [Fri, 3 Aug 2012 05:14:35 +0000 (15:14 +1000)] 
Add cast to placate gcc 4.6 on linux-powerpc (#7113).

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Wed, 8 Aug 2012 12:09:41 +0000 (13:09 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoSet the value of Unregisterised in the bindist configure.ac
Ian Lynagh [Wed, 8 Aug 2012 12:08:03 +0000 (13:08 +0100)] 
Set the value of Unregisterised in the bindist configure.ac

Now that it's included in settings, the bindist configure script needs
to know it.

7 years agoAdd missing flag for respecting EXTRA_LIBDIR
Gabor Pali [Sun, 22 Jul 2012 16:59:56 +0000 (16:59 +0000)] 
Add missing flag for respecting EXTRA_LIBDIR

7 years agofix warning
Simon Marlow [Tue, 7 Aug 2012 13:51:44 +0000 (14:51 +0100)] 
fix warning

7 years agoFix a bug in the handling of recent_activity
Simon Marlow [Tue, 7 Aug 2012 13:44:46 +0000 (14:44 +0100)] 
Fix a bug in the handling of recent_activity

The problem occurred when the idle GC was turned off with +RTS -I0.
Then the scheduler would go into the state ACTIVITY_DONE_GC directly
without doing a GC, and a subsequent GC would put it back to
ACTIVITY_YES but without turning the timer back on.  Instead if the GC
finds the state is ACTIVITY_DONE_GC it should leave it there.

7 years agomaybeInvertComparison: remove floating-point comparisons
Simon Marlow [Tue, 7 Aug 2012 08:46:35 +0000 (09:46 +0100)] 
maybeInvertComparison: remove floating-point comparisons

See comments.

7 years agoentryHeapCheck: fix calls to stg_gc_fun and stg_gc_enter_1
Simon Marlow [Tue, 7 Aug 2012 13:41:09 +0000 (14:41 +0100)] 
entryHeapCheck: fix calls to stg_gc_fun and stg_gc_enter_1

We weren't passing the arguments correctly to the GC functions, which
usually happened to work because the arguments were in the right
registers already.

After this fix the profiling tests go through with the new code
generator.

7 years agoSmall optimisation
Simon Marlow [Tue, 7 Aug 2012 13:39:03 +0000 (14:39 +0100)] 
Small optimisation

When calling newCAF, refer to the closure using its LocalReg rather
than R1.  Using R1 here was preventing the register allocator from
coalescing the assignment x=R1 at the beginning of the function.

7 years agofix a warning
Simon Marlow [Tue, 7 Aug 2012 13:37:17 +0000 (14:37 +0100)] 
fix a warning

7 years agoEliminate "r = r" in mkAssign
Simon Marlow [Tue, 7 Aug 2012 13:04:08 +0000 (14:04 +0100)] 
Eliminate "r = r" in mkAssign

7 years agoNode calling convs should use R1 even if it isn't a register
Simon Marlow [Tue, 7 Aug 2012 13:03:35 +0000 (14:03 +0100)] 
Node calling convs should use R1 even if it isn't a register

7 years agoAdd missing cases in hand-coded instance Eq GlobalReg
Simon Marlow [Tue, 7 Aug 2012 10:55:44 +0000 (11:55 +0100)] 
Add missing cases in hand-coded instance Eq GlobalReg

aargh.

7 years agofix maybeSaveCostCentre: cases were reversed
Simon Marlow [Tue, 7 Aug 2012 09:53:12 +0000 (10:53 +0100)] 
fix maybeSaveCostCentre: cases were reversed

7 years agoFix update frames for profiling
Simon Marlow [Tue, 7 Aug 2012 09:28:27 +0000 (10:28 +0100)] 
Fix update frames for profiling

7 years agoCleanup and fixes to profiling
Simon Marlow [Mon, 6 Aug 2012 15:52:49 +0000 (16:52 +0100)] 
Cleanup and fixes to profiling

7 years agoA closure with void args only should be a function, not a thunk
Simon Marlow [Mon, 6 Aug 2012 15:52:19 +0000 (16:52 +0100)] 
A closure with void args only should be a function, not a thunk

7 years agoMake lint check for undefined variables in Cmm
Simon Marlow [Mon, 6 Aug 2012 14:29:20 +0000 (15:29 +0100)] 
Make lint check for undefined variables in Cmm

7 years agoGenerate one fewer temps per heap allocation
Simon Marlow [Mon, 6 Aug 2012 14:28:56 +0000 (15:28 +0100)] 
Generate one fewer temps per heap allocation

This saves compile time and can make a big difference in some
pathological cases (T4801)

7 years agosmall cleanup
Simon Marlow [Mon, 6 Aug 2012 12:33:08 +0000 (13:33 +0100)] 
small cleanup

7 years agoDefine callerSaves for all platforms
Ian Lynagh [Tue, 7 Aug 2012 01:37:46 +0000 (02:37 +0100)] 
Define callerSaves for all platforms

This means that we now generate the same code whatever platform we are
on, which should help avoid changes on one platform breaking the build
on another.

It's also another step towards full cross-compilation.

7 years agoAdd "Unregisterised" as a field in the settings file
Ian Lynagh [Tue, 7 Aug 2012 00:27:44 +0000 (01:27 +0100)] 
Add "Unregisterised" as a field in the settings file

To explicitly choose whether you want an unregisterised build you now
need to use the "--enable-unregisterised"/"--disable-unregisterised"
configure flags.

7 years agoMake tablesNextToCode "dynamic"
Ian Lynagh [Mon, 6 Aug 2012 21:51:28 +0000 (22:51 +0100)] 
Make tablesNextToCode "dynamic"

This is a bit odd by itself, but it's a stepping stone on the way to
putting "target unregisterised" into the settings file.

7 years agoStart separating out the RTS and Haskell imports of MachRegs.h
Ian Lynagh [Mon, 6 Aug 2012 16:34:12 +0000 (17:34 +0100)] 
Start separating out the RTS and Haskell imports of MachRegs.h

No functional differences yet

7 years agoDon't define STOLEN_X86_REGS in Cmm.h
Ian Lynagh [Mon, 6 Aug 2012 14:55:17 +0000 (15:55 +0100)] 
Don't define STOLEN_X86_REGS in Cmm.h

We weren't defining it in the other places that MachRegs.h gets
imported, which seems a little suspicious. And if it's not defined
then it defaults to 4 anyway, so this define doesn't seem necessary.

7 years agofix warning
Simon Marlow [Fri, 3 Aug 2012 15:48:37 +0000 (16:48 +0100)] 
fix warning

7 years agocomment
Simon Marlow [Fri, 3 Aug 2012 15:38:01 +0000 (16:38 +0100)] 
comment

7 years agoMO_F_Mul and MO_F_Add are commutative
Simon Marlow [Fri, 3 Aug 2012 15:37:33 +0000 (16:37 +0100)] 
MO_F_Mul and MO_F_Add are commutative

7 years agoFix two bugs in the sinker.
Simon Marlow [Fri, 3 Aug 2012 13:10:13 +0000 (14:10 +0100)] 
Fix two bugs in the sinker.

The new code generator now apparently generates a working stage2
compiler.

7 years agoContinue by jumping to the top-of-stack after a safe foreign call
Simon Marlow [Fri, 3 Aug 2012 10:24:27 +0000 (11:24 +0100)] 
Continue by jumping to the top-of-stack after a safe foreign call

7 years agoForeign calls may clobber caller-saves registers
Simon Marlow [Fri, 3 Aug 2012 10:23:44 +0000 (11:23 +0100)] 
Foreign calls may clobber caller-saves registers

See Note [foreign calls clobber GlobalRegs]

7 years agoUse "ReturnedTo" when generating safe foreign calls
Simon Marlow [Thu, 2 Aug 2012 14:20:44 +0000 (15:20 +0100)] 
Use "ReturnedTo" when generating safe foreign calls

7 years agoAdd a comment to explain why the FCode monad is lazy
Simon Marlow [Thu, 2 Aug 2012 12:37:57 +0000 (13:37 +0100)] 
Add a comment to explain why the FCode monad is lazy

7 years agofinish a comment
Simon Marlow [Thu, 2 Aug 2012 12:37:30 +0000 (13:37 +0100)] 
finish a comment

7 years agoDefine LdCmd in the bindist configure.ac
Ian Lynagh [Sun, 5 Aug 2012 23:12:41 +0000 (00:12 +0100)] 
Define LdCmd in the bindist configure.ac

7 years agoWhitespace only in UniqFM
Ian Lynagh [Sun, 5 Aug 2012 20:46:18 +0000 (21:46 +0100)] 
Whitespace only in UniqFM

7 years agoMore more ld-related settings into the settings file
Ian Lynagh [Sun, 5 Aug 2012 20:28:20 +0000 (21:28 +0100)] 
More more ld-related settings into the settings file

Related to #4862

7 years agoImprove some code layout in SysTools
Ian Lynagh [Sun, 5 Aug 2012 19:44:38 +0000 (20:44 +0100)] 
Improve some code layout in SysTools

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Sun, 5 Aug 2012 18:51:42 +0000 (19:51 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoRemove pprDefiniteTrace
Ian Lynagh [Sun, 5 Aug 2012 18:05:02 +0000 (19:05 +0100)] 
Remove pprDefiniteTrace

All uses of it are now in an IO Monad, so we don't need to use
a trace-like function.

7 years agoRename trace_dump to dump
Ian Lynagh [Sun, 5 Aug 2012 17:54:48 +0000 (18:54 +0100)] 
Rename trace_dump to dump

It's no longer a trace-like function.

7 years agoWhitespace only in compiler/simplCore/Simplify.lhs
Ian Lynagh [Sun, 5 Aug 2012 17:53:46 +0000 (18:53 +0100)] 
Whitespace only in compiler/simplCore/Simplify.lhs

7 years agoBuild fix
Ian Lynagh [Sun, 5 Aug 2012 17:15:07 +0000 (18:15 +0100)] 
Build fix

7 years agoRemove LD_X; it's no longer used
Ian Lynagh [Sun, 5 Aug 2012 17:11:09 +0000 (18:11 +0100)] 
Remove LD_X; it's no longer used

7 years agoMove linker flags into the settings file; fixes #4862
Ian Lynagh [Sun, 5 Aug 2012 17:08:22 +0000 (18:08 +0100)] 
Move linker flags into the settings file; fixes #4862

They were getting baked into Config.hs before.

7 years agoConvert prefix uses of (<>) to infix <>
Ian Lynagh [Sun, 5 Aug 2012 15:53:18 +0000 (16:53 +0100)] 
Convert prefix uses of (<>) to infix <>

7 years agoRemove an unsafe use of head (#7118)
Paolo Capriotti [Sat, 4 Aug 2012 17:43:00 +0000 (18:43 +0100)] 
Remove an unsafe use of head (#7118)

7 years agoDe-orphan the Outputable Fingerprint instance
Ian Lynagh [Sun, 5 Aug 2012 15:07:11 +0000 (16:07 +0100)] 
De-orphan the Outputable Fingerprint instance

7 years agoRemove another unnecessary Platform argument
Ian Lynagh [Sun, 5 Aug 2012 15:03:38 +0000 (16:03 +0100)] 
Remove another unnecessary Platform argument

7 years agoWhitespace only in utils/Outputable.lhs
Ian Lynagh [Sun, 5 Aug 2012 13:19:40 +0000 (14:19 +0100)] 
Whitespace only in utils/Outputable.lhs

7 years agoWhitespace only in hsSyn/HsSyn.lhs
Ian Lynagh [Sun, 5 Aug 2012 13:19:03 +0000 (14:19 +0100)] 
Whitespace only in hsSyn/HsSyn.lhs

7 years agoDe-orphan the Outputable Char instance
Ian Lynagh [Sun, 5 Aug 2012 13:18:22 +0000 (14:18 +0100)] 
De-orphan the Outputable Char instance

7 years agoMerge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Ian Lynagh [Sun, 5 Aug 2012 12:35:34 +0000 (13:35 +0100)] 
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc

7 years agoFix references to repositories in the user guide
Paolo Capriotti [Fri, 3 Aug 2012 12:39:52 +0000 (13:39 +0100)] 
Fix references to repositories in the user guide

7 years agocomments and refactoring
Simon Marlow [Thu, 2 Aug 2012 12:07:19 +0000 (13:07 +0100)] 
comments and refactoring

7 years agoFloutOut.wrapTick: don't forget to tick the args of a constructor app
Simon Marlow [Thu, 2 Aug 2012 10:53:58 +0000 (11:53 +0100)] 
FloutOut.wrapTick: don't forget to tick the args of a constructor app

Thanks to Peter Wortmann for pointing out this bug.

7 years agoapplying simonpj's fix from #7022 (with 80-col reformatting)
Simon Marlow [Thu, 2 Aug 2012 10:47:51 +0000 (11:47 +0100)] 
applying simonpj's fix from #7022 (with 80-col reformatting)

7 years agocomment wibble
Simon Marlow [Wed, 1 Aug 2012 09:09:51 +0000 (10:09 +0100)] 
comment wibble

7 years agofix a bug in the inliner
Simon Marlow [Thu, 2 Aug 2012 10:22:28 +0000 (11:22 +0100)] 
fix a bug in the inliner

7 years agoEliminate "r = r" assignments.
Simon Marlow [Thu, 2 Aug 2012 09:36:58 +0000 (10:36 +0100)] 
Eliminate "r = r" assignments.

Previously these were caught by removeDeadAssignments, but we aren't
doing that now.