Commit Graph

  • f890ce0fcc Switch from Slack to Discord Johan Andersson 2020-09-10 18:28:37 +02:00
  • 07bf66cb8f OpenCL intrinsics khyperia 2020-09-10 16:58:19 +02:00
  • c1134788cd Sort blocks topologically khyperia 2020-09-10 16:37:12 +02:00
  • 89065c1db0 Deal with a bunch of spirv-val issues khyperia 2020-09-09 18:24:02 +02:00
  • 575490b25e Start work on making spirv-val pass khyperia 2020-09-09 15:19:58 +02:00
  • a7603597a4 Prettier function names khyperia 2020-09-09 14:39:51 +02:00
  • 7a5aa3b241 Poison system khyperia 2020-09-09 14:17:07 +02:00
  • 3a20252b4c spirv-val khyperia 2020-09-09 12:35:08 +02:00
  • b560d5e0b1 Make modules reparseable khyperia 2020-09-09 12:25:57 +02:00
  • ac53d9395e libcore compiles, drop some printlns khyperia 2020-09-08 17:33:17 +02:00
  • 913e19f696 Extension instructions khyperia 2020-09-08 16:21:55 +02:00
  • 3a9d6f87ca Fix up some integer weirdness khyperia 2020-09-07 18:53:32 +02:00
  • e9d9be316a Get final emit steps working khyperia 2020-09-07 18:03:11 +02:00
  • 7591e582d9 Remove spv lifetime khyperia 2020-09-07 15:55:39 +02:00
  • 9d9d418979 Move intrinsics to their own file khyperia 2020-09-07 15:45:46 +02:00
  • 148f7ba163 Do some atomics khyperia 2020-09-07 15:26:34 +02:00
  • 81f868d4ec Fix up Option<&u8> constant khyperia 2020-09-07 14:24:23 +02:00
  • f557e5b54f Add some intrinsics khyperia 2020-09-07 11:45:05 +02:00
  • 3bfc0289d6 rustup update khyperia 2020-09-07 10:54:53 +02:00
  • 8342b34c07 Official emoji in the README Johan Andersson 2020-09-07 10:35:17 +02:00
  • c5cf6d089b Handle recursive pointer types khyperia 2020-09-07 10:31:16 +02:00
  • cd9e372ddb Refactor scalar type translation khyperia 2020-09-07 09:49:53 +02:00
  • 0c64a5eb33 Proper type checking Jasper Bekkers 2020-09-04 15:34:47 +01:00
  • 470c2ff2e2 Test case for OpGroupDecorate Jasper Bekkers 2020-09-03 19:58:45 +01:00
  • 92feaf36f0 Enable test func_ctrl Jasper Bekkers 2020-09-03 19:27:59 +01:00
  • 85601dec70 Start work on the surprisingly difficult task of recursive types khyperia 2020-09-04 14:14:23 +02:00
  • e177eeed11 Always try to figure out the full type. khyperia 2020-09-03 18:00:43 +02:00
  • 9cdf751643 Add another failing testcase Jasper Bekkers 2020-09-03 18:00:38 +01:00
  • cc77d911d3 Add a bunch of test cases from spirv-linker and bug fixes to make these test cases work Jasper Bekkers 2020-09-03 17:58:34 +01:00
  • 733008a993 Add some tests Jasper Bekkers 2020-09-03 16:51:23 +01:00
  • 1f4a2d0eb0 Add spirv header Jasper Bekkers 2020-09-02 15:18:32 +01:00
  • 9ec911930c Fix up a few little things khyperia 2020-09-03 16:49:18 +02:00
  • a8fc001e4c SpirvValue::alignof khyperia 2020-09-03 16:15:02 +02:00
  • 194e337da3 Split SpirvType into its own file khyperia 2020-09-03 15:39:25 +02:00
  • 04b4f8aa88 Start implementing proper constants khyperia 2020-09-03 15:35:54 +02:00
  • 582258a873 Even more intrinsics khyperia 2020-09-02 17:24:53 +02:00
  • b6d2c0972b 64 bit switches khyperia 2020-09-02 16:36:54 +02:00
  • e1f1d88d33 Fix small typos Ari V 2020-09-02 16:28:36 +02:00
  • 8a71903c2e Formatting Jasper Bekkers 2020-09-02 15:16:13 +01:00
  • dfb0db67a0 Compact ids Jasper Bekkers 2020-09-02 14:11:32 +01:00
  • e08ad8ca4e Drop linkage related OpDecorates, import functions/variables and OpCapability Linkage Jasper Bekkers 2020-09-02 14:01:48 +01:00
  • 65dd2f1149 Cleanup import/export pair matching, strip annotations for imports and replace all uses of imported symbol with the exported symbol Jasper Bekkers 2020-09-02 12:28:06 +01:00
  • f11a49619a Check for import/export type matches Jasper Bekkers 2020-09-02 12:06:32 +01:00
  • 82292799b6 Implement a bunch of stuff khyperia 2020-09-02 14:00:55 +02:00
  • 52084da4b0 Basic steps on linker Jasper Bekkers 2020-09-01 22:58:26 +01:00
  • e31ea83852 Delete old scripts no longer used khyperia 2020-09-01 16:44:51 +02:00
  • 902bf36105 Implement a bunch of type stuff khyperia 2020-09-01 16:42:29 +02:00
  • 25915bbb3f Tuples in trans_struct and TyKind::FnPtr khyperia 2020-09-01 15:39:58 +02:00
  • 7d534dfabe Implement some more intrinsics khyperia 2020-09-01 14:56:32 +02:00
  • 2f9a09ae94 Implement bool<->int conversion khyperia 2020-09-01 14:25:01 +02:00
  • f9e96fcad8 Don't pass through is_immediate for Abi::ScalarPair wrapped in struct khyperia 2020-09-01 14:11:03 +02:00
  • e408920497 FnAbi arg PassMode::Pair type is immediate, not memory khyperia 2020-09-01 13:37:15 +02:00
  • f79ca6cfef enums? khyperia 2020-09-01 10:32:47 +02:00
  • 17814d69d1 PassMode::Cast khyperia 2020-09-01 10:08:01 +02:00
  • aec0b72e5e Move to trait methods for type translation khyperia 2020-09-01 09:42:46 +02:00
  • 33120c9bfb Fix up some misc missing items khyperia 2020-08-31 17:06:31 +02:00
  • 26134b23b7 Intcast does width changes khyperia 2020-08-31 16:34:11 +02:00
  • 4aadec8c55 Broken attempts to get GlobalAlloc::Memory working khyperia 2020-08-31 16:27:20 +02:00
  • e4a569b44e Implement some math intrinsics khyperia 2020-08-31 15:19:10 +02:00
  • 710e33258e Return value pointer comes *before* arguments, not after. khyperia 2020-08-31 14:13:35 +02:00
  • 3f820b328d Refactor trans_scalar_pair khyperia 2020-08-31 13:46:56 +02:00
  • 52e29caef9 Add names to structs khyperia 2020-08-31 11:54:46 +02:00
  • c64f433135 Various printing helpers and ergonomic refactorings khyperia 2020-08-31 11:05:08 +02:00
  • 65e80668d7 Add blocklist and try to do some stuff with Scalar::Ptr khyperia 2020-08-31 09:37:49 +02:00
  • e41b1a775d Implement some memset khyperia 2020-08-28 09:22:33 +02:00
  • a526109042 Implement bool=i8 and some of the DeclareMethods API khyperia 2020-08-27 10:38:51 +02:00
  • ab6564e8b1 Simple RFC template, first go (#18) Jasper Bekkers 2020-08-26 14:21:20 +02:00
  • 82039169ab Fix up new intrinsic introduced by rustup update khyperia 2020-08-26 13:19:28 +02:00
  • 5f9ca11eb9 rustup update khyperia 2020-08-26 13:17:00 +02:00
  • 3f9e9415ea Consts, and dumping modules on panic khyperia 2020-08-26 13:02:49 +02:00
  • eca5254a33 Implement field offsets khyperia 2020-08-25 15:21:20 +02:00
  • 3a9eea264f Implement type caching khyperia 2020-08-25 14:31:30 +02:00
  • 5ae80d3d57 Implement a bunch of simple builder methods khyperia 2020-08-25 13:19:29 +02:00
  • 1d3ddfbc42 Cache constants and fix up struct GEP khyperia 2020-08-25 10:49:49 +02:00
  • 645fff1c0e Fix untested mistake khyperia 2020-08-24 16:57:45 +02:00
  • cb5fb9d05c Significantly simplify type handling khyperia 2020-08-24 16:52:15 +02:00
  • a18421900a Implement GEP correctly (input array uses LLVM-style GEP) khyperia 2020-08-24 16:23:11 +02:00
  • 0f660928ba Implement some GEPs, some PassModes, and some builtins khyperia 2020-08-24 09:45:36 +02:00
  • 1e45c25e34 Link meeting issues Johan Andersson 2020-08-22 15:23:51 +02:00
  • 5f93702a92 Implement many things khyperia 2020-08-20 15:13:36 +02:00
  • 2c8c2937ad Do a lot of work on types khyperia 2020-08-20 10:27:58 +02:00
  • db97a8e318 Start work on the type tracker khyperia 2020-08-19 12:57:11 +02:00
  • f7ba9a74d3 Merge branch 'ssa' into main khyperia 2020-08-19 12:18:35 +02:00
  • 7989270b6b Support more types, and split out builder_spirv.rs khyperia 2020-08-19 10:56:39 +02:00
  • e7126a4f1c Get the codegen_ssa backend up and running khyperia 2020-08-18 18:15:52 +02:00
  • dd8dde9d61 Add license and CoC Johan Andersson 2020-08-18 00:17:24 +02:00
  • 1124c47b52 Hash out rustc_codegen_ssa backend khyperia 2020-08-17 12:56:50 +02:00
  • 371fe3f4f7 Unused code Jasper Bekkers 2020-08-14 18:34:42 +01:00
  • 8b6632a99a Add overloads for most BinOps Jasper Bekkers 2020-08-14 18:32:49 +01:00
  • 1ace323688 Fix accidental non-caching of pointers khyperia 2020-08-14 16:07:18 +02:00
  • 69773635e9 Use override file khyperia 2020-08-14 15:58:55 +02:00
  • dc76e9ca83 Add nightly file to keep track of latest working nightly Jasper Bekkers 2020-08-14 15:29:58 +01:00
  • 9ff186606d Fix windows Jasper Bekkers 2020-08-14 15:19:00 +01:00
  • 541e5701e6 Implement switch khyperia 2020-08-14 14:53:47 +02:00
  • 56e354f0d5 Fix up some size confusion khyperia 2020-08-14 14:24:12 +02:00
  • 1b42c83c6e Implement Rvalue::Cast khyperia 2020-08-14 14:12:36 +02:00
  • f5aa064c19 Half-implement slices (no length or indexing for now) khyperia 2020-08-14 14:07:46 +02:00
  • 18edd040ee Implement Rvalue::AddressOf khyperia 2020-08-14 14:01:28 +02:00
  • ab4428f879 Implement ZSTs and basic constants khyperia 2020-08-14 13:50:48 +02:00
  • ae07069675 Support Projection::Deref khyperia 2020-08-14 12:01:58 +02:00