.travis.yml: add a mingw target

I've include the "big three" softmmu targets x86,arm and ppc.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
.travis.yml: move "make check" to after_script (EXPERIMENTAL)

This moves the problematic make check step to post-build. This means it
can't cause the build to fail. I've also enabled tcg-debug on all builds
for the extra error checking.
.travis.yml: make the make slightly more parallel

The Travis VMs have 1.5 cores so we might as well make some use of the
paralellism.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
.travis.yml: pre-seed sub-modules for speed

A significant portion of the build time is spent initialising all the
sub-modules we use in the source tree. Often this is almost as long as
the build itself. By pre-seeding the .git/modules tree this will
hopefully improve things.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
target-arm/kvm.c: implement software breakpoints

These don't involve messing around with debug registers, just setting
the breakpoint instruction in memory. GDB will not use this mechanism if
it can't access the memory to write the breakpoint.

--

v2
  - add CAP check
  - add enable debug for SW breakpoints
kmv-all.c: remove pointless malloc check in breakpoint fn

A failure to g_malloc would abort anyway.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>