[Mono-bugs] [Bug 558075] Add incremental linking to MTOUCH

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Thu Aug 11 09:35:36 EDT 2011


https://bugzilla.novell.com/show_bug.cgi?id=558075

https://bugzilla.novell.com/show_bug.cgi?id=558075#c2


Sebastien Pouliot <sebastien.pouliot at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sebastien.pouliot at gmail.com

--- Comment #2 from Sebastien Pouliot <sebastien.pouliot at gmail.com> 2011-08-11 13:35:35 UTC ---
> There MUST be a way that you can cache results from steps 2 and 3 above to

For (2) not really. Once you change anything in your application we need to run
the linker again - because your change could require new types/methods/fields
that the linker previously required (and that's pretty recursive, new stuff you
need depends on yet more stuff...).

Analyzing the code for such change (and running the linker when detected) won't
save time since it means loading everything in memory and scanning (which is
what the linker already does, no time saved), trading some "linker save" time
for a "load database, check, and save it back".

Turning the linker off is an option - but (right now*) it's likely not a good
one for native/device builds [1]. That's because the linker is faster than the
later AOT operations (3 and 4). So having less code (using the linker) results
in faster builds (total time).

* However turning the linker off could become a valid option if the (full) AOT
assemblies (like the BCL) were cached. That would be a "fast-path" similar to
what's already available for the simulator (where symlinks are used when
linking is turned off). Of course that would result in larger binairies so it
will take more time to upload them...

Anyway this is an update to tell you we're still working on this :-)


[1]
http://spouliot.wordpress.com/2011/08/11/when-to-link-monotouch-applications/

-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the mono-bugs mailing list