Lines Matching refs:row_sp

174   UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(0);  in TEST_F()  local
175 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
176 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
177 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
178 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
180 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
185 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
186 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
187 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
188 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
189 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
191 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
196 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
197 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
198 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
199 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
200 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
202 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
207 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
208 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
209 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
210 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
211 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
213 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
250 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(0); in TEST_F() local
251 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
252 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
253 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
254 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
256 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
261 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
262 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
263 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
264 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
265 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
267 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
272 row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F()
273 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
274 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_ebp); in TEST_F()
275 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
276 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
278 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
283 row_sp = unwind_plan.GetRowForFunctionOffset(6); in TEST_F()
284 EXPECT_EQ(6ull, row_sp->GetOffset()); in TEST_F()
285 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
286 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
287 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
289 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
390 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(17); in TEST_F() local
392 EXPECT_EQ(17ull, row_sp->GetOffset()); in TEST_F()
393 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
394 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
395 EXPECT_EQ(14496, row_sp->GetCFAValue().GetOffset()); in TEST_F()
397 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
401 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
405 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
409 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
413 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r13, regloc)); in TEST_F()
417 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r12, regloc)); in TEST_F()
421 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
428 row_sp = unwind_plan.GetRowForFunctionOffset(34); in TEST_F()
430 EXPECT_EQ(34ull, row_sp->GetOffset()); in TEST_F()
431 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
432 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
433 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
435 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
443 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rax, regloc)); in TEST_F()
444 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
445 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rcx, regloc)); in TEST_F()
446 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rdx, regloc)); in TEST_F()
447 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
448 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rsi, regloc)); in TEST_F()
449 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rdi, regloc)); in TEST_F()
450 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r8, regloc)); in TEST_F()
451 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r9, regloc)); in TEST_F()
452 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r10, regloc)); in TEST_F()
453 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r11, regloc)); in TEST_F()
454 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r12, regloc)); in TEST_F()
455 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r13, regloc)); in TEST_F()
456 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
457 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
654 UnwindPlan::RowSP row_sp; in TEST_F() local
660 row_sp = unwind_plan.GetRowForFunctionOffset(10); in TEST_F()
661 EXPECT_EQ(10ull, row_sp->GetOffset()); in TEST_F()
662 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
663 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
664 EXPECT_EQ(14464, row_sp->GetCFAValue().GetOffset()); in TEST_F()
668 row_sp = unwind_plan.GetRowForFunctionOffset(15); in TEST_F()
669 EXPECT_EQ(15ull, row_sp->GetOffset()); in TEST_F()
670 EXPECT_EQ(14468, row_sp->GetCFAValue().GetOffset()); in TEST_F()
674 row_sp = unwind_plan.GetRowForFunctionOffset(16); in TEST_F()
675 EXPECT_EQ(16ull, row_sp->GetOffset()); in TEST_F()
676 EXPECT_EQ(14464, row_sp->GetCFAValue().GetOffset()); in TEST_F()
680 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
684 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
688 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
692 EXPECT_TRUE(row_sp->GetRegisterInfo(k_edi, regloc)); in TEST_F()
696 EXPECT_TRUE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
705 row_sp = unwind_plan.GetRowForFunctionOffset(23); in TEST_F()
706 EXPECT_EQ(23ull, row_sp->GetOffset()); in TEST_F()
707 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
708 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
709 EXPECT_EQ(14472, row_sp->GetCFAValue().GetOffset()); in TEST_F()
713 row_sp = unwind_plan.GetRowForFunctionOffset(24); in TEST_F()
714 EXPECT_EQ(24ull, row_sp->GetOffset()); in TEST_F()
715 EXPECT_EQ(14476, row_sp->GetCFAValue().GetOffset()); in TEST_F()
719 row_sp = unwind_plan.GetRowForFunctionOffset(28); in TEST_F()
720 EXPECT_EQ(28ull, row_sp->GetOffset()); in TEST_F()
721 EXPECT_EQ(14480, row_sp->GetCFAValue().GetOffset()); in TEST_F()
725 row_sp = unwind_plan.GetRowForFunctionOffset(36); in TEST_F()
726 EXPECT_EQ(36ull, row_sp->GetOffset()); in TEST_F()
727 EXPECT_EQ(14464, row_sp->GetCFAValue().GetOffset()); in TEST_F()
732 row_sp = unwind_plan.GetRowForFunctionOffset(47); in TEST_F()
733 EXPECT_EQ(47ull, row_sp->GetOffset()); in TEST_F()
734 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
735 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
736 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
738 EXPECT_TRUE(row_sp->GetRegisterInfo(k_eip, regloc)); in TEST_F()
742 EXPECT_TRUE(row_sp->GetRegisterInfo(k_esp, regloc)); in TEST_F()
748 EXPECT_FALSE(row_sp->GetRegisterInfo(k_eax, regloc)); in TEST_F()
749 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
750 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ecx, regloc)); in TEST_F()
751 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edx, regloc)); in TEST_F()
752 EXPECT_FALSE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
753 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edi, regloc)); in TEST_F()
754 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
810 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(13); in TEST_F() local
812 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
813 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
814 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
815 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
817 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
823 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rax, regloc)); in TEST_F()
824 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
825 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rcx, regloc)); in TEST_F()
826 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rdx, regloc)); in TEST_F()
827 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
828 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rsi, regloc)); in TEST_F()
829 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rdi, regloc)); in TEST_F()
830 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r8, regloc)); in TEST_F()
831 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r9, regloc)); in TEST_F()
832 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r10, regloc)); in TEST_F()
833 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r11, regloc)); in TEST_F()
834 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r12, regloc)); in TEST_F()
835 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r13, regloc)); in TEST_F()
836 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
837 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
842 row_sp = unwind_plan.GetRowForFunctionOffset(22); in TEST_F()
844 EXPECT_EQ(22ull, row_sp->GetOffset()); in TEST_F()
845 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
846 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
847 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
849 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
919 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F() local
921 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
922 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
923 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
924 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
929 row_sp = unwind_plan.GetRowForFunctionOffset(8); in TEST_F()
930 EXPECT_EQ(8ull, row_sp->GetOffset()); in TEST_F()
931 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
932 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
933 EXPECT_EQ(20, row_sp->GetCFAValue().GetOffset()); in TEST_F()
938 row_sp = unwind_plan.GetRowForFunctionOffset(9); in TEST_F()
939 EXPECT_EQ(9ull, row_sp->GetOffset()); in TEST_F()
940 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
941 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
942 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
946 EXPECT_FALSE(row_sp->GetRegisterInfo(k_eax, regloc)); in TEST_F()
947 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
948 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ecx, regloc)); in TEST_F()
949 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edx, regloc)); in TEST_F()
950 EXPECT_FALSE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
951 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edi, regloc)); in TEST_F()
952 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
957 row_sp = unwind_plan.GetRowForFunctionOffset(34); in TEST_F()
958 EXPECT_EQ(34ull, row_sp->GetOffset()); in TEST_F()
959 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
960 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
961 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
966 UnwindPlan::RowSP row_sp; in TEST_F() local
980 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
982 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
983 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
984 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
985 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
987 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
995 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
997 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
998 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
999 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1000 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1002 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
1009 UnwindPlan::RowSP row_sp; in TEST_F() local
1024 row_sp = unwind_plan.GetRowForFunctionOffset(5); in TEST_F()
1025 EXPECT_EQ(5ull, row_sp->GetOffset()); in TEST_F()
1026 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1027 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1028 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1030 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
1031 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
1032 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1033 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1034 EXPECT_EQ(24, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1040 row_sp = unwind_plan.GetRowForFunctionOffset(5); in TEST_F()
1041 EXPECT_EQ(5ull, row_sp->GetOffset()); in TEST_F()
1042 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1043 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1044 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1046 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
1047 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
1048 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1049 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1050 EXPECT_EQ(12, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1058 UnwindPlan::RowSP row_sp; in TEST_F() local
1072 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1075 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
1081 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1084 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
1089 UnwindPlan::RowSP row_sp; in TEST_F() local
1105 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1107 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1108 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1109 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1110 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1116 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1117 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1118 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1119 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1120 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1122 row_sp = unwind_plan.GetRowForFunctionOffset(10); in TEST_F()
1123 EXPECT_EQ(10ull, row_sp->GetOffset()); in TEST_F()
1124 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1125 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1126 EXPECT_EQ(12, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1128 row_sp = unwind_plan.GetRowForFunctionOffset(12); in TEST_F()
1129 EXPECT_EQ(12ull, row_sp->GetOffset()); in TEST_F()
1130 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1131 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1132 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1137 UnwindPlan::RowSP row_sp; in TEST_F() local
1151 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1153 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1154 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1155 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1156 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1158 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
1165 UnwindPlan::RowSP row_sp; in TEST_F() local
1179 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1181 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1182 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1183 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1184 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1186 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
1193 UnwindPlan::RowSP row_sp; in TEST_F() local
1207 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1209 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1210 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1211 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1212 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1214 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r13, regloc)); in TEST_F()
1221 UnwindPlan::RowSP row_sp; in TEST_F() local
1235 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1237 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1238 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1239 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1240 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1242 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r12, regloc)); in TEST_F()
1249 UnwindPlan::RowSP row_sp; in TEST_F() local
1263 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1265 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1266 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1267 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1268 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1270 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
1280 UnwindPlan::RowSP row_sp; in TEST_F() local
1295 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1296 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1297 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1298 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1299 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1301 EXPECT_FALSE(row_sp->GetRegisterInfo(k_eax, regloc)); in TEST_F()
1309 UnwindPlan::RowSP row_sp; in TEST_F() local
1324 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1325 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1326 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1327 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1328 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1330 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ecx, regloc)); in TEST_F()
1338 UnwindPlan::RowSP row_sp; in TEST_F() local
1353 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1354 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1355 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1356 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1357 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1359 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edx, regloc)); in TEST_F()
1364 UnwindPlan::RowSP row_sp; in TEST_F() local
1379 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1380 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1381 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1382 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1383 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1385 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
1392 UnwindPlan::RowSP row_sp; in TEST_F() local
1407 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1408 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1409 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1410 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1411 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1413 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
1420 UnwindPlan::RowSP row_sp; in TEST_F() local
1434 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1436 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1437 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1438 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1439 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1441 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
1448 UnwindPlan::RowSP row_sp; in TEST_F() local
1463 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1464 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1465 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1466 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1467 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1469 EXPECT_TRUE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
1476 UnwindPlan::RowSP row_sp; in TEST_F() local
1491 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
1492 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
1493 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
1494 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1495 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1497 EXPECT_TRUE(row_sp->GetRegisterInfo(k_edi, regloc)); in TEST_F()
1504 UnwindPlan::RowSP row_sp; in TEST_F() local
1518 row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F()
1520 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
1521 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
1522 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1523 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1535 row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F()
1536 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
1537 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
1538 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1539 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1551 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1552 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1553 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_ebp); in TEST_F()
1554 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1555 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1567 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1568 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1569 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_ebp); in TEST_F()
1570 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1571 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1576 UnwindPlan::RowSP row_sp; in TEST_F() local
1591 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
1592 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
1593 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1594 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1595 EXPECT_EQ(264, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1607 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1608 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1609 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1610 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1611 EXPECT_EQ(24, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1616 UnwindPlan::RowSP row_sp; in TEST_F() local
1631 row_sp = unwind_plan.GetRowForFunctionOffset(6); in TEST_F()
1632 EXPECT_EQ(6ull, row_sp->GetOffset()); in TEST_F()
1633 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1634 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1635 EXPECT_EQ(260, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1647 row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F()
1648 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
1649 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1650 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1651 EXPECT_EQ(20, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1656 UnwindPlan::RowSP row_sp; in TEST_F() local
1671 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
1672 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
1673 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1674 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1675 EXPECT_EQ(8 - 256, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1687 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1688 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1689 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1690 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1691 EXPECT_EQ(8 - 16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1696 UnwindPlan::RowSP row_sp; in TEST_F() local
1711 row_sp = unwind_plan.GetRowForFunctionOffset(6); in TEST_F()
1712 EXPECT_EQ(6ull, row_sp->GetOffset()); in TEST_F()
1713 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1714 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1715 EXPECT_EQ(4 - 256, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1727 row_sp = unwind_plan.GetRowForFunctionOffset(3); in TEST_F()
1728 EXPECT_EQ(3ull, row_sp->GetOffset()); in TEST_F()
1729 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1730 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1731 EXPECT_EQ(4 - 16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1738 UnwindPlan::RowSP row_sp; in TEST_F() local
1754 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1755 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1756 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1757 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1758 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1759 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
1764 UnwindPlan::RowSP row_sp; in TEST_F() local
1780 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1781 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1782 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1783 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1784 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1785 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
1790 UnwindPlan::RowSP row_sp; in TEST_F() local
1806 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1807 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1808 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1809 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1810 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1811 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r12, regloc)); in TEST_F()
1816 UnwindPlan::RowSP row_sp; in TEST_F() local
1832 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1833 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1834 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1835 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1836 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1837 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r13, regloc)); in TEST_F()
1842 UnwindPlan::RowSP row_sp; in TEST_F() local
1858 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1859 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1860 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1861 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1862 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1863 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
1868 UnwindPlan::RowSP row_sp; in TEST_F() local
1884 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1885 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1886 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1887 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1888 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1889 EXPECT_FALSE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
1894 UnwindPlan::RowSP row_sp; in TEST_F() local
1910 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1911 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1912 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1913 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1914 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1915 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
1920 UnwindPlan::RowSP row_sp; in TEST_F() local
1936 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1937 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1938 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1939 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1940 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1941 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
1946 UnwindPlan::RowSP row_sp; in TEST_F() local
1962 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
1963 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
1964 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1965 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1966 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1967 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
1972 UnwindPlan::RowSP row_sp; in TEST_F() local
1988 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
1989 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
1990 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
1991 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
1992 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
1993 EXPECT_FALSE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
1998 UnwindPlan::RowSP row_sp; in TEST_F() local
2014 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
2015 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
2016 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2017 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2018 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2019 EXPECT_FALSE(row_sp->GetRegisterInfo(k_edi, regloc)); in TEST_F()
2026 UnwindPlan::RowSP row_sp; in TEST_F() local
2049 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
2050 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
2051 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2052 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2053 EXPECT_EQ(20, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2055 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
2056 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
2057 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2058 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2059 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2064 UnwindPlan::RowSP row_sp; in TEST_F() local
2081 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
2082 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
2083 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2084 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2085 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2086 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
2091 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
2092 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
2093 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2094 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2095 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2096 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
2105 UnwindPlan::RowSP row_sp; in TEST_F() local
2120 row_sp = unwind_plan.GetRowForFunctionOffset(5); in TEST_F()
2121 EXPECT_EQ(5ull, row_sp->GetOffset()); in TEST_F()
2122 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2123 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2124 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2125 EXPECT_FALSE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
2130 UnwindPlan::RowSP row_sp; in TEST_F() local
2149 row_sp = unwind_plan.GetRowForFunctionOffset(19); in TEST_F()
2150 EXPECT_EQ(19ull, row_sp->GetOffset()); in TEST_F()
2151 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2152 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2154 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r14, regloc)); in TEST_F()
2158 EXPECT_TRUE(row_sp->GetRegisterInfo(k_r15, regloc)); in TEST_F()
2162 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rbx, regloc)); in TEST_F()
2169 UnwindPlan::RowSP row_sp; in TEST_F() local
2187 row_sp = unwind_plan.GetRowForFunctionOffset(12); in TEST_F()
2188 EXPECT_EQ(12ull, row_sp->GetOffset()); in TEST_F()
2189 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2190 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2192 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebx, regloc)); in TEST_F()
2196 EXPECT_TRUE(row_sp->GetRegisterInfo(k_esi, regloc)); in TEST_F()
2203 UnwindPlan::RowSP row_sp; in TEST_F() local
2232 row_sp = std::make_shared<UnwindPlan::Row>(); in TEST_F()
2235 row_sp->SetOffset(0); in TEST_F()
2236 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rsp, 8); in TEST_F()
2239 row_sp->SetRegisterInfo(k_rip, regloc); in TEST_F()
2241 unwind_plan.AppendRow(row_sp); in TEST_F()
2245 *new_row = *row_sp.get(); in TEST_F()
2246 row_sp.reset(new_row); in TEST_F()
2249 row_sp->SetOffset(1); in TEST_F()
2250 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rsp, 16); in TEST_F()
2252 row_sp->SetRegisterInfo(k_rbp, regloc); in TEST_F()
2253 unwind_plan.AppendRow(row_sp); in TEST_F()
2257 *new_row = *row_sp.get(); in TEST_F()
2258 row_sp.reset(new_row); in TEST_F()
2261 row_sp->SetOffset(4); in TEST_F()
2262 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rsp, 16); in TEST_F()
2263 unwind_plan.AppendRow(row_sp); in TEST_F()
2271 row_sp = unwind_plan.GetRowForFunctionOffset(5); in TEST_F()
2272 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
2275 row_sp = unwind_plan.GetRowForFunctionOffset(12); in TEST_F()
2276 EXPECT_EQ(12ull, row_sp->GetOffset()); in TEST_F()
2277 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2278 EXPECT_EQ(152, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2281 row_sp = unwind_plan.GetRowForFunctionOffset(13); in TEST_F()
2282 EXPECT_EQ(12ull, row_sp->GetOffset()); in TEST_F()
2286 row_sp = unwind_plan.GetRowForFunctionOffset(20); in TEST_F()
2287 EXPECT_EQ(20ull, row_sp->GetOffset()); in TEST_F()
2288 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2289 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2294 UnwindPlan::RowSP row_sp; in TEST_F() local
2319 row_sp = std::make_shared<UnwindPlan::Row>(); in TEST_F()
2322 row_sp->SetOffset(0); in TEST_F()
2323 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rsp, 8); in TEST_F()
2326 row_sp->SetRegisterInfo(k_rip, regloc); in TEST_F()
2328 unwind_plan.AppendRow(row_sp); in TEST_F()
2332 *new_row = *row_sp.get(); in TEST_F()
2333 row_sp.reset(new_row); in TEST_F()
2336 row_sp->SetOffset(1); in TEST_F()
2337 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rsp, 16); in TEST_F()
2339 row_sp->SetRegisterInfo(k_rbp, regloc); in TEST_F()
2340 unwind_plan.AppendRow(row_sp); in TEST_F()
2344 *new_row = *row_sp.get(); in TEST_F()
2345 row_sp.reset(new_row); in TEST_F()
2348 row_sp->SetOffset(4); in TEST_F()
2349 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_rbp, 16); in TEST_F()
2350 unwind_plan.AppendRow(row_sp); in TEST_F()
2356 row_sp = unwind_plan.GetRowForFunctionOffset(6); in TEST_F()
2357 EXPECT_EQ(6ull, row_sp->GetOffset()); in TEST_F()
2358 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2359 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2372 UnwindPlan::RowSP row_sp; in TEST_F() local
2397 row_sp = std::make_shared<UnwindPlan::Row>(); in TEST_F()
2400 row_sp->SetOffset(0); in TEST_F()
2401 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_esp, 4); in TEST_F()
2404 row_sp->SetRegisterInfo(k_eip, regloc); in TEST_F()
2406 unwind_plan.AppendRow(row_sp); in TEST_F()
2410 *new_row = *row_sp.get(); in TEST_F()
2411 row_sp.reset(new_row); in TEST_F()
2414 row_sp->SetOffset(1); in TEST_F()
2415 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_esp, 8); in TEST_F()
2417 row_sp->SetRegisterInfo(k_ebp, regloc); in TEST_F()
2418 unwind_plan.AppendRow(row_sp); in TEST_F()
2422 *new_row = *row_sp.get(); in TEST_F()
2423 row_sp.reset(new_row); in TEST_F()
2426 row_sp->SetOffset(3); in TEST_F()
2427 row_sp->GetCFAValue().SetIsRegisterPlusOffset(k_ebp, 8); in TEST_F()
2428 unwind_plan.AppendRow(row_sp); in TEST_F()
2434 row_sp = unwind_plan.GetRowForFunctionOffset(5); in TEST_F()
2435 EXPECT_EQ(5ull, row_sp->GetOffset()); in TEST_F()
2436 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
2437 EXPECT_EQ(4, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2454 UnwindPlan::RowSP row_sp; in TEST_F() local
2471 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
2472 EXPECT_EQ(2ull, row_sp->GetOffset()); in TEST_F()
2473 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
2474 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2475 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2477 EXPECT_TRUE(row_sp->GetRegisterInfo(k_ebp, regloc)); in TEST_F()
2486 row_sp = unwind_plan.GetRowForFunctionOffset(2); in TEST_F()
2487 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
2488 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2489 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2490 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2492 EXPECT_FALSE(row_sp->GetRegisterInfo(k_rbp, regloc)); in TEST_F()
2696 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(0); in TEST_F() local
2697 EXPECT_EQ(0ull, row_sp->GetOffset()); in TEST_F()
2698 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2699 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2700 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2702 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2707 row_sp = unwind_plan.GetRowForFunctionOffset(1); in TEST_F()
2708 EXPECT_EQ(1ull, row_sp->GetOffset()); in TEST_F()
2709 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2710 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2711 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2713 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2718 row_sp = unwind_plan.GetRowForFunctionOffset(4); in TEST_F()
2719 EXPECT_EQ(4ull, row_sp->GetOffset()); in TEST_F()
2720 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2721 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2722 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2724 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2729 row_sp = unwind_plan.GetRowForFunctionOffset(7); in TEST_F()
2730 EXPECT_EQ(7ull, row_sp->GetOffset()); in TEST_F()
2731 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2732 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2733 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2735 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2740 row_sp = unwind_plan.GetRowForFunctionOffset(8); in TEST_F()
2741 EXPECT_EQ(8ull, row_sp->GetOffset()); in TEST_F()
2742 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2743 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2744 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2746 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2751 row_sp = unwind_plan.GetRowForFunctionOffset(11); in TEST_F()
2752 EXPECT_EQ(11ull, row_sp->GetOffset()); in TEST_F()
2753 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2754 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2755 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2757 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2762 row_sp = unwind_plan.GetRowForFunctionOffset(12); in TEST_F()
2763 EXPECT_EQ(12ull, row_sp->GetOffset()); in TEST_F()
2764 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2765 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2766 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2768 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2773 row_sp = unwind_plan.GetRowForFunctionOffset(15); in TEST_F()
2774 EXPECT_EQ(15ull, row_sp->GetOffset()); in TEST_F()
2775 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2776 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2777 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2779 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2784 row_sp = unwind_plan.GetRowForFunctionOffset(18); in TEST_F()
2785 EXPECT_EQ(18ull, row_sp->GetOffset()); in TEST_F()
2786 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2787 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2788 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2790 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2795 row_sp = unwind_plan.GetRowForFunctionOffset(21); in TEST_F()
2796 EXPECT_EQ(21ull, row_sp->GetOffset()); in TEST_F()
2797 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2798 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2799 EXPECT_EQ(8, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2801 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2806 row_sp = unwind_plan.GetRowForFunctionOffset(24); in TEST_F()
2807 EXPECT_EQ(24ull, row_sp->GetOffset()); in TEST_F()
2808 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2809 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2810 EXPECT_EQ(16, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2812 EXPECT_TRUE(row_sp->GetRegisterInfo(k_rip, regloc)); in TEST_F()
2861 UnwindPlan::RowSP row_sp = unwind_plan.GetRowForFunctionOffset(16); in TEST_F() local
2862 EXPECT_EQ(16ull, row_sp->GetOffset()); in TEST_F()
2863 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
2864 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2865 EXPECT_EQ(wordsize, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2870 row_sp = unwind_plan.GetRowForFunctionOffset(18); in TEST_F()
2871 EXPECT_EQ(18ull, row_sp->GetOffset()); in TEST_F()
2872 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_ebp); in TEST_F()
2873 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2874 EXPECT_EQ(wordsize * 2, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2879 row_sp = unwind_plan.GetRowForFunctionOffset(27); in TEST_F()
2880 EXPECT_EQ(27ull, row_sp->GetOffset()); in TEST_F()
2881 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_ebp); in TEST_F()
2882 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2883 EXPECT_EQ(wordsize * 2, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2888 row_sp = unwind_plan.GetRowForFunctionOffset(33); in TEST_F()
2889 EXPECT_EQ(33ull, row_sp->GetOffset()); in TEST_F()
2890 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_esp); in TEST_F()
2891 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2892 EXPECT_EQ(wordsize, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2903 row_sp = unwind_plan.GetRowForFunctionOffset(16); in TEST_F()
2904 EXPECT_EQ(16ull, row_sp->GetOffset()); in TEST_F()
2905 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2906 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2907 EXPECT_EQ(wordsize, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2912 row_sp = unwind_plan.GetRowForFunctionOffset(18); in TEST_F()
2913 EXPECT_EQ(18ull, row_sp->GetOffset()); in TEST_F()
2914 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2915 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2916 EXPECT_EQ(wordsize * 2, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2921 row_sp = unwind_plan.GetRowForFunctionOffset(27); in TEST_F()
2922 EXPECT_EQ(27ull, row_sp->GetOffset()); in TEST_F()
2923 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rbp); in TEST_F()
2924 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2925 EXPECT_EQ(wordsize * 2, row_sp->GetCFAValue().GetOffset()); in TEST_F()
2930 row_sp = unwind_plan.GetRowForFunctionOffset(33); in TEST_F()
2931 EXPECT_EQ(33ull, row_sp->GetOffset()); in TEST_F()
2932 EXPECT_TRUE(row_sp->GetCFAValue().GetRegisterNumber() == k_rsp); in TEST_F()
2933 EXPECT_TRUE(row_sp->GetCFAValue().IsRegisterPlusOffset() == true); in TEST_F()
2934 EXPECT_EQ(wordsize, row_sp->GetCFAValue().GetOffset()); in TEST_F()