Jeff Clites <[EMAIL PROTECTED]> wrote:
> I tracked down how I3 was getting set, even though from the pasm it
> looks like nothing should be changing it. It turns out to be a side
> effect of the use of NCI in the threading implementation; the problem
> wasn't showing up for you since you have CAN_BUILD_CALL_FRAMES defined
> (but I don't). So I have a patch below which avoids setting I3 to 1 if
> the return value (in P5) is null--the generated NCI stubs were setting
> I3 to 1 for functions whose signatures indicate that they return PMCs,
> even if there was no PMC returned. (With this patch, the script I
> posted works, and the nci.t tests continue to pass.)

I'm not sure, if your patch is totally correct, because the P5 register
is still changed. Its the problem if we should trust the signature
(which has a P-return value) or the value of I3 from the return
signature.

Anyway, applied

Thanks,
leo


Reply via email to