)]}'
{
  "commit": "c9fb3e4c80e0ddc8886492fcfcac19ac2bb8ef1c",
  "tree": "5d5b1825a288dbd7a5190c0b35397415c98383ac",
  "parents": [
    "6474e999898cad2289175e2a7d253f5d0f574fa2",
    "dc66d145d7be6f9ad54cf9b42281a19923ddd98e"
  ],
  "author": {
    "name": "bors",
    "email": "bors@rust-lang.org",
    "time": "Sun Sep 13 08:49:52 2026 +0000"
  },
  "committer": {
    "name": "bors",
    "email": "bors@rust-lang.org",
    "time": "Sun Sep 13 08:49:52 2026 +0000"
  },
  "message": "Unrolled build for #161385 in rollup 162707\nRollup merge of #161385 - RalfJung:riscv-d-f, r\u003dmejrs\n\nriscv: stabilize \u0027d\u0027 and \u0027f\u0027 target features\n\nhttps://github.com/rust-lang/rust/pull/156188 has been reverted in https://github.com/rust-lang/rust/pull/161064 due to concerns about \"e\" being a negative target feature.\n\n\"d\" and \"f\" however are almost normal target features, so let\u0027s re-land them.\nThe one thing that\u0027s odd about them is that we cannot allow you to use `-Ctarget-feature` or `#[target_feature]` for them on *some* riscv ABIs. (For now, it remains unstable on all riscv ABIs.) So this means we need the concept of target-features that are fixed by the target spec and cannot be changed by the user. OTOH we kind of already have that, even for fully stable target features:\n- On x86-64, we don\u0027t let people disable \"sse2\". On aarch64, we don\u0027t let people disable \"neon\".\n- [Soon](https://github.com/rust-lang/rust/pull/160302), on x86-64 softfloat, we don\u0027t let people enable \"sse2\".\n\n\"neon\" and \"sse2\" are even stable target features. So  I see no reason not to fully stabilize \"d\" and \"f\", with the following constraints:\n- on riscv targets that use a \"d\" ABI (ilp32d, lp64d), you can\u0027t disable either of them\n- on riscv targets that use an \"f\" ABI (ilp32f, lp64f), you can\u0027t disable \"f\"\n- on riscv ilp32e targets, you can\u0027t *enable* \"d\"\n\nCc @romancardenas",
  "tree_diff": []
}
