I have a pass which operates on IR for mips16 so that I can build stubs and such for floating point.
I usually get this attribute of the call instruction getCalledFunction.
This is turning out to be null when there is a tail call. (I think this may be something new but maybe was there already).
So then what is the right way to find the function prototype for the call?
I'm guessing that maybe I should be using
Where CI is the call instruction.
Turned out that the problem is that before my IR phase ran, that some tail call optimization IR phase had run and changed the call instruction into an indirect call.
This caused me to not see it as something needing attention for mips16 floating point help and thus I did not need to save S2 in this situation
when in fact I did.
Patch is forthcoming.
This was a regression from the prolog/epilog optimization.