Lines Matching refs:s
153 Stream s = m.Build(); in TEST_P() local
154 ASSERT_EQ(1U, s.size()); in TEST_P()
155 EXPECT_EQ(dpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
156 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
157 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
158 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
167 Stream s = m.Build(); in TEST_P() local
168 ASSERT_EQ(1U, s.size()); in TEST_P()
169 EXPECT_EQ(dpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
170 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
171 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
172 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
173 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
178 Stream s = m.Build(); in TEST_P() local
179 ASSERT_EQ(1U, s.size()); in TEST_P()
180 EXPECT_EQ(dpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
181 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
182 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
183 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
184 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
197 Stream s = m.Build(); in TEST_P() local
198 ASSERT_EQ(1U, s.size()); in TEST_P()
199 EXPECT_EQ(dpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
200 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
201 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
202 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
210 Stream s = m.Build(); in TEST_P() local
211 ASSERT_EQ(1U, s.size()); in TEST_P()
212 EXPECT_EQ(dpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
213 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
214 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
215 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
229 Stream s = m.Build(); in TEST_P() local
230 ASSERT_EQ(1U, s.size()); in TEST_P()
231 EXPECT_EQ(dpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
232 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
233 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
234 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
235 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
245 Stream s = m.Build(); in TEST_P() local
246 ASSERT_EQ(1U, s.size()); in TEST_P()
247 EXPECT_EQ(dpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
248 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
249 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
250 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
251 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
267 Stream s = m.Build(); in TEST_P() local
268 ASSERT_EQ(1U, s.size()); in TEST_P()
269 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
270 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
271 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
272 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
287 Stream s = m.Build(); in TEST_P() local
288 ASSERT_EQ(1U, s.size()); in TEST_P()
289 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
290 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
291 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
292 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
303 Stream s = m.Build(); in TEST_P() local
304 ASSERT_EQ(1U, s.size()); in TEST_P()
305 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
306 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
307 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
308 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
327 Stream s = m.Build(); in TEST_P() local
328 ASSERT_EQ(1U, s.size()); in TEST_P()
329 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
330 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
331 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
332 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
346 Stream s = m.Build(); in TEST_P() local
347 ASSERT_EQ(1U, s.size()); in TEST_P()
348 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
349 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
350 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
351 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
371 Stream s = m.Build(); in TEST_P() local
372 ASSERT_EQ(1U, s.size()); in TEST_P()
373 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
374 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
375 ASSERT_EQ(5U, s[0]->InputCount()); in TEST_P()
376 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
377 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
378 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
394 Stream s = m.Build(); in TEST_P() local
395 ASSERT_EQ(1U, s.size()); in TEST_P()
396 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
397 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
398 ASSERT_EQ(5U, s[0]->InputCount()); in TEST_P()
399 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
400 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
401 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
419 Stream s = m.Build(); in TEST_P() local
420 ASSERT_EQ(1U, s.size()); in TEST_P()
421 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
422 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
423 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
424 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
441 Stream s = m.Build(); in TEST_P() local
442 ASSERT_EQ(1U, s.size()); in TEST_P()
443 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
444 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
445 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
446 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
463 Stream s = m.Build(); in TEST_P() local
464 ASSERT_EQ(1U, s.size()); in TEST_P()
465 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
466 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
467 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
468 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
481 Stream s = m.Build(); in TEST_P() local
482 ASSERT_EQ(1U, s.size()); in TEST_P()
483 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
484 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
485 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
486 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
504 Stream s = m.Build(); in TEST_P() local
505 ASSERT_EQ(1U, s.size()); in TEST_P()
506 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
507 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
508 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
509 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
522 Stream s = m.Build(); in TEST_P() local
523 ASSERT_EQ(1U, s.size()); in TEST_P()
524 EXPECT_EQ(dpi.test_arch_opcode, s[0]->arch_opcode()); in TEST_P()
525 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
526 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
527 EXPECT_EQ(kNotEqual, s[0]->flags_condition()); in TEST_P()
549 Stream s = m.Build(); in TEST_P() local
550 ASSERT_EQ(1U, s.size()); in TEST_P()
551 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
552 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
553 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
554 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
555 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
556 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
566 Stream s = m.Build(); in TEST_P() local
567 ASSERT_EQ(1U, s.size()); in TEST_P()
568 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
569 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
570 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
571 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
572 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
573 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
574 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
580 Stream s = m.Build(); in TEST_P() local
581 ASSERT_EQ(1U, s.size()); in TEST_P()
582 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
583 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
584 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
585 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
586 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
587 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
588 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
602 Stream s = m.Build(); in TEST_P() local
603 ASSERT_EQ(1U, s.size()); in TEST_P()
604 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
605 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
606 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
607 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
608 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
609 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
618 Stream s = m.Build(); in TEST_P() local
619 ASSERT_EQ(1U, s.size()); in TEST_P()
620 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
621 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
622 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
623 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
624 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
625 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
640 Stream s = m.Build(); in TEST_P() local
641 ASSERT_EQ(1U, s.size()); in TEST_P()
642 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
643 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
644 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
645 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
646 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
647 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
648 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
659 Stream s = m.Build(); in TEST_P() local
660 ASSERT_EQ(1U, s.size()); in TEST_P()
661 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
662 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
663 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
664 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
665 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
666 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
667 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
679 Stream s = m.Build(); in TEST_P() local
680 ASSERT_EQ(1U, s.size()); in TEST_P()
681 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
682 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
683 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
684 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
685 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
695 Stream s = m.Build(); in TEST_P() local
696 ASSERT_EQ(1U, s.size()); in TEST_P()
697 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
698 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
699 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
700 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
701 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
702 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
708 Stream s = m.Build(); in TEST_P() local
709 ASSERT_EQ(1U, s.size()); in TEST_P()
710 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
711 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
712 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
713 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
714 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
715 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
729 Stream s = m.Build(); in TEST_P() local
730 ASSERT_EQ(1U, s.size()); in TEST_P()
731 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
732 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
733 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
734 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
735 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
744 Stream s = m.Build(); in TEST_P() local
745 ASSERT_EQ(1U, s.size()); in TEST_P()
746 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
747 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
748 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
749 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
750 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
765 Stream s = m.Build(); in TEST_P() local
766 ASSERT_EQ(1U, s.size()); in TEST_P()
767 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
768 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
769 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
770 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
771 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
772 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
783 Stream s = m.Build(); in TEST_P() local
784 ASSERT_EQ(1U, s.size()); in TEST_P()
785 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
786 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
787 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
788 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
789 EXPECT_LE(1U, s[0]->OutputCount()); in TEST_P()
790 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
802 Stream s = m.Build(); in TEST_P() local
803 ASSERT_LE(1U, s.size()); in TEST_P()
804 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
805 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
806 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
807 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
808 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
809 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
819 Stream s = m.Build(); in TEST_P() local
820 ASSERT_LE(1U, s.size()); in TEST_P()
821 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
822 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
823 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
824 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
825 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
826 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
827 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
833 Stream s = m.Build(); in TEST_P() local
834 ASSERT_LE(1U, s.size()); in TEST_P()
835 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
836 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
837 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
838 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
839 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
840 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
841 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
854 Stream s = m.Build(); in TEST_P() local
855 ASSERT_LE(1U, s.size()); in TEST_P()
856 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
857 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
858 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
859 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
860 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
861 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
869 Stream s = m.Build(); in TEST_P() local
870 ASSERT_LE(1U, s.size()); in TEST_P()
871 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
872 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
873 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
874 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
875 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
876 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
891 Stream s = m.Build(); in TEST_P() local
892 ASSERT_LE(1U, s.size()); in TEST_P()
893 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
894 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
895 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
896 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
897 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
898 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
899 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
910 Stream s = m.Build(); in TEST_P() local
911 ASSERT_LE(1U, s.size()); in TEST_P()
912 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
913 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
914 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
915 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
916 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
917 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
918 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
935 Stream s = m.Build(); in TEST_P() local
936 ASSERT_EQ(1U, s.size()); in TEST_P()
937 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
938 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
939 EXPECT_EQ(4U, s[0]->InputCount()); in TEST_P()
940 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
941 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
942 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
957 Stream s = m.Build(); in TEST_P() local
958 ASSERT_EQ(1U, s.size()); in TEST_P()
959 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
960 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
961 ASSERT_EQ(4U, s[0]->InputCount()); in TEST_P()
962 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
963 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
964 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
965 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
976 Stream s = m.Build(); in TEST_P() local
977 ASSERT_EQ(1U, s.size()); in TEST_P()
978 EXPECT_EQ(odpi.reverse_arch_opcode, s[0]->arch_opcode()); in TEST_P()
979 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_P()
980 ASSERT_EQ(4U, s[0]->InputCount()); in TEST_P()
981 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
982 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
983 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
984 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
1000 Stream s = m.Build(); in TEST_P() local
1001 ASSERT_EQ(1U, s.size()); in TEST_P()
1002 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
1003 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
1004 EXPECT_EQ(4U, s[0]->InputCount()); in TEST_P()
1005 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1006 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
1007 EXPECT_EQ(kNotOverflow, s[0]->flags_condition()); in TEST_P()
1022 Stream s = m.Build(); in TEST_P() local
1023 ASSERT_EQ(1U, s.size()); in TEST_P()
1024 EXPECT_EQ(odpi.arch_opcode, s[0]->arch_opcode()); in TEST_P()
1025 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
1026 EXPECT_EQ(4U, s[0]->InputCount()); in TEST_P()
1027 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1028 EXPECT_EQ(kFlags_branch, s[0]->flags_mode()); in TEST_P()
1029 EXPECT_EQ(kOverflow, s[0]->flags_condition()); in TEST_P()
1049 Stream s = m.Build(); in TEST_P() local
1050 ASSERT_EQ(1U, s.size()); in TEST_P()
1051 EXPECT_EQ(kArmMov, s[0]->arch_opcode()); in TEST_P()
1052 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1053 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
1054 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1063 Stream s = m.Build(); in TEST_P() local
1064 ASSERT_EQ(1U, s.size()); in TEST_P()
1065 EXPECT_EQ(kArmMov, s[0]->arch_opcode()); in TEST_P()
1066 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1067 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1068 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
1069 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1082 Stream s = m.Build(); in TEST_P() local
1083 ASSERT_EQ(1U, s.size()); in TEST_P()
1084 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1085 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1086 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
1087 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1088 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1089 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1097 Stream s = m.Build(); in TEST_P() local
1098 ASSERT_EQ(1U, s.size()); in TEST_P()
1099 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1100 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1101 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
1102 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1103 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1104 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1117 Stream s = m.Build(); in TEST_P() local
1118 ASSERT_EQ(1U, s.size()); in TEST_P()
1119 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1120 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1121 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
1122 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
1123 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1124 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1125 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1133 Stream s = m.Build(); in TEST_P() local
1134 ASSERT_EQ(1U, s.size()); in TEST_P()
1135 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1136 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1137 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
1138 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
1139 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1140 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1141 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1153 Stream s = m.Build(); in TEST_P() local
1154 ASSERT_EQ(1U, s.size()); in TEST_P()
1155 EXPECT_EQ(kArmMov, s[0]->arch_opcode()); in TEST_P()
1156 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1157 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
1158 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
1159 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1160 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1172 Stream s = m.Build(); in TEST_P() local
1173 ASSERT_EQ(1U, s.size()); in TEST_P()
1174 EXPECT_EQ(kArmMov, s[0]->arch_opcode()); in TEST_P()
1175 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1176 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1177 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
1178 EXPECT_EQ(2U, s[0]->OutputCount()); in TEST_P()
1179 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1180 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_P()
1190 Stream s = m.Build(); in TEST_P() local
1191 ASSERT_EQ(1U, s.size()); in TEST_P()
1192 EXPECT_EQ(kArmMvn, s[0]->arch_opcode()); in TEST_P()
1193 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1194 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
1195 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1205 Stream s = m.Build(); in TEST_P() local
1206 ASSERT_EQ(1U, s.size()); in TEST_P()
1207 EXPECT_EQ(kArmMvn, s[0]->arch_opcode()); in TEST_P()
1208 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1209 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1210 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
1211 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1222 Stream s = m.Build(); in TEST_P() local
1223 ASSERT_EQ(1U, s.size()); in TEST_P()
1224 EXPECT_EQ(kArmBic, s[0]->arch_opcode()); in TEST_P()
1225 EXPECT_EQ(shift.r_mode, s[0]->addressing_mode()); in TEST_P()
1226 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
1227 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1239 Stream s = m.Build(); in TEST_P() local
1240 ASSERT_EQ(1U, s.size()); in TEST_P()
1241 EXPECT_EQ(kArmBic, s[0]->arch_opcode()); in TEST_P()
1242 EXPECT_EQ(shift.i_mode, s[0]->addressing_mode()); in TEST_P()
1243 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
1244 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(2))); in TEST_P()
1245 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1338 Stream s = m.Build(); in TEST_P() local
1339 ASSERT_EQ(1U, s.size()); in TEST_P()
1340 EXPECT_EQ(memacc.ldr_opcode, s[0]->arch_opcode()); in TEST_P()
1341 EXPECT_EQ(kMode_Offset_RR, s[0]->addressing_mode()); in TEST_P()
1342 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_P()
1343 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1344 EXPECT_TRUE((s.*memacc.val_predicate)(s[0]->Output())); in TEST_P()
1353 Stream s = m.Build(); in TEST_P() local
1354 ASSERT_EQ(1U, s.size()); in TEST_P()
1355 EXPECT_EQ(memacc.ldr_opcode, s[0]->arch_opcode()); in TEST_P()
1356 EXPECT_EQ(kMode_Offset_RI, s[0]->addressing_mode()); in TEST_P()
1357 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1358 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
1359 EXPECT_EQ(index, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
1360 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1361 EXPECT_TRUE((s.*memacc.val_predicate)(s[0]->Output())); in TEST_P()
1373 Stream s = m.Build(); in TEST_P() local
1374 ASSERT_EQ(1U, s.size()); in TEST_P()
1375 EXPECT_EQ(memacc.str_opcode, s[0]->arch_opcode()); in TEST_P()
1376 EXPECT_EQ(kMode_Offset_RR, s[0]->addressing_mode()); in TEST_P()
1377 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_P()
1378 EXPECT_EQ(0U, s[0]->OutputCount()); in TEST_P()
1390 Stream s = m.Build(); in TEST_P() local
1391 ASSERT_EQ(1U, s.size()); in TEST_P()
1392 EXPECT_EQ(memacc.str_opcode, s[0]->arch_opcode()); in TEST_P()
1393 EXPECT_EQ(kMode_Offset_RI, s[0]->addressing_mode()); in TEST_P()
1394 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_P()
1395 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
1396 EXPECT_EQ(index, s.ToInt32(s[0]->InputAt(1))); in TEST_P()
1397 EXPECT_EQ(0U, s[0]->OutputCount()); in TEST_P()
1414 Stream s = m.Build(); in TEST_F() local
1415 ASSERT_EQ(1U, s.size()); in TEST_F()
1416 EXPECT_EQ(kArmVcvtF64F32, s[0]->arch_opcode()); in TEST_F()
1417 EXPECT_EQ(1U, s[0]->InputCount()); in TEST_F()
1418 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1425 Stream s = m.Build(); in TEST_F() local
1426 ASSERT_EQ(1U, s.size()); in TEST_F()
1427 EXPECT_EQ(kArmVcvtF32F64, s[0]->arch_opcode()); in TEST_F()
1428 EXPECT_EQ(1U, s[0]->InputCount()); in TEST_F()
1429 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1481 Stream const s = m.Build(); in TEST_P() local
1482 ASSERT_EQ(1U, s.size()); in TEST_P()
1483 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1484 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
1485 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1486 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_P()
1487 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_P()
1488 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1489 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->OutputAt(0))); in TEST_P()
1490 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1491 EXPECT_EQ(cmp.flags_condition, s[0]->flags_condition()); in TEST_P()
1505 Stream const s = m.Build(); in TEST_P() local
1506 ASSERT_EQ(1U, s.size()); in TEST_P()
1507 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1508 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
1509 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1510 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_P()
1511 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_P()
1512 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1513 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->OutputAt(0))); in TEST_P()
1514 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1515 EXPECT_EQ(cmp.negated_flags_condition, s[0]->flags_condition()); in TEST_P()
1526 Stream const s = m.Build(); in TEST_P() local
1527 ASSERT_EQ(1U, s.size()); in TEST_P()
1528 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_P()
1529 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_P()
1530 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1531 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_P()
1532 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_P()
1533 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1534 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->OutputAt(0))); in TEST_P()
1535 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1536 EXPECT_EQ(cmp.negated_flags_condition, s[0]->flags_condition()); in TEST_P()
1572 Stream const s = m.Build(); in TEST_P() local
1573 ASSERT_EQ(1U, s.size()); in TEST_P()
1574 EXPECT_EQ(kArmVcmpF32, s[0]->arch_opcode()); in TEST_P()
1575 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1576 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1577 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1578 EXPECT_EQ(cmp.flags_condition, s[0]->flags_condition()); in TEST_P()
1588 Stream const s = m.Build(); in TEST_P() local
1589 ASSERT_EQ(1U, s.size()); in TEST_P()
1590 EXPECT_EQ(kArmVcmpF32, s[0]->arch_opcode()); in TEST_P()
1591 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1592 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1593 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1594 EXPECT_EQ(cmp.negated_flags_condition, s[0]->flags_condition()); in TEST_P()
1602 Stream const s = m.Build(); in TEST_P() local
1603 ASSERT_EQ(1U, s.size()); in TEST_P()
1604 EXPECT_EQ(kArmVcmpF32, s[0]->arch_opcode()); in TEST_P()
1605 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1606 EXPECT_TRUE(s[0]->InputAt(1)->IsImmediate()); in TEST_P()
1607 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1608 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1609 EXPECT_EQ(cmp.flags_condition, s[0]->flags_condition()); in TEST_P()
1617 Stream const s = m.Build(); in TEST_P() local
1618 ASSERT_EQ(1U, s.size()); in TEST_P()
1619 EXPECT_EQ(kArmVcmpF32, s[0]->arch_opcode()); in TEST_P()
1620 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1621 EXPECT_TRUE(s[0]->InputAt(1)->IsImmediate()); in TEST_P()
1622 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1623 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1624 EXPECT_EQ(cmp.commuted_flags_condition, s[0]->flags_condition()); in TEST_P()
1655 Stream const s = m.Build(); in TEST_P() local
1656 ASSERT_EQ(1U, s.size()); in TEST_P()
1657 EXPECT_EQ(kArmVcmpF64, s[0]->arch_opcode()); in TEST_P()
1658 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1659 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1660 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1661 EXPECT_EQ(cmp.flags_condition, s[0]->flags_condition()); in TEST_P()
1671 Stream const s = m.Build(); in TEST_P() local
1672 ASSERT_EQ(1U, s.size()); in TEST_P()
1673 EXPECT_EQ(kArmVcmpF64, s[0]->arch_opcode()); in TEST_P()
1674 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1675 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1676 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1677 EXPECT_EQ(cmp.negated_flags_condition, s[0]->flags_condition()); in TEST_P()
1685 Stream const s = m.Build(); in TEST_P() local
1686 ASSERT_EQ(1U, s.size()); in TEST_P()
1687 EXPECT_EQ(kArmVcmpF64, s[0]->arch_opcode()); in TEST_P()
1688 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1689 EXPECT_TRUE(s[0]->InputAt(1)->IsImmediate()); in TEST_P()
1690 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1691 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1692 EXPECT_EQ(cmp.flags_condition, s[0]->flags_condition()); in TEST_P()
1700 Stream const s = m.Build(); in TEST_P() local
1701 ASSERT_EQ(1U, s.size()); in TEST_P()
1702 EXPECT_EQ(kArmVcmpF64, s[0]->arch_opcode()); in TEST_P()
1703 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1704 EXPECT_TRUE(s[0]->InputAt(1)->IsImmediate()); in TEST_P()
1705 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1706 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_P()
1707 EXPECT_EQ(cmp.commuted_flags_condition, s[0]->flags_condition()); in TEST_P()
1730 Stream const s = m.Build(); in TEST_P() local
1731 ASSERT_EQ(1U, s.size()); in TEST_P()
1732 EXPECT_EQ(fai.arch_opcode, s[0]->arch_opcode()); in TEST_P()
1733 EXPECT_EQ(kMode_None, s[0]->addressing_mode()); in TEST_P()
1734 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_P()
1735 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_P()
1736 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_P()
1737 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_P()
1738 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->OutputAt(0))); in TEST_P()
1739 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_P()
1752 Stream s = m.Build(); in TEST_F() local
1753 ASSERT_EQ(1U, s.size()); in TEST_F()
1754 EXPECT_EQ(kArmVabsF32, s[0]->arch_opcode()); in TEST_F()
1755 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1756 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1757 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1758 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1767 Stream s = m.Build(); in TEST_F() local
1768 ASSERT_EQ(1U, s.size()); in TEST_F()
1769 EXPECT_EQ(kArmVabsF64, s[0]->arch_opcode()); in TEST_F()
1770 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1771 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1772 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1773 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1786 Stream s = m.Build(); in TEST_F() local
1787 ASSERT_EQ(1U, s.size()); in TEST_F()
1788 EXPECT_EQ(kArmVmlaF32, s[0]->arch_opcode()); in TEST_F()
1789 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1790 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1791 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1792 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1793 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1795 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1796 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1797 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1807 Stream s = m.Build(); in TEST_F() local
1808 ASSERT_EQ(1U, s.size()); in TEST_F()
1809 EXPECT_EQ(kArmVmlaF32, s[0]->arch_opcode()); in TEST_F()
1810 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1811 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1812 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1813 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1814 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1816 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1817 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1818 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1832 Stream s = m.Build(); in TEST_F() local
1833 ASSERT_EQ(1U, s.size()); in TEST_F()
1834 EXPECT_EQ(kArmVmlaF64, s[0]->arch_opcode()); in TEST_F()
1835 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1836 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1837 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1838 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1839 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1841 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1842 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1843 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1853 Stream s = m.Build(); in TEST_F() local
1854 ASSERT_EQ(1U, s.size()); in TEST_F()
1855 EXPECT_EQ(kArmVmlaF64, s[0]->arch_opcode()); in TEST_F()
1856 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1857 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1858 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1859 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1860 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1862 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1863 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1864 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1874 Stream s = m.Build(); in TEST_F() local
1875 ASSERT_EQ(1U, s.size()); in TEST_F()
1876 EXPECT_EQ(kArmVnegF32, s[0]->arch_opcode()); in TEST_F()
1877 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1878 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1879 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1880 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1889 Stream s = m.Build(); in TEST_F() local
1890 ASSERT_EQ(1U, s.size()); in TEST_F()
1891 EXPECT_EQ(kArmVnegF64, s[0]->arch_opcode()); in TEST_F()
1892 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1893 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1894 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1895 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1907 Stream s = m.Build(); in TEST_F() local
1908 ASSERT_EQ(1U, s.size()); in TEST_F()
1909 EXPECT_EQ(kArmVmlsF32, s[0]->arch_opcode()); in TEST_F()
1910 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1911 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1912 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1913 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1914 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1915 EXPECT_TRUE(UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1916 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1917 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1929 Stream s = m.Build(); in TEST_F() local
1930 ASSERT_EQ(1U, s.size()); in TEST_F()
1931 EXPECT_EQ(kArmVmlsF64, s[0]->arch_opcode()); in TEST_F()
1932 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1933 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1934 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1935 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1936 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1937 EXPECT_TRUE(UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
1938 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1939 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1948 Stream s = m.Build(); in TEST_F() local
1949 ASSERT_EQ(1U, s.size()); in TEST_F()
1950 EXPECT_EQ(kArmVsqrtF32, s[0]->arch_opcode()); in TEST_F()
1951 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1952 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1953 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1954 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1955 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1964 Stream s = m.Build(); in TEST_F() local
1965 ASSERT_EQ(1U, s.size()); in TEST_F()
1966 EXPECT_EQ(kArmVsqrtF64, s[0]->arch_opcode()); in TEST_F()
1967 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
1968 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1969 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1970 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
1971 EXPECT_EQ(kFlags_none, s[0]->flags_mode()); in TEST_F()
1988 Stream s = m.Build(); in TEST_F() local
1989 ASSERT_EQ(1U, s.size()); in TEST_F()
1990 EXPECT_EQ(kArmMla, s[0]->arch_opcode()); in TEST_F()
1991 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
1992 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
1993 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
1994 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
1995 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
1996 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
2006 Stream s = m.Build(); in TEST_F() local
2007 ASSERT_EQ(1U, s.size()); in TEST_F()
2008 EXPECT_EQ(kArmMla, s[0]->arch_opcode()); in TEST_F()
2009 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2010 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2011 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2012 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
2013 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2014 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
2028 Stream s = m.Build(); in TEST_F() local
2029 ASSERT_EQ(1U, s.size()); in TEST_F()
2030 EXPECT_EQ(kArmSmmla, s[0]->arch_opcode()); in TEST_F()
2031 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2032 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2033 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2034 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
2035 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2036 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
2046 Stream s = m.Build(); in TEST_F() local
2047 ASSERT_EQ(1U, s.size()); in TEST_F()
2048 EXPECT_EQ(kArmSmmla, s[0]->arch_opcode()); in TEST_F()
2049 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2050 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2051 EXPECT_EQ(s.ToVreg(p2), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2052 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(2))); in TEST_F()
2053 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2054 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
2067 Stream s = m.Build(); in TEST_F() local
2068 ASSERT_EQ(1U, s.size()); in TEST_F()
2069 EXPECT_EQ(kArmUxtab, s[0]->arch_opcode()); in TEST_F()
2070 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2071 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2072 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2073 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2074 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2075 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2084 Stream s = m.Build(); in TEST_F() local
2085 ASSERT_EQ(1U, s.size()); in TEST_F()
2086 EXPECT_EQ(kArmUxtab, s[0]->arch_opcode()); in TEST_F()
2087 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2088 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2089 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2090 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2091 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2092 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2101 Stream s = m.Build(); in TEST_F() local
2102 ASSERT_EQ(1U, s.size()); in TEST_F()
2103 EXPECT_EQ(kArmUxtah, s[0]->arch_opcode()); in TEST_F()
2104 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2105 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2106 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2107 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2108 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2109 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2118 Stream s = m.Build(); in TEST_F() local
2119 ASSERT_EQ(1U, s.size()); in TEST_F()
2120 EXPECT_EQ(kArmUxtah, s[0]->arch_opcode()); in TEST_F()
2121 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2122 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2123 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2124 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2125 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2126 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2141 Stream s = m.Build(); in TEST_F() local
2142 ASSERT_EQ(1U, s.size()); in TEST_F()
2143 EXPECT_EQ(kArmSxtab, s[0]->arch_opcode()); in TEST_F()
2144 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2145 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2146 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2147 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2148 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2149 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2160 Stream s = m.Build(); in TEST_F() local
2161 ASSERT_EQ(1U, s.size()); in TEST_F()
2162 EXPECT_EQ(kArmSxtab, s[0]->arch_opcode()); in TEST_F()
2163 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2164 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2165 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2166 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2167 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2168 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2179 Stream s = m.Build(); in TEST_F() local
2180 ASSERT_EQ(1U, s.size()); in TEST_F()
2181 EXPECT_EQ(kArmSxtah, s[0]->arch_opcode()); in TEST_F()
2182 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2183 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2184 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2185 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2186 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2187 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2198 Stream s = m.Build(); in TEST_F() local
2199 ASSERT_EQ(1U, s.size()); in TEST_F()
2200 EXPECT_EQ(kArmSxtah, s[0]->arch_opcode()); in TEST_F()
2201 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2202 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2203 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2204 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2205 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2206 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2216 Stream s = m.Build(); in TEST_F() local
2217 ASSERT_EQ(2U, s.size()); in TEST_F()
2218 EXPECT_EQ(kArmMul, s[0]->arch_opcode()); in TEST_F()
2219 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2220 EXPECT_EQ(kArmSub, s[1]->arch_opcode()); in TEST_F()
2221 ASSERT_EQ(2U, s[1]->InputCount()); in TEST_F()
2222 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[1]->InputAt(1))); in TEST_F()
2231 Stream s = m.Build(MLS); in TEST_F() local
2232 ASSERT_EQ(1U, s.size()); in TEST_F()
2233 EXPECT_EQ(kArmMls, s[0]->arch_opcode()); in TEST_F()
2234 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2235 EXPECT_EQ(3U, s[0]->InputCount()); in TEST_F()
2243 Stream s = m.Build(); in TEST_F() local
2244 ASSERT_EQ(4U, s.size()); in TEST_F()
2245 EXPECT_EQ(kArmVcvtF64S32, s[0]->arch_opcode()); in TEST_F()
2246 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2247 EXPECT_EQ(kArmVcvtF64S32, s[1]->arch_opcode()); in TEST_F()
2248 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2249 EXPECT_EQ(kArmVdivF64, s[2]->arch_opcode()); in TEST_F()
2250 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2251 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2252 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2253 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2254 EXPECT_EQ(kArmVcvtS32F64, s[3]->arch_opcode()); in TEST_F()
2255 ASSERT_EQ(1U, s[3]->InputCount()); in TEST_F()
2256 EXPECT_EQ(s.ToVreg(s[2]->Output()), s.ToVreg(s[3]->InputAt(0))); in TEST_F()
2264 Stream s = m.Build(SUDIV); in TEST_F() local
2265 ASSERT_EQ(1U, s.size()); in TEST_F()
2266 EXPECT_EQ(kArmSdiv, s[0]->arch_opcode()); in TEST_F()
2274 Stream s = m.Build(); in TEST_F() local
2275 ASSERT_EQ(6U, s.size()); in TEST_F()
2276 EXPECT_EQ(kArmVcvtF64S32, s[0]->arch_opcode()); in TEST_F()
2277 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2278 EXPECT_EQ(kArmVcvtF64S32, s[1]->arch_opcode()); in TEST_F()
2279 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2280 EXPECT_EQ(kArmVdivF64, s[2]->arch_opcode()); in TEST_F()
2281 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2282 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2283 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2284 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2285 EXPECT_EQ(kArmVcvtS32F64, s[3]->arch_opcode()); in TEST_F()
2286 ASSERT_EQ(1U, s[3]->InputCount()); in TEST_F()
2287 EXPECT_EQ(s.ToVreg(s[2]->Output()), s.ToVreg(s[3]->InputAt(0))); in TEST_F()
2288 EXPECT_EQ(kArmMul, s[4]->arch_opcode()); in TEST_F()
2289 ASSERT_EQ(1U, s[4]->OutputCount()); in TEST_F()
2290 ASSERT_EQ(2U, s[4]->InputCount()); in TEST_F()
2291 EXPECT_EQ(s.ToVreg(s[3]->Output()), s.ToVreg(s[4]->InputAt(0))); in TEST_F()
2292 EXPECT_EQ(s.ToVreg(s[1]->InputAt(0)), s.ToVreg(s[4]->InputAt(1))); in TEST_F()
2293 EXPECT_EQ(kArmSub, s[5]->arch_opcode()); in TEST_F()
2294 ASSERT_EQ(1U, s[5]->OutputCount()); in TEST_F()
2295 ASSERT_EQ(2U, s[5]->InputCount()); in TEST_F()
2296 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[5]->InputAt(0))); in TEST_F()
2297 EXPECT_EQ(s.ToVreg(s[4]->Output()), s.ToVreg(s[5]->InputAt(1))); in TEST_F()
2305 Stream s = m.Build(SUDIV); in TEST_F() local
2306 ASSERT_EQ(3U, s.size()); in TEST_F()
2307 EXPECT_EQ(kArmSdiv, s[0]->arch_opcode()); in TEST_F()
2308 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2309 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2310 EXPECT_EQ(kArmMul, s[1]->arch_opcode()); in TEST_F()
2311 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2312 ASSERT_EQ(2U, s[1]->InputCount()); in TEST_F()
2313 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[1]->InputAt(0))); in TEST_F()
2314 EXPECT_EQ(s.ToVreg(s[0]->InputAt(1)), s.ToVreg(s[1]->InputAt(1))); in TEST_F()
2315 EXPECT_EQ(kArmSub, s[2]->arch_opcode()); in TEST_F()
2316 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2317 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2318 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2319 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2327 Stream s = m.Build(MLS, SUDIV); in TEST_F() local
2328 ASSERT_EQ(2U, s.size()); in TEST_F()
2329 EXPECT_EQ(kArmSdiv, s[0]->arch_opcode()); in TEST_F()
2330 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2331 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2332 EXPECT_EQ(kArmMls, s[1]->arch_opcode()); in TEST_F()
2333 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2334 ASSERT_EQ(3U, s[1]->InputCount()); in TEST_F()
2335 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[1]->InputAt(0))); in TEST_F()
2336 EXPECT_EQ(s.ToVreg(s[0]->InputAt(1)), s.ToVreg(s[1]->InputAt(1))); in TEST_F()
2337 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[1]->InputAt(2))); in TEST_F()
2345 Stream s = m.Build(); in TEST_F() local
2346 ASSERT_EQ(1U, s.size()); in TEST_F()
2347 EXPECT_EQ(kArmMul, s[0]->arch_opcode()); in TEST_F()
2348 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_F()
2349 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2358 Stream s = m.Build(); in TEST_F() local
2359 ASSERT_EQ(1U, s.size()); in TEST_F()
2360 EXPECT_EQ(kArmAdd, s[0]->arch_opcode()); in TEST_F()
2361 EXPECT_EQ(kMode_Operand2_R_LSL_I, s[0]->addressing_mode()); in TEST_F()
2362 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2363 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2364 EXPECT_EQ(k, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2365 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2371 Stream s = m.Build(); in TEST_F() local
2372 ASSERT_EQ(1U, s.size()); in TEST_F()
2373 EXPECT_EQ(kArmRsb, s[0]->arch_opcode()); in TEST_F()
2374 EXPECT_EQ(kMode_Operand2_R_LSL_I, s[0]->addressing_mode()); in TEST_F()
2375 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2376 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2377 EXPECT_EQ(k, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2378 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2384 Stream s = m.Build(); in TEST_F() local
2385 ASSERT_EQ(1U, s.size()); in TEST_F()
2386 EXPECT_EQ(kArmAdd, s[0]->arch_opcode()); in TEST_F()
2387 EXPECT_EQ(kMode_Operand2_R_LSL_I, s[0]->addressing_mode()); in TEST_F()
2388 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2389 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2390 EXPECT_EQ(k, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2391 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2397 Stream s = m.Build(); in TEST_F() local
2398 ASSERT_EQ(1U, s.size()); in TEST_F()
2399 EXPECT_EQ(kArmRsb, s[0]->arch_opcode()); in TEST_F()
2400 EXPECT_EQ(kMode_Operand2_R_LSL_I, s[0]->addressing_mode()); in TEST_F()
2401 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2402 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2403 EXPECT_EQ(k, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2404 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2416 Stream s = m.Build(); in TEST_F() local
2417 ASSERT_EQ(1U, s.size()); in TEST_F()
2418 EXPECT_EQ(kArmSmmul, s[0]->arch_opcode()); in TEST_F()
2419 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2420 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2421 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2422 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2423 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()
2434 Stream s = m.Build(); in TEST_F() local
2435 ASSERT_EQ(1U, s.size()); in TEST_F()
2436 EXPECT_EQ(kArmUmull, s[0]->arch_opcode()); in TEST_F()
2437 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2438 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2439 EXPECT_EQ(s.ToVreg(p1), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2440 ASSERT_EQ(2U, s[0]->OutputCount()); in TEST_F()
2441 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->OutputAt(1))); in TEST_F()
2449 Stream s = m.Build(); in TEST_F() local
2450 ASSERT_EQ(4U, s.size()); in TEST_F()
2451 EXPECT_EQ(kArmVcvtF64U32, s[0]->arch_opcode()); in TEST_F()
2452 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2453 EXPECT_EQ(kArmVcvtF64U32, s[1]->arch_opcode()); in TEST_F()
2454 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2455 EXPECT_EQ(kArmVdivF64, s[2]->arch_opcode()); in TEST_F()
2456 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2457 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2458 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2459 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2460 EXPECT_EQ(kArmVcvtU32F64, s[3]->arch_opcode()); in TEST_F()
2461 ASSERT_EQ(1U, s[3]->InputCount()); in TEST_F()
2462 EXPECT_EQ(s.ToVreg(s[2]->Output()), s.ToVreg(s[3]->InputAt(0))); in TEST_F()
2470 Stream s = m.Build(SUDIV); in TEST_F() local
2471 ASSERT_EQ(1U, s.size()); in TEST_F()
2472 EXPECT_EQ(kArmUdiv, s[0]->arch_opcode()); in TEST_F()
2480 Stream s = m.Build(); in TEST_F() local
2481 ASSERT_EQ(6U, s.size()); in TEST_F()
2482 EXPECT_EQ(kArmVcvtF64U32, s[0]->arch_opcode()); in TEST_F()
2483 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2484 EXPECT_EQ(kArmVcvtF64U32, s[1]->arch_opcode()); in TEST_F()
2485 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2486 EXPECT_EQ(kArmVdivF64, s[2]->arch_opcode()); in TEST_F()
2487 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2488 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2489 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2490 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2491 EXPECT_EQ(kArmVcvtU32F64, s[3]->arch_opcode()); in TEST_F()
2492 ASSERT_EQ(1U, s[3]->InputCount()); in TEST_F()
2493 EXPECT_EQ(s.ToVreg(s[2]->Output()), s.ToVreg(s[3]->InputAt(0))); in TEST_F()
2494 EXPECT_EQ(kArmMul, s[4]->arch_opcode()); in TEST_F()
2495 ASSERT_EQ(1U, s[4]->OutputCount()); in TEST_F()
2496 ASSERT_EQ(2U, s[4]->InputCount()); in TEST_F()
2497 EXPECT_EQ(s.ToVreg(s[3]->Output()), s.ToVreg(s[4]->InputAt(0))); in TEST_F()
2498 EXPECT_EQ(s.ToVreg(s[1]->InputAt(0)), s.ToVreg(s[4]->InputAt(1))); in TEST_F()
2499 EXPECT_EQ(kArmSub, s[5]->arch_opcode()); in TEST_F()
2500 ASSERT_EQ(1U, s[5]->OutputCount()); in TEST_F()
2501 ASSERT_EQ(2U, s[5]->InputCount()); in TEST_F()
2502 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[5]->InputAt(0))); in TEST_F()
2503 EXPECT_EQ(s.ToVreg(s[4]->Output()), s.ToVreg(s[5]->InputAt(1))); in TEST_F()
2511 Stream s = m.Build(SUDIV); in TEST_F() local
2512 ASSERT_EQ(3U, s.size()); in TEST_F()
2513 EXPECT_EQ(kArmUdiv, s[0]->arch_opcode()); in TEST_F()
2514 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2515 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2516 EXPECT_EQ(kArmMul, s[1]->arch_opcode()); in TEST_F()
2517 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2518 ASSERT_EQ(2U, s[1]->InputCount()); in TEST_F()
2519 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[1]->InputAt(0))); in TEST_F()
2520 EXPECT_EQ(s.ToVreg(s[0]->InputAt(1)), s.ToVreg(s[1]->InputAt(1))); in TEST_F()
2521 EXPECT_EQ(kArmSub, s[2]->arch_opcode()); in TEST_F()
2522 ASSERT_EQ(1U, s[2]->OutputCount()); in TEST_F()
2523 ASSERT_EQ(2U, s[2]->InputCount()); in TEST_F()
2524 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[2]->InputAt(0))); in TEST_F()
2525 EXPECT_EQ(s.ToVreg(s[1]->Output()), s.ToVreg(s[2]->InputAt(1))); in TEST_F()
2533 Stream s = m.Build(MLS, SUDIV); in TEST_F() local
2534 ASSERT_EQ(2U, s.size()); in TEST_F()
2535 EXPECT_EQ(kArmUdiv, s[0]->arch_opcode()); in TEST_F()
2536 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2537 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2538 EXPECT_EQ(kArmMls, s[1]->arch_opcode()); in TEST_F()
2539 ASSERT_EQ(1U, s[1]->OutputCount()); in TEST_F()
2540 ASSERT_EQ(3U, s[1]->InputCount()); in TEST_F()
2541 EXPECT_EQ(s.ToVreg(s[0]->Output()), s.ToVreg(s[1]->InputAt(0))); in TEST_F()
2542 EXPECT_EQ(s.ToVreg(s[0]->InputAt(1)), s.ToVreg(s[1]->InputAt(1))); in TEST_F()
2543 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[1]->InputAt(2))); in TEST_F()
2552 Stream s = m.Build(ARMv7); in TEST_F() local
2553 ASSERT_EQ(1U, s.size()); in TEST_F()
2554 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2555 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2556 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2557 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2563 Stream s = m.Build(ARMv7); in TEST_F() local
2564 ASSERT_EQ(1U, s.size()); in TEST_F()
2565 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2566 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2567 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2568 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2580 Stream s = m.Build(ARMv7); in TEST_F() local
2581 ASSERT_EQ(1U, s.size()); in TEST_F()
2582 EXPECT_EQ(kArmBfc, s[0]->arch_opcode()); in TEST_F()
2583 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2585 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
2586 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2587 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2588 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2597 Stream s = m.Build(ARMv7); in TEST_F() local
2598 ASSERT_EQ(1U, s.size()); in TEST_F()
2599 EXPECT_EQ(kArmBfc, s[0]->arch_opcode()); in TEST_F()
2600 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2602 UnallocatedOperand::cast(s[0]->Output())->HasSameAsInputPolicy()); in TEST_F()
2603 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2604 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2605 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2617 Stream s = m.Build(); in TEST_F() local
2618 ASSERT_EQ(1U, s.size()); in TEST_F()
2619 EXPECT_EQ(kArmUxth, s[0]->arch_opcode()); in TEST_F()
2620 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2621 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2622 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2623 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2624 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2631 Stream s = m.Build(); in TEST_F() local
2632 ASSERT_EQ(1U, s.size()); in TEST_F()
2633 EXPECT_EQ(kArmUxth, s[0]->arch_opcode()); in TEST_F()
2634 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2635 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2636 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2637 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2638 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2650 Stream s = m.Build(); in TEST_F() local
2651 ASSERT_EQ(1U, s.size()); in TEST_F()
2652 EXPECT_EQ(kArmSxtb, s[0]->arch_opcode()); in TEST_F()
2653 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2654 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2655 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2656 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2657 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2665 Stream s = m.Build(); in TEST_F() local
2666 ASSERT_EQ(1U, s.size()); in TEST_F()
2667 EXPECT_EQ(kArmSxth, s[0]->arch_opcode()); in TEST_F()
2668 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2669 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2670 EXPECT_EQ(0, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2671 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2672 EXPECT_EQ(s.ToVreg(r), s.ToVreg(s[0]->Output())); in TEST_F()
2687 Stream s = m.Build(ARMv7); in TEST_F() local
2688 ASSERT_EQ(1U, s.size()); in TEST_F()
2689 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2690 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2691 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2692 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2704 Stream s = m.Build(ARMv7); in TEST_F() local
2705 ASSERT_EQ(1U, s.size()); in TEST_F()
2706 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2707 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2708 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2709 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2720 Stream s = m.Build(); in TEST_F() local
2721 ASSERT_EQ(1U, s.size()); in TEST_F()
2722 EXPECT_EQ(kArmBic, s[0]->arch_opcode()); in TEST_F()
2723 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2724 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_F()
2725 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2731 Stream s = m.Build(); in TEST_F() local
2732 ASSERT_EQ(1U, s.size()); in TEST_F()
2733 EXPECT_EQ(kArmBic, s[0]->arch_opcode()); in TEST_F()
2734 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2735 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_F()
2736 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2745 Stream s = m.Build(); in TEST_F() local
2746 ASSERT_EQ(1U, s.size()); in TEST_F()
2747 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_F()
2748 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2749 EXPECT_EQ(2U, s[0]->InputCount()); in TEST_F()
2750 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2751 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_F()
2752 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_F()
2761 Stream s = m.Build(); in TEST_F() local
2762 ASSERT_EQ(1U, s.size()); in TEST_F()
2763 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_F()
2764 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_F()
2765 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2766 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2767 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2768 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_F()
2769 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_F()
2775 Stream s = m.Build(); in TEST_F() local
2776 ASSERT_EQ(1U, s.size()); in TEST_F()
2777 EXPECT_EQ(kArmCmp, s[0]->arch_opcode()); in TEST_F()
2778 EXPECT_EQ(kMode_Operand2_I, s[0]->addressing_mode()); in TEST_F()
2779 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2780 EXPECT_EQ(imm, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2781 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2782 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_F()
2783 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_F()
2792 Stream s = m.Build(); in TEST_F() local
2793 ASSERT_EQ(1U, s.size()); in TEST_F()
2794 EXPECT_EQ(kArmTst, s[0]->arch_opcode()); in TEST_F()
2795 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2796 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2797 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2798 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2799 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_F()
2800 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_F()
2805 Stream s = m.Build(); in TEST_F() local
2806 ASSERT_EQ(1U, s.size()); in TEST_F()
2807 EXPECT_EQ(kArmTst, s[0]->arch_opcode()); in TEST_F()
2808 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2809 ASSERT_EQ(2U, s[0]->InputCount()); in TEST_F()
2810 EXPECT_EQ(s.ToVreg(s[0]->InputAt(0)), s.ToVreg(s[0]->InputAt(1))); in TEST_F()
2811 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2812 EXPECT_EQ(kFlags_set, s[0]->flags_mode()); in TEST_F()
2813 EXPECT_EQ(kEqual, s[0]->flags_condition()); in TEST_F()
2821 Stream s = m.Build(); in TEST_F() local
2822 ASSERT_EQ(1U, s.size()); in TEST_F()
2823 EXPECT_EQ(kArmMvn, s[0]->arch_opcode()); in TEST_F()
2824 EXPECT_EQ(kMode_Operand2_R, s[0]->addressing_mode()); in TEST_F()
2825 EXPECT_EQ(1U, s[0]->InputCount()); in TEST_F()
2826 EXPECT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2836 Stream s = m.Build(ARMv7); in TEST_F() local
2837 ASSERT_EQ(1U, s.size()); in TEST_F()
2838 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2839 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2840 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2841 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2849 Stream s = m.Build(ARMv7); in TEST_F() local
2850 ASSERT_EQ(1U, s.size()); in TEST_F()
2851 EXPECT_EQ(kArmUbfx, s[0]->arch_opcode()); in TEST_F()
2852 ASSERT_EQ(3U, s[0]->InputCount()); in TEST_F()
2853 EXPECT_EQ(lsb, s.ToInt32(s[0]->InputAt(1))); in TEST_F()
2854 EXPECT_EQ(width, s.ToInt32(s[0]->InputAt(2))); in TEST_F()
2865 Stream s = m.Build(); in TEST_F() local
2866 ASSERT_EQ(1U, s.size()); in TEST_F()
2867 EXPECT_EQ(kArmClz, s[0]->arch_opcode()); in TEST_F()
2868 ASSERT_EQ(1U, s[0]->InputCount()); in TEST_F()
2869 EXPECT_EQ(s.ToVreg(p0), s.ToVreg(s[0]->InputAt(0))); in TEST_F()
2870 ASSERT_EQ(1U, s[0]->OutputCount()); in TEST_F()
2871 EXPECT_EQ(s.ToVreg(n), s.ToVreg(s[0]->Output())); in TEST_F()