[M3devel] Open CM3 regression tests
Tony Hosking
hosking at cs.purdue.edu
Sun Jan 27 22:31:22 CET 2008
It is the *front* end that compiles small sets into word operations.
The backend doesn't even see small sets. So, this suggests that the
small sets are failing due to some interaction between the front end
and back end.
On Jan 27, 2008, at 3:54 PM, Olaf Wagner wrote:
> Quoting Tony Hosking <hosking at cs.purdue.edu>:
>
>> Are your sets larger than a single word? The M3 frontend compiles
>> small sets (elements <= BITSIZE(Word.T)) differently from large
>> (elements > BITSIZE(Word.T)). The out-of-line set operations are
>> only
>> for large sets.
>
> These are small sets. There are other tests for large sets, which seem
> to succeed.
>
> So obviously the problem is in the cm3cg backend, as in m3middle
> set_compare will only write
>
> Cmd (u, OpName [op]);
> Int (u, s);
> TName (u, t);
>
> which then gets read by the actual code generator.
> I guess one of you guys will be much faster tracking this down
> through the gcc tree construction and manipulation code. It's been
> several years that I have had a look at that.
>
> Olaf
> --
> Olaf Wagner -- elego Software Solutions GmbH
> Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin,
> Germany
> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23
> 45 86 95
> http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz:
> Berlin
> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr:
> DE163214194
>
More information about the M3devel
mailing list