- Jan 19, 2023
-
-
Jerry Zhao authored
-
- Jan 18, 2023
-
-
Andrew Waterman authored
Add htif_t tohost/fromhost accessors
-
Jerry Zhao authored
Signed-off-by:Jerry Zhao <jerryz123@berkeley.edu>
-
- Jan 17, 2023
-
-
Andrew Waterman authored
Add more hint when searched path is wrong
-
- Jan 16, 2023
-
-
gr816ox authored
Delete the old branch and pull a new one, because of a wrong force push. Git is not as easy as I think. Signed-off-by:gr816ox <50945677+gr816ox@users.noreply.github.com>
-
- Jan 15, 2023
-
-
Andrew Waterman authored
Lift artificial limit of 191 extensions; simplify isa_parser_t::extension_enabled
-
- Jan 14, 2023
-
-
Andrew Waterman authored
Now that we guarantee that max_isa and extension_table are synchronized, we only need to check the latter.
-
Andrew Waterman authored
This fixes a bug where --isa=rv64imafdc would fail to set extension_table['F'] because of the ad hoc manner in which we were synchronizing max_isa and extension_table.
-
Andrew Waterman authored
We know its size at compile time.
-
Andrew Waterman authored
Add new accessors that accept the isa_extension_t enum. Retain the original ones that accept unsigned char to avoid churn.
-
Scott Johnson authored
Add legalize_timing() for tdata1.timing
-
- Jan 13, 2023
-
-
YenHaoChen authored
Since this method does not use 'this', we turn this method into static.
-
YenHaoChen authored
Since this method no longer use 'this', we turn this method into static.
-
YenHaoChen authored
avoid breaking functionality by reordering statements in tdata1.write()
-
YenHaoChen authored
As recommended in the debug spec table "Suggested Trigger Timings", to avoid the footgun of replaying a load (which may have side effects) when the breakpoint trap handler returns. reference: https://github.com/riscv-software-src/riscv-isa-sim/pull/1208#issuecomment-1373035906 ----------------------------------------------------------------------- The legalize_timing() depends on select, execution, load, and store, which are updated in the same function tdata1_write(). As a result, reordering statements in the tdata1_write() may break the functionality. Passing those variables as parameters to legalize_timing() does not solve the problem. Thus, we give the original write value and the masks of the variables to the legalize_timing(). This makes the legalization function independent of the updating variables and resolves the issue. reference: https://github.com/riscv-software-src/riscv-isa-sim/pull/1214
-
Andrew Waterman authored
Run Spike and HTIF in a single thread, rather than two
-
- Jan 12, 2023
-
-
Andrew Waterman authored
For NS16550 UART, poll stdin less often
-
YenHaoChen authored
-
YenHaoChen authored
-
Andrew Waterman authored
The two-thread approach was originally motivated by making Spike look as similar as possible to other HTIF targets. But we can get the same semantics without threading by running the simulator inside of the HTIF host's idle loop instead of performing a context switch. This was motivated by speeding up the simulator on Mac OS (it's worth around 20% because using pthread condition variables to force strict alternation is very slow). But I think it also simplifies the control flow enough to justify it on that basis, too.
-
Andrew Waterman authored
Automatically test that external debug still works.
-
Andrew Waterman authored
On my Mac Mini, calling `poll()` on stdin takes around 10 us, and we are invoking it every 20 us or so. Reduce the frequency of polling by 16x when not actively receiving data, thereby reducing the fraction of time spent in `poll()` to a trivial amount.
-
Tim Newsome authored
-
Tim Newsome authored
-
Tim Newsome authored
-
Andrew Waterman authored
Fix supported debug version, use extension names
-
Tim Newsome authored
Addresses #1221
-
- Jan 11, 2023
-
-
Andrew Waterman authored
-
Parshintsev Anatoly authored
-
Parshintsev Anatoly authored
-
- Jan 10, 2023
-
-
Parshintsev Anatoly authored
-
Parshintsev Anatoly authored
this is to properly handle potential 64-bit overflow in (base + size) expression
-
Parshintsev Anatoly authored
The method can simplify proper processing of sitiations when (base + size) overflows 64-bit interger.
-
Parshintsev Anatoly authored
NFT. We also mark `base` and `size` fields as private.
-
Parshintsev Anatoly authored
NFC. The intention is for `base` and `size` fields of mem_cfg_t to be private members. This is the fist part of this commit.
-
- Jan 05, 2023
-
-
Andrew Waterman authored
Only update histogram when histogramming
-
Andrew Waterman authored
It dates back to when this code was ifdef'd.
-
Andrew Waterman authored
This is worth a 1.4x speedup on the slow path (when not histogramming).
-
Andrew Waterman authored
Control mmu-dirtying via command line
-
Jerry Zhao authored
-