From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: How can I get this data into the .data section of the binary?
Date: Tue, 16 Jun 2020 16:25:02 +0200 [thread overview]
Message-ID: <rcakns$1phu$1@gioia.aioe.org> (raw)
In-Reply-To: hks2d9Fsa5jU1@mid.individual.net
On 16/06/2020 16:14, Niklas Holsti wrote:
> On 2020-06-16 14:31, Luke A. Guest wrote:
>> I'm trying to get some static data tables into the data section rather
>> than be elaborated at runtime. I can see no reason why this particular
>> set of types, records and aggregates cannot go into the data section.
>
> [snip]
>
>> Pixel_Format_Unknown : constant Pixel_Format_Names :=
>> Pixel_Format_Names'(Planar => True,
>> Planar_Format => Planar_Pixels'
>> (others => Ada.Characters.Latin_1.NUL));
>
> Several years ago we had a problem like this, with a large constant
> array that we wanted to have only once in RAM. This was with the XGC Ada
> compiler, but there we found a work-around: using positional rather than
> named association for the large array aggregate.
>
> I have no idea if this will help you -- the types in our case were much
> simpler -- but you might try it with a small subset of your package:
>
> Pixel_Format_Unknown : constant Pixel_Format_Names :=
> (True, (NUL, NUL, NUL, NUL));
>
> (assuming "use Ada.Characters.Latin_1").
That is interesting. Was there the "others =>" part?
I can imagine that with "others => NUL" a static zeroed section were
used with other parts written upon it during start.
P.S. I hope more people now see why compile-time subprograms are necessary.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2020-06-16 14:25 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-16 11:31 How can I get this data into the .data section of the binary? Luke A. Guest
2020-06-16 11:37 ` Luke A. Guest
2020-06-16 11:50 ` J-P. Rosen
2020-06-16 12:36 ` Luke A. Guest
2020-06-16 12:45 ` Luke A. Guest
2020-06-16 12:56 ` J-P. Rosen
2020-06-16 12:59 ` Luke A. Guest
2020-06-16 13:29 ` J-P. Rosen
2020-06-16 13:44 ` Luke A. Guest
2020-06-18 2:55 ` Randy Brukardt
2020-06-18 9:55 ` Niklas Holsti
2020-06-21 3:55 ` Randy Brukardt
2020-06-21 6:55 ` Niklas Holsti
2020-06-16 13:52 ` Mark Lorenzen
2020-06-16 14:08 ` Luke A. Guest
2020-06-16 13:03 ` Luke A. Guest
2020-06-16 14:14 ` Niklas Holsti
2020-06-16 14:25 ` Dmitry A. Kazakov [this message]
2020-06-16 14:32 ` Niklas Holsti
2020-06-16 14:42 ` Luke A. Guest
2020-06-16 15:21 ` Dmitry A. Kazakov
2020-06-16 15:43 ` Luke A. Guest
2020-06-16 16:11 ` Dmitry A. Kazakov
2020-06-16 14:40 ` Luke A. Guest
2020-06-16 18:19 ` Tero Koskinen
2020-06-17 12:37 ` Luke A. Guest
2020-06-17 14:01 ` Niklas Holsti
2020-06-17 15:17 ` Luke A. Guest
2020-09-03 10:32 ` c+
2020-09-13 13:36 ` patelchetan1111992
2020-09-19 14:08 ` erchetan33
2020-09-28 11:36 ` yhumina stir
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox