Commit Graph

51 Commits

Author SHA1 Message Date
chss95cs@gmail.com
71c5f8f0fa Optimized GetScalarNZM, add limit to how far it can recurse. Add rlwinm elimination rule 2022-07-14 14:32:14 -07:00
Gliniak
1d00372e6b Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental 2022-07-10 10:50:39 +02:00
Triang3l
6852e54937 [CPU] Remove intrinsics from dot product constant propagation 2022-07-06 21:32:56 +03:00
Gliniak
0b183a3582 Merge branch 'chris_cpu_changes' of https://github.com/Gliniak/xenia.git into canary_experimental 2022-06-17 14:04:58 +02:00
chss95cs@gmail.com
3675b3860a Add constant folding for OPCODE_ROTATE_LEFT 2022-06-17 11:12:49 +02:00
Gliniak
0f2a7105b9 [CPU] Added constant propagation pass for: OPCODE_AND_NOT 2022-03-11 08:54:01 +01:00
Triang3l
f540c188bf [Lint] Revert incorrect clang-format changes 2021-08-26 21:18:18 +03:00
Triang3l
7edfdc2672 Merge branch 'master' into linux_windowing 2021-08-26 22:58:14 +03:00
gibbed
6c0d03fad3 [CPU] Reduce complexity of Value::Round. 2021-06-28 20:32:52 -05:00
Joel Linn
d87bf995e1 Satisfy linter
Apply changes suggested by clang-format-12
2021-06-27 16:33:35 -05:00
Triang3l
bc2eaf9b64 [CPU] VectorAverage CPU-independent constant propagation 2019-07-21 22:01:24 +03:00
Triang3l
ab664e38a0 Merge pull request #1406 from Gliniak/vsvgsb
Added support for Altivec: vavgsb
2019-07-21 18:30:03 +03:00
Triang3l
26c24b4726 [CPU] Move saturating add/sub to base/math.h 2019-07-19 23:12:11 +03:00
Triang3l
2b411f4c8b [CPU] Saturating VectorSub: fix typo in last commit 2019-07-19 08:22:30 +03:00
Triang3l
f14f44e729 [CPU] Saturating VectorAdd/Sub of constants without DID_SATURATE yet 2019-07-19 08:17:55 +03:00
Radosław Gliński
53eb95d33c Added support for Altivec: vavgsb
Also little size adjustments for vavgsh
2019-07-18 21:22:42 +02:00
Dr. Chat
c9797dde2a [CPU] Fix switch variable scoping 2018-11-18 11:35:23 -06:00
gibbed
3ced6c5cf2 [CPU] Add constant VectorAverage. 2018-11-18 08:13:37 -06:00
DrChat
894bbf9e26 [JIT] Fix incorrect definition for constant VectorConvertX2X 2018-03-02 19:03:48 -06:00
DrChat
2af0a3c2f4 [JIT] Mask extraction constants in Value::Extract 2018-03-02 18:55:52 -06:00
DrChat
49866e970b [JIT] VectorConvertX2X unsigned support 2018-03-02 16:34:57 -06:00
DrChat
4766a5ec24 [JIT] Add FIXME on constant Vector F2I (saturation unsupported) 2018-03-01 21:15:54 -06:00
Dr. Chat
803f0be049 Linux header fixes 2017-02-05 22:45:01 -06:00
Dr. Chat
a72f1d949f Constant propagation for vector SGT/UGE/UGT
Constant rounding (and fixed vec128 rounding only doing x)
2016-07-25 11:57:14 -05:00
Dr. Chat
3d1d4dea47 OPCODE_DOT_PRODUCT_4 constant propagation 2016-06-28 19:39:22 -05:00
Dr. Chat
f2ad6b8cb8 OPCODE_RECIP 2016-06-26 13:03:42 -05:00
gibbed
8965fda402 RSqrt for VEC128_TYPE. 2016-06-20 13:31:11 -05:00
gibbed
53e37c3167 Constant propogation for DOT_PRODUCT_3. 2016-06-20 13:30:19 -05:00
Dr. Chat
0ef16b10e2 Constant Propagation for OPCODE_VECTOR_ADD 2016-06-12 21:41:02 -05:00
Dr. Chat
32011a841e Formatting. 2016-06-05 17:48:06 -05:00
Haydn Trigg
ff5529714c clang-format to Google Standards
Added formatting to code
2016-05-29 13:22:14 +09:30
Haydn Trigg
f2ca689ea0 Expanded vec128 and VectorSub
Added double precision (f64) values to the vec128 structure
Added cases for all formats of data for vector subtraction in the
Value::VectorSub function

NOTE: Unsure what the saturate function is for however maintained
original functionality
2016-05-17 05:34:09 +09:30
sephiroth99
5d9a4b6830 Handle all other cases in switch statements 2016-01-20 11:00:37 -05:00
Dr. Chat
3ccb2a978d Propagate vector constants. 2016-01-13 01:40:44 -06:00
sephiroth99
3f49aa3cef Add default case for unhandled target_type values 2015-12-30 17:42:18 -05:00
sephiroth99
da71bc26a2 Use correct value in unhandled case assert 2015-12-30 17:42:18 -05:00
Dr. Chat
17d18f7154 Implement a few cases for Value::Cast/Convert 2015-12-02 14:01:28 -06:00
Ben Vanik
82fe65475e Fixing sqrt/rsqrt mixup.
Queue the 'how did this ever work?!'
2015-11-30 17:22:08 -08:00
Ben Vanik
8b0d4fb51c Linux tweaks. 2015-08-18 14:18:00 -07:00
Ben Vanik
91d7acf59e Fixing some particularly bad /W4. 2015-07-18 23:04:21 -07:00
Ben Vanik
df600a105a Fixing constant compare. 2015-05-14 14:42:54 -07:00
Ben Vanik
00b79d66ff Fixing sub carry flag. 2015-05-13 18:04:33 -07:00
gibbed
bb947c6819 Value::MulHi and constant propagation for OPCODE_MUL_HI. Could maybe be reworked? 2015-05-13 16:13:06 -05:00
Ben Vanik
4248268b4f Fixing divd constant. 2015-05-12 23:38:02 -07:00
Ben Vanik
56bd2eee2e Fixing divdu by constant -1. 2015-05-12 23:09:32 -07:00
Ben Vanik
cbdfd09e0f Fixing SHR constant prop and new cntlz tests. 2015-05-12 18:59:45 -07:00
Ben Vanik
48ae4b65fb Fixing CountLeadingZeros constant prop. 2015-05-12 18:51:01 -07:00
Ben Vanik
e3220f7ae6 Code cleanup: moving poly/ into xenia/base/ 2015-05-02 03:42:51 -07:00
Ben Vanik
99816056be Code cleanup: removing poly.h 2015-05-02 02:29:26 -07:00
Ben Vanik
6bf84d832f fresx and some vec128 constant prop. 2015-03-25 19:17:16 -07:00