riscv-isa-sim.git
10 years agoFix commit log when !debug
Andrew Waterman [Wed, 12 Feb 2014 09:32:11 +0000 (01:32 -0800)]
Fix commit log when !debug

10 years agoRevert to old AUIPC definition
Andrew Waterman [Tue, 11 Feb 2014 03:00:16 +0000 (19:00 -0800)]
Revert to old AUIPC definition

10 years agoClear EVEC LSBs, which kindly prevents a segfault
Andrew Waterman [Fri, 7 Feb 2014 09:15:49 +0000 (01:15 -0800)]
Clear EVEC LSBs, which kindly prevents a segfault

10 years agoFix disassembly of JAL
Andrew Waterman [Thu, 6 Feb 2014 22:03:07 +0000 (14:03 -0800)]
Fix disassembly of JAL

10 years agocommit missing definitions for uarch counters
Yunsup Lee [Thu, 6 Feb 2014 19:24:39 +0000 (11:24 -0800)]
commit missing definitions for uarch counters

10 years agoMove half precision instructions, add vfmsv, vfmvv
Quan Nguyen [Tue, 4 Feb 2014 04:21:19 +0000 (20:21 -0800)]
Move half precision instructions, add vfmsv, vfmvv

10 years agoFix linking on Darwin
Andrew Waterman [Sat, 1 Feb 2014 01:21:37 +0000 (17:21 -0800)]
Fix linking on Darwin

10 years agoDisasm now translates xor x0,x0,x0 as a machine-generated bubble ("-").
Christopher Celio [Wed, 29 Jan 2014 01:06:27 +0000 (17:06 -0800)]
Disasm now translates xor x0,x0,x0 as a machine-generated bubble ("-").

  It is very convenient for pipeline trace viewing to differentiate
  between compiler NOPs and pipeline bubbles.

10 years agoForce extension loaders to be linked in
Andrew Waterman [Tue, 28 Jan 2014 11:38:28 +0000 (03:38 -0800)]
Force extension loaders to be linked in

10 years agoEnable runtime loading of dynamic library with --extlib
Andrew Waterman [Mon, 27 Jan 2014 05:50:31 +0000 (21:50 -0800)]
Enable runtime loading of dynamic library with --extlib

10 years agoPrefer libraries located in current directory
Andrew Waterman [Mon, 27 Jan 2014 05:48:57 +0000 (21:48 -0800)]
Prefer libraries located in current directory

10 years agoEliminate hwacha <-> riscv circular dependence
Andrew Waterman [Mon, 27 Jan 2014 00:26:39 +0000 (16:26 -0800)]
Eliminate hwacha <-> riscv circular dependence

We now split out the spike executable into another subproject,
which depends on both rocket and hwacha

10 years agoLink subproject dynamic libraries correctly
Andrew Waterman [Mon, 27 Jan 2014 00:26:25 +0000 (16:26 -0800)]
Link subproject dynamic libraries correctly

10 years agoMerge softfloat_riscv into softfloat
Andrew Waterman [Sun, 26 Jan 2014 02:31:32 +0000 (18:31 -0800)]
Merge softfloat_riscv into softfloat

They really aren't independent libraries.

10 years agoRequire libdl for dynamic linking at runtime
Andrew Waterman [Fri, 24 Jan 2014 09:35:13 +0000 (01:35 -0800)]
Require libdl for dynamic linking at runtime

10 years agoDisassemble amoxor
Andrew Waterman [Fri, 24 Jan 2014 09:34:50 +0000 (01:34 -0800)]
Disassemble amoxor

10 years agoBuild and use shared libraries only
Andrew Waterman [Fri, 24 Jan 2014 09:23:08 +0000 (01:23 -0800)]
Build and use shared libraries only

10 years agoBuild and use shared libraries
Andrew Waterman [Fri, 24 Jan 2014 09:09:05 +0000 (01:09 -0800)]
Build and use shared libraries

10 years agoHandle CSR permissions correctly
Andrew Waterman [Fri, 24 Jan 2014 09:08:40 +0000 (01:08 -0800)]
Handle CSR permissions correctly

10 years agoUse auto-generated trap cause numbers
Andrew Waterman [Wed, 22 Jan 2014 00:20:58 +0000 (16:20 -0800)]
Use auto-generated trap cause numbers

10 years agoMerge branch 'confprec'
Quan Nguyen [Tue, 21 Jan 2014 04:33:22 +0000 (20:33 -0800)]
Merge branch 'confprec'

Conflicts:
hwacha/hwacha.mk.in

10 years agoInitialize tohost and fromhost to zero
Andrew Waterman [Thu, 16 Jan 2014 08:09:27 +0000 (00:09 -0800)]
Initialize tohost and fromhost to zero

Surprising we got away without doing this for so long

10 years agoImprove performance for branchy code
Andrew Waterman [Tue, 14 Jan 2014 00:42:02 +0000 (16:42 -0800)]
Improve performance for branchy code

We now use a heavily unrolled loop as the software I$, which allows the
host machine's branch target prediction to associate target PCs with
unique-ish host PCs.

10 years agoSpeed things up quite a bit
Andrew Waterman [Tue, 17 Dec 2013 18:18:47 +0000 (10:18 -0800)]
Speed things up quite a bit

10 years agoNew RDCYCLE encoding
Andrew Waterman [Mon, 9 Dec 2013 23:55:52 +0000 (15:55 -0800)]
New RDCYCLE encoding

10 years agoRemove debug printf in vsetprec
Quan Nguyen [Sat, 30 Nov 2013 04:21:36 +0000 (20:21 -0800)]
Remove debug printf in vsetprec

10 years agoAdd vsetprec instruction prototype
Quan Nguyen [Sat, 30 Nov 2013 04:10:46 +0000 (20:10 -0800)]
Add vsetprec instruction prototype

11 years agoUpdate to new privileged ISA
Andrew Waterman [Mon, 25 Nov 2013 12:42:03 +0000 (04:42 -0800)]
Update to new privileged ISA

11 years agoMerge branch 'master' of github.com:ucb-bar/riscv-isa-sim into HEAD
Quan Nguyen [Mon, 25 Nov 2013 05:59:52 +0000 (21:59 -0800)]
Merge branch 'master' of github.com:ucb-bar/riscv-isa-sim into HEAD

11 years agofix slli/slliw encoding bug
Yunsup Lee [Thu, 21 Nov 2013 22:42:32 +0000 (14:42 -0800)]
fix slli/slliw encoding bug

11 years agoadd accelerator disabled cause
Yunsup Lee [Wed, 6 Nov 2013 05:03:23 +0000 (21:03 -0800)]
add accelerator disabled cause

11 years agocorrectly trap when SR_EA is disabled
Yunsup Lee [Wed, 6 Nov 2013 05:01:34 +0000 (21:01 -0800)]
correctly trap when SR_EA is disabled

11 years agoFix declaration of half-precision instructions
Albert Ou [Tue, 5 Nov 2013 07:25:00 +0000 (23:25 -0800)]
Fix declaration of half-precision instructions

11 years agoRe-add Hwacha header file
Albert Ou [Tue, 5 Nov 2013 06:33:20 +0000 (22:33 -0800)]
Re-add Hwacha header file

11 years agoImplement "half-baked" half-precision instruction subset for Hwacha
Albert Ou [Tue, 5 Nov 2013 06:31:01 +0000 (22:31 -0800)]
Implement "half-baked" half-precision instruction subset for Hwacha

11 years agoMerge branch 'master' of github.com:ucb-bar/riscv-isa-sim into confprec
Albert Ou [Tue, 5 Nov 2013 06:26:53 +0000 (22:26 -0800)]
Merge branch 'master' of github.com:ucb-bar/riscv-isa-sim into confprec

11 years agoinclude stdexcept
Yunsup Lee [Tue, 29 Oct 2013 06:49:08 +0000 (23:49 -0700)]
include stdexcept

11 years agoPass target machine's return code back to OS
Andrew Waterman [Tue, 29 Oct 2013 03:37:39 +0000 (20:37 -0700)]
Pass target machine's return code back to OS

11 years agoAdd missing fcvt opcodes through riscv-opcodes
Quan Nguyen [Mon, 28 Oct 2013 06:02:23 +0000 (23:02 -0700)]
Add missing fcvt opcodes through riscv-opcodes

11 years agoclarify vxcptsave/vxctkill semantics
Yunsup Lee [Tue, 22 Oct 2013 01:53:02 +0000 (18:53 -0700)]
clarify vxcptsave/vxctkill semantics

11 years agoimplement vxcptsave/vxcptrestore
Yunsup Lee [Sat, 19 Oct 2013 05:28:23 +0000 (22:28 -0700)]
implement vxcptsave/vxcptrestore

11 years agoclean up SR_EA, the enable accelerator bit in status reg
Yunsup Lee [Sat, 19 Oct 2013 02:22:08 +0000 (19:22 -0700)]
clean up SR_EA, the enable accelerator bit in status reg

11 years agomore hwacha supervisor stuff
Yunsup Lee [Sat, 19 Oct 2013 02:19:00 +0000 (19:19 -0700)]
more hwacha supervisor stuff

11 years agorefactor disassembler, and add hwacha disassembler
Yunsup Lee [Sat, 19 Oct 2013 00:34:54 +0000 (17:34 -0700)]
refactor disassembler, and add hwacha disassembler

11 years agocan't execute frsr/fssr on ut
Yunsup Lee [Fri, 18 Oct 2013 19:04:46 +0000 (12:04 -0700)]
can't execute frsr/fssr on ut

11 years agoor into control thread's fp exceptions
Yunsup Lee [Fri, 18 Oct 2013 19:02:59 +0000 (12:02 -0700)]
or into control thread's fp exceptions

11 years agoAdd empty opcode header files for half-precision
Quan Nguyen [Fri, 18 Oct 2013 06:47:14 +0000 (23:47 -0700)]
Add empty opcode header files for half-precision

* Update riscv/opcodes.h through the riscv-opcodes repository.

11 years agocatch trap_illegal_instruction in hwacha
Yunsup Lee [Fri, 18 Oct 2013 02:44:53 +0000 (19:44 -0700)]
catch trap_illegal_instruction in hwacha

11 years agoadd hwacha exception support
Yunsup Lee [Fri, 18 Oct 2013 02:34:26 +0000 (19:34 -0700)]
add hwacha exception support

11 years agofix custom-1 rocc encoding
Yunsup Lee [Fri, 18 Oct 2013 02:32:55 +0000 (19:32 -0700)]
fix custom-1 rocc encoding

11 years agofix maxvl calc logic
Yunsup Lee [Wed, 16 Oct 2013 22:10:12 +0000 (15:10 -0700)]
fix maxvl calc logic

11 years agouse reset virtual method
Yunsup Lee [Wed, 16 Oct 2013 21:27:12 +0000 (14:27 -0700)]
use reset virtual method

11 years agouse uint32_t for vl
Yunsup Lee [Wed, 16 Oct 2013 21:26:59 +0000 (14:26 -0700)]
use uint32_t for vl

11 years agofix missing null check when there's no extension
Yunsup Lee [Wed, 16 Oct 2013 21:26:13 +0000 (14:26 -0700)]
fix missing null check when there's no extension

11 years agorevamp hwacha; now runs in physical mode
Yunsup Lee [Wed, 16 Oct 2013 21:11:18 +0000 (14:11 -0700)]
revamp hwacha; now runs in physical mode

11 years agoPropogate the reset call to the extensions as well. Add reset function to extensions...
Stephen Twigg [Tue, 15 Oct 2013 07:30:46 +0000 (00:30 -0700)]
Propogate the reset call to the extensions as well. Add reset function to extensions (demonstration in dummy acc)

11 years agoFix bug where xs2 was not being properly respected.
Stephen Twigg [Tue, 15 Oct 2013 07:21:00 +0000 (00:21 -0700)]
Fix bug where xs2 was not being properly respected.

11 years agocommit configure script; new configure option --enable-commitlog
Yunsup Lee [Thu, 10 Oct 2013 19:07:30 +0000 (12:07 -0700)]
commit configure script; new configure option --enable-commitlog

11 years agoAdded commit logging (--enable-commitlog). Also fixed disasm bug.
Christopher Celio [Fri, 27 Sep 2013 09:17:19 +0000 (02:17 -0700)]
Added commit logging (--enable-commitlog). Also fixed disasm bug.

11 years agoUse WRITE_RD/WRITE_FRD macros to write registers
Andrew Waterman [Fri, 27 Sep 2013 07:15:35 +0000 (00:15 -0700)]
Use WRITE_RD/WRITE_FRD macros to write registers

11 years agoBye, CB
Andrew Waterman [Fri, 27 Sep 2013 03:53:36 +0000 (20:53 -0700)]
Bye, CB

11 years agofixes compile bug for not being able to find std::logic_error
Scott Beamer [Mon, 23 Sep 2013 22:49:23 +0000 (15:49 -0700)]
fixes compile bug for not being able to find std::logic_error

11 years agoFix Scott's deadlock
Andrew Waterman [Mon, 23 Sep 2013 22:47:50 +0000 (15:47 -0700)]
Fix Scott's deadlock

Not Scott's fault, I mean

11 years agoAdjust rocc_inst_t to properly extract fields due to the new ISA encoding.
Stephen Twigg [Sun, 22 Sep 2013 09:21:13 +0000 (02:21 -0700)]
Adjust rocc_inst_t to properly extract fields due to the new ISA encoding.

11 years agoUpdate ISA encoding and AUIPC semantics
Andrew Waterman [Sat, 21 Sep 2013 13:40:54 +0000 (06:40 -0700)]
Update ISA encoding and AUIPC semantics

11 years agoAdd helper disassembly program
Andrew Waterman [Sun, 15 Sep 2013 11:27:07 +0000 (04:27 -0700)]
Add helper disassembly program

11 years agoISA changes
Andrew Waterman [Sun, 15 Sep 2013 11:26:35 +0000 (04:26 -0700)]
ISA changes

11 years agoAdd AMOXOR
Andrew Waterman [Wed, 11 Sep 2013 11:13:27 +0000 (04:13 -0700)]
Add AMOXOR

11 years agoImplement zany immediates
Andrew Waterman [Wed, 11 Sep 2013 10:12:11 +0000 (03:12 -0700)]
Implement zany immediates

11 years agoDon't tick HTIF as often
Andrew Waterman [Tue, 10 Sep 2013 09:07:08 +0000 (02:07 -0700)]
Don't tick HTIF as often

11 years agoAdd rd field to JAL; drop J
Andrew Waterman [Tue, 10 Sep 2013 09:06:56 +0000 (02:06 -0700)]
Add rd field to JAL; drop J

11 years agoRenumber PCRs
Andrew Waterman [Sun, 18 Aug 2013 11:14:16 +0000 (04:14 -0700)]
Renumber PCRs

11 years agoAdd test program for dummy rocc
Andrew Waterman [Tue, 13 Aug 2013 07:54:21 +0000 (00:54 -0700)]
Add test program for dummy rocc

Should move this elsewhere

11 years agoImplement RoCC and add a dummy RoCC
Andrew Waterman [Tue, 13 Aug 2013 07:51:07 +0000 (00:51 -0700)]
Implement RoCC and add a dummy RoCC

Enable it with --extension=dummy

11 years agoInstructions are no longer member functions
Andrew Waterman [Mon, 12 Aug 2013 02:10:51 +0000 (19:10 -0700)]
Instructions are no longer member functions

11 years agoIgnore JALR's effective address LSB
Andrew Waterman [Thu, 8 Aug 2013 03:13:33 +0000 (20:13 -0700)]
Ignore JALR's effective address LSB

11 years agoDisentangle some header files
Andrew Waterman [Wed, 7 Aug 2013 01:00:30 +0000 (18:00 -0700)]
Disentangle some header files

11 years agoRename MTFSR/MFFSR to FSSR/FRSR
Andrew Waterman [Wed, 7 Aug 2013 01:00:18 +0000 (18:00 -0700)]
Rename MTFSR/MFFSR to FSSR/FRSR

11 years agoSwap J and JALR encoding
Andrew Waterman [Wed, 7 Aug 2013 00:59:48 +0000 (17:59 -0700)]
Swap J and JALR encoding

11 years agoFix eret (again)
Quan Nguyen [Thu, 1 Aug 2013 04:33:25 +0000 (21:33 -0700)]
Fix eret (again)

* Set SR_S if SR_PS is set, not the other way around
  (that is, set SR_S if SR_PS is not set).

11 years agoFix dumb ERET bug
Andrew Waterman [Wed, 31 Jul 2013 20:37:33 +0000 (13:37 -0700)]
Fix dumb ERET bug

11 years agoDon't flush TLB on PTBR writes (only FATC)
Andrew Waterman [Mon, 29 Jul 2013 02:46:18 +0000 (19:46 -0700)]
Don't flush TLB on PTBR writes (only FATC)

11 years agoNew supervisor mode
Andrew Waterman [Sat, 27 Jul 2013 03:25:18 +0000 (20:25 -0700)]
New supervisor mode

11 years agoRemove more vector stuff
Andrew Waterman [Sat, 27 Jul 2013 01:12:36 +0000 (18:12 -0700)]
Remove more vector stuff

11 years agoRename MFTX/MXTF to FMV
Andrew Waterman [Sat, 27 Jul 2013 00:44:11 +0000 (17:44 -0700)]
Rename MFTX/MXTF to FMV

11 years agoRip out Hwacha for now
Andrew Waterman [Fri, 26 Jul 2013 11:39:25 +0000 (04:39 -0700)]
Rip out Hwacha for now

11 years agoRip out RVC for now
Andrew Waterman [Fri, 26 Jul 2013 11:15:57 +0000 (04:15 -0700)]
Rip out RVC for now

11 years agoGenerate instruction decoder dynamically
Andrew Waterman [Fri, 26 Jul 2013 10:34:51 +0000 (03:34 -0700)]
Generate instruction decoder dynamically

This will make it easier for accelerators to add instructions.

11 years agoRemove JALR static hints
Andrew Waterman [Thu, 25 Jul 2013 23:13:08 +0000 (16:13 -0700)]
Remove JALR static hints

11 years agoKill spike when xspike is SIGINTed
Andrew Waterman [Tue, 23 Jul 2013 01:45:45 +0000 (18:45 -0700)]
Kill spike when xspike is SIGINTed

11 years agoDon't use stdout for debugging
Andrew Waterman [Mon, 22 Jul 2013 21:52:51 +0000 (14:52 -0700)]
Don't use stdout for debugging

11 years agoAdd xspike program
Andrew Waterman [Mon, 22 Jul 2013 21:48:54 +0000 (14:48 -0700)]
Add xspike program

11 years agoUse calloc to allocate target memory
Andrew Waterman [Sat, 20 Jul 2013 01:12:50 +0000 (18:12 -0700)]
Use calloc to allocate target memory

It just calls mmap under the hood, anyway...

11 years agoEliminate infinite loop in debug mode
Andrew Waterman [Sat, 13 Jul 2013 01:42:27 +0000 (18:42 -0700)]
Eliminate infinite loop in debug mode

11 years agoExit cleanly from debug console
Andrew Waterman [Sat, 13 Jul 2013 01:23:05 +0000 (18:23 -0700)]
Exit cleanly from debug console

11 years agoFavor procs.size() over num_cores()
Andrew Waterman [Sat, 13 Jul 2013 01:22:25 +0000 (18:22 -0700)]
Favor procs.size() over num_cores()

11 years agoFix SR_U64 bit being ignored
Andrew Waterman [Sat, 13 Jul 2013 01:20:16 +0000 (18:20 -0700)]
Fix SR_U64 bit being ignored

11 years agomake spike.o correctly depend on dispatch.h
Andrew Waterman [Mon, 3 Jun 2013 05:14:19 +0000 (22:14 -0700)]
make spike.o correctly depend on dispatch.h

11 years agouse coreutils `seq' instead of hacky `range'
Andrew Waterman [Mon, 3 Jun 2013 02:01:57 +0000 (19:01 -0700)]
use coreutils `seq' instead of hacky `range'

11 years agochange riscv-isa-run to spike in documentation
Yunsup Lee [Wed, 15 May 2013 19:03:00 +0000 (12:03 -0700)]
change riscv-isa-run to spike in documentation