Commit graph

  • 63bd1ece23 backend_x64: Split A32 specific emission into separate class MerryMage 2018-01-01 22:34:05 +0000
  • 8bef20c24d IR: Split off A32 specific opcodes MerryMage 2018-01-01 16:19:43 +0000
  • b1f0cf9278 A32: Split off A32 specific IREmitter MerryMage 2018-01-01 15:47:56 +0000
  • b3c73e2622 Label A32 specific code appropriately MerryMage 2018-01-01 15:23:56 +0000
  • 89e9ce8aff Bump requirements to C++17 MerryMage 2018-01-01 15:09:45 +0000
  • dc357c780d EmitPackedHalvingSub{U,S}16: SSE2 implementation MerryMage 2017-12-14 15:04:20 +0000
  • a98821da41 Merge branch 'misc' MerryMage 2017-12-12 22:07:39 +0000
  • fc885ac80f EmitPackedHalvingAddU8: Add SSE2 implementation MerryMage 2017-12-12 16:11:22 +0000
  • 4682211729 EmitPackedHalvingAdd{U,S}16: Add SSE2 implementation MerryMage 2017-12-12 15:57:26 +0000
  • 9ac1c87a51 emit_x64: EmitSet{Register,ExtendedRegister32,ExtendedRegister64}: Store from current source MerryMage 2017-12-12 15:28:37 +0000
  • 6e834de072 Add re-entry prediction to avoid std::unordered_map lookups MerryMage 2017-12-12 14:18:21 +0000
  • 5c6fcf378f emit_x64: Optimize code emitted by EmitGetCpsr MerryMage 2017-12-12 14:19:48 +0000
  • 4393473d06 interface: Allow saving and storing of contexts MerryMage 2017-12-03 18:25:40 +0000
  • 19a7fb8992 jit_state: Split off CPSR.NZCV MerryMage 2017-12-09 15:42:47 +0000
  • a3432102b8 jit_state: Split off CPSR.Q MerryMage 2017-12-02 15:54:48 +0000
  • 311361b409 jit_state: Split off CPSR.{E,T} MerryMage 2017-12-02 15:24:10 +0000
  • 3cca3bbd0b jit_state: Split off CPSR.GE MerryMage 2017-12-02 14:03:54 +0000
  • 6adc554b53 jit_state: Hide cpsr implementation MerryMage 2017-12-02 13:55:04 +0000
  • a4e85ad565 emit_x64: Make RSB a stack MerryMage 2017-11-27 20:29:19 +0000
  • 984ce22431 emit_x64: Arguments to MostSignificantBit and IsZero are 32-bit MerryMage 2017-12-04 23:20:40 +0000
  • f595f85039 block_of_code: Remove vzeroupper MerryMage 2017-12-04 22:13:28 +0000
  • 05f3f07704 emit_x64: Reduce mxscr operations in EmitGetFpscr and EmitSetFpscr MerryMage 2017-12-04 17:52:38 +0000
  • 0af1e7723d CMakeLists: Fixup boost MerryMage 2017-12-07 20:28:33 +0000
  • 4f8675083c interface_x64: Fix MSVC cast warning MerryMage 2017-12-07 20:26:46 +0000
  • cb119c2f72 emit_x64: Use boost::icl::interval_map to speed up ranged invalidation MerryMage 2017-12-05 21:34:40 +0000
  • 6fde29f5d8 emit_x64: Remove unnecessary ABI overhead in ReadMemory, WriteMemory MerryMage 2017-12-03 19:46:26 +0000
  • eb80aae9c0 block_of_code: Move MXCSR switching out of dispatch loop MerryMage 2017-12-03 15:22:49 +0000
  • 2a818f9d8e Merge branch 'timing' MerryMage 2017-12-03 15:20:28 +0000
  • ea4c3292d5 BlockOfCode: Detect space remaining MerryMage 2017-12-03 14:32:01 +0000
  • 256749910f Add AddTicks and GetTicksRemaining callbacks MerryMage 2017-12-03 02:42:22 +0000
  • 80c56aa89d Remove unnecessary use of boost::make_optional MerryMage 2017-11-28 20:56:49 +0000
  • d00ce34432 CMakeLists: Default to a Release build MerryMage 2017-11-28 20:08:45 +0000
  • de6a93a160 decoder_detail: Lambda captures may be unused if iota is an empty sequence MerryMage 2017-11-28 19:48:32 +0000
  • 3141dadea9 Remove UNUSED macro MerryMage 2017-11-28 19:44:33 +0000
  • 7cac9519b0 microinstruction: Remove DecrementRemainingUses MerryMage 2017-11-27 20:10:23 +0000
  • 639f7cfd2d reg_alloc: Add IsLastUse optimization for UseScratch MerryMage 2017-11-27 19:41:22 +0000
  • 6b122751fe reg_alloc: Remove reliance on IR::Inst::DecrementRemainingUses MerryMage 2017-11-27 19:38:22 +0000
  • 30049ca928 emit_x86: Standardize time of DefineValue call MerryMage 2017-11-27 19:36:30 +0000
  • 5d72f7048f basic_block: Add inst address and use count to DumpBlock MerryMage 2017-11-27 19:35:12 +0000
  • c6d09adcb7 CMakeLists: Derive the source file listings from targets directly (#118) Mat M 2017-11-26 06:39:27 -0500
  • 12eaf496fd emit_x64: Perform mask creation for packed instructions in SSE MerryMage 2017-11-25 19:34:30 +0000
  • 305e4baa29 emit_x64: Eliminate conversion of GE flags MerryMage 2017-11-25 17:34:39 +0000
  • f734d7000e fuzz_arm: Test SEL alongside packed instructions MerryMage 2017-11-25 17:28:51 +0000
  • d1e0a29cd9 Implement IR instruction PackedSelect, reimplement SEL MerryMage 2017-11-25 16:33:48 +0000
  • 18f11972c6 emit_x64: Remove SSSE3 implementation of PackedHalvingAddU8 MerryMage 2017-11-25 15:38:36 +0000
  • c4b40909f7 emit_x64: Improve code emission of FPCompare{32,64} MerryMage 2017-11-22 17:46:46 +0000
  • 814e378249 VCMP and VCMPE were the other way around MerryMage 2017-11-22 17:45:37 +0000
  • 93cf180a44 skyeye: Correct assumption that VFP_REG_ZERO will always be zero MerryMage 2017-11-22 17:32:05 +0000
  • 08f638d447 emit_x64: pmaxuw and pminuw require SSE 4.1 MerryMage 2017-11-19 23:14:56 +0000
  • c1495ca5da Merge branch 'subtree' MerryMage 2017-11-17 11:43:25 +0000
  • d28498685f Merge commit '4ed09fda062f47a3b7a7b288f0c8875716c6974d' as 'externals/xbyak' MerryMage 2020-04-22 20:25:57 +0100
  • 4ed09fda06 Squashed 'externals/xbyak/' content from commit d512551e MerryMage 2020-04-22 20:25:57 +0100
  • 79199bc084 externals: Removed xbyak submodule MerryMage 2017-11-15 20:51:52 +0000
  • bd1c5c28ee externals: Add fmt subtree MerryMage 2020-04-22 20:24:48 +0100
  • a9f62a15cd Squashed 'externals/fmt/' content from commit 39834389 MerryMage 2020-04-22 20:24:48 +0100
  • 4d56c2222d externals: Removed fmt submodule MerryMage 2017-11-15 20:47:41 +0000
  • 522992965a Common: Delete Pool's copy constructor and copy/move assignment operators (#117) Mat M 2017-11-12 03:52:34 -0500
  • 77fe2aeeaa emit_x64: Amend doxygen parameters for InvalidateCacheRange() (#116) Mat M 2017-11-12 03:08:23 -0500
  • 49b9a419de externals: Update catch to 2.0.1 (#115) Mat M 2017-11-11 00:55:07 -0500
  • 19dcdde90b block_of_code: Add vzeroupper instructions where AVX-SSE transitions may occur MerryMage 2017-11-02 20:07:01 +0000
  • 60d9392b5c block_of_code: BlockOfCode should provide cpu info MerryMage 2017-11-02 19:58:40 +0000
  • 148c01e08f interface_x64: Remove is_executing assert from HaltExecution MerryMage 2017-10-14 23:35:01 +0100
  • f6cf265bc5 block_of_code: BlockOfCode::ABI_* should be const MerryMage 2017-09-29 01:35:24 +0100
  • 29471be317 Standardize location of storage-class specifiers: Place at beginning of declarations MerryMage 2017-09-29 01:23:45 +0100
  • b992e5f8ec Ranged cache invalidation MerryMage 2017-09-11 00:09:52 +0100
  • a362bffdd4 externals: Update catch to 1.10.0 Lioncash 2017-08-27 17:50:16 -0400
  • 80477b5a67 externals: update fmt to 4.0 Lioncash 2017-08-27 14:50:19 -0400
  • 40d0aa505c externals: Update Xbyak to v5.52 MerryMage 2017-08-18 13:47:22 +0100
  • 568b52d4ba externals: Update Xbyak to v5.51 MerryMage 2017-08-17 21:34:54 +0100
  • 1613846ab0 reg_alloc: Handle XMM registers in LoadImmediate MerryMage 2017-08-16 23:11:05 +0100
  • 993e142c6b disassembler: Fix RegList MerryMage 2017-08-05 01:57:29 +0100
  • 6197bde0fc disassembler_arm: Fix disassembly of LDRH (reg) MerryMage 2017-07-30 18:45:31 +0100
  • 90480aade2 travis: Split build scripts MerryMage 2017-07-17 16:39:10 +0100
  • 5beb61913b CMakeLists: Remove unnecessary -msse3 option MerryMage 2017-07-08 16:33:20 +0100
  • 8f15e3f70c CMakeLists: Enable stricter C++ conformance mode in MSVC Yuri Kunde Schlesner 2017-06-11 17:18:20 -0700
  • 38eb7e0314 emit_x64: Use alternative Xbyak names for and, or, xor Yuri Kunde Schlesner 2017-06-11 17:17:04 -0700
  • 7707ff13e9 appveyor: Add VS2017 to CI MerryMage 2017-05-22 19:30:11 +0100
  • 82e8c99a47 Link against static fmtlib instead of header only James Rowe 2017-05-16 20:55:38 -0600
  • c1ec5dc8a4 externals: Update catch to 1.9.4 Lioncash 2017-05-21 19:16:50 -0400
  • 599a613fea Move SEL from status_register_access to misc MerryMage 2017-04-25 13:57:27 +0100
  • 50bb317104 parallel: UQADD8 and UQADD16 are unpredictable when {d|n|m} == 15 MerryMage 2017-04-25 13:45:31 +0100
  • 7639dfea51 coprocessor: Use && instead of & with boolean arguments MerryMage 2017-04-22 15:05:31 +0100
  • 2c9dcfa2db backend_x64: Rename UnwindHandler to ExceptionHandler MerryMage 2017-04-20 14:08:56 +0100
  • 0d47f50f57 block_of_code: Implement farcode MerryMage 2017-04-19 18:58:36 +0100
  • 1c21ae6bcd saturated: Implement QASX, QSAX, UQASX, UQSAX MerryMage 2017-04-09 10:39:13 +0100
  • 01abb65960 travis: Build release builds on Linux MerryMage 2017-04-09 11:26:20 +0100
  • 9ac890c62d reg_alloc: Fix for LLVM's interpretation of the System V ABI MerryMage 2017-04-08 22:04:16 +0100
  • a5bb81a97c backend_x64: Remove dispatch loop in Jit::Run MerryMage 2017-04-08 10:04:53 +0100
  • 1b37420459 backend_x64: Simplify dispatcher MerryMage 2017-04-07 10:52:44 +0100
  • 523ae542f4 microinstruction: Implement HasAssociatedPseudoOperation MerryMage 2017-04-04 13:10:50 +0100
  • c6c980dfd7 fuzz_arm: Add vsub test MerryMage 2017-04-02 12:36:32 +0100
  • 4c5de3905b emit_x64: Correct mutation of immutable in FPThreeOp{32,64} MerryMage 2017-04-01 09:53:29 +0100
  • 05e97058c3 parallel: Add and Subtract with Exchange improvements MerryMage 2017-03-24 15:56:24 +0000
  • fd068ed6b8 Ranged cache invalidation Lynn 2017-02-16 18:18:29 +0000
  • d9c69ad997 constant_pool: Implement a constant pool MerryMage 2017-03-18 17:20:21 +0000
  • b1b8acf16e externals: Update catch to 1.8.2 Lioncash 2017-03-09 02:47:51 -0500
  • 5a02da445a CMakeLists: Only link LLVM libs against the library Lioncash 2017-03-07 16:53:33 -0500
  • d85137ed65 interface_x64: Amend LLVM disassembly code Lioncash 2017-03-06 18:29:36 -0500
  • d0efbb9348 CMakeLists: Remove unnecessary linker language specifiers Lioncash 2017-03-04 18:18:35 -0500
  • 9906be746f CMakeLists: Make boost an interface library target Lioncash 2017-03-03 22:09:28 -0500