| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2025-07-23 | Remove useless lifetime parameter. | Camille GILLOT | -3/+3 | |
| 2025-07-23 | Give an AllocId to ConstValue::Slice. | Camille GILLOT | -2/+1 | |
| 2025-07-09 | Add opaque TypeId handles for CTFE | Oli Scherer | -0/+13 | |
| 2025-07-07 | compiler: Parse `p-` specs in datalayout string, allow definition of custom ↵ | Edoardo Marangoni | -1/+1 | |
| default data address space | ||||
| 2025-06-29 | give Pointer::into_parts a more scary name and offer a safer alternative | Ralf Jung | -1/+1 | |
| 2025-06-24 | Merge commit '8c848e0604b5d26fad120914f822f564fe05c52a' into ↵ | bjorn3 | -1/+1 | |
| sync_cg_clif-2025-06-24 | ||||
| 2025-03-25 | Rename `is_like_osx` to `is_like_darwin` | Mads Marquart | -1/+1 | |
| 2025-02-17 | cg_clif: use exclusively ABI alignment | Jubilee Young | -1/+1 | |
| 2025-01-30 | Use ExistentialTraitRef throughout codegen | Michael Goulet | -10/+15 | |
| 2025-01-30 | Do not treat vtable supertraits as distinct when bound with different bound vars | Michael Goulet | -1/+4 | |
| 2024-12-06 | Remove polymorphization | Ben Kimock | -2/+1 | |
| 2024-11-20 | reduce false positives of tail-expr-drop-order from consumed values | Ding Xiang Fei | -0/+1 | |
| take 2 open up coroutines tweak the wordings the lint works up until 2021 We were missing one case, for ADTs, which was causing `Result` to yield incorrect results. only include field spans with significant types deduplicate and eliminate field spans switch to emit spans to impl Drops Co-authored-by: Niko Matsakis <nikomat@amazon.com> collect drops instead of taking liveness diff apply some suggestions and add explantory notes small fix on the cache let the query recurse through coroutine new suggestion format with extracted variable name fine-tune the drop span and messages bugfix on runtime borrows tweak message wording filter out ecosystem types earlier apply suggestions clippy check lint level at session level further restrict applicability of the lint translate bid into nop for stable mir detect cycle in type structure | ||||
| 2024-11-18 | use `TypingEnv` when no `infcx` is available | lcnr | -3/+8 | |
| the behavior of the type system not only depends on the current assumptions, but also the currentnphase of the compiler. This is mostly necessary as we need to decide whether and how to reveal opaque types. We track this via the `TypingMode`. | ||||
| 2024-09-23 | Check vtable projections for validity in miri | Michael Goulet | -4/+4 | |
| 2024-09-23 | Merge commit '6d35b4c9a04580366fd800692a5b5db79d766530' into ↵ | bjorn3 | -0/+5 | |
| sync_cg_clif-2024-09-22 | ||||
| 2024-09-22 | Reformat using the new identifier sorting from rustfmt | Michael Goulet | -1/+1 | |
| 2024-07-13 | Merge commit '659243d85c7489412bd0faa1c068d904a6042941' into ↵ | bjorn3 | -4/+32 | |
| sync_cg_clif-2024-07-13 | ||||
| 2024-07-08 | Auto merge of #113128 - WaffleLapkin:become_trully_unuwuable, r=oli-obk,RalfJung | bors | -0/+1 | |
| Support tail calls in mir via `TerminatorKind::TailCall` This is one of the interesting bits in tail call implementation — MIR support. This adds a new `TerminatorKind` which represents a tail call: ```rust TailCall { func: Operand<'tcx>, args: Vec<Operand<'tcx>>, fn_span: Span, }, ``` *Structurally* this is very similar to a normal `Call` but is missing a few fields: - `destination` — tail calls don't write to destination, instead they pass caller's destination to the callee (such that eventual `return` will write to the caller of the function that used tail call) - `target` — similarly to `destination` tail calls pass the caller's return address to the callee, so there is nothing to do - `unwind` — I _think_ this is applicable too, although it's a bit confusing - `call_source` — `become` forbids operators and is not created as a lowering of something else; tail calls always come from HIR (at least for now) It might be helpful to read the interpreter implementation to understand what `TailCall` means exactly, although I've tried documenting it too. ----- There are a few `FIXME`-questions still left, ideally we'd be able to answer them during review ':) ----- r? `@oli-obk` cc `@scottmcm` `@DrMeepster` `@JakobDegen` | ||||
| 2024-07-07 | Support tail calls in mir via `TerminatorKind::TailCall` | Maybe Waffle | -0/+1 | |
| 2024-07-02 | Miri function identity hack: account for possible inlining | Ralf Jung | -3/+5 | |
| 2024-06-16 | Rename InstanceDef -> InstanceKind | Michael Goulet | -1/+1 | |
| 2024-06-10 | ScalarInt: size mismatches are a bug, do not delay the panic | Ralf Jung | -3/+3 | |
| 2024-05-28 | Add an intrinsic for `ptr::metadata` | Scott McMurray | -1/+1 | |
| 2024-05-13 | Merge commit '3270432f4b0583104c8b9b6f695bf97d6bbf3ac2' into ↵ | bjorn3 | -1/+1 | |
| sync_cg_clif-2024-05-13 | ||||
| 2024-04-23 | Merge commit 'de5d6523738fd44a0521b6abf3e73ae1df210741' into ↵ | bjorn3 | -11/+16 | |
| sync_cg_clif-2024-04-23 | ||||
| 2024-04-19 | ScalarInt: add methods to assert being a (u)int of given size | Ralf Jung | -22/+19 | |
| 2024-03-28 | Merge commit '09fae60a86b848a2fc0ad219ecc4e438dc1eef86' into ↵ | bjorn3 | -32/+34 | |
| sync_cg_clif-2024-03-28 | ||||
| 2024-03-18 | Avoid various uses of `Option<Span>` in favor of using `DUMMY_SP` in the few ↵ | Oli Scherer | -1/+1 | |
| cases that used `None` | ||||
| 2024-03-16 | Merge commit '4cf4ffc6ba514f171b3f52d1c731063e4fc45be3' into ↵ | bjorn3 | -13/+29 | |
| sync_cg_clif-2024-03-16 | ||||
| 2024-03-10 | add comments explaining where post-mono const eval errors abort compilation | Ralf Jung | -1/+1 | |
| 2024-03-08 | Merge commit '54cbb6e7531f95e086d5c3dd0d5e73bfbe3545ba' into ↵ | bjorn3 | -1/+7 | |
| sync_cg_clif-2024-03-08 | ||||
| 2023-12-24 | Remove `Session` methods that duplicate `DiagCtxt` methods. | Nicholas Nethercote | -4/+4 | |
| Also add some `dcx` methods to types that wrap `TyCtxt`, for easier access. | ||||
| 2023-12-10 | remove redundant imports | surechen | -2/+1 | |
| detects redundant imports that can be eliminated. for #117772 : In order to facilitate review and modification, split the checking code and removing redundant imports code into two PR. | ||||
| 2023-12-07 | ctfe interpreter: extend provenance so that it can track whether a pointer ↵ | Ralf Jung | -2/+4 | |
| is immutable | ||||
| 2023-11-16 | Merge commit 'def04540a4e2541b995195c752c751295606a388' into ↵ | bjorn3 | -12/+31 | |
| sync_cg_clif-2023-11-16 | ||||
| 2023-10-20 | s/Generator/Coroutine/ | Oli Scherer | -1/+1 | |
| 2023-10-09 | Merge commit '81dc066758ec150b43822d4a0c84aae20fe10f40' into ↵ | bjorn3 | -5/+3 | |
| sync_cg_clif-2023-10-09 | ||||
| 2023-09-21 | Rollup merge of #115972 - RalfJung:const-consistency, r=oli-obk | Guillaume Gomez | -3/+3 | |
| rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const Also, be more consistent with the `to/eval_bits` methods... we had some that take a type and some that take a size, and then sometimes the one that takes a type is called `bits_for_ty`. Turns out that `ty::Const`/`mir::ConstKind` carry their type with them, so we don't need to even pass the type to those `eval_bits` functions at all. However this is not properly consistent yet: in `ty` we have most of the methods on `ty::Const`, but in `mir` we have them on `mir::ConstKind`. And indeed those two types are the ones that correspond to each other. So `mir::ConstantKind` should actually be renamed to `mir::Const`. But what to do with `mir::Constant`? It carries around a span, that's really more like a constant operand that appears as a MIR operand... it's more suited for `syntax.rs` than `consts.rs`, but the bigger question is, which name should it get if we want to align the `mir` and `ty` types? `ConstOperand`? `ConstOp`? `Literal`? It's not a literal but it has a field called `literal` so it would at least be consistently wrong-ish... ``@oli-obk`` any ideas? | ||||
| 2023-09-21 | rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const | Ralf Jung | -3/+3 | |
| 2023-09-19 | adjust constValue::Slice to work for arbitrary slice types | Ralf Jung | -8/+4 | |
| 2023-09-19 | move ConstValue into mir | Ralf Jung | -1/+2 | |
| this way we have mir::ConstValue and ty::ValTree as reasonably parallel | ||||
| 2023-09-14 | move required_consts check to general post-mono-check function | Ralf Jung | -29/+7 | |
| 2023-09-14 | make it more clear which functions create fresh AllocId | Ralf Jung | -13/+11 | |
| 2023-09-14 | cleanup op_to_const a bit; rename ConstValue::ByRef → Indirect | Ralf Jung | -2/+2 | |
| 2023-09-14 | use AllocId instead of Allocation in ConstValue::ByRef | Ralf Jung | -5/+9 | |
| 2023-09-13 | make the eval() functions on our const types return the resulting value | Ralf Jung | -26/+4 | |
| 2023-08-24 | when terminating during unwinding, show the reason why | Ralf Jung | -1/+1 | |
| 2023-08-20 | give some unwind-related terminators a more clear name | Ralf Jung | -2/+2 | |
| 2023-07-14 | refactor(rustc_middle): Substs -> GenericArg | Mahdi Dibaiee | -1/+1 | |
| 2023-06-15 | Merge commit '8830dccd1d4c74f1f69b0d3bd982a3f1fcde5807' into ↵ | bjorn3 | -15/+15 | |
| sync_cg_clif-2023-06-15 | ||||
