diff --git a/mps/qa/function/131.c b/mps/qa/function/131.c index 35bd2b8c17c..0979b5f8637 100644 --- a/mps/qa/function/131.c +++ b/mps/qa/function/131.c @@ -1,6 +1,6 @@ /* TEST_HEADER - id = $HopeName: MMQA_test_function!131.c(trunk.3) $ + id = $HopeName: MMQA_test_function!131.c(trunk.4) $ summary = allocation shouldn't fail if there's garbage to collect (2) language = c link = testlib.o rankfmt.o @@ -18,6 +18,12 @@ END_HEADER #include "rankfmt.h" +#define genCOUNT (3) + +static mps_gen_param_s testChain[genCOUNT] = { + { 6000, 0.90 }, { 8000, 0.65 }, { 16000, 0.50 } }; + + void *stackpointer; mps_pool_t poolmv; @@ -32,6 +38,7 @@ static void test(void) mps_root_t root; mps_fmt_t format; + mps_chain_t chain; mps_ap_t ap, ap2; mycell *a, *b; @@ -40,24 +47,22 @@ static void test(void) int i; /* create an arena that can't grow beyond 30 M */ - cdie(mps_arena_create(&arena, mps_arena_class_vm(), (size_t) (1024*1024*40)), "create arena"); - mps_arena_commit_limit_set(arena, (size_t) (1024*1024*30)); cdie(mps_thread_reg(&thread, arena), "register thread"); - cdie(mps_root_create_reg(&root, arena, MPS_RANK_AMBIG, 0, thread, - mps_stack_scan_ambig, stackpointer, 0), "create root"); + mps_stack_scan_ambig, stackpointer, 0), + "create root"); cdie( mps_fmt_create_A(&format, arena, &fmtA), "create format"); + cdie(mps_chain_create(&chain, arena, genCOUNT, testChain), "chain_create"); - cdie( - mps_pool_create(&pool, arena, mps_class_amc(), format), - "create pool"); + die(mmqa_pool_create_chain(&pool, arena, mps_class_amc(), format, chain), + "create pool"); cdie( mps_ap_create(&ap, pool, MPS_RANK_EXACT), @@ -97,17 +102,10 @@ static void test(void) } mps_ap_destroy(ap2); - comment("Destroyed ap."); - mps_pool_destroy(pool); - comment("Destroyed pool."); - + mps_chain_destroy(chain); mps_fmt_destroy(format); - comment("Destroyed format."); - mps_thread_dereg(thread); - comment("Deregistered thread."); - mps_arena_destroy(arena); comment("Destroyed arena."); }