Peter Maydell <peter.mayd...@linaro.org> writes: > On 8 October 2012 07:39, Peter Crosthwaite > <peter.crosthwa...@petalogix.com> wrote: >> Im currently investigating the possibility of building QEMU with >> multiple CPU architectures active concurrently. That is, I have a >> binary with both an target-arm and target-microblaze and wish to run >> them as a heterogeneous multiprocessor platform. >> >> Given the recent QOM development in making CPUs just another object, >> shouldn't be possible with a bit of Makefile and configure rework to >> build qemu-system-arm+microblaze and then create machine models >> instantiating both CPU types? >> >> Are the major complications here from either a Make or QOM perspective? > > I certainly think this would be a nice feature to have, but I suspect > the makefile/QOM bits are probably the easy parts :-) > > At the moment things like the translated code cache are basically > globals and would need to be moved to be per-CPU. Also there are > still various settings that are compile time which would need to > become runtime (though we just got rid of the 'size of physical > address type' one at least). > > -- PMM
It may be possible to cheat and compile the TCG + CPU code multiple times as dynamic libraries. You can then load the libraries with dlopen() with local symbol resolution. Then it's mostly just a build file exercise. Regards, Anthony Liguori