[Ada] Add the System.Bitfield_Utils runtime unit
authorBob Duff <duff@adacore.com>
Wed, 21 Aug 2019 08:30:53 +0000 (08:30 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Wed, 21 Aug 2019 08:30:53 +0000 (08:30 +0000)
commitabdeafa67a8ec7c99830fd5039d38168abba52a9
tree991871518d9927868f87a35320792b8c36f34d67
parenta1fda1e8752ecbf3b109d851e4a7d7d04159170e
[Ada] Add the System.Bitfield_Utils runtime unit

2019-08-21  Bob Duff  <duff@adacore.com>

gcc/ada/

* Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-bitutil.o and
s-biutin.o.
* exp_ch5.adb (Expand_Assign_Array_Bitfield): New function to
generate a call to Copy_Bitfield. This is disabled for now.
(Expand_Assign_Array_Loop_Or_Bitfield): New function to decide
whether to call Expand_Assign_Array_Bitfield.
(Expand_Assign_Array): Call Expand_Assign_Array_Loop_Or_Bitfield
instead of Expand_Assign_Array_Loop.
* libgnat/s-bitfie.ads, libgnat/s-bituti.adb,
libgnat/s-bituti.ads: New units.
* rtsfind.ads: Add enum literals for accessing Copy_Bitfield.

From-SVN: r274785
gcc/ada/ChangeLog
gcc/ada/Makefile.rtl
gcc/ada/exp_ch5.adb
gcc/ada/libgnat/s-bitfie.ads [new file with mode: 0644]
gcc/ada/libgnat/s-bituti.adb [new file with mode: 0644]
gcc/ada/libgnat/s-bituti.ads [new file with mode: 0644]
gcc/ada/rtsfind.ads