[M3devel] cost of opaque types
Dragiša Durić
dragisha at m3w.org
Wed Apr 3 15:03:31 CEST 2013
There are languages, C# and Java coming to mind… where people accept a lot more from language/compiler for various reasons.
:)
--
Dragiša Durić
dragisha at m3w.org
On Apr 3, 2013, at 10:46 AM, Jay K wrote:
> cost of opaque types
>
>
> fyi:
>
> PutI(cstr("Public.F1.a.c"), a.c);
>
>
> PutI == put_adr
> L_22_L_23 the string
> L_26_L_27 == a
> 8 is the "public offset" of c
> M_Public_L_19 globals for Public.m3
>
>
> everything else is the computation of the "public base" of a from the base of a
>
>
> actual C backend output cm3/m3-sys/m3tests/src/p2/p253/AMD64_DARWIN/Public.m3.c
>
>
> put_adr(((ADDRESS)(L_22_L_23)),((ADDRESS)(((8)+(ADDRESS)(((ADDRESS)((((ADDRESS)(L_26_L_27))+(1* /* cast_removed2: INT64 */ *((INT64*)(M3_INT64(112)+((ADDRESS)(*((ADDRESS * )(M3_INT64(176)+((ADDRESS)((ADDRESS)&M_Public_L_19)))))))))))))))));
>
>
> simplify slightly (how I wish it got printed...):
>
> put_adr(L_22_L_23,8 + L_26_L_27 + *(INT64*)(112 + *(ADDRESS*)(176 + (ADDRESS)&M_Public_L_19)));
>
>
>
> I still have to track down the whole "recompile again now that offsets are known" path.
>
>
>
> - Jay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20130403/fc009799/attachment-0002.html>
More information about the M3devel
mailing list