- 28 Jun, 2010 4 commits
-
-
dterei authored
-
dterei authored
-
dterei authored
At the moment this gives a very slight performance boost of around 1 - 2%. Future changes to the generated code though so that pointers are kept as pointers more often instead of being cast to integer types straight away should hopefully improve the benefit this brings.
-
Simon Marlow authored
-
- 20 Jun, 2010 1 commit
-
-
shelarcy authored
-
- 24 Jun, 2010 1 commit
-
-
dmp@rice.edu authored
Validation fails when validating with PAPI support (i.e. GhcRtsWithPapi = YES in validate.mk). The problem is that the posix symbols are defined by a header included from papi.h. Compilation then fails because these symbols are redefined in PosixSource.h. This patch adds an undefine for the posix symbols after including papi.h and before including PosixSource.h. The #undefines are localized to Papi.c since that is the only case where they are getting defined twice.
-
- 25 Jun, 2010 2 commits
-
-
Ian Lynagh authored
-
dterei authored
-
- 24 Jun, 2010 7 commits
-
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
computeLiveness requires the SCCs of blocks to be in reverse dependent order, and if they're not it was silently giving bad liveness info, yielding a bad allocation. Now it complains, loudly.
-
- 23 Jun, 2010 3 commits
-
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
benl@ouroborus.net authored
-
- 17 Sep, 2009 6 commits
-
-
Ben.Lippmeier@anu.edu.au authored
-
Ben.Lippmeier@anu.edu.au authored
* I've pushed the SPILL and RELOAD instrs down into the LiveInstr type to make them easier to work with. * When the graph allocator does a spill cycle it now just re-annotates the LiveCmmTops instead of converting them to NatCmmTops and back. * This saves working out the SCCS again, and avoids rewriting the SPILL and RELOAD meta instructions into real machine instructions.
-
Ben.Lippmeier@anu.edu.au authored
If there are are unreachable basic blocks in the native code then the linear allocator might loop. Detect this case and panic instead.
-
Ben.Lippmeier@anu.edu.au authored
-
Ben.Lippmeier@anu.edu.au authored
-
Ben.Lippmeier.anu.edu.au authored
-
- 24 Jun, 2010 1 commit
-
-
Ian Lynagh authored
The problem is that showing SDoc's looks at the static flags global variables, but those are panics while we are parsing the static flags. We work around this by explicitly using a fixed prettyprinter style.
-
- 21 Jun, 2010 1 commit
-
-
dterei authored
Before all the stg registers were simply a bit type or floating point type but now they can be declared to have a pointer type to one of these. This will allow various optimisations in the future in llvm since the type is more accurate.
-
- 24 Jun, 2010 4 commits
-
-
dterei authored
These allow annotations of the code produced by the backend which should bring some perforamnce gains. At the moment the attributes aren't being used though.
-
Simon Marlow authored
And add a comment about the dangers of int overflow
-
Simon Marlow authored
-
Simon Marlow authored
-
- 22 Jun, 2010 1 commit
-
-
dmp@rice.edu authored
This patch extends the PAPI support in the RTS to allow collection of native events. PAPI can collect data for native events that are exposed by the hardware beyond the PAPI present events. The native events supported on your hardware can found by using the papi_native_avail tool. The RTS already allows users to specify PAPI preset events from the command line. This patch extends that support to allow users to specify native events. The changes needed are: 1) New option (#) for the RTS PAPI flag for native events. For example, to collect the native event 0x40000000, use ./a.out +RTS -a#0x40000000 -sstderr 2) Update the PAPI_FLAGS struct to store whether the user specified event is a papi preset or a native event 3) Update init_countable_events function to add the native events after parsing the event code and decoding the name using PAPI_event_code_to_name
-
- 24 Jun, 2010 1 commit
-
-
Ian Lynagh authored
-
- 21 Jun, 2010 1 commit
-
-
Simon Marlow authored
In the PackageImports extension, import "this" means "import from the current package".
-
- 22 Jun, 2010 7 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
dterei authored
-
dterei authored
This phase originally invoked the llvm-as tool that turns a textual llvm assembly file into a bit code file for the rest of llvm to deal with. Now the llvm opt tool can do this itself, so we don't need to use llvm-as anymore.
-
dterei authored
-