summaryrefslogtreecommitdiff
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* More hacking on monad-compmonad-compSimon Peyton Jones2011-05-038-1258/+1033
| | | | | | Lots of refactoring. In particular I have now combined TansformStmt and GroupStmt into a single constructor TransStmt. This gives lots of useful code sharing.
* More on monad-comp; an intermediate state, so don't pullSimon Peyton Jones2011-05-026-74/+85
|
* More hacking on monad-comp; now worksSimon Peyton Jones2011-05-0216-501/+412
|
* Simon's hacking on monad-comp; incompleteSimon Peyton Jones2011-04-2914-642/+670
|
* Merge remote branch 'origin/master' into monad-compSimon Peyton Jones2011-04-2847-571/+726
|\ | | | | | | | | Conflicts: compiler/main/HscMain.lhs
| * Output ELF .size directives for functionsJohan Tibell2011-04-281-0/+10
| | | | | | | | | | This allows tools like Linux's perf events to display symbol names for CMM primops.
| * Fix bug in multi-destination jump patching.Edward Z. Yang2011-04-271-1/+1
| | | | | | | | Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| * Implement jump table fix-ups for linear register allocator.Edward Z. Yang2011-04-2710-63/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | We achieve this by splitting up instruction selection for case switches into two parts: the actual code generation, and the generation of the accompanying jump table. With this scheme, the jump fixup code can modify the contents of the jump table stored within the JMP_TBL (or BCTL) instruction, before the actual data section is created. SPARC and PPC patches are untested; they might not work! Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| * Eliminate GC check when no extra stack is used.Edward Z. Yang2011-04-272-4/+14
| | | | | | | | Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| * Give manifestSP better information about the actual SP location.Edward Z. Yang2011-04-273-31/+121
| | | | | | | | | | | | | | This patch fixes silliness where the SP pointer is continually bumped up and down. Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| * Merge branch 'master' of http://darcs.haskell.org/ghcU-EUROPE\dimitris2011-04-2718-196/+200
| |\
| | * Merge branch 'master' of /Users/benl/devel/ghc/ghc-headBen Lippmeier2011-04-2755-705/+744
| | |\
| | | * Formatting wibble in GhcMake.hsDavid Terei2011-04-261-6/+3
| | | |
| | | * Fix some warnings and formatting in HsDeclsDavid Terei2011-04-261-19/+11
| | | |
| | | * Formatting fixes to TcForeign.lhsDavid Terei2011-04-261-77/+76
| | | |
| | | * Trim some trailing spacesDavid Terei2011-04-262-8/+7
| | | |
| | | * Add missing eol marker in RnSource.lhsDavid Terei2011-04-261-1/+1
| | | |
| | | * Fix some small errors in commentsDavid Terei2011-04-262-4/+3
| | | |
| | | * Share some work in MkIfaceDavid Terei2011-04-261-17/+17
| | | |
| | | * Formatting wibbleDavid Terei2011-04-261-1/+1
| | | |
| | | * Formatting fixes in Lexer.xDavid Terei2011-04-261-21/+21
| | | |
| | | * Remove unused importsDavid Terei2011-04-261-2/+0
| | | |
| | | * Fix warnings in HsImpExp.lhsDavid Terei2011-04-261-8/+3
| | | |
| | | * Fix spelling mistake in commentDavid Terei2011-04-261-1/+1
| | | |
| | | * cmm-notes updates.Edward Z. Yang2011-04-261-13/+16
| | | | | | | | | | | | | | | | Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| | | * Raw versions of if and switch.Edward Z. Yang2011-04-261-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the following statements valid C--, which uses the block ID directly rather than generating an anonymous block: if (expr) goto foo; switch expr { case 0: goto foo; case 1: goto bar; } Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
| | * | Run a CSE pass after vectorisation. This cleans up common sub-expressions ↵Ben Lippmeier2011-04-271-3/+11
| | | | | | | | | | | | | | | | introduced by the vectoriser. It has no effect unless -fvectorise is enabled.
| | * | Merge branch 'master' of /Users/benl/devel/ghc/ghc-headBen Lippmeier2011-04-156-26/+37
| | |\ \
| | * | | Don't -dsuppress-uniques with -dsuppress-allBen Lippmeier2011-04-141-7/+9
| | | | |
| * | | | Solving one IP from another. This fixes #5120.U-EUROPE\dimitris2011-04-271-3/+10
| | |_|/ | |/| |
| * | | Derive some Typeable instancesIan Lynagh2011-04-247-22/+16
| | | | | | | | | | | | | | | | | | | | We were using the Typeable.hs macros, but for no good reason as far as I can tell.
| * | | Fix warnings in DynFlagsIan Lynagh2011-04-231-9/+12
| | | | | | | | | | | | | | | | | | | | I also made the -ffloat-all-lams flag not take an argument, as it just ignored it.
| * | | Rename "GCC command" to "C compiler command"Ian Lynagh2011-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | Makes it consistent with the existing "C compiler flags" field.
| * | | Remove now-unused compiler/Makefile.localIan Lynagh2011-04-231-75/+0
| | | |
| * | | Revert "Output ELF .size directives for functions"Ian Lynagh2011-04-221-24/+13
| | | | | | | | | | | | | | | | | | | | This reverts commit b1f453e16f0ce11a2ab18cc4c350bdcbd36299a6. It caused dynHelloWorld(dyn) to fail.
| * | | Move gcc's and perl's location to the settings fileIan Lynagh2011-04-222-17/+15
| | | | | | | | | | | | | | | | They were hardcoded in Config.hs
| * | | Output ELF .size directives for functionsJohan Tibell2011-04-221-13/+24
| | | | | | | | | | | | | | | | | | | | This allows tools like Linux's perf events to display symbol names for CMM primops.
| * | | Move the opt* fields from DynFlags into the Settings typeIan Lynagh2011-04-222-37/+60
| | | | | | | | | | | | | | | | The pgm* fields are already in Settings
| * | | Initialise Settings before DynFlagsIan Lynagh2011-04-222-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | Stops us having to temporarily have a panic in the DynFlags. We still need a panic in the DynFlags used for the top-level error handler, though.
| * | | Split off a Settings type from DynFlagsIan Lynagh2011-04-224-85/+121
| | | |
| * | | Rename "extra-gcc-opts" to "settings", and start generalising itIan Lynagh2011-04-214-41/+71
| | | |
| * | | Fix typo in commentIan Lynagh2011-04-211-1/+1
| | | |
* | | | Preliminary monad-comprehension patch (Trac #4370)Simon Peyton Jones2011-04-2825-186/+1036
|/ / / | | | | | | | | | | | | | | | | | | | | | This is the work of Nils Schweinsberg <mail@n-sch.de> It adds the language extension -XMonadComprehensions, which generalises list comprehension syntax [ e | x <- xs] to work over arbitrary monads.
* | | Tidy up SigTvSimon Peyton Jones2011-04-206-74/+60
| | | | | | | | | | | | This just a refactoring, removing dead code
* | | Fix Trac #5130: missed error reportSimon Peyton Jones2011-04-201-23/+24
| | | | | | | | | | | | | | | | | | Some out of date code in TcErrors was suppressing an error report -- so some type-incorrect code leaked out and confused a later bit of the compiler.
* | | Dont print "Constraint solver steps = n" if -dno-debug-output is onSimon Peyton Jones2011-04-201-1/+2
| | |
* | | Add pprDefiniteTrace and use itSimon Peyton Jones2011-04-202-5/+8
| | | | | | | | | | | | | | | | | | The point here is that a very few uses of pprTrace are controlled by a flag like -ddump-inlinings or -ddump-rule-firings, and we want to see that output even with -dno-debug-output
* | | Fix Trac #5126: generate correct usage info in TH declaration quotesSimon Peyton Jones2011-04-201-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | In RnBinds.rnValBindsRHS I had (sig_dus `plusDU` bind_dus) when it should be (bind_dus `plusDU` sig_dus) So the fix is easy.
* | | Merge branch 'master' of http://darcs.haskell.org/ghcSimon Peyton Jones2011-04-204-4/+13
|\ \ \
| * | | Don't generate a prototype for casIan Lynagh2011-04-202-3/+11
| | | | | | | | | | | | | | | | | | | | I'm not sure if this is the best way to fix this, but it fixes the unreg build.