|
From: Donal K. F. <don...@ma...> - 2017-05-29 14:52:46
|
On 29/05/2017 04:51, Kevin Kenny wrote:
> (2) 'mrtest::*' is hanging in the specialization phase for some reason.
> I suspect that there's still some line of code lurking about that's
> failing to account for the callframe arg on 'invoke'. I'll track this
> one down.
A teeny bit of trivial instrumentation in computeTypes says that the
while loop is going back and forth between these work packets:
0 ::mrtest::calc -1879244801
0 ::mrtest::fibo -1879244801
Now, it's trivial to detect that this is what is going wrong, but I'm
not sure what to do with the detection or why the failure might be
occurring. The simple-minded instrumentation I added indicates that
we're currently analysing many procedures far more than I'd expect; over
a hundred times in the case of “::linesearch::getAllLines1 -1879244801”
(and a little less with [getAllLines2]). I'm guessing this has to do
with the calling of [::linesearch::collinear] from within several nested
loops, but I'm not clear why this would be so.
I've put the instrumentation I was using on the
dkf-specializer-instrumentation branch, but that's mostly so you can see
what I was looking at; I didn't write it to be anything other than
intrusive and noisy. ;-)
Donal.
|