Do these fast paths actually matter? They save, what, like half a dozen C level easily-pipelined integer operations in the common case? It's not really a big deal, but numpy already has too many 'fast paths' that were written because of some vague feeling that they might speed things up, and the overall result is confusing and bug-prone code while actual hot-spots get ignored. So I feel I ought to push back a bit against such things on general principle...