- 17 Nov, 2011 15 commits
-
-
Simon Marlow authored
-
Simon Marlow authored
-
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
thereby fixing Trac #5631. See Note [Nested InstCos] in Coercion
-
chak@cse.unsw.edu.au. authored
-
chak@cse.unsw.edu.au. authored
-
chak@cse.unsw.edu.au. authored
-
dterei authored
We now manage the stack correctly on both x86 and i386, keeping the stack align at (16n bytes - word size) on function entry and at (16n bytes) on function calls. This gives us compatability with LLVM and GCC.
-
giorgidze authored
-
benl authored
-
benl authored
-
benl authored
-
benl authored
-
benl authored
Conflicts: compiler/vectorise/Vectorise/Type/PRepr.hs
-
- 16 Nov, 2011 22 commits
-
-
dterei authored
-
dterei authored
-
dterei authored
-
dterei authored
-
dreixel authored
-
dreixel authored
We now always check against an expected kind. When we really don't know what kind to expect, we match against a new meta kind variable. Also, we are more explicit about tuple sorts: HsUnboxedTuple -> Produced by the parser HsBoxedTuple -> Certainly a boxed tuple HsConstraintTuple -> Certainly a constraint tuple HsBoxedOrConstraintTuple -> Could be a boxed or a constraint tuple. Produced by the parser only, disappears after type checking
-
dreixel authored
-
dreixel authored
This warning has to be addressed later, though. It is only relevant when using -XPolyKinds.
-
dreixel authored
-
dreixel authored
-
http://darcs.haskell.org/ghcdimitris authored
-
dimitris authored
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
Mainly, -rtsopts doesn't work with -no-hs-main, and you have to do something in your main() to get the effect of -rtsopts (and -with-rtsopts).
-
Simon Marlow authored
The --fast option now disables the following: - dynamic libs - bindist and bindisttest Which knocks several minutes off validate for me, but it's still over 30 minutes using 5 cores on 64-bit Linux. Usual caveats apply: if you're using --fast, then make sure you aren't doing anything that might destabilise dynamic libs or binary dists.
-
Simon Marlow authored
-
Simon Marlow authored
Rather than have main() be statically compiled as part of the RTS, we now generate it into the tiny C file that we compile when linking a binary. The main motivation is that we want to pass the settings for the -rtsotps and -with-rtsopts flags into the RTS, rather than relying on fragile linking semantics to override the defaults, which don't work with DLLs on Windows (#5373). In order to do this, we need to extend the API for initialising the RTS, so now we have: void hs_init_ghc (int *argc, char **argv[], // program arguments RtsConfig rts_config); // RTS configuration hs_init_ghc() can optionally be used instead of hs_init(), and allows passing in configuration options for the RTS. RtsConfig is a struct, which currently has two fields: typedef struct { RtsOptsEnabledEnum rts_opts_enabled; const char *rts_opts; } RtsConfig; but might have more in the future. There is a default value for the struct, defaultRtsConfig, the idea being that you start with this and override individual fields as necessary. In fact, main() was in a separate static library, libHSrtsmain.a. That's now gone.
-
Simon Peyton Jones authored
I did a bit of refactoring (of course) at the same time. See the discussion in Trac #5587. Most of the real change is in CoreArity.
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
In fixing one bug I'd introduced another; case x of { T -> T; F -> F } wasn't getting optmised! Trivial to fix.
-
Simon Peyton Jones authored
I'd gotten into a state in which top-level x = y bindings weren't getting inlined!
-
- 15 Nov, 2011 3 commits
-
-
Simon Peyton Jones authored
-
-
Simon Peyton Jones authored
-