LC
c7f52bcee4
Vector: Centralize masking in InsertScalarFCMPOp
...
Ensures that even if someone threw bogus constants in the upper bits of
the immediate, that the special-cased comparison types would still be
handled properly.
We can move the masking in the AVX variant too, just to be consistent.
2026-07-11 16:07:19 -04:00
Ryan Houdek
fb4d8a6d14
Merge pull request #5715 from lioncash/singlestep
...
Dispatcher: Avoid loading unnecessary reg in vixl single step
2026-07-11 12:25:13 -07:00
LC
929f9a7ad2
Dispatcher: Avoid loading unnecessary reg in vixl single step
...
CompileSingleStep only takes one uint64_t, not two.
2026-07-11 15:03:29 -04:00
Ryan Houdek
48ce5bf6e6
Merge pull request #5714 from lioncash/readahead
...
x32/FD: Fix readahead upper offset type
2026-07-11 11:20:49 -07:00
Ryan Houdek
617a518714
Merge pull request #5713 from lioncash/select
...
x32/FD: Correct total word calculation in select() variants
2026-07-11 11:19:29 -07:00
Ryan Houdek
480f45f2f3
Merge pull request #5712 from lioncash/bpf
...
BPFEmitter: Amend instruction class checking in HandleStore()
2026-07-11 11:08:58 -07:00
Ryan Houdek
0e8b01c1b5
Merge pull request #5711 from lioncash/fault
...
x64/Thread: Amend faulting copy handling related to LDTs
2026-07-11 11:04:47 -07:00
Ryan Houdek
b750d6772f
Merge pull request #5710 from lioncash/close
...
Common/Async: Handle fd closing a little better
2026-07-11 11:03:10 -07:00
Ryan Houdek
7ce172a497
Merge pull request #5709 from lioncash/size
...
FlexBitSet: Simplify MemClear/MemSet
2026-07-11 10:57:58 -07:00
Ryan Houdek
821dfe5b98
Merge pull request #5708 from lioncash/mrs
...
MiscOps: Fix round mode clearing for RP/RM modes in PushRoundingMode
2026-07-11 10:56:27 -07:00
Ryan Houdek
6c57b2f8f9
Merge pull request #5707 from lioncash/offset
...
MemoryOps: Avoid double application of base offset in {Load,Store}ContextIndexed case
2026-07-11 10:49:27 -07:00
Ryan Houdek
6e0c9d159d
Merge pull request #5706 from lioncash/odd
...
SignalDelegator: Remove odd double negation in GuestSigProcMask
2026-07-11 10:48:42 -07:00
LC
a90a7dbec7
x32/FD: Fix readahead upper offset type
...
This should be a uint32_t
2026-07-11 13:33:11 -04:00
LC
2250bd58a2
x32/FD: Deduplicate guest and host fd set management
...
Same behavior, but less copy pastey
2026-07-11 13:23:19 -04:00
LC
126be45ed1
x32/FD: Correct total word calculation in select() variants
...
Previously this would result in a larger amount of words specified than
necessary.
e.g. Given nfds = 1:
With AlignUp(1, 32) / 4, we'd end up with supposedly eight words, when it
should only be one word.
On the other extreme, given a full fd set of 1024 fds, then we'd end up
with 256 words, when it should only be 32.
2026-07-11 12:53:08 -04:00
LC
e021a55abd
BPFEmitter: Amend instruction class checking in HandleStore()
...
This was previously checking for a load class, which would result in ST
clobbering the index register.
2026-07-11 12:26:11 -04:00
LC
2ad6254894
x64/Thread: Amend faulting copy handling related to LDTs
...
CopyToUser doesn't return the number of bytes copied, but rather returns
0 to indicate success, otherwise a fault has occurred (and the SIGSEGV
handler has set X0 to EFAULT)
2026-07-11 11:57:38 -04:00
LC
5bd97c2f63
Common/Async: Handle fd closing a little better
...
We should be checking against -1, rather than just anything non-zero.
2026-07-11 10:49:08 -04:00
LC
570d1f2271
FlexBitSet: Simplify MemClear/MemSet
...
We can just make use of the helpers already in the interface.
2026-07-11 10:33:47 -04:00
LC
613e9ef701
MiscOps: Fix round mode clearing for RP/RM modes in PushRoundingMode
...
Previously this had the potential to not clear rounding bits properly
depending on incoming FPCR state.
2026-07-11 10:24:07 -04:00
LC
5080c6ffc5
MemoryOps: Avoid double application of base offset in {Load,Store}ContextIndexed unaligned case
2026-07-11 09:56:56 -04:00
LC
f16bc12b7d
SignalDelegator: Remove odd double negation in GuestSigProcMask
...
We can just reduce it to normal null comparisons.
2026-07-11 05:42:48 -04:00
Ryan Houdek
d2f096187c
Merge pull request #5705 from lioncash/thread3
2026-07-10 22:34:04 -07:00
Ryan Houdek
bd1e61befd
Merge pull request #5704 from lioncash/host
2026-07-10 22:33:30 -07:00
Ryan Houdek
b97165bec9
Merge pull request #5703 from lioncash/size
2026-07-10 22:32:45 -07:00
LC
8b0f07b2dc
Syscalls: Remove unnecessary usages of namespace FEXCore::IR
...
These aren't necessary.
2026-07-10 21:02:12 -04:00
LC
c0ba45f6de
HostFeatures: Shrink feature setting in FillFeatureFlags
...
Allows us to unify most of the flag setting, so the flag name only needs
to be stated once, reducing likelihood of typos.
2026-07-10 20:34:46 -04:00
LC
017c898ed0
x64/Signals: Amend set size in rt_sigtimedwait
...
We should be checking the size passed in, not the sizeof of it.
2026-07-10 19:40:05 -04:00
Ryan Houdek
b193a0c9fd
Merge pull request #5702 from lioncash/sbss
...
HostFeatures: Amend SSBS2 signifying
2026-07-10 16:38:07 -07:00
LC
db0c7b0562
HostFeatures: Amend SSBS2 signifying
2026-07-10 19:13:29 -04:00
Ryan Houdek
87301ca154
Merge pull request #5700 from lioncash/bitset
...
Common/Bitset: Minor API changes
2026-07-10 10:35:45 -07:00
Ryan Houdek
650f5b784d
Merge pull request #5699 from lioncash/spillops
...
Arm64Emitter: Wire up conditional FPR spilling in SpillForPreserveAllABICall
2026-07-10 10:35:19 -07:00
Ryan Houdek
c8dd9eefa6
Merge pull request #5698 from lioncash/dead
...
ConversionOps: Remove redundant code in Vector_FToS
2026-07-10 10:35:06 -07:00
Ryan Houdek
0bdf15977f
Merge pull request #5697 from lioncash/thread
...
x32/Thread: Move writability check around in waitpid
2026-07-10 10:34:56 -07:00
Ryan Houdek
8a844f9cca
Merge pull request #5695 from lioncash/socket
...
Socket: Pass size by reference in getsockopt
2026-07-10 10:34:33 -07:00
Ryan Houdek
8fbde84380
Merge pull request #5696 from lioncash/time
...
x32/Time: Correct sizeof expression in utimensat
2026-07-10 10:31:47 -07:00
Ryan Houdek
00826d3327
Merge pull request #5694 from lioncash/rlimit
...
x32/Info: Only modify output in getrlimit/ugetrlimit if successful
2026-07-10 10:27:51 -07:00
Ryan Houdek
d5572e322f
Merge pull request #5693 from lioncash/ir
...
IR: Use begin block type in operator--
2026-07-10 10:27:13 -07:00
Ryan Houdek
37814111de
Merge pull request #5692 from lioncash/unary
...
Vector: Use unary handler for scalar unary insertions
2026-07-10 10:26:44 -07:00
Ryan Houdek
1417888a89
Merge pull request #5691 from lioncash/fpr
...
Vector: LoadSourceGPR -> LoadSourceFPR for MASKMOVOp
2026-07-10 10:25:26 -07:00
Ryan Houdek
5d846c3ca9
Merge pull request #5690 from lioncash/cache
...
MemoryOps: Make use of current working reg for cache operations
2026-07-10 10:23:55 -07:00
Ryan Houdek
5dd0477440
Merge pull request #5689 from lioncash/msg
...
x32/Msg: Fix result comparison in mq_getsetattr
2026-07-10 10:15:15 -07:00
Ryan Houdek
c6f823f855
Merge pull request #5688 from lioncash/pidfd
...
Thread: Amend pidfd_open check
2026-07-10 10:14:49 -07:00
Ryan Houdek
2af7c24e79
Merge pull request #5687 from lioncash/limit
...
x32/Thread: Fix off-by-one in get_thread_area
2026-07-10 10:14:29 -07:00
Ryan Houdek
94ccfefa84
Merge pull request #5686 from lioncash/fd
...
x32/FD: Ensure sendfile updates offset if set
2026-07-10 10:14:18 -07:00
LC
46f3bec37e
Common/BitSet: Ensure internal pointer is always initialized
...
Provides deterministic state.
2026-07-10 10:31:45 -04:00
LC
f5d2e0db29
Common/BitSet: Mark getters as const
...
These don't modify internal state.
2026-07-10 10:31:05 -04:00
LC
88ee56f471
Common/BitSet: Amend Clear() behavior
...
Ensures the bits are actually being unset.
2026-07-10 10:26:07 -04:00
LC
8436154276
Arm64Emitter: Wire up conditional FPR spilling in SpillForPreserveAllABICall
...
Technically, this parameter wasn't being used at all. It was wired up
for filling, but not spilling.
2026-07-10 10:10:25 -04:00
LC
150b25f29e
ConversionOps: Remove redundant code in Vector_FToS
...
These are already defined in an outer scope.
2026-07-10 09:16:35 -04:00