From 0d79158b3bcefd51b92bd70cde69d3a80dcb77b8 Mon Sep 17 00:00:00 2001 From: Helmut Eller Date: Mon, 17 Nov 2025 20:57:18 +0100 Subject: [PATCH] * mps/code/poolamc.c (AMCBufInit): Accept optional MPS_KEY_GEN arg. --- mps/code/poolamc.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/mps/code/poolamc.c b/mps/code/poolamc.c index b712ce52370..d1e6960fca2 100644 --- a/mps/code/poolamc.c +++ b/mps/code/poolamc.c @@ -519,8 +519,13 @@ static Res AMCBufInit(Buffer buffer, Pool pool, Bool isMutator, ArgList args) amcbuf = CouldBeA(amcBuf, buffer); if (BufferIsMutator(buffer)) { - /* Set up the buffer to be allocating in the nursery. */ - amcbuf->gen = amc->nursery; + if (ArgPick(&arg, args, MPS_KEY_GEN)) { + unsigned gen = arg.val.u; + amcbuf->gen = amc->gen[gen]; + } else { + /* Set up the buffer to be allocating in the nursery. */ + amcbuf->gen = amc->nursery; + } } else { /* No gen yet -- see . */ amcbuf->gen = NULL;