Lioncash
|
bf0f21cc12
|
A64: Implement FMIN's vector single and double precision variants
|
2018-07-26 09:32:02 +01:00 |
|
MerryMage
|
76f0ca04d6
|
IR: Implement FPVector{Max,Min}
|
2018-07-26 09:31:56 +01:00 |
|
MerryMage
|
6c37c311de
|
FPRecipEstimate: Move offset out of function
MSVC has weird lambda capturing rules.
|
2018-07-25 19:22:35 +01:00 |
|
MerryMage
|
59546f3c60
|
microinstruction: Update ReadsFromAndWritesToFPSRCumulativeExceptionBits
|
2018-07-25 19:17:07 +01:00 |
|
MerryMage
|
3f6b03a06b
|
A64: Implement FRECPS, vector/scalar single/double variants
|
2018-07-25 19:14:23 +01:00 |
|
MerryMage
|
2d2ca5ebc1
|
IR: Implement FPRecipStepFused, FPVectorRecipStepFused
|
2018-07-25 19:14:23 +01:00 |
|
MerryMage
|
5cb9f1dab2
|
A64: Implement FRECPE, vector single/double variant
|
2018-07-25 18:55:58 +01:00 |
|
MerryMage
|
c5a14ab21b
|
IR: Implement FPVectorRecipEstimate
|
2018-07-25 18:55:40 +01:00 |
|
MerryMage
|
56f8a0b172
|
A64: Implement FRECPE, scalar single/double variant
|
2018-07-25 18:47:45 +01:00 |
|
MerryMage
|
fde69b4d36
|
IR: Implement FPRecipEstimate
|
2018-07-25 18:47:22 +01:00 |
|
MerryMage
|
186e52ca50
|
IR: Implement FPRecipEstimate
|
2018-07-25 18:36:40 +01:00 |
|
MerryMage
|
cf2e1aed96
|
fp: Change FPUnpacked to a normalized representation
Having a known position for the highest set bit makes writing algorithms easier
|
2018-07-25 17:42:36 +01:00 |
|
MerryMage
|
98e2380129
|
fuzz_with_unicorn: Disable testing of FDIV
|
2018-07-25 14:05:13 +01:00 |
|
MerryMage
|
041b7d5e17
|
block_of_code: Add ABI_PARAMS array
|
2018-07-25 13:59:14 +01:00 |
|
MerryMage
|
2a2371c7a5
|
A64: Implement MLA, MLS (by element), vector single/double variant
|
2018-07-25 13:58:34 +01:00 |
|
MerryMage
|
78c640ad9e
|
A64: Implement FMLS (vector), single/double variant
|
2018-07-25 13:45:02 +01:00 |
|
MerryMage
|
b6b6993884
|
emit_x64_vector_floating_point: Specify NanHandler::function_type explicitly
MSVC doesn't like dealing with auto return types
|
2018-07-25 13:38:32 +01:00 |
|
MerryMage
|
4b9d12a585
|
emit_x64_vector_floating_point: ChooseOnFsize arguments maybe_unused
|
2018-07-25 13:27:31 +01:00 |
|
MerryMage
|
b1e3616de2
|
IR: Implement FPVectorNeg
|
2018-07-25 13:25:35 +01:00 |
|
MerryMage
|
4343612ec4
|
A64: Implement FMLA (vector), single/double variant
|
2018-07-25 13:20:07 +01:00 |
|
MerryMage
|
93eeb25fac
|
IR: Implement FPVectorMulAdd
|
2018-07-25 13:19:48 +01:00 |
|
MerryMage
|
57e5c7e7a5
|
emit_x64_vector_floating_point: Standardize naming scheme
|
2018-07-25 12:08:00 +01:00 |
|
MerryMage
|
bcb9e4106d
|
emit_x64_floating_point: Simplify indexers
|
2018-07-25 12:05:41 +01:00 |
|
MerryMage
|
83aa5854b6
|
emit_x64_vector_floating_point: Simplify EmitVectorOperation*
|
2018-07-25 11:34:22 +01:00 |
|
MerryMage
|
f4087c81e5
|
mp: rename mp.h to mp/function_info.h
|
2018-07-25 11:28:36 +01:00 |
|
MerryMage
|
18640903ac
|
emit_x64_vector: Slightly improve ArithmeticShiftRightByte
|
2018-07-25 09:33:02 +01:00 |
|
MerryMage
|
e048441d44
|
emit_x64_vector: Simplify VectorShuffleImpl
|
2018-07-24 22:46:45 +01:00 |
|
MerryMage
|
ff025e88d0
|
IR: Implement A64OrQC
|
2018-07-24 19:04:40 +01:00 |
|
MerryMage
|
6fac68dd1d
|
A64: Implement UQSHRN, UQRSHRN (vector)
|
2018-07-24 18:54:28 +01:00 |
|
MerryMage
|
5a8d9c3487
|
emit_x64_vector: -0x80000000 isn't -0x80000000
|
2018-07-24 18:45:45 +01:00 |
|
MerryMage
|
759289ec5c
|
A64: Implement UQXTN (vector)
|
2018-07-24 18:31:32 +01:00 |
|
MerryMage
|
2a96281587
|
emit_x64_vector: Fix non-SSE4.1 saturated narrowing reconstruction comparison
Allows non-SSE4.1 to produce the correct FPSR.QC flag
|
2018-07-24 18:17:14 +01:00 |
|
MerryMage
|
0682353626
|
A64: Implement SQXTN (vector)
|
2018-07-24 17:59:14 +01:00 |
|
MerryMage
|
6c5229ed47
|
emit_x64_vector: packusdw reqiures SSE4.1
In EmitVectorSignedSaturatedNarrowToUnsigned32.
|
2018-07-24 17:32:00 +01:00 |
|
MerryMage
|
158d9b16f0
|
A64: Implement SQSHRUN, SQRSHRUN (vector)
|
2018-07-24 17:20:49 +01:00 |
|
MerryMage
|
f886013526
|
simd_shift_by_immediate: Simplify ShiftRight
|
2018-07-24 16:38:51 +01:00 |
|
MerryMage
|
d9b59c69de
|
A64: Implement SQXTUN
|
2018-07-24 16:32:10 +01:00 |
|
MerryMage
|
50fe28b976
|
microinstruction: Reorganize FPSCR related instruction queries
|
2018-07-24 12:13:18 +01:00 |
|
Lioncash
|
d9d036acc9
|
microinstruction: Add missing FP scalar opcodes to ReadsFromFPSCR() and WritesToFPSCR()
These were forgotten when the opcodes were added.
|
2018-07-24 11:55:15 +01:00 |
|
Lioncash
|
db96163637
|
u128: Make Bit() a const-qualified member function
This function doesn't modify the struct members, so it can be made
const.
|
2018-07-24 09:15:44 +01:00 |
|
MerryMage
|
f7052ae04d
|
A64: Implement FRSQRTS (vector), single/double variant
|
2018-07-23 22:58:52 +01:00 |
|
MerryMage
|
0925ef6248
|
A64: Implement FRSQRTE (vector), single/double variant
|
2018-07-23 22:46:12 +01:00 |
|
MerryMage
|
f4cbbe3218
|
A64: Implement FRSQRTS (scalar), single/double variant
|
2018-07-23 22:05:17 +01:00 |
|
MerryMage
|
4ef864e81c
|
IR: Implement FPRSqrtStepFused
|
2018-07-23 22:05:17 +01:00 |
|
MerryMage
|
9dffeebc44
|
fp: Implement FPRSqrtStepFused
|
2018-07-23 22:05:17 +01:00 |
|
MerryMage
|
aa0455667e
|
fp: Implement FPNeg
|
2018-07-23 22:03:07 +01:00 |
|
MerryMage
|
cbde1c5a15
|
process_nan: Add two operand variant
|
2018-07-23 22:03:07 +01:00 |
|
Lioncash
|
1ec2663de3
|
A64: Implement FMAXP, FMINP, FMAXNMP and FMINNMP's scalar double/single-precision variant
|
2018-07-23 21:22:32 +01:00 |
|
MerryMage
|
027ddf9e2c
|
emit_x64_floating_point: Fixup special NaN case in FMA FPMulAdd implementation
|
2018-07-23 21:10:52 +01:00 |
|
Lioncash
|
75a9f7799a
|
fp: Use a forward declaration in fused.h
It's permissible to forward declare here, so we can do so and eliminate
a direct header dependency
|
2018-07-23 20:46:34 +01:00 |
|