>>

>
> The problem with vector bounds checking is not that the bound is variable.
> It is that the slot containing the reference to the vector is mutable. If
> the slot were immutable, you could do the bounds check at top of loop and
> declare victory. Because the slot is mutable, you cannot assume in general
> that you are dealing with the same vector each pass through the loop. In
> consequence, the bounds checks cannot be lifted. This is particularly a
> concern when vectors get hidden behind properties or inline functions. You
> would think that inlining would expose the bound for hoisting and
> elimination, but it doesn't.


I see thanks for that.. so your using a NAT type that says numbers
between 1 : 100.  You still have issues with expandable collections or
runtime created arrays.

I did think after inlining you could parse it and make it obvious I
think the Java jit does this pretty well ( which mono  doesnot)  but
its probably expensive  .

Ben
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to