Skip to content

Commit 6e9c17b

Browse files
author
iclsrc
committed
Merge from 'sycl' to 'sycl-web'
2 parents 6ae70da + 0324c51 commit 6e9c17b

File tree

12 files changed

+32
-45
lines changed

12 files changed

+32
-45
lines changed

buildbot/dependency.conf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ ocl_cpu_rt_ver=2021.11.3.0.09
44
# https://github.com/intel/llvm/releases/download/2021-WW11/win-oclcpuexp-2021.11.3.0.09_rel.zip
55
ocl_cpu_rt_ver_win=2021.11.3.0.09
66
# Same GPU driver supports Level Zero and OpenCL
7-
# https://github.com/intel/compute-runtime/releases/tag/21.12.19358
8-
ocl_gpu_rt_ver=21.12.19358
7+
# https://github.com/intel/compute-runtime/releases/tag/21.13.19438
8+
ocl_gpu_rt_ver=21.13.19438
99
# Same GPU driver supports Level Zero and OpenCL
1010
# https://downloadmirror.intel.com/30266/a08/igfx_win10_100.9316.zip
1111
ocl_gpu_rt_ver_win=27.20.100.9316
@@ -30,7 +30,7 @@ ocloc_ver_win=27.20.100.9168
3030
[DRIVER VERSIONS]
3131
cpu_driver_lin=2021.11.3.0.09
3232
cpu_driver_win=2021.11.3.0.09
33-
gpu_driver_lin=21.12.19358
33+
gpu_driver_lin=21.13.19438
3434
gpu_driver_win=27.20.100.9316
3535
fpga_driver_lin=2021.11.3.0.09
3636
fpga_driver_win=2021.11.3.0.09

llvm/lib/SYCLLowerIR/LowerESIMD.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -730,8 +730,7 @@ static bool translateVLoad(CallInst &CI, SmallPtrSet<Type *, 4> &GVTS) {
730730
if (GVTS.find(CI.getType()) != GVTS.end())
731731
return false;
732732
IRBuilder<> Builder(&CI);
733-
auto *ElemT = CI.getArgOperand(0)->getType()->getPointerElementType();
734-
auto LI = Builder.CreateLoad(ElemT, CI.getArgOperand(0), CI.getName());
733+
auto LI = Builder.CreateLoad(CI.getType(), CI.getArgOperand(0), CI.getName());
735734
LI->setDebugLoc(CI.getDebugLoc());
736735
CI.replaceAllUsesWith(LI);
737736
return true;

llvm/lib/SYCLLowerIR/LowerESIMDVLoadVStore.cpp

100755100644
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ PreservedAnalyses ESIMDLowerLoadStorePass::run(Function &F,
8989
if (GenXIntrinsic::isVStore(&Inst))
9090
Builder.CreateStore(Inst.getOperand(0), Inst.getOperand(1));
9191
else {
92-
auto *ElemT = Inst.getOperand(0)->getType()->getPointerElementType();
93-
auto LI = Builder.CreateLoad(ElemT, Inst.getOperand(0), Inst.getName());
92+
auto LI = Builder.CreateLoad(Inst.getType(), Inst.getOperand(0),
93+
Inst.getName());
9494
LI->setDebugLoc(Inst.getDebugLoc());
9595
Inst.replaceAllUsesWith(LI);
9696
}

llvm/lib/SYCLLowerIR/LowerWGScope.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -303,8 +303,7 @@ shareOutputViaLocalMem(Instruction &I, BasicBlock &BBa, BasicBlock &BBb,
303303
Bld.CreateStore(&I, WGLocal);
304304
// 3) Generate a load in the "worker" BB of the value stored by the leader
305305
Bld.SetInsertPoint(&BBb.front());
306-
auto *WGValT = WGLocal->getType()->getPointerElementType();
307-
auto *WGVal = Bld.CreateLoad(WGValT, WGLocal, "wg_val_" + Twine(I.getName()));
306+
auto *WGVal = Bld.CreateLoad(T, WGLocal, "wg_val_" + Twine(I.getName()));
308307
// 4) Finally, replace usages of I outside the scope
309308
for (auto *U : Users)
310309
U->replaceUsesOfWith(&I, WGVal);
@@ -417,8 +416,7 @@ static void copyBetweenPrivateAndShadow(Value *L, GlobalVariable *Shadow,
417416

418417
if (!Loc2Shadow)
419418
std::swap(Src, Dst);
420-
auto *SrcT = Src->getType()->getPointerElementType();
421-
Value *LocalVal = Builder.CreateLoad(SrcT, Src, "mat_ld");
419+
Value *LocalVal = Builder.CreateLoad(T, Src, "mat_ld");
422420
Builder.CreateStore(LocalVal, Dst);
423421
}
424422
}

sycl/include/CL/sycl/INTEL/esimd/esimd.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ using namespace sycl::INTEL::gpu::detail;
2929
///
3030
/// \ingroup sycl_esimd
3131
template <typename Ty, int N> class simd {
32+
template <typename, typename> friend class simd_view;
33+
3234
public:
3335
/// The underlying builtin data type.
3436
using vector_type = detail::vector_type_t<Ty, N>;

sycl/include/CL/sycl/INTEL/esimd/esimd_view.hpp

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ namespace gpu {
2424
///
2525
/// \ingroup sycl_esimd
2626
template <typename BaseTy, typename RegionTy> class simd_view {
27+
template <typename, int> friend class simd;
28+
template <typename, typename> friend class simd_view;
29+
2730
public:
2831
static_assert(!is_simd_view_v<BaseTy>::value);
2932
// Deduce the corresponding value type from its region type.
@@ -44,31 +47,17 @@ template <typename BaseTy, typename RegionTy> class simd_view {
4447
/// type of the base object type.
4548
using element_type = typename ShapeTy::element_type;
4649

47-
// TODO @rolandschulz
48-
// {quote}
49-
// Why is this and the next constructor public ? Those should only be called
50-
// internally by e.g.select, correct ?
51-
// {/quote}
52-
//
5350
/// @{
5451
/// Constructors.
52+
53+
private:
5554
simd_view(BaseTy &Base, RegionTy Region) : M_base(Base), M_region(Region) {}
5655
simd_view(BaseTy &&Base, RegionTy Region) : M_base(Base), M_region(Region) {}
5756

58-
// TODO @rolandschulz
59-
// {quote}
60-
// Is this intentional not a correct copy constructor (would need to be const
61-
// for that)? I believe we agreed that simd_view would have a deleted copy and
62-
// move constructor.Why are they suddenly back ?
63-
// {/quote}
64-
// TODO @kbobrovs
65-
// copy constructor is still incorrect (no 'const'), move constructor is still
66-
// present.
67-
//
68-
// Disallow copy constructor for simd_view.
69-
simd_view(simd_view &Other) = delete;
70-
simd_view(simd_view &&Other)
71-
: M_base(Other.M_base), M_region(Other.M_region) {}
57+
public:
58+
// Disallow copy and move constructors for simd_view.
59+
simd_view(const simd_view &Other) = delete;
60+
simd_view(simd_view &&Other) = delete;
7261
/// @}
7362

7463
/// Conversion to simd type.

sycl/include/CL/sycl/ONEAPI/intel_matrix/matrix.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@
1414

1515
#pragma once
1616

17+
#include <CL/sycl/feature_test.hpp>
18+
19+
#if (SYCL_EXT_ONEAPI_MATRIX == 1)
1720
#if defined(__AMXTILE__) && defined(__AMXINT8__) && defined(__AMXBF16__)
1821
#include <CL/sycl/ONEAPI/intel_matrix/matrix-amx.hpp>
1922
#endif
23+
#endif

sycl/include/CL/sycl/feature_test.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ namespace sycl {
1212

1313
// Feature test macro definitions
1414

15+
// TODO: Move these feature-test macros to compiler driver.
1516
#define SYCL_EXT_INTEL_DEVICE_INFO 1
17+
#define SYCL_EXT_ONEAPI_MATRIX 1
1618

1719
} // namespace sycl
1820
} // __SYCL_INLINE_NAMESPACE(cl)

sycl/plugins/cuda/pi_cuda.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3850,9 +3850,10 @@ static size_t imageElementByteSize(CUDA_ARRAY_DESCRIPTOR array_desc) {
38503850
case CU_AD_FORMAT_SIGNED_INT32:
38513851
case CU_AD_FORMAT_FLOAT:
38523852
return 4;
3853+
default:
3854+
cl::sycl::detail::pi::die("Invalid image format.");
3855+
return 0;
38533856
}
3854-
cl::sycl::detail::pi::die("Invalid iamge format.");
3855-
return 0;
38563857
}
38573858

38583859
/// General ND memory copy operation for images (where N > 1).

sycl/test/esimd/simd_view.cpp

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,6 @@
77

88
using namespace sycl::INTEL::gpu;
99

10-
bool test_simd_view_ctors() __attribute__((sycl_device)) {
11-
simd<int, 16> v0(0, 1);
12-
13-
region1d_t<int, 4, 1> r0(4);
14-
simd_view<simd<int, 16>, region1d_t<int, 4, 1>> ref0(v0, r0);
15-
simd_view<simd<int, 16>, region1d_t<int, 4, 1>> ref1(std::move(ref0));
16-
simd_view<simd<int, 16>, region1d_t<int, 4, 1>> ref2(
17-
std::move(v0.select<4, 1>(8)));
18-
19-
return (ref0[0] == 4) && (ref1[1] == 5) && (ref2[0] == 8);
20-
}
21-
2210
bool test_simd_view_bin_ops() __attribute__((sycl_device)) {
2311
simd<int, 16> v0 = 1;
2412
simd<int, 16> v1 = 2;

0 commit comments

Comments
 (0)