Commit Graph

120 Commits

Author SHA1 Message Date
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
Anthony Pesch 9528d9beaa removed beaengine 2016-02-12 17:28:36 -08:00
Anthony Pesch 20a1437f96 replaced ringbuffer usage in register allocation with minmax heap
removed terrible insert method from ringbuffer
2016-02-12 17:28:31 -08:00
Anthony Pesch 590ecc3849 added source map support for translating host addresses back to guest addresses
added guest address ir opcodes for actually emitting the debug address information
added support for recompiling blocks instead of backpatching for when slow memory access is needed
2016-01-16 13:28:12 -08:00
Anthony Pesch 7f5be10b66 moved Runtime to SH4CodeCache
added --interpreter command line option
2016-01-04 23:50:25 -08:00
Anthony Pesch 71f9290ea4 removed remnants of old branch support 2016-01-04 00:49:03 -08:00
Anthony Pesch 3948eb70a9 cross-platform networking shim 2016-01-04 00:49:03 -08:00
Anthony Pesch ca23cbc1b9 split up memory map / memory code 2016-01-04 00:48:56 -08:00
Anthony Pesch a08f110658 simplified sh4 test generation and execution 2015-12-05 19:56:41 -08:00
Anthony Pesch 5454991347 move memory access watch code into sys 2015-12-02 18:22:23 -08:00
Anthony Pesch e94e0b6979 removed unused virtual tty 2015-12-02 00:09:59 -08:00
Anthony Pesch 82881a4b2f added clang-tidy build step 2015-10-31 19:42:11 -07:00
Anthony Pesch 954bc5f06c splitting up segfault_handler 2015-10-25 07:45:00 -07:00
George Hilios 1b897bfcce misc gcc compilation fixes 2015-10-21 22:10:33 -07:00
Anthony Pesch 0cd8a02aa6 basic posix virtual tty support 2015-10-18 16:28:14 -07:00
Anthony Pesch dcc59ade2d renamed system 2015-10-17 00:40:10 -07:00
Anthony Pesch cf7586381c rename keys 2015-10-17 00:35:35 -07:00
Anthony Pesch 95bfa7d6f8 renamed SIGSEGVHandler 2015-10-17 00:25:07 -07:00
Anthony Pesch 0f995335c0 split up fs implementation 2015-10-14 23:20:06 -07:00
Anthony Pesch 8fca5e249a gcc fixes 2015-10-10 15:22:48 -07:00
Anthony Pesch f44e2d9718 mmap the entire 32-bit address space
cross-platform shared memory support
backpatch emitted loads / stores on x64 to use slow handlers if need be
added range iterator support to interval tree
2015-10-10 15:22:48 -07:00
Anthony Pesch ad3435a720 added back sigsegv handler 2015-10-10 15:22:48 -07:00
Anthony Pesch 99c19a05e9 use default block to avoid expensive branch prediction penalties when
getting blocks from the cache
2015-10-10 15:22:48 -07:00
Anthony Pesch 0f5ce009b9 disable wpo on msvc 2015-10-10 15:22:48 -07:00
Anthony Pesch 5b3aad63b3 refactor SRUpdated / FPSCRUpdated, no more sr != old_sr check required in CheckPendingInterrupts 2015-09-27 19:40:02 -07:00
Anthony Pesch 23d32ee79b more aggressive optimization flags for msvc 2015-09-27 19:35:07 -07:00
Anthony Pesch ea9d00cc27 synchronize interpreter / x64 backend design 2015-09-24 23:01:44 -07:00
Anthony Pesch d05130bf6b merge sh4_builder.cc and sh4_emit.cc 2015-09-24 20:40:51 -07:00
Anthony Pesch 01233f03e6 new name for redundant load/store elimination pass 2015-09-22 15:44:54 -07:00
Anthony Pesch 0d455e710a removed sigsegv handler, after profiling the overhead in querying the interval tree on each PVR write isn't significant enough to warrant the added complication
invalidate textures on palette writes
2015-09-18 20:57:18 -07:00
Anthony Pesch 049dbfce4b system -> sys 2015-09-17 11:14:43 -07:00
Anthony Pesch 40b81ad57c moved sigsegv / filesystem code into system 2015-09-17 11:14:43 -07:00
Anthony Pesch 3897fe557f invalidate textures through process signals 2015-09-17 11:14:39 -07:00
Anthony Pesch 0bcc30559b split up Dreamcast object into hw::Dreamcast and emu::Emulator 2015-09-11 00:07:20 -07:00
Anthony Pesch e83cad251a moved maple code out of holly/
added hw/ and jit/ folders, restructured accordingly
2015-09-10 16:45:10 -07:00
Anthony Pesch 0cdf8abd8f adding some aica scaffolding 2015-09-08 22:23:01 -07:00
Anthony Pesch aab2d41167 shuffling around gdrom code 2015-09-08 22:23:01 -07:00
Anthony Pesch 24ce88fb00 update assembly tests to support nested test cases 2015-09-07 15:49:11 -07:00
Anthony Pesch 79ad6dc037 removing memory tests for now, code is soon to be refactored for mmio 2015-09-05 11:18:48 -07:00
Anthony Pesch ecc0a6c7ac massive refactoring, replaced Emulator class with Dreamcast class. instead of passing around individual components to each system, the new Dreamcast object has public getters for each (holly, pvr, video ram, etc.) 2015-09-04 22:53:36 -07:00
Anthony Pesch bb5b03919d don't pass Scheduler to SH4 2015-09-04 22:53:36 -07:00
Anthony Pesch 41b3afdb1a only compile tests if sh4 toolchain is available 2015-09-04 22:53:35 -07:00
Anthony Pesch cc88c48c7a renamed test binary 2015-09-04 22:53:35 -07:00
Anthony Pesch 20541ab018 compile with /W3 under msvc 2015-09-04 22:53:31 -07:00
Anthony Pesch 4d8a1f08b8 assign source groups to help organize visual studio project 2015-08-27 11:57:39 -07:00
Anthony Pesch cd1239035d less warning relaxations under gcc / clang 2015-08-27 09:55:31 -07:00
Anthony Pesch 548e3ca4c9 msvc compilation fixes, tests and interpreter now run 2015-08-27 09:55:10 -07:00
Anthony Pesch 0bbc9981b4 added glew 2015-08-27 09:55:10 -07:00
Anthony Pesch 131280c051 compile with BEA_ENGINE_STATIC 2015-08-27 09:55:09 -07:00
Anthony Pesch f98eeba82b replaced glog with custom assert / log implementation 2015-08-26 21:27:53 -07:00
Anthony Pesch 77a9d53738 updated to gflags 2.1.2 2015-08-26 21:27:52 -07:00
Anthony Pesch d711b945df updated to SDL2 head 2015-08-26 21:27:52 -07:00
Anthony Pesch 3866668031 added random access iterator to RingBuffer
added Insert method to RingBuffer
added unit tests for RingBuffer
updated RegisterAllocationPass to use RingBuffer
2015-08-16 02:19:00 -07:00
Anthony Pesch 5a0642d0a5 don't reuse IR values across blocks 2015-08-12 23:41:31 -07:00
Anthony Pesch 4d83c7402d remove old 32-bit build support 2015-08-10 22:40:02 -07:00
Anthony Pesch 89f483dcc4 updated xbyak dependency and removed Xbyak::Address equality workaround 2015-08-09 21:15:45 -07:00
Anthony Pesch 9ad1ea9de0 added profiler calls for each pass, cleaned up log spam 2015-08-07 14:06:44 -07:00
Anthony Pesch 7bb52847a1 trace viewer first pass 2015-08-04 20:13:55 -07:00
Anthony Pesch d70979250d split up TileAccelerator into TileAccelerator / TileRenderer in preparation for trace viewer 2015-08-03 16:07:10 -07:00
Anthony Pesch 22427918b2 added filesystem.cc
removed unused hash.h
updated readme with GCC 4.9 notes
ran clang-format on src/
2015-07-31 22:37:42 -07:00
Anthony Pesch 155fac6794 added default build type
removed helper Makefile
2015-07-31 21:02:21 -07:00
Anthony Pesch 4beeeb52f5 x64 emitter first pass 2015-07-30 23:06:59 -07:00
Anthony Pesch 50fed24a45 added beaengine 2015-07-24 15:13:26 -07:00
Anthony Pesch a33bf95d16 moved ir passes to own folder 2015-07-21 17:55:53 -07:00
Anthony Pesch 700d09992d disable -ffast-math 2015-07-21 17:55:52 -07:00
Anthony Pesch 0bb8d37acb register allocation 2015-07-21 17:55:49 -07:00
Anthony Pesch 7258b89778 removed RuntimeContext struct 2015-07-04 00:21:03 -07:00
Anthony Pesch c4b78cc565 initial x64 scaffolding 2015-07-01 22:16:28 -07:00
Anthony Pesch 01af271550 initial public commit 2015-07-01 10:45:31 -07:00