Commit Graph

92 Commits

Author SHA1 Message Date
Anthony Pesch 4b15c34eab removed useless constructor 2015-08-29 11:54:03 -07:00
Anthony Pesch f5e2b46acc gcc compilation fix 2015-08-28 15:03:09 -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 6da6af39fa alloc each object Emulator uses 2015-08-27 09:55:09 -07:00
Anthony Pesch 131280c051 compile with BEA_ENGINE_STATIC 2015-08-27 09:55:09 -07:00
Anthony Pesch 614e30e443 cross-platform clz 2015-08-26 21:27:53 -07:00
Anthony Pesch f98eeba82b replaced glog with custom assert / log implementation 2015-08-26 21:27:53 -07:00
Anthony Pesch bcf79646e8 remove glog source 2015-08-26 21:27:53 -07:00
Anthony Pesch c8e9b8edb3 don't declare snprintf / va_copy for VS 2015
hack to avoid OS_WINDOWS macro redefinition error for VS 2015
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 3c13b02daf print out instruction binary when dumping x64 block 2015-08-26 21:27:51 -07:00
Anthony Pesch 1264ab4fcf moved audio related hack for Crazy Taxi into holly 2015-08-26 21:27:51 -07:00
Anthony Pesch 3050c4a78f gcc compilation fixes 2015-08-26 21:27:51 -07:00
Anthony Pesch 5aed085926 ResetState renamed to Reset 2015-08-26 21:27:51 -07:00
Anthony Pesch ef972acc5b replaced virtual RuntimeBlock class with RuntimeBlock struct to be easier to call from emitted assembly
added return status to AssembleBlock to notify when the codegen overflows its output buffer
added Reset() method to cpu backends
2015-08-26 21:27:45 -07:00
Anthony Pesch dbdc15dcab clear clabel definition lists in LabelManager::reset, https://github.com/herumi/xbyak/pull/27 2015-08-17 04:31:10 -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 5917fd2090 all values are available in registers now, remove load from local support from backends 2015-08-15 00:55:25 -07:00
Anthony Pesch 1928ad7689 refactored register allocation, added live interval splitting 2015-08-15 00:55:20 -07:00
Anthony Pesch d14282b225 use FPU state when emitting IR 2015-08-13 15:57:22 -07:00
Anthony Pesch 8049d63221 fix for LDCRBANK / STCRBANK 2015-08-13 15:55:36 -07:00
Anthony Pesch 6f4aebf144 preserve registers when emitting delay slots 2015-08-13 15:44:19 -07:00
Anthony Pesch 5a0642d0a5 don't reuse IR values across blocks 2015-08-12 23:41:31 -07:00
Anthony Pesch accd4a682c remove now unused Memory::Alloc function 2015-08-10 23:03:13 -07:00
Anthony Pesch 4d83c7402d remove old 32-bit build support 2015-08-10 22:40:02 -07:00
Anthony Pesch f20accb947 remove force32 hack from Memory, let users coerce 2015-08-10 22:02:21 -07:00
Anthony Pesch bd678e4667 don't call into Memory class for loads / stores to constant addresses 2015-08-10 20:39:30 -07:00
Anthony Pesch 4ec98dfa42 add static Memory r/w functions that can easily be called when emitting 2015-08-10 18:54:19 -07:00
Anthony Pesch e26ceb9b04 fix crash when pressing keys that aren't in key map 2015-08-10 15:34:24 -07:00
Anthony Pesch d6af27a548 remove area7 memory from SH4Context 2015-08-10 15:34:24 -07:00
Anthony Pesch b75d293407 removed SH4 pointer from SH4Context 2015-08-10 15:34:23 -07:00
Anthony Pesch 2d208fafe1 remove constant caching now that GVN pass is history 2015-08-10 15:34:23 -07:00
Anthony Pesch 2a1f16f377 don't lazily allocate a 512mb chunk of memory
consolidate address enums into memory.h
2015-08-10 15:34:16 -07:00
Anthony Pesch f651cc2c10 added profiler call in SH4::Execute 2015-08-10 01:11:17 -07:00
Anthony Pesch f7bfd82ba2 generalized a few more operations in x64 emitter
added stricter checks in x64 emitter
2015-08-10 01:03:42 -07:00
Anthony Pesch 89f483dcc4 updated xbyak dependency and removed Xbyak::Address equality workaround 2015-08-09 21:15:45 -07:00
Anthony Pesch 1c9ffda354 enable runtime profiler groups by default 2015-08-09 20:59:35 -07:00
Anthony Pesch 7ba4d9feb8 fix broken ContextPromotionPass, had accidentally used vector::resize instead of vector::reserve and fundamentally broke the pass 2015-08-09 16:10:47 -07:00
Anthony Pesch f2ea7c134f temporary patch for issue in xbyak where Xbyak::Address objects are equal when displacement is different 2015-08-09 14:18:05 -07:00
Anthony Pesch fa7f4e9411 added GetTmpRegister / GetTmpXMMRegister 2015-08-09 14:18:05 -07:00
Anthony Pesch f54e998ccf added Dump to RuntimeBlock 2015-08-09 14:18:05 -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 595da1d481 use arena allocated label objects for branches in xbyak 2015-08-07 13:30:50 -07:00
Anthony Pesch 6b1322b138 updated crazy taxi 2 video link with new progress video 2015-08-07 02:39:00 -07:00
Anthony Pesch 45d9b6cb20 clip fix as a consequence of the perspective texture mapping 2015-08-07 02:39:00 -07:00
Anthony Pesch 9573b674fa mipmap texture support 2015-08-07 02:38:56 -07:00