stream: add fast-path for readable streams
Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/1225/
Results
confidence improvement accuracy (*) (**) (***)
streams/readable-encoding.js n=1000 op='push' len=16384 encoding='latin1' 1.29 % ±2.75% ±3.66% ±4.77%
streams/readable-encoding.js n=1000 op='push' len=16384 encoding='utf-8' *** 15.70 % ±4.21% ±5.61% ±7.34%
streams/readable-encoding.js n=1000 op='push' len=256 encoding='latin1' -5.85 % ±7.27% ±9.68% ±12.60%
streams/readable-encoding.js n=1000 op='push' len=256 encoding='utf-8' -0.91 % ±7.21% ±9.61% ±12.53%
streams/readable-encoding.js n=1000 op='push' len=512 encoding='latin1' ** -9.23 % ±6.72% ±8.94% ±11.64%
streams/readable-encoding.js n=1000 op='push' len=512 encoding='utf-8' 3.36 % ±8.07% ±10.74% ±13.98%
streams/readable-encoding.js n=1000 op='unshift' len=16384 encoding='latin1' 1.49 % ±4.27% ±5.68% ±7.40%
streams/readable-encoding.js n=1000 op='unshift' len=16384 encoding='utf-8' *** 15.10 % ±4.09% ±5.45% ±7.11%
streams/readable-encoding.js n=1000 op='unshift' len=256 encoding='latin1' ** -8.54 % ±5.66% ±7.55% ±9.85%
streams/readable-encoding.js n=1000 op='unshift' len=256 encoding='utf-8' -6.27 % ±7.00% ±9.32% ±12.14%
streams/readable-encoding.js n=1000 op='unshift' len=512 encoding='latin1' -0.28 % ±6.23% ±8.30% ±10.85%
streams/readable-encoding.js n=1000 op='unshift' len=512 encoding='utf-8' -1.42 % ±7.15% ±9.51% ±12.39%