)]}'
{
  "commit": "d04f3f5978ec900cbd31af077aa1cd3652a22ce5",
  "tree": "c29a058709eab2a5cf9a9472978e0e7859438cc1",
  "parents": [
    "f7c42b049e6bf0e0e0ba1489a3866cbdf3ab88e2"
  ],
  "author": {
    "name": "Nicolas Capens",
    "email": "capn@google.com",
    "time": "Sat Feb 05 01:19:14 2022 -0500"
  },
  "committer": {
    "name": "Nicolas Capens",
    "email": "nicolascapens@google.com",
    "time": "Mon Feb 07 19:30:16 2022 +0000"
  },
  "message": "Eliminate rr::Precision\n\nReactor now only has full-precision implementations of transcendental\nfunctions, so there\u0027s no need for a precision argument.\n\nThe only exceptions are the reciprocal function, and reciprocal square\nroot. Those are very useful to keep as part of the Reactor API because\nthere are fast approximate instructions for these operations. For now,\nthe precision is selected using a boolean parameter. This is intended to\nlater be replaced by having just an approximate intrinsic, and a query\nCaps::rcpIsFast() which will allow users of Reactor to determine whether\nto use 1/x or Rcp(). Specifically, when Rcp() is actually implemented as\n1/x it would be wasteful to apply the Newton–Raphson method to obtain a\nmore precise result (cf. Caps::fmaIsFast() which addresses a similar\nproblem).\n\nBug: b/169755552\nChange-Id: I553746aeee3ac01f6c47e06da17de1f6bfcd7df6\nReviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/62289\nKokoro-Result: kokoro \u003cnoreply+kokoro@google.com\u003e\nReviewed-by: Alexis Hétu \u003csugoi@google.com\u003e\nTested-by: Nicolas Capens \u003cnicolascapens@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e1edd21abc0f7c6328458ec7070141e15f796fef",
      "old_mode": 33188,
      "old_path": "src/Pipeline/PixelRoutine.cpp",
      "new_id": "c112cfa565af9e3c4b9a4fde432f6679df2e423b",
      "new_mode": 33188,
      "new_path": "src/Pipeline/PixelRoutine.cpp"
    },
    {
      "type": "modify",
      "old_id": "37aa93a5102def0bd41013ba16d69aa7bdb65b68",
      "old_mode": 33188,
      "old_path": "src/Pipeline/SamplerCore.cpp",
      "new_id": "510d0626a5c23585940a6513f2683caa4d6cf892",
      "new_mode": 33188,
      "new_path": "src/Pipeline/SamplerCore.cpp"
    },
    {
      "type": "modify",
      "old_id": "b7968681c18dfaf220ff554cc54fe783d96279c4",
      "old_mode": 33188,
      "old_path": "src/Pipeline/ShaderCore.cpp",
      "new_id": "b56046a4c1220407e7885123073d3c1cfabeea8a",
      "new_mode": 33188,
      "new_path": "src/Pipeline/ShaderCore.cpp"
    },
    {
      "type": "modify",
      "old_id": "ad7a4bc637bd8e8a70e0e2607602e18e08522acb",
      "old_mode": 33188,
      "old_path": "src/Pipeline/ShaderCore.hpp",
      "new_id": "441e08e255d8dc4e3f07371cd6ca1811e77cdbdf",
      "new_mode": 33188,
      "new_path": "src/Pipeline/ShaderCore.hpp"
    },
    {
      "type": "modify",
      "old_id": "85cc6ffb081c72cbd86ae91f75b17db66b54aa4e",
      "old_mode": 33188,
      "old_path": "src/Pipeline/SpirvShaderGLSLstd450.cpp",
      "new_id": "77f67e340a24339aa61980b46c913b6ba335e2f0",
      "new_mode": 33188,
      "new_path": "src/Pipeline/SpirvShaderGLSLstd450.cpp"
    },
    {
      "type": "modify",
      "old_id": "86799a658890b5d08ca12d5062826bb6add6024e",
      "old_mode": 33188,
      "old_path": "src/Reactor/LLVMReactor.cpp",
      "new_id": "a2781b7f6d08847ee8f5575861ea62aa43ed46c8",
      "new_mode": 33188,
      "new_path": "src/Reactor/LLVMReactor.cpp"
    },
    {
      "type": "modify",
      "old_id": "148a46e829f076e197b0921a019298065e92b539",
      "old_mode": 33188,
      "old_path": "src/Reactor/Reactor.cpp",
      "new_id": "e155b807c1417152295fdfa9068803b35d9967e6",
      "new_mode": 33188,
      "new_path": "src/Reactor/Reactor.cpp"
    },
    {
      "type": "modify",
      "old_id": "f99c545ed4dfff654fd4ef770a8de1e1c332efa5",
      "old_mode": 33188,
      "old_path": "src/Reactor/Reactor.hpp",
      "new_id": "c982de8ca2274f07eb599403814535a1020d546f",
      "new_mode": 33188,
      "new_path": "src/Reactor/Reactor.hpp"
    },
    {
      "type": "modify",
      "old_id": "3eaf24f2b2816632e31d9def80839d5f8282015a",
      "old_mode": 33188,
      "old_path": "src/Reactor/SubzeroReactor.cpp",
      "new_id": "09d3ff34707c7f5ec8438eb0f88c7ac58f238500",
      "new_mode": 33188,
      "new_path": "src/Reactor/SubzeroReactor.cpp"
    },
    {
      "type": "modify",
      "old_id": "2b30340caf56258bdbd38a7d74d6cdd6f8e490b6",
      "old_mode": 33188,
      "old_path": "tests/ReactorBenchmarks/ReactorBenchmarks.cpp",
      "new_id": "6f42e13af3f219a68d0e9bd820da3e79391b2b6b",
      "new_mode": 33188,
      "new_path": "tests/ReactorBenchmarks/ReactorBenchmarks.cpp"
    },
    {
      "type": "modify",
      "old_id": "19056db44e037df26216d5d9d146f5c28dc982a1",
      "old_mode": 33188,
      "old_path": "tests/ReactorUnitTests/ReactorUnitTests.cpp",
      "new_id": "5ed94cad22b6fbf4293b130bec7666a9bbc1f551",
      "new_mode": 33188,
      "new_path": "tests/ReactorUnitTests/ReactorUnitTests.cpp"
    }
  ]
}
