comp.lang.ada
 help / color / mirror / Atom feed
From: Dale Stanbrough <dstanbro@bigpond.net.au>
Subject: Re: Optimizing Boundary Checks
Date: Fri, 13 Jun 2003 13:45:45 GMT
Date: 2003-06-13T13:45:45+00:00	[thread overview]
Message-ID: <dstanbro-C7CC51.23454513062003@mec2.bigpond.net.au> (raw)
In-Reply-To: slrnbejegn.in.randhol+abuse@kiuk0152.chembio.ntnu.no

Preben Randhol wrote:

> After reading some posts here lately I have understood that the compiler
> can optimise out boundary checks on say arrays if you do this:
> 
>    type Index_Range is range 1 .. 10;
>    type Items is array (Index_Range) of Natural;
> 
> But if you write:
> 
>    type Items is array (1 .. 10) of Natural;
> 
> is boundary checks then on?

There are no boundary checks for a type declaration of course, so 
the question is

   "in which situations would a check be generated"

Clearly this depends on the compiler, and the code. For example the
code
  
   x : Items;

   for i in x'range loop
      put (x (i));
   end loop;

is quite easy for a compiler to know that no checks are needed.
There are increasingly more difficult levels of analysis for the
compiler depending on the situation.

Dale



      parent reply	other threads:[~2003-06-13 13:45 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-13 11:49 Optimizing Boundary Checks Preben Randhol
2003-06-13 12:03 ` Erlo Haugen
2003-06-13 12:38   ` Vinzent Hoefler
2003-06-13 12:47     ` Preben Randhol
2003-06-13 13:28       ` Vinzent Hoefler
2003-06-13 12:42   ` Preben Randhol
2003-06-13 12:48     ` Preben Randhol
2003-06-13 13:28       ` Vinzent Hoefler
2003-06-13 13:56         ` Preben Randhol
2003-06-13 14:42           ` Vinzent Hoefler
2003-06-13 15:25             ` Preben Randhol
2003-06-13 15:34               ` Vinzent Hoefler
2003-06-14 10:45                 ` Preben Randhol
2003-06-14 14:59                   ` James Rogers
2003-06-13 13:33       ` Peter Amey
2003-06-13 13:34 ` Martin Dowie
2003-06-13 13:48   ` Vinzent Hoefler
2003-06-13 14:37     ` Martin Dowie
2003-06-13 15:12       ` Vinzent Hoefler
2003-06-14  2:01         ` Jeffrey Carter
2003-06-16 11:23           ` Vinzent Hoefler
2003-06-14  8:34         ` Dmitry A. Kazakov
2003-06-14 17:20         ` Robert I. Eachus
2003-06-16 11:23           ` Vinzent Hoefler
2003-06-18 20:58             ` Brian Gaffney
2003-06-13 13:45 ` Dale Stanbrough [this message]
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox