Improve list fusion for [n::Integer..m]

enumFromTo for Integers goes via enumDeltaToInteger, which is less
efficient, as the "delta > = 0" check prevents more inlining which is
required for good fusion code. This rule avoids tihs check for the
common case of "delta = 1", makes up_fb visible and hence inlineable,
which greatly improves "length [n:Integer..m]"; even more so with
CallArity enabled. (#8766)

(cherry picked from commit a60eeccf06c28bee3b87c561450320d17c7399e3)
Test case for #8374

(cherry picked from commit d455e2dfb6d1a7b4b22784f0c49178bd346e15e0)
Wrong bug number

the previous commit added a testcase for #8766, not #8374 -- too many
tabs open.

(cherry picked from commit f28ee96d7c246f78d5e8cb9c853f417e54ff3d91)
Fix T8766 numbers.

As Joachim mentioned, the 7.8 branch doesn't have call-arity analysis,
so the numbers here get a bit worse.

Signed-off-by: Austin Seipp <aseipp@pobox.com>