Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
1. support extened extension
ex:
--isa="imadc_zvamo_zvqmac
2. relax extenion character order
--isa=imadc or --isa==cdima
3. use another bit structure to keep all supported extension
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
This patch adds a --log argument to spike. If not given, the behaviour
is unchanged: messages logging execution of instructions and (if
commit logging is enabled) commits go to stderr.
If --log=P is given, Spike now writes these messages to a log file at
the path P. This is nice, because they are no longer tangled up with
other errors and warnings.
The code is mostly plumbing: passing a FILE* object through to the
functions that were using stderr. I've written a simple "log_file_t"
class, which opens a log file if necessary and yields it or stderr.
|
|
|
|
The number of vector FP ALUs and implementations of vf(w)redsum could be
passed as options by the following example:
"--varch=vlen:512,elen:32,slen:512,nalu:4,fredsum-impl:parallel"
By default, 4 of vector FP ALUs and ordered vector FP reduction sum
implementations are assumed.
|
|
The check is not needed anymore since most vector kernels are supported
in current implemented vector instruction set.
|
|
forget to remove the vectorUnit outside, which has been moved
into proccess_t as inner class
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
1. add an extra argument to support commitlog
2. move vectorUnit_t into processor_t to avoid circular dependency hell
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
1. use hash to keep duplicated register write since vector has lmul
feature
2. enhance print fuction to support type larger than 64bit
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
use vector to store memory accesses
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Mask calculation was not in consistency with debug spec.
Watch debug spec. 5.2.7 match field overview and
debug spec. B.9 fourth example.
Mask should not cover LSB zero bit.
Also there is a way to make it simplier:
reg_t mask = ~(((~state.tdata2[i]) - 1) ^ ~state.tdata2[i]);
|
|
* Extends the commit log feature with memory writes.
This provides a little more information for debugging instruction
traces, allowing you to maintain the state of memory as the trace
is processed.
The following sample trace output illustrates the formatting of
the new memory writes. The first line is an instruction at
location 0x80000094, containing the bytes (0x80830313) and
commiting the value 0x80000898 to the register x6. The second
line is an instruction which neither commits a register nor
writes memory. The third line writes the value 0x0 to
0x80000890.
3 0x80000094 (0x80830313) x 6 0x80000898
3 0x80000098 (0x0062d663)
3 0x8000009c (0x00028023) mem 0x80000890 0x0
* Changes addressing feedback from review.
|
|
* Adds --log-commits commandline option.
Similar to histogram support, the commit logging feature must be
enabled with a configure option: --enable-commitlog. However, unlike
that feature, there was no way to turn off the logging with a
commandline option once the functionality was built in. This (git)
commit provides that abilty.
* Changes addressing review feedback.
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
* Don't corrupt s0 when abstract CSR write fails.
* Support abstract FPR access then mstatus.FS=0
Discussion on the spec list leans towards this being a requirement.
Certainly users want their debugger to be able to access all registers
regardless of target state.
|
|
In the previous scheme, debug-mode software could exit debug mode by
zeroing the dcsr.cause field. While benign, that behavior is out of
spec.
|
|
|
|
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
|
|
|
|
|
|
|
|
|
|
1. for vill, we need to know the XLEN from VU. So we put a pointer to
processor in vectorUnit_t
2. add vill
3. fitting the naming convention for setVL
|
|
revert wrong revert
This reverts commit ffda9507ae644cc7700608b12d3facd2849e4cad.
|
|
This reverts commit 085310bf0a14ca66cffeb73c4fa37fea2be2fe6c.
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
|
|
|
|
|
|
|
|
mlen is the bit lenght of one element in V0
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
|
|
|
|
|
|
|
|
|