8template<
typename rT,
typename... Ts>
9using ArbFn_t = rT (*)(Ts...);
11template<
typename rT,
typename... Ts>
12rT RunFnOnStack(ArbFn_t<rT, Ts...> fn, uint32_t *src, uint32_t *end, Ts... args)
14 uint32_t StackFunc[(((uint32_t)end) - ((uint32_t)src)) / 4 + 1];
15 ArbFn_t<rT, Ts...> pFn = (ArbFn_t<rT, Ts...>)(((uint32_t)StackFunc) | 1);
16 uint32_t *dst = StackFunc;