Status: New
Owner: ----

New issue 2739 by [email protected]: v8 should do reduntant bounds check elimination for constant indexing
http://code.google.com/p/v8/issues/detail?id=2739

Currently v8 does a great job of removing redundant bounds checks of the
form arr[expr + constant]. This doesn't kick in for arr[constant], though.

In a function matMult(a, b, c) which multiplies 4x4 matrices a and b into c (a,b,c are 16 element float32arrays), there are 48 bounds check operations. But really only 3 are strictly necessary.

I hacked up BoundsCheckBbData in hydrogen.cc to handle this (basically make the "expr" in "expr + constant" optional) and I get about a 10% speedup in matMult. Not as big as I thought it would be (I guess these branches can be correctly predicted by the processor so don't slow it down too much), but it's not nothing. Also the generated code size went down from 2441 to 1853.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to