aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorMichael Maitland <michaeltmaitland@gmail.com>2023-12-04 17:21:02 -0500
committerGitHub <noreply@github.com>2023-12-04 17:21:02 -0500
commitd9570babf1b253767a3a6c1450fa1b9e10b4e2f9 (patch)
treececd96d7ec178d2af4bc0ce773b286b85a06bc7c /clang/lib/Frontend/CompilerInvocation.cpp
parentb73d79fda85b26fc111c47fe292d94d46b925754 (diff)
downloadllvm-d9570babf1b253767a3a6c1450fa1b9e10b4e2f9.zip
llvm-d9570babf1b253767a3a6c1450fa1b9e10b4e2f9.tar.gz
llvm-d9570babf1b253767a3a6c1450fa1b9e10b4e2f9.tar.bz2
[RISCV] Remove SiFive7PipeV and replace it with SiFive7VCQ (#73969)
The Arithmetic, Load, and Store sequencers can accept instructions in parallel. The PipeV blocked that from happening since it became busy if any of the sequencers were busy. This change allows the sequencers to accept instructions in parallel. The VCQ accepts instructions from the the A Pipe and holds them until the vector unit is ready to dequeue them. The unit dequeues up to one instruction per cycle, in order, as soon as the sequencer for that type of instruction is avaliable. This resource is meant to be used for 1 cycle by all vector instructions, to model that only one vector instruction may be dequed at a time. The actual dequeueing into the sequencer is modeled by the VA, VL, and VS sequencer resources below. Each of them will only accept a single instruction at a time and remain busy for the number of cycles associated with that instruction.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions