This contains the bulk of the rearrangement into tcg_out_insn, wherein the instructions are given format numbers and a modicum of preprocessor based type-checking. This also contains the bulk of the unimplemented tcg opcodes, and handling of constant arguments.
Assuming one agrees with the general premise, these should also be relatively trivial to review. r~ Richard Henderson (14): tcg-aarch64: Introduce tcg_out_insn tcg-aarch64: Convert shift insns to tcg_out_insn tcg-aarch64: Introduce tcg_out_insn_3401 tcg-aarch64: Implement mov with tcg_out_insn tcg-aarch64: Handle constant operands to add, sub, and compare tcg-aarch64: Handle constant operands to and, or, xor tcg-aarch64: Support andc, orc, eqv, not, neg tcg-aarch64: Support movcond tcg-aarch64: Use tcg_out_insn for setcond tcg-aarch64: Support deposit tcg-aarch64: Support add2, sub2 tcg-aarch64: Support muluh, mulsh tcg-aarch64: Support div, rem tcg-aarch64: Introduce tcg_out_insn_3405 tcg/aarch64/tcg-target.c | 801 +++++++++++++++++++++++++++++++++-------------- tcg/aarch64/tcg-target.h | 48 +-- 2 files changed, 594 insertions(+), 255 deletions(-) -- 1.8.5.3