Andrew Waterman
b7fb80ccf5
Fix paddr_bits computation prior to VM setup
10 years ago
Andrew Waterman
03d4f02158
Merge sasid into sptbr
10 years ago
Andrew Waterman
f5ecf65e5e
Trap on tdrdata registers when tdrselect[XLEN-1]=0
10 years ago
Jonathan Neuschäfer
ab2858e065
make check: Fail if the tests failed
10 years ago
Tim Newsome
1ec78cfedd
Fix 2 bugs in Debug ROM: ( #52 )
1. Debug ROM wasn't actually writing 0xffffffff to the last word in
Debug RAM after an exception happened.
2. Fix a race where debug interrupts were cleared before that write
would have happened, so a debugger (gdbserver.cc in this case) might get
the wrong idea about whether an exception happened or not.
Why wasn't this wreaking havoc before?
10 years ago
Andrew Waterman
f82d42cdef
Add degenerate HW breakpoint implementation
10 years ago
Tim Newsome
68d0fcad87
Keep DCSR_XDEBUGVER unsigned.
10 years ago
neuschaefer
906bbfae48
Minor usability improvements ( #48 )
* spike_main/disasm.cc: Print unknown CSR numbers in hex
* interactive mode: Print "Unknown command" when appropriate
10 years ago
Tim Newsome
127cf78387
DCSR cause was moved, bug debug ROM wasn't updated
As a result Debug ROM would always take the spontaneous halt code path.
This didn't hurt spike since (so far?) the spike debug handler doesn't
attempt to do anything quick while code is running. But now the ROM is
more correct.
10 years ago
Tim Newsome
e977e2297a
Fix 'make check' when run from build directory.
10 years ago
Andrew Waterman
2fe8a17abf
Fix build when not building inside root directory
10 years ago
Andrew Waterman
78dd5ad00d
Add gitignore
10 years ago
Tim Newsome
df1f020012
Move sethaltnot and cleardebint.
Now it matches Krste's memory map.
10 years ago
Tim Newsome
106ece891a
New encoding.h for new CSR addresses.
10 years ago
Tim Newsome
8e11417db5
Move cleardebint, per spec.
10 years ago
Tim Newsome
4c3507d350
Use .word for mret, for now.
The current assembler doesn't seem to know it?
10 years ago
Tim Newsome
968408423f
Change DCSR bits to match spec.
Cleaned up debug ROM code a little.
10 years ago
Tim Newsome
cfdd0f22f6
Kill spike as soon as the test is done with it.
10 years ago
Tim Newsome
6478085c7b
Link standalone programs at 0x80010000.
This leaves some memory for pk, where it keeps tohost/fromhost which we
cannot just write to.
10 years ago
Tim Newsome
fd6c5e5347
Turn off debugging.
All the printfs would be pretty annoying if you're actually using this
to debug something.
Also fixed a small jump bug in halt.
10 years ago
Tim Newsome
91a4f8114d
Tell gdb we can handle large packets.
This speeds up downloads to 93KB/s, which is starting to get usable.
10 years ago
Tim Newsome
9a5ad6994b
Fix writing odd numbers of bytes to odd addresses.
10 years ago
Tim Newsome
df6794374b
Exceptions in Debug Mode don't update any regs.
10 years ago
Tim Newsome
6201d0ee2c
Ignore MPRV in Debug Mode.
10 years ago
Tim Newsome
9baa8a015c
Write test for downloading a mostly random program
It passes, but it's slow.
10 years ago
Tim Newsome
5b2c9df0b3
Remove already-implemented TODO.
10 years ago
Tim Newsome
060d4ee6c8
Move debug rom link map to the right place.
Turns out this doesn't actually matter, but it's better to be correct.
10 years ago
Tim Newsome
b30f5dcca5
Remove obsolete TODO.
10 years ago
Tim Newsome
74a13a1630
Implement ebreak[mhsu].
10 years ago
Tim Newsome
e67da00a37
Remove dependency on include file in my homedir.
10 years ago
Tim Newsome
8b176c4e96
Force gdb to not print entry values.
All of a sudden gdb decided to start printing them, which messed up the
breakpoint test. It would only print them in the test, not if I manually
ran the same commands. I'm sure it's my fault somehow, but this should
keep things consistent in the future.
10 years ago
Tim Newsome
c7643c32e0
mprv test now breaks like it's supposed to.
10 years ago
Tim Newsome
45fb0a0f0e
Deal with escapes that gdb sends in binary data.
10 years ago
Tim Newsome
9b8b9b69d0
Make -H halt the core right out of reset.
Added a test, too.
10 years ago
Tim Newsome
7e5c1b420d
Halt when gdb user hits ^C.
10 years ago
Tim Newsome
f3c39b00ca
Make sure to fence.i after setting/clearing a swbp
This doesn't change anything since Debug ROM already executes a fence.i,
but it will be more correct if that is no longer necessary.
10 years ago
Tim Newsome
76df045861
Implemented register writes.
All existing tests pass!
10 years ago
Tim Newsome
a950cdebb6
Fix reading CSRs.
10 years ago
Tim Newsome
dd233bc499
Single step appears to work.
10 years ago
Tim Newsome
6ef848928a
Software breakpoints sort of work.
10 years ago
Tim Newsome
850e745dcf
Use fence.i in Debug ROM.
This replaces a hack that just disabled all of the icache.
10 years ago
Tim Newsome
ee96c255f1
Fix off-by-two in general read registers.
Now the exit test passes!
10 years ago
Tim Newsome
f9e7a3f1e1
Walk page tables to translate addresses.
10 years ago
Tim Newsome
75b54e90a9
Turn operation into a queue,
in preparation for address translation.
10 years ago
Tim Newsome
6a48baf806
Remove unused code.
Add some debug printfs, which I'll be wanting for at least a little
while.
10 years ago
Tim Newsome
113ea7930b
Save/restore mstatus, too.
Also read DCSR, which will be useful to figure out why we halted.
10 years ago
Tim Newsome
7112906ab9
Ignore more files.
10 years ago
Tim Newsome
6791bfeb57
Properly read s0/s1.
10 years ago
Tim Newsome
fdc92ba2c5
Add dret.
10 years ago
Tim Newsome
19f33802a1
Implement memory writes.
10 years ago