Update stack allocation for multi-entry functions

When allocating stack space for functions, we need to make sure that
there's enough room for the incoming arguments and local variables.
Each entry point may have different arguments, so we can't just take the
number of arguments needed by any entry point.  Ideally, we would find
out which entry point requires the most space for its arguments, and use
that for stack allocation.  That's something that will come later, for
now we sum the space requirements of each entry point, which certainly
gives enough room for each entry, but wastes space.