The further I go, more questions I get. Here are 6 patches.
The first three is what I would like to have in QEMU to support "compat" option for a CPU. The option now accepts "power6"/"power7" as after all we will limit number of threads per core (not in this series though) and since 2.05 does not limit number of threads at all, referring to actual CPU models seems right. The last three is what I would suggest doing if we needed ability to enable/disable CPU features the way x86 does this. I used "VSX" as an example but this is just an example so "-cpu host,-vsx,+vsx,vsx=on" works. Using this, I suspect I could try converting x86's parser for "-cpu", would it work? btw I am sure there must be macro like BITNR (convert mask with 1 bit set to a number of the bit which is set) but I failed to find it. What did I miss? Please, comment. Thanks. Alexey Kardashevskiy (6): cpu: add suboptions support target-ppc: make use of new -cpu suboptions handling target-ppc: add "compat" CPU option qemu-option: support +foo/-foo command line agruments bitops: add BITNR macro target-ppc: demonstrate new "vsx" property hw/ppc/spapr.c | 13 +++++++- include/qemu/bitops.h | 12 ++++++++ include/qom/cpu.h | 29 ++++++++++++++++++ include/sysemu/sysemu.h | 1 + qom/cpu.c | 27 +++++++++++++++++ target-ppc/cpu-models.h | 10 +++++++ target-ppc/cpu.h | 4 +++ target-ppc/translate_init.c | 73 +++++++++++++++++++++++++++++++++++++++++++++ util/qemu-option.c | 6 ++++ vl.c | 42 ++++++++++++++++++++++++++ 10 files changed, 216 insertions(+), 1 deletion(-) -- 1.8.4.rc4