[x86] Several small performance improvements.
authorbmeurer@chromium.org <bmeurer@chromium.org>
Wed, 15 Oct 2014 09:05:40 +0000 (09:05 +0000)
committerbmeurer@chromium.org <bmeurer@chromium.org>
Wed, 15 Oct 2014 09:05:40 +0000 (09:05 +0000)
commit985db1a3c86b34219dfae35ff1846425f70b6ac0
treee96970707b674ddf11a8e90fc44f7200d98850ef
parentb26632f655869d4c2b390354f2a6be94cdc57499
[x86] Several small performance improvements.

- Generate

    cmp reg, 0

  instead of

    test reg, -1

  for word tests.
- Generate

    mov reg, [stack slot]
    add reg, reg
    jo label

  instead of

    mov reg, [stack slot]
    add reg, [stack slot]
    jo label

  for SMI tagging.
- Improve materialization of int32 constants on X86-64.
- Branch fusion fix for Word64And and Int64Sub on X86-64.

R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/compiler/ia32/instruction-selector-ia32.cc
src/compiler/x64/code-generator-x64.cc
src/compiler/x64/instruction-selector-x64.cc