[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 22 May 2015 13:01:37 +0000 (15:01 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 22 May 2015 13:01:37 +0000 (15:01 +0200)
commitee93527368e112d1f2a9b0e739fc513eff3e048e
tree8b36160fdde6190f5222ddb6061d762b8c0ecc3d
parent5c0c1090a714cb4b89f11d5333efd61dea5267f2
[multiple changes]

2015-05-22  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Minor comment updates.
* exp_unst.adb: Move Subps table to spec Don't remove old entries
from table Add Last field to record last entry used.
* exp_unst.ads: Move Subps table here from body So that Cprint
can access saved values.

2015-05-22  Bob Duff  <duff@adacore.com>

* a-cdlili.adb, a-cdlili.ads, a-cohama.adb, a-cohama.ads,
* a-cohase.adb, a-cohase.ads, a-convec.adb, a-convec.ads,
* a-coorma.adb, a-coorma.ads, a-coorse.adb, a-coorse.ads:
(Pseudo_Reference, Element_Access, Get_Element_Access): New
declarations added for use by performance improvements in exp_ch5.adb.
* snames.ads-tmpl: New names referenced by exp_ch5.adb.
* exp_ch5.adb: Speed up "for ... of" loops for predefined containers.
Instead of doing literally what the RM calls for, we do something
equivalent that avoids expensive operations inside the loop. If the
container package has appropriate Next, Pseudo_Reference,
Element_Access, Get_Element_Access declarations, we invoke the
optimization.
* snames.ads-tmpl: Note speed improvement.

From-SVN: r223563
18 files changed:
gcc/ada/ChangeLog
gcc/ada/a-cdlili.adb
gcc/ada/a-cdlili.ads
gcc/ada/a-cohama.adb
gcc/ada/a-cohama.ads
gcc/ada/a-cohase.adb
gcc/ada/a-cohase.ads
gcc/ada/a-convec.adb
gcc/ada/a-convec.ads
gcc/ada/a-coorma.adb
gcc/ada/a-coorma.ads
gcc/ada/a-coorse.adb
gcc/ada/a-coorse.ads
gcc/ada/einfo.ads
gcc/ada/exp_ch5.adb
gcc/ada/exp_unst.adb
gcc/ada/exp_unst.ads
gcc/ada/snames.ads-tmpl