Andrew Waterman
|
d2b36b1484
|
Fix FLE.D emulation
|
11 years ago |
Andrew Waterman
|
6d84558e15
|
Emulate FP CSRs
|
11 years ago |
Andrew Waterman
|
d05359c14e
|
return -ENOSYS for ioctl, rather than aborting
|
11 years ago |
Andrew Waterman
|
0a81fd3a93
|
Support linkat, unlinkat, mkdirat syscalls
Also, old-style syscalls e.g. open are now implemented with e.g. openat.
|
11 years ago |
Christopher Celio
|
b222ef6bcb
|
Increased max number of files,fds statically supported by pk.
The SPECINT benchmark 445.gobmk reads in a lot of files and would
sometimes fail due to being unable to open more files.
|
11 years ago |
Andrew Waterman
|
68a2fe242b
|
Don't automatically set --host
|
11 years ago |
Arun Thomas
|
eb17863052
|
README: use gnu-toolchain for configure step
|
11 years ago |
Andrew Waterman
|
19c8f69148
|
Relocate binaries that conflict with the pk's address space
Of course, this is only possible for PIEs, e.g. the dynamic linker.
|
11 years ago |
Yunsup Lee
|
015195b66e
|
Revert "Enable support for the four custom instructions"
This reverts commit 2fa1726f0e.
Refactoring support for custom instructions.
|
12 years ago |
Andrew Waterman
|
069bdd3f0d
|
Implement draft of new calling convention
Here is the new syscall ABI:
syscall number in a7
args in a0 - a6
return value in a0
Here is the integer register map:
x0 -> x0
x1 -> ra
x2 -> sp
x3 -> tp
x4 -> gp
x5 -> t0
x6 -> t1
x7 -> t2
x8 -> s0
x9 -> s1
x10 -> a0
x11 -> a1
x12 -> a2
x13 -> a3
x14 -> a4
x15 -> a5
x16 -> a6
x17 -> a7
x18 -> s2
x19 -> s3
x20 -> s4
x21 -> s5
x22 -> s6
x23 -> s7
x24 -> s8
x25 -> s9
x26 -> s10
x27 -> s11
x28 -> t3
x29 -> t4
x30 -> t5
x31 -> t6
|
12 years ago |
Andrew Waterman
|
514adef486
|
don't forget to release locks!
|
12 years ago |
Andrew Waterman
|
6d45e8de32
|
Prioritize fdiv/fsqrt emulation
|
12 years ago |
Andrew Waterman
|
fda0d85ae4
|
Don't rely on the C library
|
12 years ago |
Yunsup Lee
|
90e6485318
|
Merge pull request #3 from arunthomas/custom_inst
Enable support for the four custom instructions
|
12 years ago |
Arun Thomas
|
2fa1726f0e
|
Enable support for the four custom instructions
* Update generated encoding.h (generated from riscv-opcodes)
|
12 years ago |
Andrew Waterman
|
9eda71d78e
|
Don't assume null pointers can't be dereferenced
This option breaks vm_init's access to word 0 to obtain the memory capacity.
|
12 years ago |
Andrew Waterman
|
3ccbeca6a9
|
Disable pedantic warning under gcc 4.9.1
|
12 years ago |
Andrew Waterman
|
1d953bf6fc
|
Support glibc 2.20 programs
|
12 years ago |
Christopher Celio
|
024053cd98
|
Fix uarch counter printout type.
|
12 years ago |
Andrew Waterman
|
53385b7dbd
|
Merge pull request #2 from ccelio/master
Added "-c" option to track uarch counter info.
|
12 years ago |
Christopher Celio
|
5eba64df88
|
Added "-c" option to track uarch counter info.
|
12 years ago |
Christopher Celio
|
92afb6f407
|
Fixed README to match the riscv-tools build script install location.
|
12 years ago |
Yunsup Lee
|
929d2f0109
|
readme
|
12 years ago |
Christopher Celio
|
0ea44d8707
|
Let timer interrupt stay set on pk start (IP[7]).
Otherwise, the HW will trip the timer interrupt 4B cycles later and thus not match spike.
|
12 years ago |
Christopher Celio
|
7b6a968c83
|
Changes to allow spike & RTL behavior to better match each other.
- EI turned off on sys_exit.
- IM/IP cleared on start.
- badvaddr only saved to tf on page faults.
|
12 years ago |
Andrew Waterman
|
e3fa35fb85
|
Handle options before vm_init is called
This prevents ptbr etc. from being accessed when -p is passed.
|
12 years ago |
Andrew Waterman
|
a421961a41
|
Fix file reference counting bug in physical address mode
|
12 years ago |
Andrew Waterman
|
2934c5a65f
|
Add file reference counting sanity check
|
12 years ago |
Andrew Waterman
|
053aa8ff80
|
Turn off interrupts when talking to host
|
12 years ago |
Colin Schmidt
|
8fc3a35ba5
|
Allow mmap to map new segments larger than 1 page on top of existing mappings and add mprotect syscall
|
12 years ago |
Colin Schmidt
|
863e01b990
|
remove debug print statements
|
12 years ago |
Colin Schmidt
|
7790a3cc37
|
determine the address for an mmap before setuping the vmr
|
12 years ago |
Colin Schmidt
|
e50dc18f5d
|
Add several syscalls, and move syscall header file from newlib
syscalls added (openat, access, accessat, faccessat, etc.)
|
12 years ago |
Andrew Waterman
|
894fe673b4
|
Support mmapping files whose length is not divisible by pgsize
|
12 years ago |
Scott Beamer
|
3d8acf5bf5
|
fixes vm leak. pages that faulted never decref'd their vmr so it wasn't reused
|
12 years ago |
Christopher Celio
|
75bc78fac8
|
PK now advances past breakpoint.
|
12 years ago |
Andrew Waterman
|
d7e575c453
|
Use atomic_cas instead of __sync_bool_compare_and_swap
|
12 years ago |
Stephen Twigg
|
5a7be7d173
|
Sync encoding.h with opcodes
|
12 years ago |
Andrew Waterman
|
249cea820c
|
New FP encoding
|
12 years ago |
Andrew Waterman
|
a43d87cf0a
|
Add fclass.{s|d} instructions
|
12 years ago |
Yunsup Lee
|
07599f5833
|
Renumber uarch CSRs into custom CSR space
|
12 years ago |
Andrew Waterman
|
7c958898bb
|
Revert to old AUIPC definition
|
12 years ago |
Yunsup Lee
|
8b310c29a2
|
commit missing definitions for uarch counters
|
12 years ago |
Andrew Waterman
|
f1f8dbbed0
|
Abandon MIPS convention for indicating syscall errors in register a3
|
12 years ago |
Andrew Waterman
|
ac88604e88
|
Minor cleanup
|
12 years ago |
Andrew Waterman
|
b71e8ecfda
|
Assume pc-relative addressing
|
12 years ago |
Andrew Waterman
|
5cd583648d
|
Speed up glibc init
|
12 years ago |
Andrew Waterman
|
85c6c88804
|
Respect rounding mode for FP -> Int conversions
|
12 years ago |
Andrew Waterman
|
89a0cefd28
|
Add -p flag: force physical memory addressing
|
12 years ago |
Andrew Waterman
|
a502c24732
|
Remove redundant initialization
|
12 years ago |