Andrew Waterman
ec297672b0
On misaligned fetch, set EPC to target, not branch itself
12 years ago
Andrew Waterman
3fd738af16
Reduce dependences on auto-generated code
In particular, precompiled headers ideally won't depend on any.
12 years ago
Palmer Dabbelt
e104cd11f5
Merge branch 'netbsd-autoconf'
This contains some changes that fix the build on NetBSD.
12 years ago
Palmer Dabbelt
abc20b6543
autoreconf 65ba70071d
12 years ago
Reinoud Zandijk
65ba70071d
Allow Spike to build on NetBSD
Under NetBSD, dlopen() is in libc so no extra libs are needed.
12 years ago
Andrew Waterman
416c8be88c
Support building from within root directory
12 years ago
Andrew Waterman
e26e8c5879
Fix makefile race condition
12 years ago
Andrew Waterman
327a66f990
Merge pull request #11 from arunthomas/readme
README: use gnu-toolchain
12 years ago
Arun Thomas
cee386df0d
README: use gnu-toolchain
12 years ago
Andrew Waterman
dd8827e8b3
zero-extend 32b instructions for vxcptaux
12 years ago
Andrew Waterman
d643e43dca
Support 2/4/6/8-byte instructions
Most of the complexity is in instruction address translation, since
instructions may span page boundaries.
12 years ago
Andrew Waterman
cec752d091
Set badvaddr on instruction page faults
This supports distinguishing the EPC (the address of the first byte of the
faulting instruction) from the address of the page fault (potentially some
bytes later).
12 years ago
Andrew Waterman
992205c270
Update register names to match new ABI
12 years ago
Andrew Waterman
b06c8e9f26
Implement timer faithfully
rdcycle/rdinstret now have single-instruction granularity. Questionable
behavior when timer interrupts occurred around the same time as the compare
register is written should be fixed.
12 years ago
Andrew Waterman
590417bec9
Factor out the dummy RoCC accelerator
12 years ago
Yunsup Lee
c31742961b
Revert "Enable support for the four custom instructions"
This reverts commit fd18dc43f6 .
Refactoring support for custom instructions.
12 years ago
Andrew Waterman
306b7359e8
Suppress harmless warnings
specifically, unused variables in auto-generated code.
12 years ago
Andrew Waterman
8e7ae9b1d6
Add missing makefile dependence
This manifested as a spurious compile warning when using make -j.
12 years ago
Andrew Waterman
f3af66af20
Merge pull request #8 from arunthomas/dummy_rocc_test
dummy-rocc-test build fix
12 years ago
Arun Thomas
27f16e643f
dummy-rocc-test build fix
12 years ago
Yunsup Lee
c7acf41da5
Merge pull request #4 from arunthomas/custom_inst
Enable support for the four custom instructions
12 years ago
Arun Thomas
fd18dc43f6
Enable support for the four custom instructions
* Update generated encoding.h (generated from riscv-opcodes)
* Add empty implementations for the custom instructions
12 years ago
Andrew Waterman
2e127592a7
Avoid some unused variable warnings
...and also save some space by not defining the register names in a header.
12 years ago
Andrew Waterman
baa8d8be1f
Avoid use of __int128_t
It is nonstandard, and GCC doesn't support it on 32-bit platforms. The
resulting code for MULH[[S]U] is crappier, but that doesn't really matter,
as these instructions are dynamically infrequent.
12 years ago
Scott Beamer
eb27fce99c
Merge pull request #2 from arunthomas/build_fix
Update riscv.ac to set CPPFLAGS with fesvr include path
12 years ago
Arun Thomas
d79f7b2dcc
Update riscv.ac to set CPPFLAGS with fesvr include path
Need to set CPPFLAGS in riscv.ac in addition to configure
12 years ago
Scott Beamer
3f9ce874eb
now can build with clang
on os x, clang needs different flags than gcc to generate and use precompiled headers
12 years ago
Jim Lawson
4d1c63ea26
Update configure to set CPPFLAGS instead of CFLAGS with fesvr include path.
Since we no longer are duplicating CFLAGS, ensure CPPFLAGS are set
correctly.
12 years ago
Scott Beamer
44793fde81
don't include same flags twice
12 years ago
Scott Beamer
0ac8a9b068
clean up warnings from clang
12 years ago
Christopher Celio
616cc32c30
Added PC histogram option.
- Spits out all PCs (on 4B granularity) executed with count.
- Requires a compile time configuration option.
- Also requires a run-time flag.
12 years ago
Andrew Waterman
e2c0c3021a
Support uarch counters (degenerately)
12 years ago
Scott Beamer
dca8e36dee
fix typo in README
12 years ago
Sagar Karandikar
d91c30aefe
change README to markdown
12 years ago
Scott Beamer
fcc557da9d
added support for register convention names in debug mode
12 years ago
Scott Beamer
7812ee06e6
couple of more notes on debug mode
12 years ago
Scott Beamer
e15f2cd699
notes on using debug mode
12 years ago
Andrew Waterman
752a7e8060
Disallow access to FCSR when FP is disabled
12 years ago
Andrew Waterman
43615c60e7
Use precompiled headers to speed up compilation
12 years ago
Andrew Waterman
8a45108918
Minor refactoring
12 years ago
Christopher Celio
3d17e24e8d
Commit log now prints while interrupts are enabled.
- Previous behavior was to print the commit log only in user code.
12 years ago
Andrew Waterman
1c3a5b1d1b
Only print commit log if instruction commits
12 years ago
Andrew Waterman
013657ac8c
Set status.u64 to true on boot
This isn't required by the ISA but it matches existing HW.
12 years ago
Andrew Waterman
acc42d79e2
fix disassembly of bnez and friends
12 years ago
Stephen Twigg
e23899eae2
Merge branch 'tm'
12 years ago
Stephen Twigg
97c0aa44d3
Sync encoding in opcodes
12 years ago
Stephen Twigg
963c0825a7
Add ut_fclass_s/d hwacha (unused until encoding sync)
12 years ago
Andrew Waterman
06b8f69622
Support RV32 RDTIMEH/RDCYCLEH/RDINSTRETH
12 years ago
Andrew Waterman
a076538866
speed up compilation a bit
12 years ago
Andrew Waterman
466b679dcf
New FP encoding
12 years ago