)]}'
{
  "commit": "1618f4be4ee5eeb1ce9b3fb904322875243c6b87",
  "tree": "628ac006a0fea297df5d53a636896a6e92178d25",
  "parents": [
    "48b384168cae4c60ceb668187dae10803f6d4b5b"
  ],
  "author": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Wed Feb 03 21:02:25 2021 +0000"
  },
  "committer": {
    "name": "Commit Bot service account",
    "email": "commit-bot@chromium.org",
    "time": "Wed Feb 03 21:02:25 2021 +0000"
  },
  "message": "Add semantic::Call, IntrinsicCall, TextureIntrinsicCall, use them.\n\nsemantic::Call derives from semantic::Expression, and Type() is the return type of the function\nPull the mutable semantic field from ast::Identifier and into a new semantic nodes.\nHave the TypeDeterminer create these new semantic nodes.\n\nNote: This change also fixes the node that holds the semantic information for a call.\nPreviously this was on the identifier, and this is now correctly on the CallExpression.\nThe identifier of the CallExpression should resolve to the target function, not the return type.\nFunctions can currently be represented as a type, and the identifier of a CallExpression now has no semantic information.\n\nBug: tint:390\nChange-Id: I03521da5634815d35022f45ba521372cbbdb6bc7\nReviewed-on: https://dawn-review.googlesource.com/c/tint/+/40065\nCommit-Queue: Ben Clayton \u003cbclayton@google.com\u003e\nReviewed-by: David Neto \u003cdneto@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "12578bb58e13852651b3b4635517799ce1398f2b",
      "old_mode": 33188,
      "old_path": "BUILD.gn",
      "new_id": "7a14689556efd53d7224859796580a1d67004a72",
      "new_mode": 33188,
      "new_path": "BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "f79ae1a891fa0e7228f359b8030c07d1aad13242",
      "old_mode": 33188,
      "old_path": "src/CMakeLists.txt",
      "new_id": "d9a15f76517995571c5e3e335d6a1f985321db47",
      "new_mode": 33188,
      "new_path": "src/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "1021bdd837a8e1e081cab274e0c2d73e6fc86995",
      "old_mode": 33188,
      "old_path": "src/ast/identifier_expression.h",
      "new_id": "54cfdbab6804b626811f77c5d226da01dc4d764e",
      "new_mode": 33188,
      "new_path": "src/ast/identifier_expression.h"
    },
    {
      "type": "delete",
      "old_id": "6a16abbb9e463d4e5be0cb11a07957a3f9beb90f",
      "old_mode": 33188,
      "old_path": "src/ast/intrinsic.cc",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "90477bc583d9365182a585112f552b14a339767b",
      "old_mode": 33188,
      "old_path": "src/ast/intrinsic.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "269c738ce7e98e428227e7c55d9a45624f0a72c3",
      "old_mode": 33188,
      "old_path": "src/program.cc",
      "new_id": "09447aa4963d9a66c54582e13cfd3c035b543dbe",
      "new_mode": 33188,
      "new_path": "src/program.cc"
    },
    {
      "type": "modify",
      "old_id": "8954b7fdfcfd1eb3ba57fa45800ef85813070070",
      "old_mode": 33188,
      "old_path": "src/program.h",
      "new_id": "e872f360b32cdd5dfa2c613bf289a73e1c202697",
      "new_mode": 33188,
      "new_path": "src/program.h"
    },
    {
      "type": "modify",
      "old_id": "fa4300dad607f0690d5a66367b518177dc47a94f",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/function.cc",
      "new_id": "1bb6724dcccf6bbaaf98994bf6e861e6423d7ac7",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/function.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c1459d5209c174afba92ff101c79d88e430a6807",
      "new_mode": 33188,
      "new_path": "src/semantic/call.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f09063c3f89e6109f5255017e8b14e2dc4f548c5",
      "new_mode": 33188,
      "new_path": "src/semantic/intrinsic.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "68264312a769a6a4a98529beccd0b2142655c289",
      "new_mode": 33188,
      "new_path": "src/semantic/intrinsic.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fa6de41ae32933730d5aca33fe5a95766cfae02a",
      "new_mode": 33188,
      "new_path": "src/semantic/sem_call.cc"
    },
    {
      "type": "modify",
      "old_id": "58b91c542836c97b41a3f3dd99e69949e238b387",
      "old_mode": 33188,
      "old_path": "src/semantic/type_mappings.h",
      "new_id": "95c7fff63b1fabdcfc026c3470023b7dc9516e40",
      "new_mode": 33188,
      "new_path": "src/semantic/type_mappings.h"
    },
    {
      "type": "modify",
      "old_id": "09cc6a6f0602100f5b49c5104f14ce761efbc1ff",
      "old_mode": 33188,
      "old_path": "src/type_determiner.cc",
      "new_id": "df933c68f9a53b09a578f9c67983ba0669425a60",
      "new_mode": 33188,
      "new_path": "src/type_determiner.cc"
    },
    {
      "type": "modify",
      "old_id": "8fdf969e21f36193d8f393265c4cde5c63de2d11",
      "old_mode": 33188,
      "old_path": "src/type_determiner.h",
      "new_id": "916a6b28e9bc91a1a2b848d918b625a396140947",
      "new_mode": 33188,
      "new_path": "src/type_determiner.h"
    },
    {
      "type": "modify",
      "old_id": "4878e0173977d9b246fef418070c25f0f09ba522",
      "old_mode": 33188,
      "old_path": "src/type_determiner_test.cc",
      "new_id": "a09b4f7b967e7ae7b3a16cbcf344477ef90b66b0",
      "new_mode": 33188,
      "new_path": "src/type_determiner_test.cc"
    },
    {
      "type": "modify",
      "old_id": "265ad84f274c59ade2c04a2fd078981956b8a790",
      "old_mode": 33188,
      "old_path": "src/validator/validator_impl.cc",
      "new_id": "e1c999f17526bd753c93c97876081162e11fc5b6",
      "new_mode": 33188,
      "new_path": "src/validator/validator_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "6e4eff6c25b437fe5cc2d7c0cb2185eb097c4d2d",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl.cc",
      "new_id": "fa6548de178d15b206e402d053f3875fb401fe3c",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "0c175fc86ce96c09533b1d20561f4d4e896bdd9a",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl.h",
      "new_id": "acd0ae169435ecca5bcd31720f42366ffa203112",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl.h"
    },
    {
      "type": "modify",
      "old_id": "379259e592fca7ffec1ef98ccd1aa82662161426",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl_binary_test.cc",
      "new_id": "bbe1eca13d38d2b203a2026c8ac9e7882677dc33",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl_binary_test.cc"
    },
    {
      "type": "modify",
      "old_id": "bf7661f0cb1ffaee004be5e0d59abdd13e9827fd",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl_call_test.cc",
      "new_id": "8094390de37fd51176e226c5129d2376fc854c42",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl_call_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a7aadbf1de0d7376a4e72253bd20053fc89de5bc",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl_intrinsic_test.cc",
      "new_id": "568ecb09fcae243effa9f3ef740481c7fa572e11",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl_intrinsic_test.cc"
    },
    {
      "type": "modify",
      "old_id": "be67f4d96c3e19b3f2024bb93b0608e134dcf710",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl.cc",
      "new_id": "77678d8e273cd11f704c1781eb2656d6736f55a4",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "0aafa6261e65ee328a7837d5546aaa87f23e97dd",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl.h",
      "new_id": "617061f3033a35be9a2563d865f748a4ad14a666",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl.h"
    },
    {
      "type": "modify",
      "old_id": "a031f3f0f878e565f057fd4b51415b34ea9ce342",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl_call_test.cc",
      "new_id": "172f4022d401e79f581bd04df72ed7977fbbc326",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl_call_test.cc"
    },
    {
      "type": "modify",
      "old_id": "7700223a1303cf5d2b4cb4738949819a0e01231c",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl_import_test.cc",
      "new_id": "76440d0552b4ba18e351d0f36cbbf737215d1dff",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl_import_test.cc"
    },
    {
      "type": "modify",
      "old_id": "133c196a3e6eeac8bac0d47af9eda399c3835252",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl_intrinsic_test.cc",
      "new_id": "bd56c6f49f289884541d8355c9ee798dd4546b16",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl_intrinsic_test.cc"
    },
    {
      "type": "modify",
      "old_id": "79c71e864b62959f2d0fab2ee6f83d36351742ca",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder.cc",
      "new_id": "9374ac199c4d034a2ec7b4d5fdd4b0683030a378",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder.cc"
    },
    {
      "type": "modify",
      "old_id": "ee5f37f6432e890a8a92fa8180ab54b7e07120a8",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder.h",
      "new_id": "3ab74791423fae8e747f410f7548c9da8b4f158c",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder.h"
    }
  ]
}
