This is the last part of this series of changes to the exceptions code. First two patches remove the powerpc_excp_legacy function which is not needed anymore and move some of the common code from the individual powerpc_excp_* functions into powerpc_excp.
Third patch makes the sanity check against msr_mask generic to check all MSR bits. Last patch removes excp_model from the AIL code for BookS. We now have only two instances left of excp_model being used as an identifier for specific CPUs. == Next steps == I'll work on the next steps which include some cleanups to cpu_init and hopefully moving into separate files for each CPU family. I'm also thinking about some changes to the POWERPC_FAMILY macro to remove the _FAMILY part, since this code has been used for a long time to create single CPUs instead of a whole family. I think the separation we have now with the exception models better represents the concept of family. So I would rather call the macro POWERPC_CPU and add (if needed) a new field 'family' to the class. With that and having one family per file, we would be able to remove the excp_model enum altogether by adding a pointer to powerpc_excp like we have for init_proc. I'll put all of that in an RFC so we can discuss. Thanks Fabiano Rosas (4): target/ppc: Remove powerpc_excp_legacy target/ppc: powerpc_excp: Move common code to the caller function target/ppc: Assert if MSR bits differ from msr_mask during exceptions target/ppc: books: Remove excp_model argument from ppc_excp_apply_ail target/ppc/excp_helper.c | 623 ++------------------------------------- 1 file changed, 31 insertions(+), 592 deletions(-) -- 2.34.1