On Wednesday, 21 January 2015 at 23:50:44 UTC, Nordlöw wrote:
As a follow up to
https://github.com/D-Programming-Language/dmd/pull/4293
would it be possible to also avoid range-checking in
expressions such as
x[0 .. $/n]
and
x[$/n .. $]
where n is an integer compile-time constant >= 2.
I'm askingbecause this is a reoccurring pattern in D-style
binary divide-and-conquer algorithms and would be a good
show-case for D from a performance standpoint.
Is DMD prepared for (easily) adding this to e2ir.c and
expression.c?
That is reasonable to expect a compiler to remove such a check
with optimization enabled already. I'm not sure about DMD, but
I'd be willing to bet that LDC and GDC already do it.