)]}'
{
  "commit": "28aa5a64efcb34fa2814fb87ee191514157af186",
  "tree": "7fdf8710626db7656b6a323501175e51c9b1f354",
  "parents": [
    "03b0ae8da8c4df28ad197ef21619288ead085687"
  ],
  "author": {
    "name": "Wenju He",
    "email": "wenju.he@intel.com",
    "time": "Thu Jul 10 08:04:16 2025 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jul 10 08:04:16 2025 +0800"
  },
  "message": "[libclc] Declare workitem built-ins in clc, move ptx-nvidiacl workitem built-ins into clc (#144333)\n\nChanges in this PR:\n* Declare most of workitem functions in clc and opencl folders.\n* Call clc workitem function in corresponding OpenCL workitem function.\n* Move ptx-nvidiacl workitem built-in implementations into clc.\n* Move a few amdgcn workitem built-in implementations into clc.\n* Include only needed headers in OpenCL workitem functions.\n* Implement get_local_linear_id, get_max_sub_group_size,\nget_num_sub_groups,\nget_sub_group_id, get_sub_group_local_id, get_sub_group_size for\nptx-nvidiacl.\n\nllvm-diff shows this PR adds a few new symbols to nvptx64--nvidiacl.bc.\nllvm-diff shows no change to amdgcn--amdhsa.bc, nvptx--.bc and\nnvptx64--.bc.",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "da15ed8e53ca8fc1a333de61d92da214c8b5d8b7",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_global_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "639be48d0b958abc940ad77f587f44f1c01d0788",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_global_offset.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fce11f417bf9d621a281ce93b3f68e067e8d590f",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_global_size.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3fd43cb77f8932aaae21eaa69cea6c7c77ec9965",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_group_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c446127a5f90c82e463092206912fd8f8f722860",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_local_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "34c47f2afcb3052cbff2956a97c57a077a4dd1d0",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_local_linear_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7fe3c193e0ec15c0055d656cb54f615e02ae4701",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_local_size.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8b521fe32862d2b963b544b07f010c155960718d",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f860944ad517fe42c6231523519464a66f47764e",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_num_groups.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6965aef1bce30b6b8ff2a4a54e65c331b84d35e0",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_num_sub_groups.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ac3d7bd30e45400ba166d6a0c046b7efece38bb2",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_sub_group_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "06bb6f8b77a5ca2309550dc49c282eb0e99552ea",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_sub_group_local_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a6e8e49470e4f3aef00b60d338b0ebab6301c1e3",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_sub_group_size.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7e2da4570c4f5acde03001fd2d9fe81131be490b",
      "new_mode": 33188,
      "new_path": "libclc/clc/include/clc/workitem/clc_get_work_dim.h"
    },
    {
      "type": "modify",
      "old_id": "3a48049271affe0f569a2aa40668509f8da1e675",
      "old_mode": 33188,
      "old_path": "libclc/clc/lib/amdgcn/SOURCES",
      "new_id": "7bec1740f76365a6678fd9cff1f33f56c521d0d0",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/SOURCES"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "24b04fb1679d873304c374c1b0b584c47e7eb1df",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/workitem/clc_get_global_offset.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b1d8f27dc68c8ea57d7b4a1f9a6b0a1d9d8cfb14",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/workitem/clc_get_global_size.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "aea927c3460b4b95745e7d699e879a793d8d2327",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/workitem/clc_get_group_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b7b7a43e735d33eaaf627e3d1106268d93da979d",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/workitem/clc_get_local_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "93cab09b4109f3a35b2e47d74e4633aac83b2070",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/amdgcn/workitem/clc_get_work_dim.cl"
    },
    {
      "type": "modify",
      "old_id": "d285bbba3dd26d639e18f3a6f6b6ba6dda583c8d",
      "old_mode": 33188,
      "old_path": "libclc/clc/lib/generic/SOURCES",
      "new_id": "bf8736a726315e1885df26bedee857d4a05babda",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/generic/SOURCES"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fd7905568d5952f41d99f4c35b133478e87cdfb8",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/generic/workitem/clc_get_local_linear_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c61e838ebc69362cae78fe1e4a7e6e14785ba64c",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/generic/workitem/clc_get_num_sub_groups.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fa98e05550886ce65dd486766153512e03061c7b",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8ab4afe1ae05f42875d9dffe839c73a9a7420e06",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/generic/workitem/clc_get_sub_group_size.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "05368c5e4d4e30a7018bab8c107284500c0f7833",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/SOURCES"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0782ef0b1581331aa95bcc0df91de7656bb2f44d",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "200b1bfd709926bfac9796c829e0f524137fba0b",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_group_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8c5b313b8135c29d7f795831369831cd6238d7ee",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4525c85f1e38279f95e96c67883e6c9ac74810c0",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_size.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6f0634d6f90e7c64c9c5fb81e543236e0738cdd4",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_max_sub_group_size.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "495864751ef68f9298f37d14e6043f26d69f4afd",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_num_groups.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1448f8a8b97dc121197f116f5dc1253d7f6cf890",
      "new_mode": 33188,
      "new_path": "libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_sub_group_local_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9a32aa46b8191060bfd705e737420463c70a7043",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_local_linear_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "140f22426ef6bdeb0c7d196df00af7e9c7885a9e",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_max_sub_group_size.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5c72db0b40c72102d7567c8dd37edb8477b6ea70",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_num_sub_groups.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3dbf39b8cfbade508378f875a617462874774714",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_sub_group_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7e139a857a7d7a4adece47b83b0722bae624b651",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_sub_group_local_id.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dd4f89da18a14ced2c6fc7a0f3d7cf66c3cec2fe",
      "new_mode": 33188,
      "new_path": "libclc/opencl/include/clc/opencl/workitem/get_sub_group_size.h"
    },
    {
      "type": "modify",
      "old_id": "55c09a0a2d4e9863485a5233f654132543ff3c71",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl",
      "new_id": "68a37f5f8f8516ac8cd6e674cafc7c3c24b1d6c9",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl"
    },
    {
      "type": "modify",
      "old_id": "f49d26eb684aca609a3fc0193562199435e8efcc",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/amdgcn/workitem/get_global_size.cl",
      "new_id": "94dd886ea8399c09ce10b968b29fd8ca94af571b",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/amdgcn/workitem/get_global_size.cl"
    },
    {
      "type": "modify",
      "old_id": "d0fae52f6f5359abbed2b89dd1252dd888124825",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/amdgcn/workitem/get_group_id.cl",
      "new_id": "fb466aa125ebd13563a4ebb772d30bc4724399fe",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/amdgcn/workitem/get_group_id.cl"
    },
    {
      "type": "modify",
      "old_id": "5b8b8f40d095d84b4a201f1c33b6760840666b44",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/amdgcn/workitem/get_local_id.cl",
      "new_id": "bdaf202ac09f7899125569874d43109a0ee2387c",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/amdgcn/workitem/get_local_id.cl"
    },
    {
      "type": "modify",
      "old_id": "f7af4ee57432fb7daa13812648f23769b45d98a3",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl",
      "new_id": "d3477a5e957bc5b107e36845760bf09f6906fbe2",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl"
    },
    {
      "type": "modify",
      "old_id": "c92c2a65d9abad1504783c2258b88da7fe1a93e1",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/SOURCES",
      "new_id": "eb28570a617afcf92d8445e5527019aef8a18275",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/SOURCES"
    },
    {
      "type": "modify",
      "old_id": "bcfddbe70cb6368f85a4bab6239fa03bbd7b0b71",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl",
      "new_id": "f09fa92dbe7028836aa5dbf7d4cdaa3897ba5f67",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl"
    },
    {
      "type": "modify",
      "old_id": "7b3e463fd423a2c3ae5eae21b2123d8a5d766ed4",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl",
      "new_id": "1bcd756bdd16e6ec152cfcbb83f6412e30061512",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl"
    },
    {
      "type": "modify",
      "old_id": "b5133848e9a2ee26d1bc14c846843607bcea6b35",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl",
      "new_id": "f355b757b83b874d464b378bf20bca33ff8d2e10",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8c7637b4fe31e78caa58256fd2613feb28fd1adb",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_linear_id.cl"
    },
    {
      "type": "modify",
      "old_id": "814ac462a2bc2fb0663be5378d128ea17db3fbc5",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl",
      "new_id": "b146c1ea1946d808a13f7f9bc6b0eef76224e397",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fd76f7c5d0aa5aa1cef2cce30e3ef586fbc88bce",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_max_sub_group_size.cl"
    },
    {
      "type": "modify",
      "old_id": "e9e4e4d06930a8dc9b9346e5f9da0c4732593b07",
      "old_mode": 33188,
      "old_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl",
      "new_id": "87e285d50205a2c8846b21b523cdb6540790bf08",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1be77a325c0f3bb0afdce1cc53dda66f13c54afc",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_sub_groups.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e538b86f125150fba40398f7516d8983000ed5b8",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2a8cfd57d85b23f3c6fc44f054b7f252116ecc5c",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_local_id.cl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f32d820d6418f59573e04c9be3119ca2674d37de",
      "new_mode": 33188,
      "new_path": "libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_size.cl"
    }
  ]
}
