Anthony Pesch
8c4d1cecb1
initial libretro support
2017-05-05 00:00:16 -04:00
Anthony Pesch
393828670e
remove audio backend
2017-05-04 20:04:45 -04:00
Anthony Pesch
824be359eb
rename window.c to window_sdl.c
2017-04-20 17:02:56 -04:00
Anthony Pesch
4529e50280
removed emu/ subdirectory
2017-04-11 18:21:44 -04:00
Anthony Pesch
af48774b16
added blocks to ir
...
added control flow analysis pass
2017-01-07 00:32:54 -08:00
James Jacobsson
c803ad01f3
Change default build type to RelWithDebInfo ( #66 )
2017-02-16 05:18:07 +01:00
joseph
c01c6a1077
Validate bootrom on startup
2017-01-04 15:49:35 -06:00
Anthony Pesch
32a8239132
windows build fixes
2017-01-01 22:06:16 -08:00
Anthony Pesch
60648835e0
fix gcc release warning
2016-12-21 00:44:52 -08:00
joseph
4ba9885aab
Add basic constant propagation simplification
2016-12-18 16:51:05 -06:00
Anthony Pesch
b7d4f88ea6
remove minmax heap usage
2016-12-17 23:25:12 -08:00
Anthony Pesch
c84d92fcd3
moved optimization passes
2016-12-17 18:37:12 -08:00
Anthony Pesch
477560a74b
added intermediate relib 'object library' to speed up recc / retest builds
2016-12-17 16:36:33 -08:00
Anthony Pesch
c254194dda
remove unsupported warning flag
2016-12-17 16:21:57 -08:00
Anthony Pesch
646fd314f5
fix for test_ldcl_stcl_sr
2016-12-17 16:20:30 -08:00
Anthony Pesch
9e21119f92
reenable sh4 tests
2016-12-17 16:06:47 -08:00
Anthony Pesch
a0a1108d88
remove test_ prefix from tests
2016-12-17 14:31:40 -08:00
Anthony Pesch
292ce8c38d
reenabled interval tree tests
2016-12-17 14:27:54 -08:00
Anthony Pesch
ac6bd3a677
added TEST macro
...
reenabled test_list_*
fixed bug when adding an uninitialized list_node
2016-12-17 01:31:50 -08:00
Anthony Pesch
168857b473
add BUILD_TOOLS and BUILD_TESTS options to cmake
...
renabled retest target with a few tests
2016-12-17 00:18:44 -08:00
Anthony Pesch
f67f5c5b12
add emitter stats to recc
2016-12-16 23:35:26 -08:00
Anthony Pesch
03cceedd8d
added libsoundio based audio backend
...
initial mixing work
2016-10-17 21:17:04 -07:00
Anthony Pesch
ae3d459960
removed failed atomic shim, compile ringbuf as c++
2016-12-11 13:25:09 -08:00
Anthony Pesch
65da96d130
windows build fixes
2016-12-11 13:07:19 -08:00
Anthony Pesch
52c066c607
added single producer / single consumer ring buffer
...
added atomic load / fetch / store / exchange macros to work around msvc not supporting stdatomic.h
added sleep shim for windows
2016-12-11 11:46:14 -08:00
Anthony Pesch
2b28a457da
added initial expression simplification pass
2016-12-10 13:08:55 -08:00
Anthony Pesch
c6b6bcfc76
reenabled recc builds
...
added basic readme for recc
added support for labels to ir_read() and ir_write()
added debug menu option to start / stop the dumping of the SH4 IR
2016-12-04 16:29:51 -08:00
Anthony Pesch
1bc1cebfea
don't try and set a default CMAKE_BUILD_TYPE
2016-12-03 12:56:09 -08:00
Anthony Pesch
6ea5cd3e4a
added new backend-specific dispatch system to each guest cpu
...
made the jit track edges (branches) between basic blocks at runtime
added hand-optimized, backend-specific main loop for each guest cpu
moved code caching responsibilities into each guest cpu's dispatch system
added support for patching static edges between blocks as discovered at runtime to be direct jumps
2016-11-26 23:42:14 -08:00
Anthony Pesch
d092b097df
renamed stats aggregate counters, merged back into profiler
2016-11-30 21:59:05 -08:00
Anthony Pesch
4e14eafd71
initial VMU support
2016-11-29 20:15:48 -08:00
Anthony Pesch
74cd15b79f
move time-based stats out of profiler
...
split stats into groups based on cpu / gpu thread so they can be updated safely
2016-11-27 18:26:23 -08:00
Anthony Pesch
c549ee05de
windows build fixes
2016-11-27 14:36:37 -08:00
Leah Petersen
03e4911537
mac compile fixes
2016-11-27 10:50:23 -08:00
Anthony Pesch
0a1302752e
added option to write perf-compatible maps for generated code
2016-11-18 22:57:53 -08:00
Anthony Pesch
3d8f575713
fixed up microprofile implementation
2016-11-17 22:40:44 -08:00
Anthony Pesch
26e1d47900
initial armv3 interpreter
2016-11-16 20:22:43 -08:00
Anthony Pesch
3490477976
split up sh4 code into files for each individual module (ccn, dmac, intc, etc.)
...
refactored sh4 code cache into a common jit struct to be used by the arm7 cpu
2016-10-18 23:54:30 -07:00
Anthony Pesch
b4bc578505
moved arm7 source
2016-10-17 21:05:04 -07:00
Anthony Pesch
d356d14569
initial audio scaffolding
2016-10-15 16:13:56 -07:00
Anthony Pesch
a8ab33ede4
moved renderer code
2016-10-15 15:53:05 -07:00
Anthony Pesch
b74152f1e6
move boot / flash roms over to their own devices
2016-10-09 15:48:15 -07:00
Anthony Pesch
ffc62406c7
merged g2.c into holly.c
2016-10-05 22:29:41 -07:00
Anthony Pesch
7f7a2d3239
moved powervr code
2016-10-05 22:25:38 -07:00
Anthony Pesch
4966985f89
updated memory code to share physical regions between multiple address spaces
2016-09-27 23:26:20 -07:00
Anthony Pesch
bc632abacd
use -fms-extensions for anonymous base device struct
2016-09-25 19:00:13 -07:00
Anthony Pesch
a60442724f
fix travis ci
2016-07-08 19:49:08 -07:00
Anthony Pesch
bd352c3cc4
multithreaded rendering
2016-06-28 09:06:56 -07:00
Anthony Pesch
a68084ffa0
updated recc
2016-06-26 23:18:58 -07:00
Anthony Pesch
372210642a
ported tracer without ui
2016-06-22 22:48:16 -07:00
Anthony Pesch
e7a8281d53
nuklear wip
2016-06-21 09:07:26 -07:00
Anthony Pesch
7f54ca1d72
added nuklear source
2016-06-21 20:44:55 -04:00
Anthony Pesch
191f39d3b3
gcc / linux build fixes
2016-06-18 15:24:07 -07:00
Anthony Pesch
20dd75aa67
remove imgui
2016-06-18 00:16:06 -07:00
Anthony Pesch
3814b108e3
disable imgui
2016-06-16 08:50:51 -07:00
Anthony Pesch
207585f6f6
converted tracer
2016-06-14 22:21:59 -07:00
Anthony Pesch
aa1a7ee99c
converted emulator.cc
2016-06-12 15:00:36 -07:00
Anthony Pesch
28533002af
jit c refactor
2016-06-04 14:21:15 -07:00
Anthony Pesch
37915e7129
initial c refactor
2016-05-22 19:57:47 -07:00
Anthony Pesch
d237bba78f
renamed MapleController -> Controller
2016-04-25 22:15:53 -07:00
Anthony Pesch
aa5b8b1d8f
add bundle target for OSX
2016-04-25 19:56:41 -07:00
Anthony Pesch
7d639cb74a
split memory system up to support mapping multiple address spaces to the same backing shared memory
2016-04-24 23:19:03 -07:00
Anthony Pesch
7c2cdfbb56
updated eigen to 3.2.8
2016-04-22 21:55:08 -07:00
Anthony Pesch
88639101dd
linux compile fixes
2016-04-21 23:37:52 -07:00
Anthony Pesch
aaecac5902
replace beaengine with capstone
2016-04-21 23:08:58 -07:00
Anthony Pesch
ea27e1f128
added sh4 analyzer
2016-04-21 20:42:52 -07:00
Anthony Pesch
d49d107b78
placeholder sext/zext/trunc elimination pass
2016-04-11 01:22:16 -07:00
Anthony Pesch
4350858651
added AICA ChannelData and CommonData bitfields
...
added ARM7 scaffolding
2016-04-11 01:22:06 -07:00
Anthony Pesch
879e6dffe7
upgrade to sdl 2.0.4
2016-04-10 16:11:37 -07:00
Anthony Pesch
09c5fa10cf
added directory processing to recc
2016-04-10 11:12:28 -07:00
Anthony Pesch
0242a67532
added debug logging
...
added debug pass stats to recc
2016-04-10 10:00:15 -07:00
Anthony Pesch
055af5081e
refactored to remove hw/ references from jit/ folder
...
added recc tool for compiling ir offline
2016-04-09 03:38:09 -07:00
Anthony Pesch
a87a9a2475
remove WSAStartup from main project, need to move into gdb_server
2016-04-08 22:17:31 -07:00
Anthony Pesch
b0dbdf6e50
Revert "removed beaengine"
...
This reverts commit 9528d9beaa
.
2016-04-07 23:44:27 -07:00
Anthony Pesch
38597832e6
update xbyak version
2016-04-06 22:19:10 -07:00
Anthony Pesch
56d039e643
linux build fixes
2016-03-25 01:41:57 -07:00
Anthony Pesch
05388bca6f
split up int / float IR ops
...
added support for fcnvsd and fcnvds
2016-03-23 18:45:47 -07:00
Anthony Pesch
8b94d8e9f6
consolidated comparison ir ops into OP_ICMP and OP_FCMP
2016-03-23 01:40:01 -07:00
Anthony Pesch
d26b7a092f
removed interpreter backend
2016-03-23 01:17:09 -07:00
Anthony Pesch
d234f630f1
make Instr inherit from value, removing result property
...
updated register allocation to account for the fact that the result is no longer a part of the reference set
added basic dead code elimination pass
2016-03-23 00:54:24 -07:00
Anthony Pesch
c836560bc9
window system refactor
...
added imgui for gui rendering
added WindowInterface to Machine class enabling hardware to tap into window events for input and rendering
2016-03-18 18:06:57 -07:00
Anthony Pesch
3d491054c7
merge ta and texcache
2016-03-15 22:30:01 -07:00
Anthony Pesch
c9880d277f
shuffled around trace viewer code
2016-03-06 02:02:54 -08:00
Anthony Pesch
c5e32a182f
removed RestoreArgs hack
2016-02-29 23:51:43 -08:00
Anthony Pesch
498990fcb2
initial debugger support
2016-02-29 23:51:42 -08:00
Anthony Pesch
ede8b2f758
refactored hw/ code adding Machine, Device and Device interfaces
2016-02-29 23:51:42 -08:00
Anthony Pesch
2b42b9c85c
only enable ASM_MASM on win32
2016-02-29 23:51:42 -08:00
Anthony Pesch
def67f72cd
missed REQUIRED flag on clang-tidy
2016-02-29 23:51:42 -08:00
Anthony Pesch
b07dc0575d
clang-tidy and clang-format are not required dependencies
2016-02-29 23:51:42 -08:00
Anthony Pesch
a65b4f51b2
remove -Wno-strict-aliasing
2016-02-29 23:51:41 -08:00
Anthony Pesch
b587b3611b
project rename
2016-02-29 23:51:41 -08:00
Anthony Pesch
198cd53525
consider aliased values when eliminating loads and stores
...
added tests for load store elimination aliasing
2016-02-29 23:51:38 -08:00
Anthony Pesch
72b5edbeba
replaced horribly broken 64-bit float implementation
2016-02-12 17:28:38 -08:00
Anthony Pesch
8d9987843d
added IRReader for deserializing IRWriter output
2016-02-12 17:28:38 -08:00
Anthony Pesch
4be33f7ee4
removed core.h, added config.h.in
2016-02-12 17:28:37 -08:00
Anthony Pesch
25eccee9f4
improved IR writing
2016-02-12 17:28:37 -08:00
Anthony Pesch
9ce4318d24
rename sh4_instr.cc
2016-02-12 17:28:37 -08:00
Anthony Pesch
a039b60d52
get tests back running
2016-02-12 17:28:37 -08:00
Anthony Pesch
57944b3ceb
refactored scheduler to more fairly update timers
2016-02-12 17:28:37 -08:00
Anthony Pesch
2a17810a25
msvc compilation fixes
2016-02-12 17:28:36 -08:00