aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch5.adb
diff options
context:
space:
mode:
authorBob Duff <duff@adacore.com>2021-03-30 07:15:39 -0400
committerPierre-Marie de Rodat <derodat@adacore.com>2021-06-21 06:45:14 -0400
commit9418d3d41f581edd9acfdc4f359d37f948c1671e (patch)
tree482346fcb7b87707e2e6f69fc1c235601292a911 /gcc/ada/sem_ch5.adb
parentc3681eba728a487f042de72e90c29b1cfca4e2e7 (diff)
downloadgcc-9418d3d41f581edd9acfdc4f359d37f948c1671e.zip
gcc-9418d3d41f581edd9acfdc4f359d37f948c1671e.tar.gz
gcc-9418d3d41f581edd9acfdc4f359d37f948c1671e.tar.bz2
[Ada] Improve efficiency of small slice assignments of packed arrays
gcc/ada/ * rtsfind.ads, libgnat/s-bitfie.ads, libgnat/s-bituti.adb, libgnat/s-bituti.ads (Fast_Copy_Bitfield): New run-time library function to copy bit fields faster than Copy_Bitfield. Cannot be called with zero-size bit fields. Remove obsolete ??? comments from s-bituti.adb; we already do "avoid calling this if Forwards_OK is False". * exp_ch5.adb (Expand_Assign_Array_Loop_Or_Bitfield, Expand_Assign_Array_Bitfield_Fast): Generate calls to Fast_Copy_Bitfield when appropriate. * sem_util.adb, sem_util.ads (Get_Index_Bounds): Two new functions for getting the index bounds. These are more convenient than the procedure of the same name, because they can be used to initialize constants.
Diffstat (limited to 'gcc/ada/sem_ch5.adb')
0 files changed, 0 insertions, 0 deletions