summaryrefslogtreecommitdiffstats
path: root/src/video_core/macro (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #4090 from MerryMage/macrojit-bugsbunnei2020-06-191-2/+5
|\ | | | | macro_jit_x64: Optimization correctness
| * macro_jit_x64: Optimization implicitly assumes same destinationMerryMage2020-06-171-1/+2
| |
| * macro_jit_x64: Should not skip zero registers for certain ALU opsMerryMage2020-06-171-1/+3
| | | | | | | | The code generated for these ALU ops assume src_a and src_b are always valid.
* | Merge pull request #4086 from MerryMage/abibunnei2020-06-171-6/+6
|\ \ | |/ |/| xbyak_abi: Cleanup
| * xbyak_abi: Remove *GPS variants of stack manipulation functionsMerryMage2020-06-151-6/+6
| |
* | Merge pull request #4089 from MerryMage/macrojit-cleanup-1bunnei2020-06-172-51/+18
|\ \ | | | | | | macro_jit_x64: Cleanup
| * | macro_jit_x64: Remove NEXT_PARAMETERMerryMage2020-06-151-5/+2
| | | | | | | | | | | | Not required, as PARAMETERS can just be incremented directly.
| * | macro_jit_x64: Remove unused function Compile_WriteCarryMerryMage2020-06-152-9/+0
| | |
| * | macro_jit_x64: Select better registersMerryMage2020-06-151-8/+8
| | | | | | | | | | | | | | | | | | | | | All registers are now callee-save registers. RBX and RBP selected for STATE and RESULT because these are most commonly accessed; this is to avoid the REX prefix. RBP not used for STATE because there are some SIB restrictions, RBX emits smaller code.
| * | macro_jit_x64: Remove REGISTERSMerryMage2020-06-151-7/+3
| | | | | | | | | | | | Unnecessary since this is just an offset from STATE.
| * | macro_jit_x64: Remove JITState::parametersMerryMage2020-06-152-6/+3
| | | | | | | | | | | | This can be passed in as an argument instead.
| * | macro_jit_x64: Remove METHOD_ADDRESS_64MerryMage2020-06-151-2/+1
| | | | | | | | | | | | Unnecessary variable.
| * | macro_jit_x64: Remove RESULT_64MerryMage2020-06-152-16/+3
| |/ | | | | | | This Reg64 codepath has the exact same behaviour as the Reg32 one.
* / video_core/macro_jit_x64: Remove initializer in member variableReinUsesLisp2020-06-151-2/+2
|/ | | | | Fix build time issues on gcc. Confirmed through asan that avoiding this initialization is safe.
* Default init labels and use initializer list for macro engineDavid Marcec2020-06-041-1/+1
|
* Mark parameters as constDavid Marcec2020-06-036-8/+9
|
* Pass by reference instead of copying parametersDavid Marcec2020-06-022-2/+2
|
* Favor switch case over jump tableDavid Marcec2020-05-302-18/+26
| | | | Easier to read and will emit a jump table automatically.
* Implement macro JITDavid Marcec2020-05-306-0/+1294