Paulo Matos
72a4063651
Cache predicate register generation from pattern
2024-12-06 10:15:38 +01:00
Ryan Houdek
ce9a860335
OpcodeDispatcher: Also remove unused CacheIndexToSize
2024-12-01 05:38:11 -08:00
Ryan Houdek
0123946ed1
FEXCore: Removes GetGPRSize and convert all uses to GetGPROpSize
...
Only a few remaining uses left, easy enough to convert. This finally
switches the final few uses over.
NFC
2024-12-01 05:38:09 -08:00
Alyssa Rosenzweig
d19473160d
OpcodeDispatcher: drop InvalidateDeferredFlags
...
it is now useless.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2024-11-26 09:02:01 -05:00
Alyssa Rosenzweig
aeb2c98cbf
OpcodeDispatcher: drop PossiblySetNZCV
...
this is a pain to track and, it turns out, buys us virtually nothing on flagm
systems. rip it out.
this fixes a bug with failing to set in all the right places.
on non-flagm systems there's a slight instcountci impact, but that is mostly
mitigated by the earlier patches in the series. so overall a wash there but
worth it for making the codebase easier
to reason about.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2024-11-26 08:59:19 -05:00
Alyssa Rosenzweig
2350ae5a07
OpcodeDispatcher: optimize BTC on !flagm
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2024-11-26 08:59:19 -05:00
Alyssa Rosenzweig
f4ce6fb621
OpcodeDispatcher: optimize AAS/AAD flag
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2024-11-26 08:59:19 -05:00
Ryan Houdek
9b6cc8f7e0
IR: Convert OpSize over to enum class
...
NFC
Do the final mopping up to convert the OpSize enum to an enum class!
2024-10-29 16:52:16 -07:00
LC
704841f004
Merge pull request #4144 from Sonicadvance1/iropsize_addrsize
...
OpcodeDispatcher: Convert address size helpers to use OpSize
2024-10-28 22:12:40 -04:00
Ryan Houdek
f74f276d64
OpcodeDispatcher: Convert address size helpers to use OpSize
...
NFC
2024-10-28 19:02:34 -07:00
Ryan Houdek
4b10cbdafd
OpcodeDispatcher: Convert flags helpers over to OpSize
...
NFC
Plus the tertiary bits that require changing to support it.
2024-10-28 18:56:42 -07:00
Ryan Houdek
5ed82fa0f6
OpcodeDispatcher: Convert {Load,Store}GPRRegister to OpSize
...
Trivial but quite a few places pass in a raw integer
NFC
2024-10-28 16:35:23 -07:00
Ryan Houdek
2dd0a82059
IR: Change F80CVTTo to use IR::OpSize
2024-10-28 02:23:47 -07:00
Ryan Houdek
84767c8b20
IR: Change PushStack to use IR::OpSize
2024-10-28 02:05:35 -07:00
Ryan Houdek
eccfb53bd5
IR: Change StoreStackMemory to use IR::OpSize
2024-10-28 02:01:47 -07:00
Ryan Houdek
44f9df062e
IR: Change Vector_FToI to use IR::OpSize
2024-10-28 01:50:23 -07:00
Ryan Houdek
38c58706da
IR: Change Vector_FToF to use IR::OpSize
2024-10-28 01:50:23 -07:00
Ryan Houdek
03bc962564
IR: Change Vector_FToS to use IR::OpSize
2024-10-28 01:28:56 -07:00
Ryan Houdek
34050431ff
IR: Change VDupFromGPR to use IR::OpSize
2024-10-28 01:20:06 -07:00
Ryan Houdek
02ebe06496
IR: Change VInsElement to use IR::OpSize
2024-10-28 01:05:34 -07:00
Ryan Houdek
34d5e70e6b
IR: Change VUShlSWide to use IR::OpSize
2024-10-28 00:59:33 -07:00
Ryan Houdek
2d8bd7b59d
IR: Change VSShrSWide to use IR::OpSize
2024-10-28 00:57:02 -07:00
Ryan Houdek
3a6f5e638b
IR: Change VUShrSWide to use IR::OpSize
2024-10-28 00:54:45 -07:00
Ryan Houdek
7ec21b7121
IR: Change VFAddP to use IR::OpSize
2024-10-28 00:41:18 -07:00
Ryan Houdek
33b3814642
IR: Change VTrn2 to use IR::OpSize
2024-10-28 00:37:44 -07:00
Ryan Houdek
85431a8132
IR: Change VTrn to use IR::OpSize
2024-10-28 00:35:12 -07:00
Ryan Houdek
b2ae829731
IR: Change VUnZip to use IR::OpSize
2024-10-28 00:31:23 -07:00
Ryan Houdek
9c2292289b
IR: Change VZip to use IR::OpSize
2024-10-28 00:26:34 -07:00
Ryan Houdek
ac55e468a7
IR: Change VAddP to use IR::OpSize
2024-10-28 00:20:07 -07:00
Ryan Houdek
0dfd5dd96f
IR: Change VXor to use IR::OpSize
2024-10-28 00:15:33 -07:00
Ryan Houdek
fc04b9113e
IR: Change VAnd to use IR::OpSize
2024-10-28 00:11:44 -07:00
Ryan Houdek
68c038085a
IR: Change VSub to use IR::OpSize
2024-10-28 00:10:21 -07:00
Ryan Houdek
176f5a2860
IR: Change VAdd to use IR::OpSize
2024-10-28 00:07:30 -07:00
Ryan Houdek
0ba501636e
IR: Change VSRSHR to use IR::OpSize
2024-10-27 23:33:49 -07:00
Ryan Houdek
ceca9fff17
IR: Change VSQXTUNPair to use IR::OpSize
2024-10-27 23:30:02 -07:00
Ryan Houdek
5247b7124f
IR: Change VSQXTNPair to use IR::OpSize
2024-10-27 23:26:55 -07:00
Ryan Houdek
0692b34192
IR: Change VSXTL to use IR::OpSize
2024-10-27 23:21:17 -07:00
Ryan Houdek
8cf92d3303
IR: Change VSShrI to use IR::OpSize
2024-10-27 23:03:21 -07:00
Ryan Houdek
ed313edd07
IR: Change VUShrI to use IR::OpSize
2024-10-27 22:57:57 -07:00
Ryan Houdek
9b981a4f61
IR: Change VShlI to use IR::OpSize
2024-10-27 22:55:08 -07:00
Ryan Houdek
c791893b4a
IR: Change VDupElement to use IR::OpSize
2024-10-27 22:50:47 -07:00
Ryan Houdek
0a34a43976
IR: Change VFSqrt to use IR::OpSize
2024-10-27 22:42:37 -07:00
Ryan Houdek
99e1eb5452
IR: Change VAddv to use IR::OpSize
2024-10-27 22:30:30 -07:00
Ryan Houdek
b533dcd86d
IR: Change VNot to use IR::OpSize
2024-10-27 22:27:28 -07:00
Ryan Houdek
efd5c51110
IR: Change LoadNamedVectorIndexedConstant to use IR::OpSize
2024-10-27 22:08:27 -07:00
Ryan Houdek
886db4ffca
IR: Change LoadNamedVectorConstant to use IR::OpSize
2024-10-27 22:05:42 -07:00
Ryan Houdek
e6f6ee2bcd
IR: Change VectorImm to use IR::OpSize
2024-10-27 21:58:34 -07:00
Ryan Houdek
5566b4455b
IR: Change VFCMPScalarInsert to use IR::OpSize
2024-10-27 18:35:03 -07:00
Ryan Houdek
fed2c13521
IR: Change VFToIScalarInsert to use IR::OpSize
2024-10-27 18:32:11 -07:00
Ryan Houdek
5626f4e50a
IR: Change VSToFVectorInsert to use IR::OpSize
2024-10-27 18:27:39 -07:00