test/hotspot/gtest/metaspace/test_commitmask.cpp
branchstuefe-new-metaspace-branch
changeset 58683 2d5dd194c65c
parent 58099 5aeb07390c74
equal deleted inserted replaced
58651:a2d3074db7a9 58683:2d5dd194c65c
    37   CommitMask _mask;
    37   CommitMask _mask;
    38 
    38 
    39   void verify_mask() {
    39   void verify_mask() {
    40     // Note: we omit the touch test since we operate on fictional
    40     // Note: we omit the touch test since we operate on fictional
    41     // memory
    41     // memory
    42     DEBUG_ONLY(_mask.verify(true, false);)
    42     DEBUG_ONLY(_mask.verify(false);)
    43   }
    43   }
    44 
    44 
    45   // Return a random sub range within [_base.._base + word_size),
    45   // Return a random sub range within [_base.._base + word_size),
    46   // aligned to granule size
    46   // aligned to granule size
    47   const MetaWord* calc_random_subrange(size_t* p_word_size) {
    47   const MetaWord* calc_random_subrange(size_t* p_word_size) {
   256   }
   256   }
   257 
   257 
   258 
   258 
   259 };
   259 };
   260 
   260 
   261 TEST(metaspace, commit_mask_basics) {
   261 TEST_VM(metaspace, commit_mask_basics) {
   262 
   262 
   263   const MetaWord* const base = (const MetaWord*) 0x100000;
   263   const MetaWord* const base = (const MetaWord*) 0x100000;
   264 
   264 
   265   CommitMask mask1(base, Settings::commit_granule_words());
   265   CommitMask mask1(base, Settings::commit_granule_words());
   266   ASSERT_EQ(mask1.size(), (BitMap::idx_t)1);
   266   ASSERT_EQ(mask1.size(), (BitMap::idx_t)1);
   280   }
   280   }
   281   ASSERT_EQ(mask3.at(42), 1);
   281   ASSERT_EQ(mask3.at(42), 1);
   282 
   282 
   283 }
   283 }
   284 
   284 
   285 TEST(metaspace, commit_mask_small) {
   285 TEST_VM(metaspace, commit_mask_small) {
   286 
   286 
   287   const MetaWord* const base = (const MetaWord*) 0x100000;
   287   const MetaWord* const base = (const MetaWord*) 0x100000;
   288 
   288 
   289   CommitMaskTest test(base, Settings::commit_granule_words());
   289   CommitMaskTest test(base, Settings::commit_granule_words());
   290   test.test();
   290   test.test();
   291 
   291 
   292 }
   292 }
   293 
   293 
   294 TEST(metaspace, commit_mask_range) {
   294 TEST_VM(metaspace, commit_mask_range) {
   295 
   295 
   296   const MetaWord* const base = (const MetaWord*) 0x100000;
   296   const MetaWord* const base = (const MetaWord*) 0x100000;
   297   const size_t len = Settings::commit_granule_words() * 4;
   297   const size_t len = Settings::commit_granule_words() * 4;
   298   const MetaWord* const end = base + len;
   298   const MetaWord* const end = base + len;
   299   CommitMask mask(base, len);
   299   CommitMask mask(base, len);
   327   }
   327   }
   328 
   328 
   329 }
   329 }
   330 
   330 
   331 
   331 
   332 TEST(metaspace, commit_mask_random) {
   332 TEST_VM(metaspace, commit_mask_random) {
   333 
   333 
   334   for (int i = 0; i < 5; i ++) {
   334   for (int i = 0; i < 5; i ++) {
   335 
   335 
   336     // make up a range out of thin air
   336     // make up a range out of thin air
   337     const MetaWord* const base =
   337     const MetaWord* const base =