Ryan Houdek
2a3e0b93e8
unittests: Update syscalls_efault test
2024-08-15 00:48:57 -07:00
Alyssa Rosenzweig
129f676610
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-14 16:59:34 -04:00
Ryan Houdek
aa5d2ff31c
Merge pull request #3951 from alyssarosenzweig/opt/pops
...
Add a hack for multiple destinations & make good use of it
2024-08-14 12:03:00 -07:00
Alyssa Rosenzweig
f5bc06476a
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-14 09:37:06 -04:00
Alyssa Rosenzweig
b05329c8df
InstructionCountCI: explicitly enable flagm for multiinst
...
Closes: https://github.com/FEX-Emu/FEX/issues/3949
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-13 09:09:07 -04:00
Alyssa Rosenzweig
ffac98051f
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-13 08:41:16 -04:00
Alyssa Rosenzweig
1351575713
InstructionCountCI: add fpemu blocks
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-13 08:41:16 -04:00
Alyssa Rosenzweig
3383786205
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-08-10 15:21:08 -04:00
Ryan Houdek
4afc7adb05
unittests: Fixes vpblend unittest
...
This typo was causing undefined data to be used in the unittest, showed
up in debug builds.
2024-08-10 07:43:25 -07:00
Mai
4882f10536
Merge pull request #3888 from Sonicadvance1/avx128_optimize_blends
...
AVX128: Optimize blends
2024-08-07 17:08:19 -04:00
Ryan Houdek
230bde6aef
InstcountCI: Adds vpermq coverage
2024-08-06 09:08:30 -07:00
Ryan Houdek
c24d7aacba
unittests/ASM: Adds vpermq test that covers all immediate encodings
...
To ensure we cover all tests when optimizing.
2024-08-06 09:08:30 -07:00
Billy Laws
af7462ee6a
unittests: Add test using the address-override flag with segment addressing
2024-07-31 20:04:30 +01:00
Paulo Matos
5bbbced1bd
Fix nasm warning in Rounding.asm
2024-07-31 16:23:39 +02:00
Paulo Matos
3332220d06
instcountci: Intersperse flag retrieval and FSW insertion
2024-07-31 12:05:17 +02:00
Paulo Matos
aee8c9def2
instcountci: Reuse Top in ReconstructFSW_Helper
2024-07-31 11:57:19 +02:00
Paulo Matos
9a8e7eaace
instcountci: Add instcountci for fnstsw from fast path
2024-07-31 09:59:32 +02:00
Paulo Matos
4227e012aa
Add instcountci for fnstsw from fast path
2024-07-31 09:59:28 +02:00
Ryan Houdek
d24d0a95a0
Merge pull request #3894 from pmatos/RoundingModeTests
...
ASM Tests: X87 Rounding modes
2024-07-29 23:26:52 -07:00
Ryan Houdek
c2092bfed0
Merge pull request #3893 from pmatos/FNINITFix
...
Fix call to FNINITF64 and refactor
2024-07-26 13:25:49 -07:00
Paulo Matos
9af7ee6bd2
instcountci: Fix call to FNINITF64 and refactor
2024-07-26 14:56:10 +02:00
Paulo Matos
b1ec50c7c2
Test running scripts tell ctest of skipped tests
...
CMake sets 125 as the skipped test exit code that the scripts use.
2024-07-26 14:04:54 +02:00
Paulo Matos
ceac38a6ac
ASM Tests: X87 Rounding modes
2024-07-26 10:07:58 +02:00
Ryan Houdek
4634688aca
InstcountCI: Update for AVX128 blends
2024-07-23 19:24:19 -07:00
Ryan Houdek
dd3e3ed189
unittests/ASM: Implements a vpblendw test
...
Runs through all immediate encodings for vpblendw and crcs the results
to ensure correct behaviour. This was just a concern because of the typo
in documentation. But it is also good to have.
2024-07-23 19:24:19 -07:00
Ryan Houdek
8ebf049fb9
InstcountCI: Update for Scalar FMA with AFP
2024-07-22 12:58:20 -07:00
Paulo Matos
39bc2a82c1
instcountci: X87 Pass and refactoring
2024-07-22 08:50:01 +02:00
Paulo Matos
774325dcf2
Tests: X87 Refactoring and Pass
2024-07-22 08:44:45 +02:00
Paulo Matos
a1378f94ce
X87 Code Refactoring and Optimization Pass
2024-07-22 08:44:45 +02:00
Alyssa Rosenzweig
592d6cc43f
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-21 15:50:10 -04:00
Ryan Houdek
f8c6baae97
Merge pull request #3883 from Sonicadvance1/implement_daz
...
Arm64: Implements support for DAZ using AFP.FIZ
2024-07-21 10:03:34 -07:00
Ryan Houdek
56df57e980
InstcountCI: Update
2024-07-20 17:26:27 -07:00
Ryan Houdek
4fffe68f81
InstcountCI: Update
2024-07-20 15:57:01 -07:00
Ryan Houdek
ae9312bdab
unittests: Implements a DAZ test
...
Specifically does a vector add with and without DAZ enabled and ensures
the value is different when the source values contain a denormal.
2024-07-20 15:34:54 -07:00
Ryan Houdek
b78da2e5ad
Arm64: Implements support for DAZ using AFP.FIZ
...
When AFP is supported then we can actually support DAZ. This might also
fix the audio corruption in Animal Well but I can't test it until Steam
is running on Oryon. Requires a bit of plumbing for MXCSR which we were
hacking around before but now we actually want to store the value.
Fixes #3856
2024-07-20 15:34:54 -07:00
Alyssa Rosenzweig
e4b7a65a49
Merge pull request #3880 from pmatos/InstCountMemcpy
...
Add x87 memcpy instcountci tests
2024-07-19 08:53:23 -04:00
Paulo Matos
c77a707dbe
Add x87 memcpy instcountci tests
2024-07-19 09:09:34 +02:00
Ryan Houdek
0b829d2c46
unittests: Adds a test for full pshufd imm coverage
2024-07-18 04:13:03 -07:00
Ryan Houdek
bddb533fa0
InstcountCI: Add some more of the cases
2024-07-18 04:13:03 -07:00
Ryan Houdek
c7254e31ed
InstcountCI: Update for VPERM/VPSHUFD improvements
2024-07-18 04:10:58 -07:00
Ryan Houdek
da51169ba9
Merge pull request #3875 from alyssarosenzweig/ir/gethostflag
...
IR: garbage collect premature F80Cmp optimizations
2024-07-17 03:05:48 -07:00
Alyssa Rosenzweig
7546160811
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-16 14:53:58 -04:00
Alyssa Rosenzweig
19e58cac62
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-16 13:54:28 -04:00
Paulo Matos
9017cd14c8
Remove unused function MmapOverride
2024-07-16 11:16:07 +02:00
Paulo Matos
ed87c01470
Simplify Disabled_Tests and remove pr57275 from failures
...
Disabled_Tests was mostly a copy of Known_Failures. Leave only the race
condition on SIGPROF test (mcount_pic.c).
Also remove pr57275.c from known failures. It passes now that we support
AVX.
Also if a test is disabled, just skip it
2024-07-13 07:08:02 +02:00
Ryan Houdek
d79b7fcc49
Merge pull request #3808 from alyssarosenzweig/rclse/3
...
Try to delete RCLSE again
2024-07-12 20:38:06 -07:00
Ryan Houdek
3d90d1ab4f
InstcountCI: Update for vmovq fix
2024-07-11 18:34:06 -07:00
Ryan Houdek
3c7318d7c8
AVX128: Fixes vmovq loading too much data
...
This was doing a 128-bit load from memory and then a 64-bit zero extend
which looked like a spurious move but it was trying to match the
behaviour of vmovq where it needed the zero extend.
Also adds a unit test to ensure that we aren't loading too much data by
loading right up against a page boundary.
Fixes #3787
2024-07-11 18:34:05 -07:00
Mai
e25918d846
Merge pull request #3858 from Sonicadvance1/implement_nt_load
...
Implement support for SSE4.1/AVX NT loads
2024-07-11 14:22:41 -04:00
Alyssa Rosenzweig
d78b0ea435
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-11 13:21:14 -04:00
Ryan Houdek
3ff1ff8f74
InstcountCI: Update for svebitperm
2024-07-11 01:46:35 -07:00
Ryan Houdek
31f82c1d96
InstcountCI: Update for SVE NT load support
2024-07-10 23:07:58 -07:00
Alyssa Rosenzweig
5e0952159d
unittests: add test for a MMX register cache bug
...
this failed on an earlier version of the register cache.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-10 11:34:24 -04:00
Ryan Houdek
72d6c8ebd6
Merge pull request #3820 from alyssarosenzweig/ir/drop-deferred
...
Drop deferred flag infrastructure
2024-07-09 17:06:25 -07:00
Alyssa Rosenzweig
3ef9ea94e5
Merge pull request #3848 from pmatos/FTSTX87Tests
...
Tests for X87 FTST
2024-07-09 09:10:29 -04:00
Paulo Matos
381ce23fd7
Tests for X87 FTST
2024-07-09 13:36:16 +02:00
Mai
af6a0be832
Merge pull request #3842 from Sonicadvance1/fix_f64_to_i32
...
VCVT{T,}PD2DQ fixes and optimization
2024-07-09 03:49:31 -04:00
Ryan Houdek
287fe5beac
InstcountCI: Update
2024-07-09 00:38:48 -07:00
Ryan Houdek
3bea08da5f
Merge pull request #3843 from Sonicadvance1/remove_half_moves_fma3
...
Arm64: Remove one move if possible in FMA operations
2024-07-09 00:25:07 -07:00
Ryan Houdek
31547462bb
InstcountCI: Update for final SVE AVX128 improvements.
2024-07-08 18:44:07 -07:00
Ryan Houdek
495241f8ca
InstcountCI: Update for wide gather vpgatherdd SVE usage
2024-07-08 18:12:28 -07:00
Ryan Houdek
007c07e612
InstcountCI: Update for wide gathers
2024-07-08 17:19:18 -07:00
Mai
aad7656b38
Merge pull request #3826 from Sonicadvance1/scale_32bit_gather
...
AVX128: Extend 32-bit address indices when possible
2024-07-08 15:29:44 -04:00
Ryan Houdek
80de890f05
InstcountCI: Update for removed FMA moves
2024-07-08 04:50:49 -07:00
Ryan Houdek
c9c163cd7b
unittests: Update vcv{t,tt}pd2dq tests to ensure upper bits of destination are cleared
2024-07-08 03:30:10 -07:00
Ryan Houdek
fa587398bd
unittests: Extends vinsert{i,f}128 tests for garbage data
...
Just to ensure we don't hit an issue with masking the immediate bits.
Fixes #3753
2024-07-07 02:16:21 -07:00
Ryan Houdek
6b67857151
InstcountCI: Adds a missing gather instruction invariant
...
Oops, must have accidentally deleted this while copying things around.
2024-07-06 18:32:36 -07:00
Ryan Houdek
81165f0c40
InstcountCI: Update for 32-bit gather sign extend optimization
2024-07-06 18:32:35 -07:00
Ryan Houdek
c77922e3e5
InstcountCI: Update for previous fix
2024-07-06 18:32:35 -07:00
Ryan Houdek
9bad09c45f
Merge pull request #3823 from alyssarosenzweig/bug/shl-var-small
...
Fix CF with small shifts
2024-07-06 01:33:57 -07:00
Ryan Houdek
47d077ff22
Merge pull request #3825 from Sonicadvance1/scale_64bit_gather
...
AVX128: Prescale addresses in gathers if possible
2024-07-05 19:10:43 -07:00
Ryan Houdek
6e8ca3bc6c
InstcountCI: Update for gather prescaling
2024-07-05 16:47:11 -07:00
Alyssa Rosenzweig
9b570de33f
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-05 18:44:21 -04:00
Ryan Houdek
b67343fc5a
unittests: Adds a test for small shift flags calculation
...
Currently we calculate CF incorrectly in the case of small shifts with
large offsets.
2024-07-05 18:38:12 -04:00
Alyssa Rosenzweig
10391608a0
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-05 18:34:18 -04:00
Ryan Houdek
51c57cc5ae
unittests: More rotate with carry unit tests
...
Looks like we missed some edge cases with small carry rotate. Adds even
more unit tests.
2024-07-05 18:34:18 -04:00
Alyssa Rosenzweig
837bccb1d8
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-05 17:24:51 -04:00
Ryan Houdek
653bf04db0
Merge pull request #3819 from alyssarosenzweig/bug/rcr-smol
...
Fix 8/16-bit RCR
2024-07-05 12:49:23 -07:00
Ryan Houdek
b77a25b21a
Merge pull request #3818 from alyssarosenzweig/jit/shiftbymaskstozero
...
JIT: fix ShiftFlags masking
2024-07-05 12:49:16 -07:00
Alyssa Rosenzweig
9db6931cea
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-05 10:49:12 -04:00
Ryan Houdek
bad5cef52b
unittests: Adds rotate with carry test for large rotates
...
FEX-Emu currently doesn't do large rotates for small data sources
correctly. This will fail CI until fixed in OpcodeDispatcher
2024-07-05 10:49:02 -04:00
Alyssa Rosenzweig
b746146f4e
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-05 09:57:42 -04:00
Ryan Houdek
8ac9bb5c72
unittests: Adds test for flags when shifting by zero
2024-07-05 09:57:42 -04:00
Alyssa Rosenzweig
97329ccc7a
Merge pull request #3812 from Sonicadvance1/fix_rotates_with_zero
...
OpcodeDispatcher: Fixes rotates with zero not zero extending 32-bit result
2024-07-05 09:48:01 -04:00
Mai
f2d1f2de56
Merge pull request #3817 from Sonicadvance1/fix_x87_integer_indefinite
...
Softfloat: Fixes Integer indefinite return for 16-bit signed values
2024-07-04 23:11:44 -04:00
Ryan Houdek
692c2fae96
Merge pull request #3813 from alyssarosenzweig/bug/fix-sbb
...
Fix 16-bit SBB
2024-07-04 19:52:37 -07:00
Ryan Houdek
ecaca0fe15
unittests: Adds x87 integer indefinite test
...
Tests 16-bit, 32-bit, and 64-bit integer conversions
2024-07-04 17:53:28 -07:00
Ryan Houdek
1a8aaebd79
unittests: Adds long signed divide test
2024-07-04 16:43:21 -07:00
Ryan Houdek
25306cb373
InstcountCI: Update
2024-07-04 14:35:43 -07:00
Ryan Houdek
1084a031e7
unittests: Adds test for previous fix
...
All of these results would have failed except for the rorx result.
2024-07-04 14:35:43 -07:00
Ryan Houdek
90a6647fa4
Merge pull request #3811 from alyssarosenzweig/ra/fix-lsp
...
RA: fix interaction between SRA & shuffles
2024-07-04 14:20:46 -07:00
Alyssa Rosenzweig
a926bb81a9
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-04 16:58:45 -04:00
Alyssa Rosenzweig
fbf41e3149
unittests: add test for small sbc flags
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-04 16:58:45 -04:00
Alyssa Rosenzweig
2d75801024
unittests: add tricky RA test
...
this fails on current main with blocksize=500 due to mentioned RA bug. passes
with blocksize=1.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2024-07-04 13:37:13 -04:00
Ryan Houdek
95dd6ceba8
unittests: Adds MMX and x87 conflating unit test
...
This failed with prior RCLSE deletion caching.
2024-07-03 13:54:07 -07:00
Ryan Houdek
f453e1523e
Merge pull request #3803 from pmatos/NinjaCore
...
Use number of jobs as defined by TEST_JOB_COUNT
2024-07-03 12:42:14 -07:00
Paulo Matos
ad52514b97
Use number of jobs as defined by TEST_JOB_COUNT
...
At the moment we always run ctest with max number of cpus. If
undefined, it will keep current behaviour, otherwise it will
honour TEST_JOB_COUNT.
Therefore to run ctest one test at a time, use
`cmake ... -DTEST_JOB_COUNT=1`
2024-07-03 14:09:39 +02:00
Ryan Houdek
2d617ad173
InstcountCI: Update
2024-07-02 20:24:58 -07:00
Ryan Houdek
ba04da87e5
Merge pull request #3780 from Sonicadvance1/optimize_gathers
...
Optimize gathers slightly
2024-07-02 10:58:38 -07:00
Ryan Houdek
2e6b08cbcb
Merge pull request #3798 from Sonicadvance1/minor_128bit_vbsl_opt
...
Arm64: Minor VBSL optimization with SVE128
2024-07-01 18:57:46 -07:00