Lines Matching refs:tinstr
608 thumb2arm(u16 tinstr)
610 u32 L = (tinstr & (1<<11)) >> 11;
612 switch ((tinstr & 0xf800) >> 11) {
619 ((tinstr & (1<<12)) << (22-12)) | /* fixup */
621 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
622 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
623 ((tinstr & (31<<6)) >> /* immed_5 */
624 (6 - ((tinstr & (1<<12)) ? 0 : 2)));
629 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
630 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
631 ((tinstr & (7<<6)) >> (6-1)) | /* immed_5[2:0] */
632 ((tinstr & (3<<9)) >> (9-8)); /* immed_5[4:3] */
648 return subset[(tinstr & (7<<9)) >> 9] |
649 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
650 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
651 ((tinstr & (7<<6)) >> (6-0)); /* Rm */
662 ((tinstr & (7<<8)) << (12-8)) | /* Rd */
663 ((tinstr & 255) << (2-0)); /* immed_8 */
670 ((tinstr & (7<<8)) << (12-8)) | /* Rd */
671 ((tinstr & 255) << 2); /* immed_8 */
677 u32 Rn = (tinstr & (7<<8)) >> 8;
678 u32 W = ((L<<Rn) & (tinstr&255)) ? 0 : 1<<21;
681 (tinstr&255);
687 if ((tinstr & (3 << 9)) == 0x0400) {
694 return subset[(L<<1) | ((tinstr & (1<<8)) >> 8)] |
695 (tinstr & 255); /* register_list */
807 u16 tinstr = 0;
820 fault = alignment_get_thumb(regs, ptr, &tinstr);
823 IS_T32(tinstr)) {
827 instr = __opcode_thumb32_compose(tinstr, tinst2);
831 instr = thumb2arm(tinstr);
962 isize == 2 ? tinstr : instr, instrptr);
974 isize == 2 ? tinstr : instr,