Split SF peephole optimizations out of register allocator
commit53c1357a40de21a1cb3ea46a0f6337cc49fec9c7
authorRick Lavoie <rlavoie@fb.com>
Fri, 15 Feb 2019 04:23:10 +0000 (14 20:23 -0800)
committerHhvm Bot <hhvm-bot@users.noreply.github.com>
Fri, 15 Feb 2019 04:30:47 +0000 (14 20:30 -0800)
tree62d7cd2ceda9e92217e7ba8c34d82e72a645ea9d
parent18c3fa448729941c2a5745f85c15db03ea63c264
Split SF peephole optimizations out of register allocator

Summary:
XLS implements various status flag related peephole
optimizations. These aren't really register allocator related, so split them out
into a separate pass. Remove the optimizations from XLS and call them after
either register allocator is run.

With this change, vasm-graph-color is now done and can produce working code.

Reviewed By: mxw

Differential Revision: D13375222

fbshipit-source-id: d4a7d8bb08e4c35fb1421bb2cd839ec050d3c025
hphp/runtime/vm/jit/timer.h
hphp/runtime/vm/jit/vasm-flags.cpp
hphp/runtime/vm/jit/vasm-graph-color.cpp
hphp/runtime/vm/jit/vasm-x64.cpp
hphp/runtime/vm/jit/vasm-xls.cpp
hphp/runtime/vm/jit/vasm.h