From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.200.56.8 with SMTP id q8mr6182703qtb.31.1480469370480; Tue, 29 Nov 2016 17:29:30 -0800 (PST) X-Received: by 10.157.20.197 with SMTP id r5mr1463421otr.9.1480469370446; Tue, 29 Nov 2016 17:29:30 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!p16no65584qta.1!news-out.google.com!j8ni250qtc.0!nntp.google.com!p16no65581qta.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 29 Nov 2016 17:29:30 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=174.28.218.229; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 174.28.218.229 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <8b3ea401-822b-4b51-be48-133861ef2e0b@googlegroups.com> Subject: Re: Ada 2012 Constraints (WRT an Ada IR) From: Shark8 Injection-Date: Wed, 30 Nov 2016 01:29:30 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:32529 Date: 2016-11-29T17:29:30-08:00 List-Id: On Tuesday, November 29, 2016 at 4:52:20 PM UTC-7, Randy Brukardt wrote: >=20 > P0 and P1 are more likely to be optimized by a compiler (just because of = the=20 > many years of history). Perhaps P3 will catch up, but I wouldn't hold my= =20 > breath on that. Oh, BTW, *THIS* is exactly the motivation for having a uniform IR -- when p= ut into a common form then all optimizations on that object/construct are a= pplicable. This is to say that when P3 and P1 share a representation, every= optimization of P1 is possible for P3. (Despite syntax differences; again,= assuming they're truly equivalent in the same way that "Integer > 0" and "= Integer in 1..Integer'Last" are.)