[Mono-list] METHOD_HEADER_TINY_FORMAT1
Miguel de Icaza
miguel@ximian.com
20 Jul 2001 16:13:52 -0400
> Yes. I just got back to this. I modified raw_buffer_load() to fail the
> mmap() call. The alternate code which allocs some memory and loads it with
> read() works fine. The assembly loads OK and the SIGSEGV is gone.
>
> However, for the following C# program, compiled with csc 7.00.9254,
Mhm. I wonder why mmap succeeds, but does not actually work. Seems
like mmap does not work correctly on cygwin.
> The current nonfunctioning code agrees with the Tiny Format table spec in
> the ECMA draft Partition II Metadata, section 25.2.2. But that spec looks
> broken. How can you have a format field which is 2 bits wide in some cases
> and 3 in others? Here the 3 LSBs are 0x6, which matches both TINY (0x6&0b11
> == 0x2) and TINY1 (0x6&0b111 == 0x6).
You are correct. The idea is to compare against a value, and there
are three possible values TINY, TINY1 and FAT. It would seem sensible
to use three values from 0 to 3 in there. So I think some detective
work to see what Beta2 actually produces is needed here.
I will write a few tests shortly to track this bad boy down.
> What is your process for reporting spec issues to ECMA and/or Microsoft?
You can email Sam Ruby (rubys@us.ibm.com).
Miguel.