)]}'
{
  "commit": "46d2b1f7b898c309bd2d61200a91bfd4c285c8ca",
  "tree": "304a7c6478f9910d380a587493badb7551436bd5",
  "parents": [
    "1fe3817daa73c8eba1180edccbca9b29a74e12af"
  ],
  "author": {
    "name": "Enes Cevik",
    "email": "enes@nsvke.com",
    "time": "Mon Jun 29 16:03:44 2026 +0300"
  },
  "committer": {
    "name": "Arthur Cohen",
    "email": "arthur.cohen@embecosm.com",
    "time": "Wed Jul 08 17:22:52 2026 +0200"
  },
  "message": "gccrs: intrinsic: Add size_of_val\n\nThis patch adds the size_of_val intrinsic to the compiler. This\nintrinsic evaluates the size of a value at runtime, including\nDynamically Sized Types (DSTs).\n\ngcc/rust/ChangeLog:\n\n\t* backend/rust-compile-intrinsic.cc (generic_intrinsics): Add\n\tsize_of_val_handler to the map.\n\t* backend/rust-intrinsic-handlers.cc (size_of_val_handler): New\n\tfunction.\n\t* backend/rust-intrinsic-handlers.h (size_of_val_handler): New\n\tdeclaration.\n\t* typecheck/rust-hir-type-check-intrinsic.cc\n\t(IntrinsicChecker::intrinsic_rules): Add size_of_val signature\n\trule to the map.\n\t* util/rust-intrinsic-values.h (class Intrinsics): Add\n\tSIZE_OF_VAL constexpr.\n\ngcc/testsuite/ChangeLog:\n\n\t* rust/execute/size-of-val.rs: New test.\n\nSigned-off-by: Enes Cevik \u003cenes@nsvke.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e9407e0511150190de99ca2f894d46ae65fb60d4",
      "old_mode": 33188,
      "old_path": "gcc/rust/backend/rust-compile-intrinsic.cc",
      "new_id": "05187c35ca4befc54445d6c453c31e7eb08d7853",
      "new_mode": 33188,
      "new_path": "gcc/rust/backend/rust-compile-intrinsic.cc"
    },
    {
      "type": "modify",
      "old_id": "735529cc947a6eeed67194c794f8190f3e4e394d",
      "old_mode": 33188,
      "old_path": "gcc/rust/backend/rust-intrinsic-handlers.cc",
      "new_id": "d08b1e2e2d616bbf5220194e58c687424c3271a9",
      "new_mode": 33188,
      "new_path": "gcc/rust/backend/rust-intrinsic-handlers.cc"
    },
    {
      "type": "modify",
      "old_id": "1c81417b70240c7648144d3e8f30856bf0719090",
      "old_mode": 33188,
      "old_path": "gcc/rust/backend/rust-intrinsic-handlers.h",
      "new_id": "58f52650a4516085b063accc655989ab70cdadef",
      "new_mode": 33188,
      "new_path": "gcc/rust/backend/rust-intrinsic-handlers.h"
    },
    {
      "type": "modify",
      "old_id": "0011e3203d52a88697fb564f36e26198b1e33bb1",
      "old_mode": 33188,
      "old_path": "gcc/rust/typecheck/rust-hir-type-check-intrinsic.cc",
      "new_id": "bfb5baf3161a7627aab69800a85c59bcdc133653",
      "new_mode": 33188,
      "new_path": "gcc/rust/typecheck/rust-hir-type-check-intrinsic.cc"
    },
    {
      "type": "modify",
      "old_id": "d47e66ce6e9f30b1f80cef5bbd222290d465b106",
      "old_mode": 33188,
      "old_path": "gcc/rust/util/rust-intrinsic-values.h",
      "new_id": "35e76a87c349d4cd8844dfe4ad714081ee2a8aa3",
      "new_mode": 33188,
      "new_path": "gcc/rust/util/rust-intrinsic-values.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5fb9407e611c7e0f16332a3fef73d7b42b1bb4c7",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/rust/execute/size-of-val.rs"
    }
  ]
}
