diff options
author | Min-Yih Hsu <min.hsu@sifive.com> | 2025-10-09 17:29:29 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-10-09 17:29:29 -0700 |
commit | 69f913821d82f82cce3309da84b21375d5a128ee (patch) | |
tree | 65059f160eb435dcd1d646b566863f85a3da4a98 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 7a391e32eaf2f2232bd7c81e651dd949f39cc9e1 (diff) | |
download | llvm-69f913821d82f82cce3309da84b21375d5a128ee.zip llvm-69f913821d82f82cce3309da84b21375d5a128ee.tar.gz llvm-69f913821d82f82cce3309da84b21375d5a128ee.tar.bz2 |
[RISCV] Add a new subtarget feature for throttled FP64 vector performance (#162399)
sifive-x390 and sifive-x280 both share the SiFIve7 scheduling model, yet
the former has a limited FP64 vector performance. Right now we account
for it by instantiating two separate scheduling models (throttled v.s.
non-throttled) from the base SiFive7 model. However, this approach
(which is also used in other performance features like fast vrgather in
SiFive7) does not scale if we add more of these performance features in
the future -- the number of scheduling models will simply become
unmanageable.
The new solution I've been working on is to let a _single_ scheduling
model be configured by subtarget features on performance features like
these, such that we no longer need to create those derived models. This
patch creates the subtarget feature that'll ultimately replace the
`isFP64Throttled` knob in SiFive7 scheduling model mentioned earlier.
There will be a follow-up patch to integrate this into the scheduling
model.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions