/usr/lib/x86_64-linux-gnu/beignet/include/ocl_simd.h is in beignet-opencl-icd 1.1.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | /*
* Copyright © 2015 Intel Corporation
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef __OCL_SIMD_H__
#define __OCL_SIMD_H__
#include "ocl_types.h"
/////////////////////////////////////////////////////////////////////////////
// SIMD level function
/////////////////////////////////////////////////////////////////////////////
int sub_group_any(int);
int sub_group_all(int);
uint get_sub_group_size(void);
uint get_sub_group_id(void);
OVERLOADABLE float intel_sub_group_shuffle(float x, uint c);
OVERLOADABLE int intel_sub_group_shuffle(int x, uint c);
OVERLOADABLE uint intel_sub_group_shuffle(uint x, uint c);
//Begin from this part is autogenerated.
//Don't modify it manually.
//simd level functions builtin functions
//floatn intel_sub_group_shuffle(floatn x, uint c)
OVERLOADABLE float2 intel_sub_group_shuffle (float2 param0, uint param1);
OVERLOADABLE float3 intel_sub_group_shuffle (float3 param0, uint param1);
OVERLOADABLE float4 intel_sub_group_shuffle (float4 param0, uint param1);
OVERLOADABLE float8 intel_sub_group_shuffle (float8 param0, uint param1);
OVERLOADABLE float16 intel_sub_group_shuffle (float16 param0, uint param1);
//intn intel_sub_group_shuffle(intn x, uint c)
OVERLOADABLE int2 intel_sub_group_shuffle (int2 param0, uint param1);
OVERLOADABLE int3 intel_sub_group_shuffle (int3 param0, uint param1);
OVERLOADABLE int4 intel_sub_group_shuffle (int4 param0, uint param1);
OVERLOADABLE int8 intel_sub_group_shuffle (int8 param0, uint param1);
OVERLOADABLE int16 intel_sub_group_shuffle (int16 param0, uint param1);
//uintn intel_sub_group_shuffle(uintn x, uint c)
OVERLOADABLE uint2 intel_sub_group_shuffle (uint2 param0, uint param1);
OVERLOADABLE uint3 intel_sub_group_shuffle (uint3 param0, uint param1);
OVERLOADABLE uint4 intel_sub_group_shuffle (uint4 param0, uint param1);
OVERLOADABLE uint8 intel_sub_group_shuffle (uint8 param0, uint param1);
OVERLOADABLE uint16 intel_sub_group_shuffle (uint16 param0, uint param1);
#endif
|