| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-11-30 | allocgate: std Allocator interface refactor | Lee Cannon | |
| 2021-11-01 | Fix ensureTotalCapacity calls that should be ensureUnusedCapacity calls | Ryan Liptak | |
| If these functions are called more than once, then the array list would no longer be guaranteed to have enough capacity during the appendAssumeCapacity calls. With ensureUnusedCapacity, they will always be guaranteed to have enough capacity regardless of how many times the function is called. | |||
| 2021-10-21 | stage2: more division support | Andrew Kelley | |
| AIR: * div is renamed to div_trunc. * Add div_float, div_floor, div_exact. - Implemented in Sema and LLVM codegen. C backend has a stub. Improvements to std.math.big.Int: * Add `eqZero` function to `Mutable`. * Fix incorrect results for `divFloor`. Compiler-rt: * Add muloti4 to the stage2 section. | |||
| 2021-10-02 | Delete Module.Scope, move Block into Sema | Martin Wickham | |
| 2021-10-02 | Remove my dumb "namespace decl" hack | Martin Wickham | |
| 2021-09-24 | Spelling corrections (#9833) | Josh Soref | |
| Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> Co-authored-by: Josh Soref <jsoref@users.noreply.github.com> | |||
| 2021-09-19 | Update all ensureCapacity calls to the relevant non-deprecated version | Ryan Liptak | |
| 2021-07-20 | stage2: update LLVM backend to new AIR memory layout | Andrew Kelley | |
| Also fix compile errors when not using -Dskip-non-native | |||
| 2021-07-20 | stage2: Air and Liveness are passed ephemerally | Andrew Kelley | |
| to the link infrastructure, instead of being stored with Module.Fn. This moves towards a strategy to make more efficient use of memory by not storing Air or Liveness data in the Fn struct, but computing it on demand, immediately sending it to the backend, and then immediately freeing it. Backends which want to defer codegen until flush() such as SPIR-V must move the Air/Liveness data upon `updateFunc` being called and keep track of that data in the backend implementation itself. | |||
| 2021-07-20 | stage2: first pass over Module.zig for AIR memory layout | Andrew Kelley | |
| 2021-07-20 | stage2: update Liveness, SPIR-V for new AIR memory layout | Andrew Kelley | |
| also do the inline assembly instruction | |||
| 2021-07-20 | stage2: rework AIR memory layout | Andrew Kelley | |
| This commit changes the AIR file and the documentation of the memory layout. The actual work of modifying the surrounding code (in Sema and codegen) is not yet done. | |||
| 2021-07-12 | C backend: TypedefMap is now ArrayHashMap | Andrew Kelley | |
| The C backend depends on insertion order into this map so that type definitions will be declared before they are used. | |||
| 2021-06-21 | std, src, doc, test: remove unused variables | Jacob G-W | |
| 2021-06-10 | zig fmt | Andrew Kelley | |
| 2021-06-03 | Breaking hash map changes for 0.8.0 | Martin Wickham | |
| - hash/eql functions moved into a Context object - *Context functions pass an explicit context - *Adapted functions pass specialized keys and contexts - new getPtr() function returns a pointer to value - remove functions renamed to fetchRemove - new remove functions return bool - removeAssertDiscard deleted, use assert(remove(...)) instead - Keys and values are stored in separate arrays - Entry is now {*K, *V}, the new KV is {K, V} - BufSet/BufMap functions renamed to match other set/map types - fixed iterating-while-modifying bug in src/link/C.zig | |||
| 2021-05-22 | Merge pull request #8852 from Snektron/spirv | Andrew Kelley | |
| SPIR-V: More codegen | |||
| 2021-05-22 | stage2: rename ir.zig to air.zig | Andrew Kelley | |
| We've settled on the nomenclature for the artifacts the compiler pipeline produces: 1. Tokens 2. AST (Abstract Syntax Tree) 3. ZIR (Zig Intermediate Representation) 4. AIR (Analyzed Intermediate Representation) 5. Machine Code Renaming `ir` identifiers to `air` will come with the inevitable air-memory-layout branch that I plan to start after the 0.8.0 release. | |||
| 2021-05-22 | SPIR-V: Make functions which always return a null result return void instead | Robin Voetter | |
| 2021-05-22 | SPIR-V: Generate locals at the start of a function | Robin Voetter | |
| 2021-05-22 | SPIR-V: Debug line info/source info | Robin Voetter | |
| 2021-05-22 | SPIR-V: DeclGen constructor/destructor | Robin Voetter | |
| 2021-05-22 | SPIR-V: branching | Robin Voetter | |
| 2021-05-22 | SPIR-V: Pass source location to genType and genConstant for better error ↵ | Robin Voetter | |
| reporting | |||
| 2021-05-22 | SPIR-V: Preliminary alloc/store/load generation | Robin Voetter | |
| 2021-05-22 | SPIR-V: Split out genCmp from genBinOp | Robin Voetter | |
| 2021-05-22 | SPIR-V: Preliminary integer constant encoding | Robin Voetter | |
| 2021-05-22 | SPIR-V: ResultId and Word aliases to improve code clarity | Robin Voetter | |
| 2021-05-22 | SPIR-V: Put types in SPIRVModule, some general restructuring | Robin Voetter | |
| 2021-05-22 | SPIR-V: Use Value.toFloat instead of switching on value tag when generating ↵ | Robin Voetter | |
| float constants | |||
| 2021-05-17 | Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen | Andrew Kelley | |
| Conflicts: * src/codegen/spirv.zig * src/link/SpirV.zig We're going to want to improve the stage2 test harness to print the source file name when a compile error occurs otherwise std lib contributors are going to see some confusing CI failures when they cause stage2 AstGen compile errors. | |||
| 2021-05-16 | SPIR-V: Unary not operation | Robin Voetter | |
| 2021-05-16 | SPIR-V: bool binary operations | Robin Voetter | |
| 2021-05-16 | SPIR-V: comparison and equality operations | Robin Voetter | |
| 2021-05-16 | SPIR-V: More bitwise binary operations | Robin Voetter | |
| 2021-05-16 | SPIR-V: More binary operations | Robin Voetter | |
| 2021-05-16 | SPIR-V: genBinOp setup | Robin Voetter | |
| 2021-05-16 | SPIR-V: Some initial floating point constant generation | Robin Voetter | |
| 2021-05-16 | SPIR-V: Some instructions + constant generation setup | Robin Voetter | |
| 2021-05-16 | SPIR-V: Function parameter generation | Robin Voetter | |
| 2021-05-16 | SPIR-V: OpFunction/OpFunctionEnd generation | Robin Voetter | |
| 2021-05-16 | SPIR-V: Proper floating point type generation | Robin Voetter | |
| 2021-05-16 | SPIR-V: Function prototype generation | Robin Voetter | |
| 2021-05-16 | SPIR-V: Compute backing integer bits | Robin Voetter | |
| 2021-05-16 | SPIR-V: Restructure codegen a bit | Robin Voetter | |
| 2021-05-15 | Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen | Andrew Kelley | |
| Conflicts: * build.zig * src/Compilation.zig * src/codegen/spirv/spec.zig * src/link/SpirV.zig * test/stage2/darwin.zig - this one might be problematic; start.zig looks for `main` in the root source file, not `_main`. Not sure why there is an underscore there in master branch. | |||
| 2021-05-14 | SPIR-V: Begin generating types | Robin Voetter | |
| 2021-02-24 | zig fmt src/ | Andrew Kelley | |
| 2021-01-19 | SPIR-V: Use free list for result id generation | Robin Voetter | |
| 2021-01-19 | SPIR-V: OpMemoryModel and basic capability generation | Robin Voetter | |
