A registerised mips-linux port of GHC
Simon Marlow
simonmarhaskell at gmail.com
Fri Aug 25 10:54:01 EDT 2006
Thiemo Seufer wrote:
> Simon Marlow wrote:
>
>>Thiemo Seufer wrote:
>>
>>
>>>I decided to ignore the performance tuning for now and used a register
>>>mapping which is compatible to all three relevant MIPS ABIs. It uses
>>>4 callee-saved registers as R1-R4, plus 4 temporaries (caller-saved)
>>>registers as R5-R8.
>>>
>>>With the appended patch to support a registerised build of GHC 6.4.2 on
>>>Debian mips-linux I got those testsuite results:
>>>
>>>OVERALL SUMMARY for test run started at Wed Aug 23 20:12:05 BST 2006
>>> 674 total tests, which gave rise to
>>> 1883 test cases, of which
>>> 21 caused framework failures
>>> 369 were skipped
>>>
>>> 1407 expected passes
>>> 22 expected failures
>>> 0 unexpected passes
>>> 41 unexpected failures
>>>
>>>Unexpected failures:
>>> barton-mangler-bug(normal,opt,prof,threaded)
>>> cabal01(normal)
>>> cg005(prof)
>>> char001(prof)
>>> directory001(prof)
>>> driver062.2(normal)
>>> drvrun006(normal)
>>> drvrun018(opt)
>>> enum02(threaded)
>>> exceptions001(normal)
>>> ext1(prof)
>>> fed001(normal,opt,prof,threaded)
>>> ffi006(normal,opt,prof,threaded)
>>> ffi007(normal,opt,prof,threaded)
>>> ffi008(normal)
>>> finalization001(threaded)
>>> freeNames(threaded)
>>> galois_raytrace(opt,prof)
>>> ioref001(normal,prof,threaded)
>>> joao-circular(normal,opt,prof,threaded)
>>> ratio001(prof)
>>> uri001(prof)
>>> xmlish(prof)
>>
>>Congratulations, that does look pretty good. Leaving out
>>barton-mangler-bug (probably floating-point rounding differences) and the
>>ffi tests (lack of Adjustor.c support), there aren't many failures.
>>Although there don't seem to be any pattern to the remaining failures,
>>which is perhaps slightly worrying - were they all segfaults, and are they
>>repeatable?
>
>
> Hm, I think I don't understand how the testsuite works. There seems to
> be no record of the test results, and I missed to log the output.
Yes, perhaps the test driver should automatically log the output. Normally I
use tee.
I noticed something else strange about your test run: you only have 674 tests,
but the testsuite should have nearly 1400. Maybe those framework failures are
related to this.
> I looked at the driver062.2 failure, and the binary seems to work fine,
> except that there's no matching stdout file in the testsuite tarball.
> I figure it fails on all platforms that way.
>
> Also, I'm more worried about the 21 test framework failures. How can I
> find out what happened there?
Looking at the log is the only way, I'm afraid.
>
>>I've committed your patch, thanks.
>
>
> The assembler call wrapper in StgCRun has a typo which hides some bugs
> (a missing colon before the clobber list). This probably explains some
> failures, I'm doing a rebuild and a testsuite rerun with a fixed
> version of the wrapper.
So there should be a colon before "$16", right?
Cheers,
Simon
More information about the Glasgow-haskell-users
mailing list