Andrew Waterman
3f0081afd8
Fix overflow warning (-Woverflow)
1 year ago
Andrew Waterman
01d9b06f3c
Explicitly annotate use of GNU extension (-Wpedantic)
1 year ago
Andrew Waterman
ab024c11d8
Remove extra semicolons (-Wpedantic)
1 year ago
Andrew Waterman
2c26357d0c
Remove non-ISO compound literals (-Wpedantic)
1 year ago
Andrew Waterman
8006a64768
Remove zero-sized arrays (-Werror)
1 year ago
Andrew Waterman
754cd2b123
Fix unspecified evaluation order of 64b loads within float128
1 year ago
Andrew Waterman
12f8e6b1c4
Waive statements with no effect (-Werror)
1 year ago
Andrew Waterman
85b9d265bf
Remove or waive unused variables (-Werror)
1 year ago
Andrew Waterman
8ccde08b27
Remove unused functions (-Werror)
1 year ago
Andrew Waterman
2f2766d866
Remove unused labels (-Werror)
1 year ago
Andrew Waterman
93f1fda53f
Remove repeated 0 in format string (-Werror)
1 year ago
Andrew Waterman
fdf5e82c2e
Merge pull request #1961 from i3abghany/strtolower-no-append
Avoid appending chars to result `strtolower`
1 year ago
Mahmoud Abumandour
31e12a18ef
processor: don't append one char at a time in strtolower
This avoids potential re-alloations as it allocates the result string
upfront.
1 year ago
Mahmoud Abumandour
cfa593d0ea
isa_parser: don't append one char at a time in strtolower
This avoids potential re-alloations as it allocates the result string
upfront.
1 year ago
Andrew Waterman
c2220e6f11
Merge pull request #1957 from riscv-software-src/fix-comlog-print-arrays
Let commit_log_print_value print any length byte array
1 year ago
Andrew Waterman
3084a8e549
Merge pull request #1953 from mslijepc/mslijepc_20250410_ext-sim
Enabling using Spike as a library
1 year ago
mslijepc
a396fee4ed
do_[load|store] in abstract_sim_if_t renamed
1 year ago
Andrew Waterman
6268f2ead5
Merge pull request #1954 from ved-rivos/0410_1
Use SDT of deleg priv. for double trap
1 year ago
Jerry Zhao
4592a869a4
Allow commit_log_print_value to print any byte array
1 year ago
Jerry Zhao
a9b6eab6c0
Change commit_log_print_value to iterate by bytes for array types
1 year ago
Andrew Waterman
c703940286
Merge pull request #1955 from radimkrcmar/fix-pmm-mxr
mmu: fix pointer masking with mstatus.MXR in M-mode
1 year ago
Ved Shanbhogue
77e3e4931d
Use SDT of deleg priv. for double trap
1 year ago
Radim Krčmář
7df2f593d9
mmu: fix pointer masking with mstatus.MXR in M-mode
Pointer masking is disabled if sstatus.MXR is in effect, but M-mode
doesn't use paging and hence sstatus.MXR should not be in effect for
effective M-mode loads.
Do not consider mstatus.MXR when deciding the pointer mask length for
effective M-mode loads.
vsstatus.MXR wasn't an issue as no effective M-mode load could happen
with V=1, but move it below M-mode as well to simplify the conditions.
Fixes: 71bdc3bbd1 ("pointer masking: Pointer masking does not apply when MXR=1 regardless of MPRV in v1.0.0-rc2")
Signed-off-by: Radim Krčmář <rkrcmar@ventanamicro.com>
1 year ago
mslijepc
7e8eb16973
added external_simulator to cfg_t
1 year ago
mslijepc
2d84179a32
added external_sim_device_t class and methods
1 year ago
mslijepc
5adf8d7ffb
added abstract_sim_if_t class
1 year ago
Andrew Waterman
76858cc3aa
Merge pull request #1946 from riscv-software-src/bus-robust
Add `size` method to `abstract_device_t`; make `bus_t` more robust
1 year ago
Andrew Waterman
e24ae2a79b
Merge pull request #1949 from arrv-sc/master
refactor: make extensions accept processor as an argument
1 year ago
Andrew Waterman
69c7d1129d
Merge pull request #1950 from riscv-software-src/fix-instreth
Fix implementation of instreth writes
1 year ago
Alexander Romanov
69ae3a866c
refactor: make extensions accept processor as an argument
1 year ago
Andrew Waterman
51835fd752
Fix implementation of instreth writes
Decrementing the counter in advance of incrementing it produces
incorrect results when there's a carry-out. Fix by getting rid of this
scheme altogher: just skip the increment if there was an expicit write.
1 year ago
Andrew Waterman
d3c308fc79
Bump counters by 0 when disabled, rather than not bumping
No functional change intended; fixes implementation of a forthcoming bug fix.
1 year ago
Andrew Waterman
290d0c69c5
Annotate bus_t::find_device control-flow paths with [un]likely
1 year ago
Andrew Waterman
2f9fce33fa
Support a catch-all fallback device on the bus
1 year ago
Andrew Waterman
e62e578931
Remove bus_t::find_device variant that lacks len argument
1 year ago
Andrew Waterman
964431052a
Remove redundant abstract_mem_t::size declaration
1 year ago
Andrew Waterman
cb5df84098
Hide variant of bus_t::find_device that lacks len arg
1 year ago
Andrew Waterman
c8f6f29a11
Avoid using bus_t::find_device without len arg
1 year ago
Andrew Waterman
8c2f70c9ec
Check for device overlap when registering new devices
Robustness improvement.
1 year ago
Andrew Waterman
02f9b3a27e
Check device sizes when accessing bus
Robustness improvement.
1 year ago
Andrew Waterman
45e25d596e
Add abstract_device_t::size method; add to all devices
1 year ago
Andrew Waterman
14029ef4f8
Refactor bus_t::load/store for DRY
1 year ago
Andrew Waterman
c1c0b8b18c
Merge pull request #1945 from riscv-software-src/fix-jump-table
Fix jump-table accesses in MMIO regions
1 year ago
Andrew Waterman
51002ff19f
Fix jump-table accesses in MMIO regions
Resolves #1944
1 year ago
Andrew Waterman
fd89a02dbf
Merge pull request #1931 from rogerchang23424/fix-csr
Fix CSR initial affected by DTS
1 year ago
Roger Chang
779fc51b7c
Fix CSR initial affected by DTS
Add processor_t::reset() method after MMU update by DTS to correct
status mask value
1 year ago
Andrew Waterman
f6d41bca17
Merge pull request #1901 from binno/cfi_fixes
CFI fixes
1 year ago
Binno
bdac9897a7
Raise store access fault as accessing undefined mmio region by SS instructions
* base on CFI spec, ch2.8
The access type is classified as a store/AMO in the event of an
access-fault, page-fault, or guest-page
fault exception triggered by shadow stack instructions.
1 year ago
Binno
47cc7e844f
Ssrdp should write sign-extension value as xlen is 32
1 year ago
Binno
c1d797abdc
Implement elp state holding mechanism for mnstatus
2 years ago