khyperia
3f3672eaa9
Add build_libcore_test to cargo test
...
Also delete extremely outdated test/lib.rs file.
2020-09-28 13:09:38 +02:00
khyperia
8e35a22248
Add some docs, and remove sort_globals which isn't needed anymore.
2020-09-28 11:12:26 +02:00
khyperia
7e7055ab1a
Move finalizing_passes.rs to linker
2020-09-28 10:40:56 +02:00
khyperia
a91fd92778
Replace complex kill_with with a simple Vec::retain
...
kill_with was also reordering instructions, which in general, should
preferably never be done - declaration order in spir-v is important
enough to try to adhere to that rule.
2020-09-28 10:31:16 +02:00
khyperia
8f800c5755
Split linker into lots of files
2020-09-28 10:02:21 +02:00
khyperia
c8712a9047
Add in some capability stuff
...
Also make env var checks runtime, not compiletime.
2020-09-26 15:32:18 +02:00
khyperia
46c2b2bda2
Clean up run_libcore_test and try to get it to work
2020-09-25 13:42:44 +02:00
khyperia
4e79b4e824
intel-compute-runtime doesn't support i8 or i16 atomics
2020-09-25 11:35:13 +02:00
khyperia
01a831e508
intel-compute-runtime doesn't like OpLogicalNot
2020-09-25 11:22:55 +02:00
khyperia
7b45f88052
OpAccessChain on structs should take u32
2020-09-24 18:31:19 +02:00
khyperia
3821aa2060
Add support for spirv v1.3
2020-09-24 18:20:46 +02:00
khyperia
3e569e3a32
Add run_libcore_test
2020-09-24 13:12:34 +02:00
khyperia
90e539fc26
declared_values isn't needed now that the DeclareMethods trait is gone
2020-09-23 10:48:41 +02:00
khyperia
01845cf930
use bimaps, they're neat!
2020-09-23 10:39:51 +02:00
khyperia
1921ecc4a1
Fix up constants accidentally being emitted inside functions
2020-09-23 10:16:18 +02:00
khyperia
336f040299
Remove forgotten println statements
2020-09-23 10:11:17 +02:00
khyperia
9f6ee7a217
Properly rewrite memory semantics and scopes in the deduplicator
2020-09-23 10:08:19 +02:00
khyperia
66e0730648
Fix remove_duplicate_ext_inst_imports to rewrite OpExtInsts too
2020-09-22 21:12:13 +02:00
khyperia
0546f521d8
Fix up zombie export with temp hack
...
This is to get ID rewrite passes to understand zombie exports (e.g. the
ID offsetter)
2020-09-22 20:24:54 +02:00
khyperia
f9d57a01b6
Fix various linker typos and bugs
2020-09-22 19:06:43 +02:00
khyperia
d4c4834fd6
(badly) implement OpTypeForwardPointer deduplication
2020-09-22 18:25:48 +02:00
khyperia
206af9d2a1
Refactor remove_duplicate_types to be a lil cleaner
2020-09-22 18:19:33 +02:00
khyperia
abdfa35cce
Document the remove_duplicate_types functioin
2020-09-22 17:41:57 +02:00
khyperia
a3f859afa5
Simplify remove_duplicate_types
2020-09-22 17:26:17 +02:00
khyperia
31e8d95898
RPO alg already deletes dead blocks
2020-09-22 16:02:36 +02:00
khyperia
cc916c784e
Documentation, code shuffling, and RPO block sorting
2020-09-22 15:51:30 +02:00
khyperia
1b3e5230da
Disable opaque type naming for now
2020-09-22 13:53:58 +02:00
khyperia
0b5a02def0
Print full types to figure out errors better
2020-09-22 13:35:43 +02:00
khyperia
ec49140058
Move zombie pass to linker
2020-09-22 12:59:23 +02:00
khyperia
82b596cb97
rustup update
2020-09-22 09:15:08 +02:00
Jasper Bekkers
7e1e753c59
Fix clippy warnings
2020-09-22 09:11:02 +02:00
Jasper Bekkers
3eaa45cc52
Fmt
2020-09-22 09:00:14 +02:00
khyperia
4140589ca7
Link globals
2020-09-21 15:38:20 +02:00
khyperia
11fcf56935
Re-add things that shouldn't have been removed
2020-09-21 15:38:06 +02:00
khyperia
ebff8a8f39
Write some docs
2020-09-21 14:49:05 +02:00
khyperia
78f7d8f91c
Interfaces and kernel entry points
2020-09-21 11:23:23 +02:00
khyperia
d212f489a1
Remove intrinsics now handled by rustc_codegen_ssa
2020-09-21 09:59:55 +02:00
khyperia
6da1ac5474
rustup update
2020-09-21 09:37:31 +02:00
khyperia
bc003cf6a2
Apparently I pseudo-ADHD'd away from this comment in the middle of writing it and never came back to finish it
2020-09-18 09:56:23 +02:00
Jasper Bekkers
9697c22740
Linker perf ( #33 )
...
* Improve linker performance - this should loop over data significantly less
* Remove Rc and RefCell because they weren't needed in the end
* Moved some code into a DefUseAnalyer
* Point to same rspirv
* Link to rspirv git instead of locally
2020-09-17 10:55:44 +02:00
khyperia
85e7a6a951
Caching constant system
2020-09-16 17:32:21 +02:00
khyperia
0a2629ef13
Documentation!
2020-09-16 16:08:08 +02:00
khyperia
213db43d68
Remove all references to wasm
2020-09-16 14:18:10 +02:00
khyperia
c2996046ed
Split codegen_cx.rs into modules
2020-09-16 10:50:57 +02:00
khyperia
4e3f1db15a
Add entry attribute
2020-09-15 17:17:48 +02:00
khyperia
24e03a5c0b
Extract spirv attribute parsing to its own function
2020-09-15 16:11:53 +02:00
khyperia
fd1471066d
right! non-cdylibs dylibs exist. neat!
2020-09-15 16:03:26 +02:00
khyperia
d6a1e0372f
Pass through inline attribute
2020-09-15 15:32:40 +02:00
khyperia
2a66153840
Add spirv-std crate
2020-09-15 15:17:27 +02:00
khyperia
b345d519bf
Add storage class attribute
2020-09-15 14:42:39 +02:00