DrChat
|
157c7780af
|
[JIT] Add V128 ADD/SUB (fixes #1095)
|
2018-03-03 18:24:57 -06:00 |
|
DrChat
|
1c1fdb4ccd
|
[JIT] Properly mask NaNs in vctsxs
|
2018-03-03 14:06:45 -06:00 |
|
DrChat
|
3a8f8f2ecb
|
[JIT] Fix OPCODE_SELECT V128 with certain combinations of constants
|
2018-03-02 18:56:28 -06:00 |
|
DrChat
|
fd0d2185ef
|
[JIT] Full support for vcfux
|
2018-03-02 15:11:29 -06:00 |
|
DrChat
|
b0b920c040
|
Linting.
|
2018-03-02 12:14:09 -06:00 |
|
DrChat
|
6c97dbaf81
|
[JIT] Simplify VECTOR_ADD/SUB i32 with saturate
|
2018-03-02 11:48:19 -06:00 |
|
DrChat
|
131fcd1320
|
[JIT] Kill a couple instructions in VECTOR_CONVERT_F2I
|
2018-03-02 11:41:04 -06:00 |
|
DrChat
|
0577b6c9be
|
[JIT] Full vctuxs support
|
2018-03-01 23:49:44 -06:00 |
|
DrChat
|
6fd75cea91
|
[CPU] Handle constant multiply in fmadd/fmsub in constant propagation pass
|
2018-03-01 20:04:56 -06:00 |
|
DrChat
|
43f9cebb0c
|
[JIT] Rewrite CNTLZ and remove one branch
|
2018-02-16 12:51:39 -06:00 |
|
DrChat
|
e54c24e150
|
[JIT] New opcodes: OPCODE_LOAD_OFFSET and OPCODE_STORE_OFFSET
These take full advantage of x86 addressing, and eliminate extra add operations.
|
2018-02-14 16:26:49 -06:00 |
|
DrChat
|
1d0b290c3d
|
[JIT] Remove all calls to ReloadMembase / ReloadContext (rcx/rdx free now)
|
2018-02-13 13:33:39 -06:00 |
|
DrChat
|
e2bbae3896
|
[JIT] Don't bother using a temp for constant addresses < 0x80000000
|
2018-02-13 13:09:40 -06:00 |
|
DrChat
|
9e79babde0
|
Formatting.
|
2018-02-07 18:55:26 -06:00 |
|
DrChat
|
26212bffb0
|
[x64 seq] Reuse the source variable rather than re-specifying the destination (to make things less confusing)
|
2018-01-24 20:57:11 -06:00 |
|
DrChat
|
aaf281351d
|
Format all code with new clang-format
|
2017-12-14 20:44:43 -06:00 |
|
Dr. Chat
|
8d261ca73d
|
x64 JIT: Simplify splats
|
2017-08-08 00:12:38 -05:00 |
|
Dr. Chat
|
7a3af9b2c4
|
PPC: Fix vsl[b/h/w] and vsr[b/h/w] with variable shift amounts.
|
2017-05-15 11:08:09 -05:00 |
|
Dr. Chat
|
6ea6b8b51d
|
x64: Change binary strings to actual binary numbers.
|
2017-05-14 09:28:58 -05:00 |
|
Dr. Chat
|
d3ed53c43e
|
PPC: Support v[u]pkd3d128 VPACK_NORMSHORT4
|
2017-05-12 17:55:52 -05:00 |
|
Dr. Chat
|
82efbd7bc5
|
HIR: Add opcode SET_ROUNDING_MODE (taking FPSCR as an argument)
|
2017-05-12 14:05:27 -05:00 |
|
Dr. Chat
|
098d23c3d4
|
JIT - fctidz: Properly saturate
|
2017-03-06 01:06:32 -06:00 |
|
Dr. Chat
|
31766eaf8d
|
JIT: oops
|
2017-03-05 18:06:39 -06:00 |
|
Dr. Chat
|
d5e7bc8dca
|
JIT - vctsxs: Properly saturate signed integers
|
2017-03-05 17:45:17 -06:00 |
|
Dr. Chat
|
ea89a5d179
|
JIT - fctixx: Properly handle numbers > INT_MAX
|
2017-03-05 15:04:26 -06:00 |
|
Dr. Chat
|
691c3d1021
|
EXTRACT_I32: Support constant src1
|
2016-11-11 16:50:42 -06:00 |
|
Dr. Chat
|
7683069f6c
|
Set context/membase registers to rsi/rdi respectively.
Use offsetof for the backend thunks.
|
2016-08-26 11:00:42 -05:00 |
|
Dr. Chat
|
5f4416ee2f
|
x64 backend: Save nonvolatile XMM registers on host -> guest transitions
Define the context and membase registers in the x64 emitter.
|
2016-08-22 14:55:16 -05:00 |
|
Dr. Chat
|
e3fdb08ad7
|
x64 JIT: Allocate constant data outside of the guest heap.
|
2016-08-18 18:26:55 -05:00 |
|
Dr. Chat
|
22794902f3
|
CNTLZ: Invert the result using xor rather than subtraction
|
2016-08-01 13:25:44 -05:00 |
|
Dr. Chat
|
8427acfada
|
Use vpminud to saturate rather than bitwise ops (shaves 6 instructions per 16 in 32 saturated pack)
|
2016-07-23 19:19:40 -05:00 |
|
Dr. Chat
|
18ff97e6b6
|
OPCODE_IS_NAN
|
2016-07-11 20:44:12 -05:00 |
|
Dr. Chat
|
f2ad6b8cb8
|
OPCODE_RECIP
|
2016-06-26 13:03:42 -05:00 |
|
gibbed
|
b5bef8c54d
|
Undoing the previous commit in favor of finding a better solution (xmm1/xmm2 can't safely be used here).
|
2016-06-19 02:33:52 -05:00 |
|
gibbed
|
d04a6cc983
|
Added support for when both src1 and src2 are constants in EmitCommutativeBinaryXmmOp and EmitAssociativeBinaryXmmOp.
|
2016-06-19 02:10:40 -05:00 |
|
Ben Vanik
|
2e826f9321
|
Supporting constants in Haswell codepaths for mul_add/sub.
|
2016-01-13 22:29:39 -08:00 |
|
Dr. Chat
|
51dde62f09
|
x64 backend vector optimizations
|
2016-01-13 01:43:23 -06:00 |
|
Ben Vanik
|
dfd92757a9
|
Adding CONTEXT_BARRIER to force the PPC context to synchronize.
This is just an annotation right now, as it's not actually needed.
|
2015-11-25 14:48:36 -08:00 |
|
Dr. Chat
|
9985187b23
|
Implement vpkuwum/vpkuhum
Fixed vpkuwus with signed numbers
Implement some constant sources for vec average/unpack
|
2015-11-06 15:18:48 -06:00 |
|
sephiroth99
|
542f5ba8e5
|
Move GetTempReg higher in the source file, before its first usage.
|
2015-09-22 07:39:26 -07:00 |
|
Ben Vanik
|
82a72e1974
|
Adding MemoryBarrier opcode.
|
2015-08-30 17:25:02 -07:00 |
|
Ben Vanik
|
8b0d4fb51c
|
Linux tweaks.
|
2015-08-18 14:18:00 -07:00 |
|
gibbed
|
60b1a67af3
|
Fixing vpkuhus.
|
2015-08-16 04:52:19 -05:00 |
|
gibbed
|
6a675659e4
|
Really fix vupkhsb/vupklsb.
|
2015-08-16 03:15:37 -05:00 |
|
gibbed
|
f06ddd3869
|
Maybe fixing vupkhsb/vupklsb.
|
2015-08-16 02:31:25 -05:00 |
|
Ben Vanik
|
a92566dfc5
|
More style.
|
2015-08-07 21:29:03 -07:00 |
|
Ben Vanik
|
5e08889d93
|
More style cleanup.
|
2015-08-06 20:17:01 -07:00 |
|
Ben Vanik
|
eaa1a8ee3a
|
Refactoring SymbolInfo/FunctionInfo/Function into Symbol/Function.
|
2015-08-05 21:50:02 -07:00 |
|
Ben Vanik
|
a9b89a790b
|
Some more constant support for MUL_SUB.
|
2015-07-29 21:45:24 -07:00 |
|
Ben Vanik
|
19901c4759
|
Replacing a use of strings for xbyak labels.
|
2015-07-29 18:58:45 -07:00 |
|