| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2025-09-05 | Rollup merge of #145709 - heiher:issue-145692-1, r=jackh726 | Trevor Gross | -0/+44 | |
| Fix LoongArch C function ABI when passing/returning structs containing floats Similar to RISC-V, LoongArch passes structs containing only one or two floats (or a float–integer pair) in registers, as long as each element fits into a single corresponding register. Before this PR, Rust did not check the actual offset of the second float or integer; instead, it assumed the standard offset based on the default alignment. However, since the offset can be affected by `#[repr(align(N))]` and `#[repr(packed)]`, this led to miscompilations (see rust-lang/rust#145692). This PR fixes the issue by explicitly specifying the offset for the remainder of the cast. | ||||
| 2025-08-26 | Use captures(address) instead of captures(none) for indirect args | Nikita Popov | -2/+2 | |
| While provenance cannot be captured through these arguments, the address / object identity can. | ||||
| 2025-08-21 | Fix LoongArch C function ABI when passing/returning structs containing floats | WANG Rui | -0/+44 | |
| 2025-08-11 | Set dead_on_return attribute for indirect arguments | Nikita Popov | -1/+1 | |
| Set the dead_on_return attribute (added in LLVM 21) for arguments that are passed indirectly, but not byval. This indicates that the value of the argument on return does not matter, enabling additional dead store elimination. | ||||
| 2025-07-22 | Rename `tests/codegen` into `tests/codegen-llvm` | Guillaume Gomez | -0/+330 | |
