comp.lang.ada
 help / color / mirror / Atom feed
From: gautier_niouzes@hotmail.com
Subject: Re: Ada interacting with Windows 8.1+ GUI
Date: Fri, 26 Oct 2018 02:39:27 -0700 (PDT)
Date: 2018-10-26T02:39:27-07:00	[thread overview]
Message-ID: <a52ba96d-cc02-4688-8b22-6e71336bbd46@googlegroups.com> (raw)
In-Reply-To: <lyin1pjca1.fsf@pushface.org>

Am Freitag, 26. Oktober 2018 11:19:24 UTC+2 schrieb Simon Wright:

> You can compile with -ffunction-sections -fdata-sections which say each
> subprogram/data object resp. is to have its own section. If your linker
> supports (the equivalent of) -gc-sections. linking with it means that
> only the used sections get linked. This is fine for (arm-eabi) embedded
> systems & (probably) Linux. which use GNU ld, but not on macOS. Can't
> say for Windows.

It does something visible in terms of executable size.

> GNAT provides gnatelim, which analyses your code and (?) regenerates it
> without the unused objects. No idea how well this works.

gnatelim produces a file with a list of pragmata like:
pragma Eliminate (Zip, Traverse, Source_Location => "zip.adb:514");

On the next build GNAT will see the subprogram's code as blank lines.
gnatelim reduces further the executable size (on Windows; which means that -gc-sections is not fully efficient). The downside is that the list is quickly outdated, you need to rebuild it often.

  reply	other threads:[~2018-10-26  9:39 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-09 14:42 Ada interacting with Windows 8.1+ GUI Donar
2018-10-09 14:56 ` gautier_niouzes
2018-10-10 15:42   ` herbert.glarner
2018-10-10 18:19     ` G. B.
2018-10-25  9:24       ` gautier_niouzes
2018-10-11 14:42     ` gautier_niouzes
2018-10-11 15:26       ` rabbibotton
2018-10-11 18:25         ` rabbibotton
2018-10-11 18:37       ` Björn Lundin
2018-10-13  6:30       ` alby.gamper
2018-10-13 11:50         ` gautier_niouzes
2018-10-13 12:47           ` alby.gamper
2018-10-25 17:19 ` Olivier Henley
2018-10-25 17:33   ` Olivier Henley
2018-10-25 22:30     ` joakimds
2018-10-26  9:19       ` Simon Wright
2018-10-26  9:39         ` gautier_niouzes [this message]
2018-10-26 12:52         ` Bill Findlay
2018-10-26 13:42           ` Simon Wright
2018-10-26 21:19             ` Bill Findlay
2018-10-29 21:09         ` Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox