OSDN Git Service

[AArch64] Cortex-A57 FDIV/FSQRT scheduling fix (W-unit)
authorRenato Golin <renato.golin@linaro.org>
Fri, 23 Dec 2016 12:51:41 +0000 (12:51 +0000)
committerRenato Golin <renato.golin@linaro.org>
Fri, 23 Dec 2016 12:51:41 +0000 (12:51 +0000)
commitacb4edfa667bcc9617270e12dd3548e6314c57a8
treeafe7fe0cfbf8f253baaa4b548af960d2b60e162d
parent6c22759cf8856bb5387e3529860139e620be024d
[AArch64] Cortex-A57 FDIV/FSQRT scheduling fix (W-unit)

According to the Cortex-A57 doc, FDIV/FSQRT instructions should use F0 unit
(W-unit in AArch64SchedA57.td, the same as cryptography instructions),
not F1 unit (X-unit in td, like ASIMD absolute diff accum SABA/UABA).

This patch changes FDIV/FSQRT scheduling declarations to use A57UnitW
instead of A57UnitX. Also, latencies for those instructions are
corrected.

Patch by Andrew Zhogin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@290426 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64SchedA57.td
lib/Target/AArch64/AArch64SchedA57WriteRes.td