int thumb_root(struct decomp_request *req, struct decomp_result *res); /* these are the and found in the spec's format strings */ enum decomp_field { FIELD_UNINIT=0, FIELD_A, FIELD_APSR_C, FIELD_B, FIELD_CRd, FIELD_CRm, FIELD_CRn, FIELD_D, FIELD_DM, FIELD_DN, FIELD_Dd, FIELD_Dm, FIELD_E, FIELD_F, FIELD_FPSCR, FIELD_H, FIELD_I, FIELD_I1, FIELD_InstrSet_ARM, FIELD_J1, FIELD_K1, FIELD_L, FIELD_M, FIELD_M_check, FIELD_N, FIELD_NSACR_RFR, FIELD_P, FIELD_Q, FIELD_Qd, FIELD_Qm, FIELD_R, FIELD_RM, FIELD_Ra, FIELD_Rd, FIELD_RdHi, FIELD_RdLo, FIELD_Rdm, FIELD_Rdn, FIELD_Rm, FIELD_Rm2, FIELD_Rm_check, FIELD_Rn, FIELD_Rt, FIELD_Rt2, FIELD_Rt_mrc, FIELD_S, FIELD_T, FIELD_U, FIELD_Vd, FIELD_Vn, FIELD_Vm, FIELD_Vm_check, FIELD_W, FIELD_X1, FIELD_a, FIELD_add, FIELD_advsimd, FIELD_affectA, FIELD_affectF, FIELD_affectI, FIELD_align, FIELD_alignment, FIELD_barrier_option, FIELD_bytes, FIELD_carry, FIELD_cc, FIELD_changemode, FIELD_cmode, FIELD_cond, FIELD_coproc, FIELD_cp, FIELD_d, FIELD_d2, FIELD_d3, FIELD_d4, FIELD_dHi, FIELD_dLo, FIELD_dest_unsigned, FIELD_disable, FIELD_double_to_single, FIELD_dp_operation, FIELD_dt, FIELD_dt_suffix, FIELD_ebytes, FIELD_elements, FIELD_enable, FIELD_esize, FIELD_fbits, FIELD_firstcond, FIELD_floating_point, FIELD_fmt_idx, FIELD_frac_bits, FIELD_half_to_single, FIELD_i, FIELD_im, FIELD_imm, FIELD_imm10, FIELD_imm10H, FIELD_imm10L, FIELD_imm11, FIELD_imm12, FIELD_imm16, FIELD_imm2, FIELD_imm3, FIELD_imm32, FIELD_imm4, FIELD_imm4H, FIELD_imm4L, FIELD_imm5, FIELD_imm6, FIELD_imm64l, FIELD_imm64h, FIELD_imm7, FIELD_imm8, FIELD_imod, FIELD_inc, FIELD_increment, FIELD_index, FIELD_index_align, FIELD_is_tbh, FIELD_is_vtbl, FIELD_iword, FIELD_len, FIELD_length, FIELD_list, FIELD_long_destination, FIELD_lowbit, FIELD_lsbit, FIELD_m, FIELD_m_high, FIELD_m_swap, FIELD_mask, FIELD_mask0, FIELD_mask1, FIELD_mode, FIELD_msb, FIELD_msbit, FIELD_n, FIELD_n_high, FIELD_op, FIELD_op1, FIELD_op1_neg, FIELD_op2, FIELD_opc1, FIELD_opc2, FIELD_opc3, FIELD_opcode, FIELD_option, FIELD_position, FIELD_postindex, FIELD_quadword_operation, FIELD_read_spsr, FIELD_register_form, FIELD_register_index, FIELD_register_list, FIELD_registers, FIELD_registers_indexed, FIELD_regs, FIELD_regs_n, FIELD_rotate, FIELD_rotation, FIELD_round, FIELD_round_mode, FIELD_round_nearest, FIELD_round_zero, FIELD_SYSm, FIELD_sat_imm, FIELD_saturate_to, FIELD_set_bigend, FIELD_setflags, FIELD_sf, FIELD_sh, FIELD_shift_n, FIELD_shift_t, FIELD_single_regs, FIELD_single_register, FIELD_size, FIELD_size_table, FIELD_src_unsigned, FIELD_sx, FIELD_sz, FIELD_t, FIELD_t2, FIELD_tb, FIELD_tbform, FIELD_td, FIELD_toARM, FIELD_to_fixed, FIELD_to_integer, FIELD_type, FIELD_unsigned, FIELD_wback, FIELD_width, FIELD_widthm1, FIELD_wordhigher, FIELD_write_g, FIELD_write_nzcvq, FIELD_write_spsr, FIELD_x, FIELD_MAX };