Lines Matching refs:tinstr
600 thumb2arm(u16 tinstr)
602 u32 L = (tinstr & (1<<11)) >> 11;
604 switch ((tinstr & 0xf800) >> 11) {
611 ((tinstr & (1<<12)) << (22-12)) | /* fixup */
613 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
614 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
615 ((tinstr & (31<<6)) >> /* immed_5 */
616 (6 - ((tinstr & (1<<12)) ? 0 : 2)));
621 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
622 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
623 ((tinstr & (7<<6)) >> (6-1)) | /* immed_5[2:0] */
624 ((tinstr & (3<<9)) >> (9-8)); /* immed_5[4:3] */
640 return subset[(tinstr & (7<<9)) >> 9] |
641 ((tinstr & (7<<0)) << (12-0)) | /* Rd */
642 ((tinstr & (7<<3)) << (16-3)) | /* Rn */
643 ((tinstr & (7<<6)) >> (6-0)); /* Rm */
654 ((tinstr & (7<<8)) << (12-8)) | /* Rd */
655 ((tinstr & 255) << (2-0)); /* immed_8 */
662 ((tinstr & (7<<8)) << (12-8)) | /* Rd */
663 ((tinstr & 255) << 2); /* immed_8 */
669 u32 Rn = (tinstr & (7<<8)) >> 8;
670 u32 W = ((L<<Rn) & (tinstr&255)) ? 0 : 1<<21;
673 (tinstr&255);
679 if ((tinstr & (3 << 9)) == 0x0400) {
686 return subset[(L<<1) | ((tinstr & (1<<8)) >> 8)] |
687 (tinstr & 255); /* register_list */
799 u16 tinstr = 0;
812 fault = alignment_get_thumb(regs, ptr, &tinstr);
815 IS_T32(tinstr)) {
819 instr = __opcode_thumb32_compose(tinstr, tinst2);
823 instr = thumb2arm(tinstr);
954 isize == 2 ? tinstr : instr, instrptr);
966 isize == 2 ? tinstr : instr,