)]}'
{
  "commit": "535f22b4a08a11166c91fabc22fe130933c745a7",
  "tree": "cbf903d06406ad1442915472b6be1a859117418b",
  "parents": [
    "f19051447ff8f3feb5f1f9abb8d0df2337347781"
  ],
  "author": {
    "name": "Abseil Team",
    "email": "absl-team@google.com",
    "time": "Mon Oct 03 17:25:20 2022 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Mon Oct 03 17:26:17 2022 -0700"
  },
  "message": "Replace the kPower10ExponentTable array with a formula.\n\nsizeof(kPower10ExponentTable) \u003d 651 * sizeof(int16_t) \u003d 1302 bytes.\n\nTheir equivalence can be confirmed by this test program:\n\n```\nconst int minIncl \u003d -342;\nconst int maxExcl \u003d 309;\nconst int kPower10ExponentTable[] \u003d { etc };\n\nint Power10Exponent(int n) {\n  return kPower10ExponentTable[n - minIncl];\n}\n\nint main(int argc, char** argv) {\n  for (int n \u003d minIncl; n \u003c maxExcl; n++) {\n    int formula \u003d (217706 * n \u003e\u003e 16) - 63;\n    int table \u003d Power10Exponent(n);\n    if (formula !\u003d table) {\n      return 1;\n    }\n  }\n  return 0;\n}\n```\n\nTested by atod_manual_test over the parse-number-fxx-test-data test\ncases, with and without manually disabling the EiselLemire code path,\nnoting that changing the magic 217706 value causes test failures.\n\nPiperOrigin-RevId: 478646550\nChange-Id: Icaaf106f9aa36e2de057f3bc9aeddc3ae0efade6\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "37d6f9f041d2f8832a9f6bfc796ef46ab84fb047",
      "old_mode": 33188,
      "old_path": "absl/strings/charconv.cc",
      "new_id": "9b4bc5eadc6beabd00f9977f1c479268f53cd174",
      "new_mode": 33188,
      "new_path": "absl/strings/charconv.cc"
    }
  ]
}
