Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
59 check-ins using file bs/cir/logic.h version 1c9a67a2c3
|
2023-07-05
| ||
| 22:01 |
Some builtins to work with references during verification:
| |
|
2023-07-01
| ||
| 11:21 | Execute: function argument passing simplification (overlooked from back when the CIR was turned into a stack language) check-in: 2e14edebd0 user: zlodo tags: trunk | |
|
2023-06-30
| ||
| 22:41 |
Verifier:
| |
|
2023-06-22
| ||
| 23:33 | Implemented lowering of Addresses into a tuple representation for verification check-in: 25b51220ed user: zlodo tags: trunk | |
|
2023-06-17
| ||
| 10:15 |
| |
|
2023-05-31
| ||
| 21:34 | Lifetimes: implemented verifier's z3 representation check-in: b1d4853b7f user: zlodo tags: trunk | |
|
2023-05-05
| ||
| 18:03 | Lifetime specifications parsing check-in: bb7e75cb1b user: zlodo tags: trunk | |
|
2023-04-03
| ||
| 22:37 | Moved the code that emits type predicate checks for values returned by intrinsics into an extension point check-in: 72cb3ae97a user: zlodo tags: trunk | |
|
2023-03-28
| ||
| 19:44 | Get rid of the TCRINFOS macro, use std::source_location instead to remove some noise check-in: d9414ddc6f user: zlodo tags: trunk | |
|
2023-03-27
| ||
| 18:34 |
| |
|
2023-03-06
| ||
| 22:24 | prelude: implemented UnwrapValue check-in: c550a4bc43 user: zlodo tags: trunk | |
|
2023-03-05
| ||
| 22:24 |
| |
|
2023-02-28
| ||
| 00:55 |
| |
|
2023-02-20
| ||
| 17:54 | Migrated to clang16/llvm16. Created a shitty layer on top of llvm to cope with losing the pointee types from llvm pointer types (which are now opaques). It was a huge pain in the ass. check-in: 0c646816e4 user: zlodo tags: trunk | |
|
2023-02-07
| ||
| 15:49 | Removed the ToType extension point, go through typechecking instead for converting things such as tuple of types into types. This is more generic than the previous approach and will avoid some pitfalls in the future. check-in: 1b18849f5c user: zlodo tags: trunk | |
|
2023-01-30
| ||
| 19:33 | Implemented the _IsTrivialInitialization extension point to optimize tuple initialization in the same way as assignments check-in: d70fa1ef12 user: zlodo tags: trunk | |
|
2023-01-29
| ||
| 20:48 |
| |
|
2023-01-24
| ||
| 18:02 |
| |
|
2023-01-10
| ||
| 22:29 | ToString: don't print addresses of void pointers anymore check-in: c8f5e99651 user: zlodo tags: trunk | |
| 22:01 | Implemented textual dump of a function's CIR to more easily inspect it and implement some code generation tests at the CIR level check-in: 4edae7e1a3 user: zlodo tags: trunk | |
|
2023-01-09
| ||
| 19:06 | Fixed bad hashing implementation of terms containing a locationId that caused some absurd crash in the verifier check-in: 8fd3b7a078 user: zlodo tags: trunk | |
|
2023-01-06
| ||
| 19:13 | Remove redundant calls to the ToType extension point when compiling function bodies check-in: 78a358141d user: zlodo tags: trunk | |
|
2023-01-05
| ||
| 19:44 | Fixed passing tuple by value to functions, which involved properly handling type checking of constant tuples containing computed data and some codegen bugs check-in: 9b8306c3af user: zlodo tags: trunk | |
|
2022-11-21
| ||
| 18:59 |
| |
|
2022-11-20
| ||
| 10:49 | g0api: expose some tuple and some parsing stuff check-in: ec453bb5a1 user: zlodo tags: trunk | |
|
2022-11-17
| ||
| 22:57 | Remove an old z3 workaround that doesn't seem necessary anymore check-in: 44da39ac61 user: zlodo tags: trunk | |
| 22:43 |
g0api:
| |
| 00:46 |
expose more compiler functionality to g0api:
| |
|
2022-11-11
| ||
| 20:01 |
| |
|
2022-09-02
| ||
| 21:42 |
| |
|
2022-08-29
| ||
| 20:42 | Partial implementation of compile-time for loop (rest to be done in prelude but needs a handful additional apis) check-in: 24b6c5ae2e user: zlodo tags: trunk | |
|
2022-08-28
| ||
| 17:12 | vararg templates: completed the pack TExpr and pack TVars implementations (need tests) check-in: 0146622968 user: zlodo tags: trunk | |
|
2022-07-30
| ||
| 11:41 | varargs: simplify (not going to attempt handling nesting repetitions after all) check-in: 4c0f447d59 user: zlodo tags: trunk | |
|
2022-07-25
| ||
| 17:23 | vararg templates: set the signature of pack texprs as the repeating part of the vector, and diagnose packs not appearing last check-in: 27cf09cdf5 user: zlodo tags: trunk | |
|
2022-07-22
| ||
| 00:36 | Switch back to using fmtlib so we can build with clang 14 for stability and since nowadays we apparently can't expect to be able to use c++ features that were accepted in the standard 2 years ago :/ check-in: 7e6d3483ec user: zlodo tags: trunk | |
|
2022-07-21
| ||
| 01:09 | Small cleanup check-in: 6e0a90698d user: zlodo tags: trunk | |
|
2022-07-20
| ||
| 19:22 | vararg template: added pack TExpr and ellipsis operator check-in: ba07901758 user: zlodo tags: trunk | |
|
2022-07-18
| ||
| 23:45 | vararg templates: added a "prepare template" step prior to generating the template signature, which does nothing yet check-in: fe34bd71de user: zlodo tags: trunk | |
| 00:14 | Keep track of the repetition depth of pack TVars, and assign a new value index for each repetition of a pack hole check-in: a2a6841c8b user: zlodo tags: trunk | |
|
2022-07-17
| ||
| 10:51 | Fixed a bug in the verification instruction filter that somehow resulted in failed tests only on mac check-in: 64463a60a6 user: zlodo tags: trunk | |
|
2022-07-16
| ||
| 14:42 | Varargs: added a "nested repetition depth" property to holes check-in: 97ff23912a user: zlodo tags: trunk | |
|
2022-07-05
| ||
| 22:10 | TypeChecking: keep track of nested repetition indices for each sub context check-in: 95bdac72ca user: zlodo tags: trunk | |
|
2022-07-04
| ||
| 21:48 | Minor cleanup check-in: 29b4ebb32f user: zlodo tags: trunk | |
| 21:20 | typechecking: refactor type checking context to be able to hold more sub-context information than hole namespace indices check-in: 9fd8a2a87e user: zlodo tags: trunk | |
| 17:45 | Refactored some template rules and type checking rules to avoid calling BuildTemplateSignature from inside type checking rules check-in: 64224a915f user: zlodo tags: trunk | |
|
2022-07-02
| ||
| 14:22 | Vararg templates: function param decls with open tuple types are expanded into multiple params check-in: ecd5b0e89a user: zlodo tags: trunk | |
|
2022-06-30
| ||
| 19:06 | Remove obsolete TODO check-in: 3f5776378b user: zlodo tags: trunk | |
| 17:58 | Verifier: fix unique id generation to be done on a per function basis rather than globally to make the z3 generation tests more stable check-in: f4e40b75d7 user: zlodo tags: trunk | |
|
2022-06-29
| ||
| 21:47 | The CIR is no longer made out of instructions that are basically expression trees, but is now instead a stack language to make it possible to insert verification instructions before and after the evaluation of individual function arguments check-in: 1f87fbda15 user: zlodo tags: trunk | |
| 21:39 |
| |
|
2022-06-28
| ||
| 22:51 | Removed an unusued file and a left over debugging profanity check-in: 6c5b747f5c user: zlodo tags: cir-stack-language | |
| 22:23 | codegen: improved the translation of address computations into llvm GEP instructions check-in: 2a03dd67e5 user: zlodo tags: cir-stack-language | |
|
2022-06-27
| ||
| 16:56 |
| |
|
2022-06-23
| ||
| 20:56 | Ported most of the g0 api to the new CIR language check-in: 9eb48e68a1 user: zlodo tags: cir-stack-language | |
| 20:01 | Correctly handle ghost func applications as "storage locations" alongside regular addresses, fixes the remaining ghost func test check-in: 68da32e88b user: zlodo tags: cir-stack-language | |
|
2022-06-22
| ||
| 20:06 | Re-implemented "addr modified by loop" stuff (except ghost func related stuff) and re-enabled loop verification tests check-in: a0a57b5e22 user: zlodo tags: cir-stack-language | |
|
2022-06-21
| ||
| 17:26 | Removed a bit of dead code check-in: b78a3ea203 user: zlodo tags: cir-stack-language | |
| 17:09 |
| |
|
2022-06-18
| ||
| 18:51 |
| |