)]}'
{
  "commit": "8e2e0b438081242bb6cf8ff8e54019f109643d5b",
  "tree": "71e6e4900bcb526371862fc9a03f4b753418d812",
  "parents": [
    "c10304a20f8196990e50c33173874773a622d8a6"
  ],
  "author": {
    "name": "Milad Fa",
    "email": "mfarazma@ibm.com",
    "time": "Wed May 20 19:12:30 2026"
  },
  "committer": {
    "name": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed May 20 20:31:45 2026"
  },
  "message": "PPC/s390: [wasm][fuzzer] Optimize CheckMaxSteps with platform-specific code\n\nPort 1ef3800f4a84a5d394a8133d4f981a41ed8bfdc6\n\nOriginal Commit Message:\n\n    This CL moves the logic for decrementing the fuzzer step counter into\n    platform-specific LiftoffAssembler methods.\n\n    To reduce code duplication and simplify the compiler logic, we use\n    std::variant\u003cint32_t, LiftoffRegister\u003e to unify the handling of both\n    register and constant step counts in a single platform-specific method.\n\n    This allows for:\n    1.  Smaller and faster code by using direct memory subtraction and\n        native CPU flags (carry/borrow) to handle wraparound.\n    2.  More efficient constant step handling by moving the logic into\n        platform-specific assemblers.\n    3.  Correct handling of 64-bit step counts (register pairs) on 32-bit\n        platforms (ia32, arm).\n    4.  Robust prevention of underflow/wraparound exploits by saturating\n        the counter at -1 if a large unsigned value is subtracted.\n    5.  Strict adherence to the requirement of updating the memory counter\n        to a negative value before triggering the trap.\n\n    The optimization is implemented for x64, ia32, arm, and arm64.\n    On arm and arm64, we avoid scratch register exhaustion by manually\n    allocating registers for the memory address and the counter.\n\nR\u003dclemensb@chromium.org, junyan1@ibm.com\nBUG\u003d\nLOG\u003dN\n\nChange-Id: I9ab1764a0bb0189827ad60900629afebd5697658\nReviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7865641\nReviewed-by: John \u003cjunyan1@ibm.com\u003e\nCommit-Queue: Milad Farazmand \u003cmfarazma@ibm.com\u003e\nCr-Commit-Position: refs/heads/main@{#107472}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b4abf5f58f37f35a958f3aa21d42e88109392f58",
      "old_mode": 33188,
      "old_path": "src/wasm/baseline/ppc/liftoff-assembler-ppc-inl.h",
      "new_id": "e677ddad2de3e1e81da449fab6a68e8e8ad95114",
      "new_mode": 33188,
      "new_path": "src/wasm/baseline/ppc/liftoff-assembler-ppc-inl.h"
    },
    {
      "type": "modify",
      "old_id": "705dbe611b061a7615fc6c430282430c56a4e77c",
      "old_mode": 33188,
      "old_path": "src/wasm/baseline/s390/liftoff-assembler-s390-inl.h",
      "new_id": "02db5e63c22af7021980ec77f1155f6039141954",
      "new_mode": 33188,
      "new_path": "src/wasm/baseline/s390/liftoff-assembler-s390-inl.h"
    }
  ]
}
