declare function MV_CFF<A..., R...>(vmFunction: (A...) -> R..., enableExpressionDecomposition?: boolean): (A...) -> R...

will force the CFF pass onto the passed function. Expression decomposition is enabled by default, but can be disabled with the second argument.

Valid Usage

MV_CFF(function()
    for i = 0, 10 do
        print('this is flattened!', i)
    end
    MV_OMIT_CFF(function() print('this isnt') end)()
end)()

-- passing false as a second argument will disable expression decomposition, leading to much smaller output
MV_CFF(function()
    for i = 0, 10 do
        print('this is flattened!', i)
    end
    MV_OMIT_CFF(function() print('this isnt') end)()
end, false)()