[turbofan]: More optimizations to add and subtract operations on x64

- Use "leal" for subtraction of integer constant when non-constant input to
  subtract is used more than once.
- Use "incl", "decl", and "addl" when they are smaller/cheaper than their
  leal/addl/subl equivalant.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/738073002

Cr-Commit-Position: refs/heads/master@{#25439}
[turbofan] More aggressive reuse of spill slots in the register allocator.

BUG=

Review URL: https://codereview.chromium.org/725083004

Cr-Commit-Position: refs/heads/master@{#25440}
Reserve code range block for evacuation.

If we run out of code range, then GC wouldn't be able to compact code space,
because it wouldn't be able to allocate a new page. This can cause code space
fragmentation and OOM crashes.

BUG=chromium:430118
LOG=Y

Review URL: https://codereview.chromium.org/742733002

Cr-Commit-Position: refs/heads/master@{#25441}