Improve documentation about instance resolution
following suggestions from Mike Sperber
Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc
typos in comments
fix bug in previous commit, 65e46f144f3d8b18de7264b0b099086153c68d6c
Add a write barrier for TVAR closures

This improves GC performance when there are a lot of TVars in the
heap.  For instance, a TChan with a lot of elements causes a massive
GC drag without this patch.

There's more to do - several other STM closure types don't have write
barriers, so GC performance when there are a lot of threads blocked on
STM isn't great.  But fixing the problem for TVar is a good start.
Document -XTypeHoles

Thanks to Thijs Alkemade for writing this documentation
Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc
fix syntax error in generated C (#7407)
C backend: ignore MO_Touch
We now assume that offsetof() is always defined
Add a stddef.h #include to C file generated by DeriveConstants
Remove some dependencies

I don't think we need these, and they haven't been doing anything
useful for dynamic-by-default builds anyway as they hardcode the 'v'
way.
Code-size optimisation for top-level indirections (#7308)

Top-level indirections are often generated when there is a cast, e.g.

foo :: T
foo = bar `cast` (some coercion)

For these we were generating a full-blown CAF, which is a fair chunk
of code.

This patch makes these indirections generate a single IND_STATIC
closure (4 words) instead.  This is exactly what the CAF would
evaluate to eventually anyway, we're just shortcutting the whole
process.
C backend: put the entry block first
Reject promoted constructors when -XDataKinds is not enabled (FIX #7433)
fix some typos
Enable dynamic-by-default for unregisterised arches

This makes ghci work on platforms without any special support in the
GHCi linker:

Prelude> (System.Info.os, System.Info.arch)
("linux","s390")
Enable GhcWithInterpreter when DYNAMIC_BY_DEFAULT is on
Unconditionally disable DYNAMIC_BY_DEFAULT for now

While we work out some details, and wait for cabal-install's in the
wild to catch up.
add embedded vendor