Partial array bounds checks removal
Tim M
a at b.com
Tue Dec 16 17:22:36 PST 2008
I haven't tried safeD and i'm guessing that is extra secure version of D
but what would be the point in removing those secuirty checks?
On Wed, 17 Dec 2008 08:34:17 +1300, bearophile <bearophileHUGS at lycos.com>
wrote:
> This article shows a way to remove lot of array bounds checks, it's not
> the first of this kind, but this method seems simple enough.
> "Array Bounds Check Elimination for the Java HotSpot Client Compiler"
> By Thomas Würthinger, Christian Wimmer and Hanspeter Mössenböck:
>
> http://www.ssw.uni-linz.ac.at/Research/Papers/Wuerthinger07/Wuerthinger07.pdf
>
> With some heuristics it's often able to move the array bounds checks
> before the loop. It also uses some complex tricks to produce the array
> bound exception where it belongs, and not before the loop.
>
> I think a similar strategy may be used by safeD to remove most of its
> array bounds checks, to produce code that is almost as fast as normal D
> code compiled with -release.
> (Probably the tricks shown in the article can't be used by a static
> compiler, array bounds checks will be probably thrown before the loops
> in such safeD.).
> (Other heuristics can be used to avoid lot of the checks done to catch
> integer overflow errors).
>
> Bye,
> bearophile
More information about the Digitalmars-d
mailing list