[Ada] Improve efficiency of aggregates with <>

Pierre-Marie de Rodat derodat@adacore.com
Tue Aug 20 09:51:00 GMT 2019


The generated code has been improved so that aggregates with <> are more
efficient.  No change in behavior; no test.

Tested on x86_64-pc-linux-gnu, committed on trunk

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

gcc/ada/

	* exp_aggr.adb (Expand_Array_Aggregate): Use build-in-place in
	the nonlimited case in STEP 4. This improves the efficiency of
	things like (1 .. 1000 => <>).  We still generate some code for
	that, unfortunately, but it is much improved.
	(Aggr_Assignment_OK_For_Backend): Return false if <> components
	are present.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.diff
Type: text/x-diff
Size: 877 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20190820/2358f6e4/attachment.bin>


More information about the Gcc-patches mailing list