[Ada] Add comment on implementation choice for byte-packed array types
authorEric Botcazou <ebotcazou@adacore.com>
Wed, 20 May 2020 08:13:05 +0000 (10:13 +0200)
committerPierre-Marie de Rodat <derodat@adacore.com>
Wed, 8 Jul 2020 14:55:53 +0000 (10:55 -0400)
gcc/ada/

* freeze.adb (Freeze_Array_Type): Add comment on implementation
choice for byte-packed array types.

gcc/ada/freeze.adb

index cb32f9d3c139db7a5a1413603b049ba135441216..528a7dd871887dfefc4f451998e3163aef02838e 100644 (file)
@@ -2928,7 +2928,10 @@ package body Freeze is
 
                      --  Bit packing is not needed for multiples of the storage
                      --  unit if the type is composite because the back end can
-                     --  byte pack composite types.
+                     --  byte pack composite types efficiently. That's not true
+                     --  for discrete types because every read would generate a
+                     --  lot of instructions, so we keep using the manipulation
+                     --  routines of the runtime for them.
 
                      elsif Csiz mod System_Storage_Unit = 0
                        and then Is_Composite_Type (Ctyp)