summaryrefslogtreecommitdiff
path: root/compiler/optimizing/stack_map_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/stack_map_test.cc')
-rw-r--r--compiler/optimizing/stack_map_test.cc52
1 files changed, 0 insertions, 52 deletions
diff --git a/compiler/optimizing/stack_map_test.cc b/compiler/optimizing/stack_map_test.cc
index 9ed90a4839..42f978988f 100644
--- a/compiler/optimizing/stack_map_test.cc
+++ b/compiler/optimizing/stack_map_test.cc
@@ -758,56 +758,4 @@ TEST(StackMapTest, TestDeduplicateStackMask) {
stack_map2.GetStackMaskIndex());
}
-TEST(StackMapTest, TestInvokeInfo) {
- MallocArenaPool pool;
- ArenaStack arena_stack(&pool);
- ScopedArenaAllocator allocator(&arena_stack);
- StackMapStream stream(&allocator, kRuntimeISA);
- stream.BeginMethod(32, 0, 0, 0);
-
- ArenaBitVector sp_mask(&allocator, 0, true);
- sp_mask.SetBit(1);
- stream.BeginStackMapEntry(0, 4 * kPcAlign, 0x3, &sp_mask);
- stream.AddInvoke(kSuper, 1);
- stream.EndStackMapEntry();
- stream.BeginStackMapEntry(0, 8 * kPcAlign, 0x3, &sp_mask);
- stream.AddInvoke(kStatic, 3);
- stream.EndStackMapEntry();
- stream.BeginStackMapEntry(0, 16 * kPcAlign, 0x3, &sp_mask);
- stream.AddInvoke(kDirect, 65535);
- stream.EndStackMapEntry();
-
- stream.EndMethod();
- const size_t code_info_size = stream.PrepareForFillIn();
- MemoryRegion code_info_region(allocator.Alloc(code_info_size, kArenaAllocMisc), code_info_size);
- stream.FillInCodeInfo(code_info_region);
-
- const size_t method_info_size = stream.ComputeMethodInfoSize();
- MemoryRegion method_info_region(allocator.Alloc(method_info_size, kArenaAllocMisc),
- method_info_size);
- stream.FillInMethodInfo(method_info_region);
-
- CodeInfo code_info(code_info_region);
- MethodInfo method_info(method_info_region.begin());
- ASSERT_EQ(3u, code_info.GetNumberOfStackMaps());
-
- InvokeInfo invoke1(code_info.GetInvokeInfoForNativePcOffset(4 * kPcAlign));
- InvokeInfo invoke2(code_info.GetInvokeInfoForNativePcOffset(8 * kPcAlign));
- InvokeInfo invoke3(code_info.GetInvokeInfoForNativePcOffset(16 * kPcAlign));
- InvokeInfo invoke_invalid(code_info.GetInvokeInfoForNativePcOffset(12));
- EXPECT_FALSE(invoke_invalid.IsValid()); // No entry for that index.
- EXPECT_TRUE(invoke1.IsValid());
- EXPECT_TRUE(invoke2.IsValid());
- EXPECT_TRUE(invoke3.IsValid());
- EXPECT_EQ(invoke1.GetInvokeType(), kSuper);
- EXPECT_EQ(invoke1.GetMethodIndex(method_info), 1u);
- EXPECT_EQ(invoke1.GetNativePcOffset(kRuntimeISA), 4u * kPcAlign);
- EXPECT_EQ(invoke2.GetInvokeType(), kStatic);
- EXPECT_EQ(invoke2.GetMethodIndex(method_info), 3u);
- EXPECT_EQ(invoke2.GetNativePcOffset(kRuntimeISA), 8u * kPcAlign);
- EXPECT_EQ(invoke3.GetInvokeType(), kDirect);
- EXPECT_EQ(invoke3.GetMethodIndex(method_info), 65535u);
- EXPECT_EQ(invoke3.GetNativePcOffset(kRuntimeISA), 16u * kPcAlign);
-}
-
} // namespace art