Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Aarch64 - improve after lea lowering
Summary: This change improves the sequence generated when lowering the Vptr element of the lea Vinstr by taking advantage of the sub immediate instruction. This saves 1 instruction per instance. Before ===== (07) StLocRange<[0, 108)> t0:FramePtr, Uninit Main: 0x52c0035c d10043a0 sub x0, x29, #0x10 (16) 0x52c00360 9280d9e1 movn x1, #0x6cf 0x52c00364 8b0103a1 add x1, x29, x1 0x52c00368 3900201f strb wzr, [x0, #8] After ==== (07) StLocRange<[0, 108)> t0:FramePtr, Uninit Main: 0x50400404 d10043a0 sub x0, x29, #0x10 (16) 0x50400408 d11b43a1 sub x1, x29, #0x6d0 (1744) //<<--- 0x5040040c 3900201f strb wzr, [x0, #8] This was seen approximately 300 times in hphp/test/quick/all_type_comparison_test.php and around 1000 times in hphp/test/zend/good/ext/intl/tests/grapheme.php The standard regression tests were run with six option sets. No new failures were observed. Closes #7929 Differential Revision: D5706712 Pulled By: mxw fbshipit-source-id: 09dd2597677567a965e00992dfeb6d8121a1bc69
- Loading branch information