Commit graph

1094 commits

Author SHA1 Message Date
Ryan Oldenburg
d9cdb0ef95 image invertAvx2 2022-07-22 22:40:39 -05:00
Ryan Oldenburg
3b47831710 f 2022-07-22 22:34:55 -05:00
Ryan Oldenburg
2ace8e5e9f simd macro works on signature not just name, split applyOpacity + invert 2022-07-22 22:27:18 -05:00
treeform
21ac6af59a f 2022-07-22 11:04:18 -07:00
treeform
ac5271600d Fix non simd magnifyBy2 2022-07-22 11:02:16 -07:00
Ryan Oldenburg
6e2786a22f simpler 2022-07-21 22:10:46 -05:00
Ryan Oldenburg
1a660ab8ec toPremultipliedAlpha rounds, + neon version 2022-07-21 20:36:36 -05:00
Ryan Oldenburg
1ed9afb2b9 path.commands is seq[float32] 2022-07-21 17:40:17 -05:00
Ryan Oldenburg
f36a162e9b fix newImageNeon 2022-07-10 19:19:48 -05:00
Ryan Oldenburg
7f62ac5810 start on neon 2022-07-10 18:40:51 -05:00
Ryan Oldenburg
316bf1ce4f rm 2022-07-07 21:40:02 -05:00
Ryan Oldenburg
0b8d8029f3 restore expected procs/types 2022-07-07 20:16:39 -05:00
Ryan Oldenburg
9099df4715 treeform better macro 2022-07-07 20:10:14 -05:00
Ryan Oldenburg
abc2dd653f rm todo 2022-07-07 19:52:22 -05:00
Ryan Oldenburg
902dda2a2e simpler 2022-07-07 19:39:39 -05:00
Ryan Oldenburg
83c7527474 rm 2022-07-07 19:11:21 -05:00
Ryan Oldenburg
8bb6957fe9 simd, hasSimd pragmas 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
fd52dfecb4 unused now that mask type is in common 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
138d88a9bc rename 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
8ca1400699 rm unimportant simd for now 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
dabe456af9 move image, mask to common 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
06005de85c bugfix 2022-07-07 19:09:43 -05:00
Ryan Oldenburg
5d27c93f68 newImageFromMaskSimd newMaskFromImageSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
c4eadf31ed isOneColorSimd isTransparentSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
3a41ff8e64 applyOpacitySimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
f5825daf10 ceilMaskSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
1c6fa86ac0 isOpaqueSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
d76550052e toPremultipliedAlphaSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
af5045ccb8 invertImageSimd invertMaskSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
9644894903 fillUnsafeSimd 2022-06-30 13:04:06 -05:00
Ryan Oldenburg
aaead7ed84 f 2022-06-30 13:04:06 -05:00
treeform
ba5681e452 Cleanup. 2022-06-30 10:59:38 -07:00
treeform
dffad18641 Quantize each vertex only once. 2022-06-30 10:38:55 -07:00
Ryan Oldenburg
01254d2398 bugfix, make sure they actually span 2022-06-30 01:57:05 -05:00
Ryan Oldenburg
0abafbca6f use trapezoid method more 2022-06-30 01:57:05 -05:00
treeform
af84081817 Quadratic speedup. 2022-06-29 23:48:07 -07:00
treeform
04abf707fa Cleanup. 2022-06-29 23:14:34 -07:00
treeform
de0600e1e2 Cubic tangent error. 2022-06-29 22:49:28 -07:00
Ryan Oldenburg
17cfd9643d morepretty 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
bf1caf1c9b move applyOpacity simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
ba8fac4e85 checks off 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
b706f93ee5 move mask ceil simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
8a07e3cf9b move mask invert out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
cf81556100 rename 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
e56ad9e403 move newImage(mask) and newMask(image) simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
e2a966288d move invert simd out 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
9f2c018c9e new simd approach 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
28a880b2b7 move toward more flexible trapezoid approach 2022-06-29 17:17:53 -05:00
Ryan Oldenburg
f41f895e24 simpler 2022-06-28 20:10:22 -05:00
Ryan Oldenburg
0affa5284b simpler 2022-06-28 19:53:12 -05:00
Ryan Oldenburg
fe488708cd use return as progress marker 2022-06-28 18:42:06 -05:00
Ryan Oldenburg
e0ac7dc7a2 toPremultipliedAlphaAvx2 2022-06-28 18:21:37 -05:00
Ryan Oldenburg
ffc2b5b4d5 aligned sse2 + avx2 versions isOneColor isOpaque isTransparent 2022-06-28 18:00:37 -05:00
Ryan Oldenburg
c244b8cb81 std/ 2022-06-28 15:16:22 -05:00
Ryan Oldenburg
d80df8f958 f 2022-06-27 00:36:45 -05:00
Ryan Oldenburg
741234786c rename 2022-06-27 00:35:09 -05:00
Ryan Oldenburg
ce062a5949 morepretty 2022-06-26 21:58:50 -05:00
Ryan Oldenburg
3a289a6172 rm 2022-06-26 21:53:54 -05:00
Ryan Oldenburg
e44211346e rm old 2022-06-25 22:18:15 -05:00
Ryan Oldenburg
1713b64697 faster apply float32 opacity / coverage to rgbx 2022-06-25 14:37:24 -05:00
Ryan Oldenburg
7225883aa9 better shortcut detection, improves polygon test 2022-06-25 13:47:51 -05:00
Ryan Oldenburg
f82918c307 best shortcut ever 2022-06-25 02:01:39 -05:00
Ryan Oldenburg
9a9f8d114f f 2022-06-23 21:26:44 -05:00
Ryan Oldenburg
bec700d6b9 2 vertical pixel-aligned lines shortcut 2022-06-23 20:58:51 -05:00
Ryan Oldenburg
48c7db719e handle partition index differently 2022-06-23 20:50:22 -05:00
Ryan Oldenburg
1cfaea9357 avx fill 2022-06-22 15:24:02 -05:00
Ryan Oldenburg
3bdc6c3266 faster partitioning by pre-sizing partition entries 2022-06-22 13:48:16 -05:00
Ryan Oldenburg
f93da30d08 simpler 2022-06-22 13:48:16 -05:00
Ryan Oldenburg
23deffc761 simplify 2022-06-22 02:12:15 -05:00
Ryan Oldenburg
a4fbb5365e partition heights can now vary 2022-06-22 02:02:08 -05:00
Ryan Oldenburg
82c7c8b864 faster 2022-06-22 01:03:32 -05:00
treeform
c9adc6dff7 Update dep and comment. 2022-06-21 08:45:09 -07:00
Ryan Oldenburg
1821c8ea93 f 2022-06-21 00:00:15 -05:00
Ryan Oldenburg
67938a0597 f 2022-06-20 22:28:15 -05:00
Ryan Oldenburg
b302c9b38e simpler 2022-06-20 22:24:31 -05:00
Ryan Oldenburg
4870c8f283 simpler 2022-06-20 22:21:49 -05:00
Ryan Oldenburg
82881ae75b simpler, faster 2022-06-20 22:19:11 -05:00
Ryan Oldenburg
3c769291af faster 2022-06-20 22:00:20 -05:00
Ryan Oldenburg
14576fcd27 much simpler 2022-06-20 21:57:25 -05:00
Ryan Oldenburg
432dce4902 less instructions 2022-06-20 21:48:18 -05:00
Ryan Oldenburg
7cfb124c2e simpler + bugfix + test 2022-06-20 21:40:20 -05:00
Ryan Oldenburg
37041d6790 f 2022-06-20 21:31:12 -05:00
Ryan Oldenburg
38ab18bcdf rm 2022-06-20 21:26:56 -05:00
Ryan Oldenburg
e676e6cf22 less instructions 2022-06-20 21:16:26 -05:00
Ryan Oldenburg
7c91a69bca less instructions 2022-06-20 21:10:23 -05:00
Ryan Oldenburg
53e5185360 less instructions 2022-06-20 21:05:58 -05:00
Ryan Oldenburg
97d69b1473 save a cycle 2022-06-20 20:46:38 -05:00
Ryan Oldenburg
380c9be181 f 2022-06-20 20:20:29 -05:00
Ryan Oldenburg
ee442977fa avoid unsafe[] in loops 2022-06-20 20:08:27 -05:00
Ryan Oldenburg
412757d4c0 linearScanEnd 2022-06-20 16:12:52 -05:00
Ryan Oldenburg
772c40f22a benchmark_blends + exports 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
20e3c458eb svg to image start blend as overwrite 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
9396945772 faster 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
e11a86dc10 linearScanEnd 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
b59ab89044 morepretty 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
1f953f975a fillCoverage refactor 2022-06-18 11:47:15 -05:00
Ryan Oldenburg
b0303245f5 f 2022-06-17 00:19:26 -05:00
Ryan Oldenburg
52bd7bef57 walkInteger iterator 2022-06-16 23:32:19 -05:00
Ryan Oldenburg
2f2fe303ee use unsafe 2022-06-16 23:16:47 -05:00
Ryan Oldenburg
1d486783fa better names 2022-06-16 22:09:02 -05:00