Lines Matching refs:thunk_offset

249   bool CheckThunk(uint32_t thunk_offset) {  in CheckThunk()  argument
251 if (output_.size() < thunk_offset + expected_code.size()) { in CheckThunk()
253 << "thunk_offset + expected_code.size() == " << (thunk_offset + expected_code.size()); in CheckThunk()
256 ArrayRef<const uint8_t> linked_code(&output_[thunk_offset], expected_code.size()); in CheckThunk()
486 uint32_t thunk_offset = CompiledCode::AlignCode( in TEST_F() local
489 thunk_offset - (last_method_offset + bl_offset_in_last_method + 4u /* PC adjustment */); in TEST_F()
495 EXPECT_TRUE(CheckThunk(thunk_offset)); in TEST_F()
579 uint32_t thunk_offset = RoundDown(method_after_thunk_header_offset - thunk_size, kArmAlignment); in TEST_F() local
580 DCHECK_EQ(thunk_offset + thunk_size + CodeAlignmentSize(thunk_offset + thunk_size), in TEST_F()
582 ASSERT_TRUE(IsAligned<kArmAlignment>(thunk_offset)); in TEST_F()
583 uint32_t diff = thunk_offset - (method1_offset + bl_offset_in_method1 + 4u /* PC adjustment */); in TEST_F()
589 CheckThunk(thunk_offset); in TEST_F()
614 uint32_t thunk_offset = CompiledCode::AlignCode( in TEST_F() local
617 thunk_offset - (last_method_offset + bl_offset_in_last_method + 4u /* PC adjustment */); in TEST_F()
623 EXPECT_TRUE(CheckThunk(thunk_offset)); in TEST_F()
675 uint32_t thunk_offset = CompiledCode::AlignCode(method_offset + kCallCode.size(), in TEST_F() local
677 uint32_t diff = thunk_offset - method_offset - kPcAdjustment; in TEST_F()
690 ASSERT_LE(6u, output_.size() - thunk_offset); in TEST_F()
691 EXPECT_EQ(ldr_pc_tr_offset, GetOutputInsn32(thunk_offset)); in TEST_F()
692 EXPECT_EQ(bkpt, GetOutputInsn16(thunk_offset + 4u)); in TEST_F()
728 uint32_t thunk_offset = GetMethodOffset(method_idx) + RoundUp(kMethodCodeSize, kArmAlignment); in TestBakerFieldWide() local
733 uint32_t bne = BneWWithOffset(GetMethodOffset(method_idx) + kLiteralOffset, thunk_offset); in TestBakerFieldWide()
742 ASSERT_GT(output_.size(), thunk_offset); in TestBakerFieldWide()
743 ASSERT_GE(output_.size() - thunk_offset, expected_thunk.size()); in TestBakerFieldWide()
744 ArrayRef<const uint8_t> compiled_thunk(output_.data() + thunk_offset, in TestBakerFieldWide()
751 size_t gray_check_offset = thunk_offset; in TestBakerFieldWide()
756 ASSERT_EQ(0xb100 | holder_reg, GetOutputInsn16(thunk_offset) & 0xfd07u); in TestBakerFieldWide()
760 ASSERT_EQ(0xf1b00f00u | (holder_reg << 16), GetOutputInsn32(thunk_offset) & 0xfbff8f00u); in TestBakerFieldWide()
761 ASSERT_EQ(0xd000u, GetOutputInsn16(thunk_offset + 4u) & 0xff00u); // BEQ in TestBakerFieldWide()
794 thunk_offset += RoundUp(expected_thunk.size(), kArmAlignment); in TestBakerFieldWide()
826 uint32_t thunk_offset = GetMethodOffset(method_idx) + RoundUp(kMethodCodeSize, kArmAlignment); in TestBakerFieldNarrow() local
834 uint32_t bne = BneWWithOffset(GetMethodOffset(method_idx) + kLiteralOffset, thunk_offset); in TestBakerFieldNarrow()
843 ASSERT_GT(output_.size(), thunk_offset); in TestBakerFieldNarrow()
844 ASSERT_GE(output_.size() - thunk_offset, expected_thunk.size()); in TestBakerFieldNarrow()
845 ArrayRef<const uint8_t> compiled_thunk(output_.data() + thunk_offset, in TestBakerFieldNarrow()
852 size_t gray_check_offset = thunk_offset; in TestBakerFieldNarrow()
857 ASSERT_EQ(0xb100 | holder_reg, GetOutputInsn16(thunk_offset) & 0xfd07u); in TestBakerFieldNarrow()
861 ASSERT_EQ(0xf1b00f00u | (holder_reg << 16), GetOutputInsn32(thunk_offset) & 0xfbff8f00u); in TestBakerFieldNarrow()
862 ASSERT_EQ(0xd000u, GetOutputInsn16(thunk_offset + 4u) & 0xff00u); // BEQ in TestBakerFieldNarrow()
895 thunk_offset += RoundUp(expected_thunk.size(), kArmAlignment); in TestBakerFieldNarrow()
1126 uint32_t thunk_offset = GetMethodOffset(method_idx) + RoundUp(kMethodCodeSize, kArmAlignment); in TEST_F() local
1130 uint32_t bne = BneWWithOffset(GetMethodOffset(method_idx) + kLiteralOffset, thunk_offset); in TEST_F()
1136 ASSERT_GT(output_.size(), thunk_offset); in TEST_F()
1137 ASSERT_GE(output_.size() - thunk_offset, expected_thunk.size()); in TEST_F()
1138 ArrayRef<const uint8_t> compiled_thunk(output_.data() + thunk_offset, in TEST_F()
1147 ASSERT_GE(output_.size() - thunk_offset, in TEST_F()
1159 EXPECT_EQ(load_lock_word, GetOutputInsn32(thunk_offset)); in TEST_F()
1168 EXPECT_EQ(tst_gray_bit_without_offset, GetOutputInsn32(thunk_offset + 4u)); in TEST_F()
1169 EXPECT_EQ(0xd100u, GetOutputInsn16(thunk_offset + 8u) & 0xff00u); // BNE in TEST_F()
1176 EXPECT_EQ(fake_dependency, GetOutputInsn32(thunk_offset + 14u)); in TEST_F()
1180 thunk_offset += RoundUp(expected_thunk.size(), kArmAlignment); in TEST_F()
1203 uint32_t thunk_offset = GetMethodOffset(method_idx) + RoundUp(kMethodCodeSize, kArmAlignment); in TEST_F() local
1207 uint32_t bne = BneWWithOffset(GetMethodOffset(method_idx) + kLiteralOffset, thunk_offset); in TEST_F()
1214 ASSERT_GT(output_.size(), thunk_offset); in TEST_F()
1215 ASSERT_GE(output_.size() - thunk_offset, expected_thunk.size()); in TEST_F()
1216 ArrayRef<const uint8_t> compiled_thunk(output_.data() + thunk_offset, in TEST_F()
1225 ASSERT_GE(output_.size() - thunk_offset, 2u); in TEST_F()
1226 ASSERT_EQ(0xb100 | root_reg, GetOutputInsn16(thunk_offset) & 0xfd07u); in TEST_F()
1228 ASSERT_GE(output_.size() - thunk_offset, 6u); in TEST_F()
1229 ASSERT_EQ(0xf1b00f00u | (root_reg << 16), GetOutputInsn32(thunk_offset) & 0xfbff8f00u); in TEST_F()
1230 ASSERT_EQ(0xd000u, GetOutputInsn16(thunk_offset + 4u) & 0xff00u); // BEQ in TEST_F()
1235 thunk_offset += RoundUp(expected_thunk.size(), kArmAlignment); in TEST_F()
1258 uint32_t thunk_offset = GetMethodOffset(method_idx) + RoundUp(kMethodCodeSize, kArmAlignment); in TEST_F() local
1262 uint32_t bne = BneWWithOffset(GetMethodOffset(method_idx) + kLiteralOffset, thunk_offset); in TEST_F()
1269 ASSERT_GT(output_.size(), thunk_offset); in TEST_F()
1270 ASSERT_GE(output_.size() - thunk_offset, expected_thunk.size()); in TEST_F()
1271 ArrayRef<const uint8_t> compiled_thunk(output_.data() + thunk_offset, in TEST_F()
1279 ASSERT_GE(output_.size() - thunk_offset, 2u); in TEST_F()
1280 ASSERT_EQ(0xb100 | root_reg, GetOutputInsn16(thunk_offset) & 0xfd07u); in TEST_F()
1284 thunk_offset += RoundUp(expected_thunk.size(), kArmAlignment); in TEST_F()