Tabs -> spaces (and some other formatting)
Formatting wibbles
add note about compilation safety to safe haskell docs
Allow '-' to be used as an infix type constructor.
Merge branch 'master' of ssh://darcs.haskell.org/srv/darcs/ghc
Remove OldCmm, convert backends to consume new Cmm

This removes the OldCmm data type and the CmmCvt pass that converts
new Cmm to OldCmm.  The backends (NCGs, LLVM and C) have all been
converted to consume new Cmm.

The main difference between the two data types is that conditional
branches in new Cmm have both true/false successors, whereas in OldCmm
the false case was a fallthrough.  To generate slightly better code we
occasionally need to invert a conditional to ensure that the
branch-not-taken becomes a fallthrough; this was previously done in
CmmCvt, and it is now done in CmmContFlowOpt.

We could go further and use the Hoopl Block representation for native
code, which would mean that we could use Hoopl's postorderDfs and
analyses for native code, but for now I've left it as is, using the
old ListGraph representation for native code.
Fix warnings
replaceLabels: null out the cml_cont field of CmmCall

This fixes a CmmLint complaint when doing proc-point splitting.
handle MO_Touch, and generate no code for it.
some W_s should be P_s
assert HpAlloc == 0
a fix for checkTSO(): the TSO could be a WHITEHOLE
remove some unused variables
ASSERT(HpAlloc==0) in the update code, to catch HpAlloc bugs
Replace mkDerivedConstants.c with DeriveConstants.hs

DeriveConstants.hs works in a cross-compilation-friendly way. Rather
than running a C program that prints out the constants, we just compile
a C file which has the constants are encoded in symbol sizes. We then
parse the output of 'nm' to find out what the constants are.

Based on work by Gabor Greif <ggreif@gmail.com>.
Add some more flags to includes_CC_OPTS

Fixes build on OS X
Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc
Fix build on Windows
Fix the Slow calling convention (#7192)

The Slow calling convention passes the closure in R1, but we were
ignoring this and hoping it would work, which it often did.  However,
this bug seems to have been the cause of #7192, because the
graph-colouring allocator is more sensitive to having correct liveness
information on jumps.
Fix installing on Windows

nus in #ghc ran into a problem where the wrong filepath was being
stripped.