Merge r6102/6103:

A new module ("Initial Image"), whose purpose is to set up the
client's initial memory and register state before running it.  On
Linux this does all the stack/auxv/envp stuff which was previously
done in m_main.  On AIX5 the kernel prepares the process' initial
image, so there's nothing to be done there.  But LD_PRELOAD doesn't
work on AIX5, so m_initimg sets up the client so as to start by
running a short bit of code which gets the kernel to load in the core
and tool preloads and then start the client.

As a result of this, m_main gets a lot shorter and cleaner.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6251 a5019735-40e9-0310-863c-91ae7b9d1cf9
3 files changed