| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-11-04 | x86_64: implement split vector stores | Jacob Young | |
| Closes #25809 | |||
| 2025-10-29 | x86_64: continue hacking around unimplemented linker logic | Jacob Young | |
| Closes #25666 | |||
| 2025-10-10 | Coff: implement threadlocal variables | Jacob Young | |
| 2025-10-03 | x86_64: fix bool vector init register clobber | Jacob Young | |
| Closes #25439 | |||
| 2025-10-02 | x86_64: fix windows calling convention abi | Jacob Young | |
| 2025-09-27 | x86_64: fix `@mulAdd` miscomp | Jacob Young | |
| 2025-09-27 | x86_64: fix `~`/`!` miscomps | Jacob Young | |
| 2025-09-27 | x86_64: fix `@floatFromInt` miscomps | Jacob Young | |
| 2025-09-27 | x86_64: fix unencodable `rem` lowerings | mlugg | |
| The memory operand might use one of the extended GPRs R8 through R15 and hence require a REX prefix, but having a REX prefix makes the high-byte register AH unencodeable as the src operand. This latent bug was exposed by this branch, presumably because `select` now happens to be putting something in an extended GPR instead of a legacy GPR. In theory this could be fixed with minimal cost by introducing a way to communicate to `select` that neither the destination memory nor the other temporary can be in an extended GPR. However, I just went for the simple solution which comes at a cost of one trivial instruction: copy the remainder from AH to AL, and *then* copy AL to the destination. | |||
| 2025-09-27 | x86_64: fix miscompilation of `mul` on vectors of large ints | mlugg | |
| 2025-09-27 | x86_64: generate better constant memcpy code | mlugg | |
| `rep movsb` isn't usually a great idea here. This commit makes the logic which tentatively existed in `genInlineMemcpy` apply in more cases, and in particular applies it to the "new" backend logic. Put simply, all copies of 128 bytes or fewer will now attempt this path first, where---provided there is an SSE register and/or a general-purpose register available---we will lower the operation using a sequence of 32, 16, 8, 4, 2, and 1 byte copy operations. The feedback I got on this diff was "Push it to master and if it miscomps I'll revert it" so don't blame me when it explodes | |||
| 2025-09-26 | compiler: move self-hosted backends from src/arch to src/codegen | Alex Rønne Petersen | |
