aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/Local.cpp
diff options
context:
space:
mode:
authorMichal Terepeta <michalt@google.com>2024-04-16 07:55:45 +0200
committerGitHub <noreply@github.com>2024-04-16 13:55:45 +0800
commit6da1966bc503e1ce44ef36e7107c9db482fac6ab (patch)
treef6a45025469f41bceb0f77a08a404fc44aae193b /llvm/lib/Transforms/Utils/Local.cpp
parent17d6bf046cea381413895f91e24d26d65763b59a (diff)
downloadllvm-6da1966bc503e1ce44ef36e7107c9db482fac6ab.zip
llvm-6da1966bc503e1ce44ef36e7107c9db482fac6ab.tar.gz
llvm-6da1966bc503e1ce44ef36e7107c9db482fac6ab.tar.bz2
[RISCV] Add scheduling information for SiFive VCIX (#86093)
This adds `RISCVScheduleXSf.td` with `SchedWrite` definitions for all VCIX instructions and uses it in `RISCVSchedSiFive7.td` to set default latencies for these instructions, helping with issue https://github.com/llvm/llvm-project/issues/83391. Of course these default latencies cannot be accurate (since each coprocessor will have different latencies), but this seems to be enough to avoid some of the problematic behavior described in the bug. In any case, this seems to be enough to help with #83391 in our internal testing. A subsequent discussion is how to structure the code such that it's easier for downstream consumers of this to use `SiFive7` scheduling model with accurate VCIX latencies. But we can probably have a separate issue to discuss that.
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions