- 03 Oct, 2007 1 commit
-
-
Simon Marlow authored
This required moving PackageId from PackageConfig to Module
-
- 08 Oct, 2007 1 commit
-
-
Simon Marlow authored
test case is driver062.5
-
- 26 Sep, 2007 1 commit
-
-
Simon Marlow authored
Using -stubdir together with hierarchical modules, -fvia-C, and --make is essentially broken in 6.6.x. Recently discovered by Cabal's use of -stubdir. Test cases: driver027/driver028 (I've updated them to use -fvia-C, in order to test for this bug).
-
- 21 Sep, 2007 1 commit
-
-
Ian Lynagh authored
Fixes building with -Werror (i.e. validate) and GHC < 6.6
-
- 19 Sep, 2007 1 commit
-
-
simonpj@microsoft.com authored
Fix exponential-time behaviour with type synonyms; rename -XPartiallyAppliedTypeSynonyms to -XLiberalTypeSynonyms Fixes exponential behaviour present in GHC 6.6! I renamed the flag because the old (not very old) name wasn't describing what it does.
-
- 17 Sep, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
When -dasm-lint is turned on the register conflict graph is checked for internal consistency after each build/color pass. Make sure that all edges point to valid nodes, that nodes are colored differently to their neighbours, and if the graph is supposed to be colored, that all nodes actually have a color.
-
- 15 Sep, 2007 1 commit
-
-
nr@eecs.harvard.edu authored
-
- 12 Sep, 2007 1 commit
-
-
mnislaih authored
The flag enables the use of Show instances in :print. By default they are not used anymore
-
- 07 Sep, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
Iterative coalescing interleaves conservative coalesing with the regular simplify/scan passes. This increases the chance that nodes will be coalesced as they will have a lower degree than at the beginning of simplify. The end result is that more register to register moves will be eliminated in the output code, though the iterative nature of the algorithm makes it slower compared to non-iterative coloring. Use -fregs-iterative for graph coloring allocation with iterative coalescing -fregs-graph for non-iterative coalescing. The plan is for iterative coalescing to be enabled with -O2 and have a quicker, non-iterative algorithm otherwise. The time/benefit tradeoff between iterative and not is still being tuned - optimal graph coloring is NP-hard, afterall..
-
- 11 Sep, 2007 1 commit
-
-
mnislaih authored
This flag works like -fbreak-on-exception, but only stops on uncaught exceptions.
-
- 06 Sep, 2007 1 commit
-
-
nr@eecs.harvard.edu authored
Changes too numerous to comment on, but here is some old history that I saved: Wed Aug 15 11:07:13 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * type synonyms made consistent with new Cmm types M ./compiler/nativeGen/MachInstrs.hs -2 +2 Mon Aug 20 19:22:14 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * pushing return info beyond cmm into codegen M ./compiler/codeGen/Bitmap.hs r3 M ./compiler/codeGen/CgBindery.lhs r3 M ./compiler/codeGen/CgCallConv.hs r3 M ./compiler/codeGen/CgCase.lhs r3 M ./compiler/codeGen/CgClosure.lhs r3 M ./compiler/codeGen/CgCon.lhs r3 M ./compiler/codeGen/CgExpr.lhs r3 M ./compiler/codeGen/CgForeignCall.hs -6 +7 r3 M ./compiler/codeGen/CgHeapery.lhs r3 M ./compiler/codeGen/CgHpc.hs +1 r3 M ./compiler/codeGen/CgInfoTbls.hs r3 M ./compiler/codeGen/CgLetNoEscape.lhs r3 M ./compiler/codeGen/CgMonad.lhs r3 M ./compiler/codeGen/CgParallel.hs r3 M ./compiler/codeGen/CgPrimOp.hs +3 r3 M ./compiler/codeGen/CgProf.hs r3 M ./compiler/codeGen/CgStackery.lhs r3 M ./compiler/codeGen/CgTailCall.lhs r3 M ./compiler/codeGen/CgTicky.hs r3 M ./compiler/codeGen/CgUtils.hs -1 +1 r3 M ./compiler/codeGen/ClosureInfo.lhs r3 M ./compiler/codeGen/CodeGen.lhs r3 M ./compiler/codeGen/SMRep.lhs r3 M ./compiler/nativeGen/AsmCodeGen.lhs -2 +2 r1 M ./compiler/nativeGen/MachCodeGen.hs -3 +3 r1 M ./compiler/nativeGen/MachInstrs.hs r1 M ./compiler/nativeGen/MachRegs.lhs r1 M ./compiler/nativeGen/NCGMonad.hs r1 M ./compiler/nativeGen/PositionIndependentCode.hs r1 M ./compiler/nativeGen/PprMach.hs r1 M ./compiler/nativeGen/RegAllocInfo.hs r1 M ./compiler/nativeGen/RegisterAlloc.hs r1 Mon Aug 20 20:54:41 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * put CmmReturnInfo into a CmmCall (and related types) M ./compiler/cmm/Cmm.hs -2 +1 r3 M ./compiler/cmm/CmmBrokenBlock.hs -13 +12 r1 M ./compiler/cmm/CmmCPS.hs -3 +3 M ./compiler/cmm/CmmCPSGen.hs -8 +6 r1 M ./compiler/cmm/CmmLint.hs -1 +1 M ./compiler/cmm/CmmLive.hs -1 +1 M ./compiler/cmm/CmmOpt.hs -3 +3 M ./compiler/cmm/CmmParse.y -6 +6 r3 M ./compiler/cmm/PprC.hs -3 +3 M ./compiler/cmm/PprCmm.hs -7 +4 r2 M ./compiler/codeGen/CgForeignCall.hs -7 +6 r2 M ./compiler/codeGen/CgHpc.hs -1 r1 M ./compiler/codeGen/CgPrimOp.hs -3 r1 M ./compiler/codeGen/CgUtils.hs -1 +1 r1 M ./compiler/nativeGen/AsmCodeGen.lhs -2 +2 M ./compiler/nativeGen/MachCodeGen.hs -3 +3 r1 Tue Aug 21 18:09:13 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * add call info in nativeGen M ./compiler/nativeGen/AsmCodeGen.lhs r1 M ./compiler/nativeGen/MachInstrs.hs r1 M ./compiler/nativeGen/MachRegs.lhs r1 M ./compiler/nativeGen/NCGMonad.hs r1 M ./compiler/nativeGen/PositionIndependentCode.hs r1 M ./compiler/nativeGen/PprMach.hs r1 M ./compiler/nativeGen/RegAllocInfo.hs r1 Wed Aug 22 16:41:58 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * ListGraph is now a newtype, not a synonym The resultant bookkeepping is unenviable, but the change greatly simplifies our ability to make Cmm things propertly Outputable for both list-graph and zipper-graph representations. M ./compiler/cmm/Cmm.hs -5 +3 M ./compiler/cmm/CmmCPS.hs -2 +2 M ./compiler/cmm/CmmCPSGen.hs -1 +1 M ./compiler/cmm/CmmContFlowOpt.hs -3 +3 M ./compiler/cmm/CmmCvt.hs -2 +2 M ./compiler/cmm/CmmInfo.hs -2 +3 M ./compiler/cmm/CmmLint.hs -1 +1 M ./compiler/cmm/CmmOpt.hs -2 +2 M ./compiler/cmm/PprC.hs -1 +1 M ./compiler/cmm/PprCmm.hs -5 +8 M ./compiler/cmm/PprCmmZ.hs -7 +1 M ./compiler/codeGen/CgMonad.lhs -1 +1 M ./compiler/nativeGen/AsmCodeGen.lhs -15 +15 M ./compiler/nativeGen/MachCodeGen.hs -2 +2 M ./compiler/nativeGen/PositionIndependentCode.hs -6 +6 M ./compiler/nativeGen/PprMach.hs -3 +2 M ./compiler/nativeGen/RegAllocColor.hs +1 M ./compiler/nativeGen/RegAllocLinear.hs -4 +5 M ./compiler/nativeGen/RegCoalesce.hs -6 +6 M ./compiler/nativeGen/RegLiveness.hs -12 +12 Thu Aug 23 13:44:49 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * diagnostic assistance in case fromJust fails M ./compiler/nativeGen/MachCodeGen.hs -2 +5 Thu Aug 23 14:07:28 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * give every block, even the first, a label With branch-chain elimination, the first block of a procedure might be the target of a branch. This actually happens to a dozen or more procedures in the run-time system. M ./compiler/nativeGen/PprMach.hs -8 +3 Fri Aug 24 17:27:04 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * clean up the code in PprMach M ./compiler/nativeGen/PprMach.hs -16 +14 Fri Aug 24 19:35:03 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * a bunch of impedance matching to get the compiler to build, plus * the plus is diagnostics for unreachable code, which required moving a lot of prettyprinting code M ./compiler/cmm/Cmm.hs -7 +5 M ./compiler/cmm/CmmCPSZ.hs -1 +1 M ./compiler/cmm/CmmCvt.hs -8 +8 M ./compiler/cmm/CmmParse.y -4 +3 M ./compiler/cmm/MkZipCfg.hs -19 +9 M ./compiler/cmm/PprCmmZ.hs -118 +4 M ./compiler/cmm/ZipCfg.hs -1 +13 M ./compiler/cmm/ZipCfgCmm.hs -10 +129 M ./compiler/main/HscMain.lhs -4 +4 M ./compiler/nativeGen/NCGMonad.hs -2 +2 M ./compiler/nativeGen/RegAllocInfo.hs -3 +3 Fri Aug 31 14:38:02 BST 2007 Norman Ramsey <nr@eecs.harvard.edu> * fix a warning about an import M ./compiler/nativeGen/RegAllocColor.hs -1 +1
-
- 03 Sep, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
Avoid coalescing nodes in the register conflict graph if the new node will not be trivially colorable. Also remove the front end aggressive coalescing pass. For typical Haskell code the graph coloring allocator now does about as well as the linear allocator. For code with a large amount of register pressure it does much better, but takes longer. For SHA1.lhs from darcs on x86 spills reloads reg-reg-moves inserted inserted left in code compile-time linear 1068 1311 229 7.69(s) graph 387 902 340 16.12(s)
-
- 04 Sep, 2007 2 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
- 03 Sep, 2007 1 commit
-
-
Ian Lynagh authored
Older GHCs can't parse OPTIONS_GHC. This also changes the URL referenced for the -w options from WorkingConventions#Warnings to CodingStyle#Warnings for the compiler modules.
-
- 01 Sep, 2007 1 commit
-
-
Ian Lynagh authored
-
- 25 Aug, 2007 1 commit
-
-
Ian Lynagh authored
-
- 24 Aug, 2007 1 commit
-
-
Ian Lynagh authored
-
- 22 Aug, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
-
- 21 Aug, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
Whilst compiling Main.hs with -ddump-stg, ddump-asm and friends you can how add -ddump-to-file and you'll get the dumps redirected to Main.dump-stg, Main.dump-asm etc.
-
- 17 Aug, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
Compiling module Foo with -ddrop-asm-stats produces a file called Foo.dump-asm-stats which will contain increasingly interesting information.
-
- 10 Aug, 2007 1 commit
-
-
Simon Marlow authored
We have 4 new flags: -fno-gen-manifest suppresses creation of foo.exe.manifest -fno-embed-manifest suppresses embedding of the manifest in the executable -pgmwindres specify a program to use instead of windres -optwindres extra options to pass to windres "windres" is now copied from mingw and included in a binary distribution.
-
- 21 Aug, 2007 1 commit
-
-
Simon Marlow authored
We now have various flags that need to be passed to gcc, but only if the local gcc version supports them. So instead of wiring this knowledge into ghc when it is built, we now put these "extra gcc flags" into a text file in $libdir, extra-gcc-flags, which is created by configure. It is also created by the configure script of a binary distribution, so a binary dist is independent of the gcc version used to build it. Hopefully I got the binary-dist stuff right, but binary dists aren't currently working so we'll need to come back and check this.
-
- 07 Aug, 2007 2 commits
-
-
Clemens Fruhwirth authored
-
Clemens Fruhwirth authored
-
- 14 Aug, 2007 1 commit
-
-
Ben.Lippmeier@anu.edu.au authored
Refactored linear allocator into separate liveness annotation and allocation stages. Added graph coloring allocator, use -fregs-graph to enable. New dump flags are -ddump-asm-native -- output of cmm -> native transform. -ddump-asm-liveness -- code annotated with register liveness info -ddump-asm-coalesce -- output of register move coalescing (this is a separate pass when using the coloring allocator) (this could change in the future) -ddump-asm-regalloc -- code after register allocation -ddump-asm-regalloc-stages -- blocks after each build/spill stage of coloring allocator -ddump-asm-conflicts -- a global register liveness graph in graphviz format The new register allocator will allocate some registers, but it's not quite ready for prime-time yet. The spill code generator needs some work...
-
- 18 Aug, 2007 1 commit
-
-
Ian Lynagh authored
We now get the value of can_split from the SplitObjs setting in the build system, rather than working out whether it should be possible based on the platform.
-
- 17 Aug, 2007 1 commit
-
-
Ian Lynagh authored
-
- 05 Aug, 2007 1 commit
-
-
Ian Lynagh authored
Print the list of strings that are accepted in a LANGUAGE pragma, or as a -XFoo flag. (No can be prepended to any of the strings).
-
- 04 Aug, 2007 7 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-fparr did exist before, it just wasn't documented.
-
Ian Lynagh authored
-
Ian Lynagh authored
Now we only allow -XFooBar syntax, not alternate case, hyphens or -f. There are some deprecated -f flags accordingly.
-
- 16 Jul, 2007 3 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
You used to only be able to enable Opt_WarnDodgyImports with -W or -Wall. This patch adds the flag to en/disable it by name. (DodgyImports == importing T(..) when only T is exported).
-
rl@cse.unsw.edu.au authored
-
- 12 Jul, 2007 1 commit
-
-
Ian Lynagh authored
Merge ExpressionSignaturesUnboxedTuples TypeSynonymUnboxedTuples into UnboxedTuples
-