dynarmic/src/frontend/ir
Lioncash e739624296 ir: Add opcodes for vector CLZ operations
We can optimize these cases further for with the use of a fair bit of
shuffling via pshufb and the use of masks, but given the uncommon use of
this instruction, I wouldn't consider it to be beneficial in terms of
amount of code to be worth it over a simple manageable naive solution
like this.

If we ever do hit a case where vectorized CLZ happens to be a
bottleneck, then we can revisit this. At least with AVX-512CD, this can
be done with a single instruction for the 32-bit word case.
2020-04-22 20:55:05 +01:00
..
basic_block.cpp ir/basic_block: Add missing U16 immediate type to DumpBlock 2020-04-22 20:46:18 +01:00
basic_block.h basic_block: Fix bogus GCC maybe-uninitialized warning 2020-04-22 20:46:13 +01:00
cond.h ir/cond: Migrate to C++17 nested namespace specifiers 2020-04-22 20:55:05 +01:00
ir_emitter.cpp ir: Add opcodes for vector CLZ operations 2020-04-22 20:55:05 +01:00
ir_emitter.h ir: Add opcodes for vector CLZ operations 2020-04-22 20:55:05 +01:00
location_descriptor.cpp General: Convert multiple namespace specifiers to nested namespace specifiers where applicable 2020-04-22 20:44:38 +01:00
location_descriptor.h General: Convert multiple namespace specifiers to nested namespace specifiers where applicable 2020-04-22 20:44:38 +01:00
microinstruction.cpp ir: Add opcodes form unsigned saturated accumulations of signed values 2020-04-22 20:55:05 +01:00
microinstruction.h IR: Add VectorTable and VectorTableLookup IR instructions 2020-04-22 20:53:45 +01:00
opcodes.cpp IR: Add VectorTable and VectorTableLookup IR instructions 2020-04-22 20:53:45 +01:00
opcodes.h Forward declare IR::Opcode and IR::Type where possible 2020-04-22 20:46:14 +01:00
opcodes.inc ir: Add opcodes for vector CLZ operations 2020-04-22 20:55:05 +01:00
terminal.h ir/terminal: Add FastDispatchHint 2020-04-22 20:53:46 +01:00
type.cpp IR: Add VectorTable and VectorTableLookup IR instructions 2020-04-22 20:53:45 +01:00
type.h IR: Add VectorTable and VectorTableLookup IR instructions 2020-04-22 20:53:45 +01:00
value.cpp ir/value: Use type alias CoprocessorInfo for std::array<u8, 8> 2020-04-22 20:46:23 +01:00
value.h ir/value: Replace includes with forward declarations 2020-04-22 20:55:05 +01:00