OSDN Git Service

[Hexagon] Adjust latency between allocframe and the first store on stack
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 3 May 2017 15:33:09 +0000 (15:33 +0000)
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 3 May 2017 15:33:09 +0000 (15:33 +0000)
commit6da858a29134d151a0ca3dd7504b28c96264db6c
treedb207425598d32114be7693b8904afcb80d8b41c
parentb866debf2097093604a196f94d1001b9708e3f7c
[Hexagon] Adjust latency between allocframe and the first store on stack

Allocframe and the following stores on the stack have a latency of 2 cycles
when not in the same packet. This happens because R29 is needed early by the
store instruction. Since one of such stores can be packetized along with
allocframe and use old value of R29, we can assign it 0 cycle latency
while leaving latency of other stores to the default value of 2 cycles.

Patch by Jyotsna Verma.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@302034 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Hexagon/HexagonInstrInfo.cpp
test/CodeGen/Hexagon/adjust-latency-stackST.ll [new file with mode: 0644]