1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 03:28:20 +02:00

Use lifetime extension for mixin results

This commit is contained in:
Brian Fiete 2022-06-16 07:21:19 -07:00
parent 1639542fed
commit ccb1646990
12 changed files with 105 additions and 44 deletions

View file

@ -300,6 +300,12 @@ void BeInliner::Visit(BeLifetimeEndInst* lifetimeEndInst)
destlifetimeEndInst->mPtr = Remap(lifetimeEndInst->mPtr);
}
void BeInliner::Visit(BeLifetimeSoftEndInst* lifetimeEndInst)
{
auto destlifetimeEndInst = AllocInst(lifetimeEndInst);
destlifetimeEndInst->mPtr = Remap(lifetimeEndInst->mPtr);
}
void BeInliner::Visit(BeLifetimeFenceInst* lifetimeFenceInst)
{
auto destlifetimeFenceInst = AllocInst(lifetimeFenceInst);
@ -2344,6 +2350,7 @@ String BeModule::ToString(BeFunction* wantFunc)
DISPLAY_INST1(BeAliasValueInst, "aliasvalue", mPtr);
DISPLAY_INST1(BeLifetimeStartInst, "lifetime.start", mPtr);
DISPLAY_INST1(BeLifetimeEndInst, "lifetime.end", mPtr);
DISPLAY_INST1(BeLifetimeSoftEndInst, "lifetime.softEnd", mPtr);
DISPLAY_INST2(BeLifetimeFenceInst, "lifetime.fence", mFenceBlock, mPtr);
DISPLAY_INST0(BeValueScopeStartInst, "valueScope.start");
DISPLAY_INST1(BeValueScopeRetainInst, "valueScope.retain", mValue);