@@ -196,9 +196,6 @@ class accessor_common {
196
196
template <int SubDims> class AccessorSubscript {
197
197
static constexpr int Dims = Dimensions;
198
198
199
- template <bool B, class T = void >
200
- using enable_if_t = typename std::enable_if<B, T>::type;
201
-
202
199
mutable id<Dims> MIDs;
203
200
AccType MAccessor;
204
201
@@ -212,21 +209,22 @@ class accessor_common {
212
209
MIDs[0 ] = Index;
213
210
}
214
211
215
- template <int CurDims = SubDims, typename = enable_if_t <(CurDims > 1 )>>
212
+ template <int CurDims = SubDims,
213
+ typename = detail::enable_if_t <(CurDims > 1 )>>
216
214
AccessorSubscript<CurDims - 1 > operator [](size_t Index) {
217
215
MIDs[Dims - CurDims] = Index;
218
216
return AccessorSubscript<CurDims - 1 >(MAccessor, MIDs);
219
217
}
220
218
221
219
template <int CurDims = SubDims,
222
- typename = enable_if_t <IsAccessAnyWrite && CurDims == 1 >>
220
+ typename = detail:: enable_if_t <IsAccessAnyWrite && CurDims == 1 >>
223
221
RefType operator [](size_t Index) const {
224
222
MIDs[Dims - CurDims] = Index;
225
223
return MAccessor[MIDs];
226
224
}
227
225
228
226
template <int CurDims = SubDims,
229
- typename = enable_if_t <IsAccessReadOnly && CurDims == 1 >>
227
+ typename = detail:: enable_if_t <IsAccessReadOnly && CurDims == 1 >>
230
228
DataT operator [](size_t Index) const {
231
229
MIDs[Dims - SubDims] = Index;
232
230
return MAccessor[MIDs];
@@ -250,9 +248,6 @@ class accessor :
250
248
AccessTarget == access::target::host_buffer),
251
249
" Expected buffer type" );
252
250
253
- template <bool B, class T = void >
254
- using enable_if_t = typename std::enable_if<B, T>::type;
255
-
256
251
using AccessorCommonT = detail::accessor_common<DataT, Dimensions, AccessMode,
257
252
AccessTarget, IsPlaceholder>;
258
253
@@ -336,7 +331,7 @@ class accessor :
336
331
using const_reference = const DataT &;
337
332
338
333
template <int Dims = Dimensions>
339
- accessor (enable_if_t <((!IsPlaceH && IsHostBuf) ||
334
+ accessor (detail:: enable_if_t <((!IsPlaceH && IsHostBuf) ||
340
335
(IsPlaceH && (IsGlobalBuf || IsConstantBuf))) &&
341
336
Dims == 0 , buffer<DataT, 1 > > &BufferRef)
342
337
#ifdef __SYCL_DEVICE_ONLY__
@@ -358,7 +353,7 @@ class accessor :
358
353
template <int Dims = Dimensions>
359
354
accessor (
360
355
buffer<DataT, 1 > &BufferRef,
361
- enable_if_t <(!IsPlaceH && (IsGlobalBuf || IsConstantBuf)) && Dims == 0 ,
356
+ detail:: enable_if_t <(!IsPlaceH && (IsGlobalBuf || IsConstantBuf)) && Dims == 0 ,
362
357
handler> &CommandGroupHandler)
363
358
#ifdef __SYCL_DEVICE_ONLY__
364
359
: impl (id<AdjustedDim>(), BufferRef.get_range (), BufferRef.MemRange ) {
@@ -374,11 +369,11 @@ class accessor :
374
369
}
375
370
#endif
376
371
377
- template <
378
- int Dims = Dimensions,
379
- typename = enable_if_t <((! IsPlaceH && IsHostBuf) ||
380
- (IsPlaceH && (IsGlobalBuf || IsConstantBuf))) &&
381
- (Dims > 0 )>>
372
+ template <int Dims = Dimensions,
373
+ typename = detail:: enable_if_t <((!IsPlaceH && IsHostBuf) ||
374
+ ( IsPlaceH &&
375
+ (IsGlobalBuf || IsConstantBuf))) &&
376
+ (Dims > 0 )>>
382
377
accessor (buffer<DataT, Dimensions> &BufferRef)
383
378
#ifdef __SYCL_DEVICE_ONLY__
384
379
: impl (id<Dimensions>(), BufferRef.get_range (), BufferRef.MemRange ) {
@@ -398,7 +393,7 @@ class accessor :
398
393
#endif
399
394
400
395
template <int Dims = Dimensions,
401
- typename = enable_if_t <
396
+ typename = detail:: enable_if_t <
402
397
(!IsPlaceH && (IsGlobalBuf || IsConstantBuf)) && (Dims > 0 )>>
403
398
accessor (buffer<DataT, Dimensions> &BufferRef, handler &CommandGroupHandler)
404
399
#ifdef __SYCL_DEVICE_ONLY__
@@ -415,22 +410,22 @@ class accessor :
415
410
}
416
411
#endif
417
412
418
- template <
419
- int Dims = Dimensions,
420
- typename = enable_if_t <((! IsPlaceH && IsHostBuf) ||
421
- (IsPlaceH && (IsGlobalBuf || IsConstantBuf))) &&
422
- (Dims > 0 )>>
413
+ template <int Dims = Dimensions,
414
+ typename = detail:: enable_if_t <((!IsPlaceH && IsHostBuf) ||
415
+ ( IsPlaceH &&
416
+ (IsGlobalBuf || IsConstantBuf))) &&
417
+ (Dims > 0 )>>
423
418
accessor (buffer<DataT, Dimensions> &BufferRef, range<Dimensions> AccessRange,
424
419
id<Dimensions> AccessOffset = {})
425
420
#ifdef __SYCL_DEVICE_ONLY__
426
421
: impl (AccessOffset, AccessRange, BufferRef.MemRange ) {
427
422
}
428
423
#else
429
424
: AccessorBaseHost (detail::convertToArrayOfN<3 , 0 >(AccessOffset),
430
- detail::convertToArrayOfN<3 , 1 >(AccessRange),
431
- detail::convertToArrayOfN<3 , 1 >(BufferRef.MemRange ),
432
- AccessMode, detail::getSyclObjImpl (BufferRef).get (),
433
- Dimensions, sizeof (DataT)) {
425
+ detail::convertToArrayOfN<3 , 1 >(AccessRange),
426
+ detail::convertToArrayOfN<3 , 1 >(BufferRef.MemRange ),
427
+ AccessMode, detail::getSyclObjImpl (BufferRef).get (),
428
+ Dimensions, sizeof (DataT)) {
434
429
detail::EventImplPtr Event =
435
430
detail::Scheduler::getInstance ().addHostAccessor (
436
431
AccessorBaseHost::impl.get ());
@@ -439,7 +434,7 @@ class accessor :
439
434
#endif
440
435
441
436
template <int Dims = Dimensions,
442
- typename = enable_if_t <
437
+ typename = detail:: enable_if_t <
443
438
(!IsPlaceH && (IsGlobalBuf || IsConstantBuf)) && (Dims > 0 )>>
444
439
accessor (buffer<DataT, Dimensions> &BufferRef, handler &CommandGroupHandler,
445
440
range<Dimensions> AccessRange, id<Dimensions> AccessOffset = {})
@@ -448,10 +443,10 @@ class accessor :
448
443
}
449
444
#else
450
445
: AccessorBaseHost (detail::convertToArrayOfN<3 , 0 >(AccessOffset),
451
- detail::convertToArrayOfN<3 , 1 >(AccessRange),
452
- detail::convertToArrayOfN<3 , 1 >(BufferRef.MemRange ),
453
- AccessMode, detail::getSyclObjImpl (BufferRef).get (),
454
- Dimensions, sizeof (DataT)) {
446
+ detail::convertToArrayOfN<3 , 1 >(AccessRange),
447
+ detail::convertToArrayOfN<3 , 1 >(BufferRef.MemRange ),
448
+ AccessMode, detail::getSyclObjImpl (BufferRef).get (),
449
+ Dimensions, sizeof (DataT)) {
455
450
CommandGroupHandler.associateWithHandler (*this );
456
451
}
457
452
#endif
@@ -462,53 +457,53 @@ class accessor :
462
457
463
458
size_t get_count () const { return getMemoryRange ().size (); }
464
459
465
- template <int Dims = Dimensions, typename = enable_if_t <(Dims > 0 )>>
460
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <(Dims > 0 )>>
466
461
range<Dimensions> get_range () const {
467
462
return detail::convertToArrayOfN<Dimensions, 1 >(getAccessRange ());
468
463
}
469
464
470
- template <int Dims = Dimensions, typename = enable_if_t <(Dims > 0 )>>
465
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <(Dims > 0 )>>
471
466
id<Dimensions> get_offset () const {
472
467
return detail::convertToArrayOfN<Dimensions, 0 >(getOffset ());
473
468
}
474
469
475
470
template <int Dims = Dimensions,
476
- typename = enable_if_t <IsAccessAnyWrite && Dims == 0 >>
471
+ typename = detail:: enable_if_t <IsAccessAnyWrite && Dims == 0 >>
477
472
operator RefType () const {
478
473
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>());
479
474
return *(getQualifiedPtr () + LinearIndex);
480
475
}
481
476
482
477
template <int Dims = Dimensions,
483
- typename = enable_if_t <IsAccessAnyWrite && (Dims > 0 )>>
478
+ typename = detail:: enable_if_t <IsAccessAnyWrite && (Dims > 0 )>>
484
479
RefType operator [](id<Dimensions> Index) const {
485
480
const size_t LinearIndex = getLinearIndex (Index);
486
481
return getQualifiedPtr ()[LinearIndex];
487
482
}
488
483
489
484
template <int Dims = Dimensions,
490
- typename = enable_if_t <IsAccessAnyWrite && Dims == 1 >>
485
+ typename = detail:: enable_if_t <IsAccessAnyWrite && Dims == 1 >>
491
486
RefType operator [](size_t Index) const {
492
487
const size_t LinearIndex = getLinearIndex (id<Dimensions>(Index));
493
488
return getQualifiedPtr ()[LinearIndex];
494
489
}
495
490
496
491
template <int Dims = Dimensions,
497
- typename = enable_if_t <IsAccessReadOnly && Dims == 0 >>
492
+ typename = detail:: enable_if_t <IsAccessReadOnly && Dims == 0 >>
498
493
operator DataT () const {
499
494
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>());
500
495
return *(getQualifiedPtr () + LinearIndex);
501
496
}
502
497
503
498
template <int Dims = Dimensions,
504
- typename = enable_if_t <IsAccessReadOnly && (Dims > 0 )>>
499
+ typename = detail:: enable_if_t <IsAccessReadOnly && (Dims > 0 )>>
505
500
DataT operator [](id<Dimensions> Index) const {
506
501
const size_t LinearIndex = getLinearIndex (Index);
507
502
return getQualifiedPtr ()[LinearIndex];
508
503
}
509
504
510
505
template <int Dims = Dimensions,
511
- typename = enable_if_t <IsAccessReadOnly && Dims == 1 >>
506
+ typename = detail:: enable_if_t <IsAccessReadOnly && Dims == 1 >>
512
507
DataT operator [](size_t Index) const {
513
508
const size_t LinearIndex = getLinearIndex (id<Dimensions>(Index));
514
509
return getQualifiedPtr ()[LinearIndex];
@@ -533,39 +528,39 @@ class accessor :
533
528
}
534
529
535
530
template <int Dims = Dimensions>
536
- typename enable_if_t <AccessMode == access::mode::atomic && Dims == 1 ,
537
- atomic<DataT, AS>>::type
531
+ typename detail:: enable_if_t <AccessMode == access::mode::atomic && Dims == 1 ,
532
+ atomic<DataT, AS>>::type
538
533
operator [](size_t Index) const {
539
534
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>(Index));
540
535
return atomic<DataT, AS>(
541
536
multi_ptr<DataT, AS>(getQualifiedPtr () + LinearIndex));
542
537
}
543
538
544
- template <int Dims = Dimensions, typename = enable_if_t <(Dims > 1 )>>
539
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <(Dims > 1 )>>
545
540
typename AccessorCommonT::template AccessorSubscript<Dims - 1 >
546
541
operator [](size_t Index) const {
547
542
return AccessorSubscript<Dims - 1 >(*this , Index);
548
543
}
549
544
550
- template <
551
- access::target AccessTarget_ = AccessTarget,
552
- typename = enable_if_t <AccessTarget_ == access::target::host_buffer>>
545
+ template <access::target AccessTarget_ = AccessTarget,
546
+ typename = detail:: enable_if_t < AccessTarget_ ==
547
+ access::target::host_buffer>>
553
548
DataT *get_pointer () const {
554
549
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>());
555
550
return getQualifiedPtr () + LinearIndex;
556
551
}
557
552
558
- template <
559
- access::target AccessTarget_ = AccessTarget,
560
- typename = enable_if_t <AccessTarget_ == access::target::global_buffer>>
553
+ template <access::target AccessTarget_ = AccessTarget,
554
+ typename = detail:: enable_if_t < AccessTarget_ ==
555
+ access::target::global_buffer>>
561
556
global_ptr<DataT> get_pointer () const {
562
557
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>());
563
558
return global_ptr<DataT>(getQualifiedPtr () + LinearIndex);
564
559
}
565
560
566
- template <
567
- access::target AccessTarget_ = AccessTarget,
568
- typename = enable_if_t <AccessTarget_ == access::target::constant_buffer>>
561
+ template <access::target AccessTarget_ = AccessTarget,
562
+ typename = detail:: enable_if_t < AccessTarget_ ==
563
+ access::target::constant_buffer>>
569
564
constant_ptr<DataT> get_pointer () const {
570
565
const size_t LinearIndex = getLinearIndex (id<AdjustedDim>());
571
566
return constant_ptr<DataT>(getQualifiedPtr () + LinearIndex);
@@ -601,9 +596,6 @@ class accessor<DataT, Dimensions, AccessMode, access::target::local,
601
596
using RefType = typename detail::PtrValueType<DataT, AS>::type &;
602
597
using PtrType = typename detail::PtrValueType<DataT, AS>::type *;
603
598
604
- template <bool B, class T = void >
605
- using enable_if_t = typename std::enable_if<B, T>::type;
606
-
607
599
#ifdef __SYCL_DEVICE_ONLY__
608
600
detail::LocalAccessorBaseDevice<AdjustedDim> impl;
609
601
@@ -646,7 +638,7 @@ class accessor<DataT, Dimensions, AccessMode, access::target::local,
646
638
using reference = DataT &;
647
639
using const_reference = const DataT &;
648
640
649
- template <int Dims = Dimensions, typename = enable_if_t <Dims == 0 >>
641
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <Dims == 0 >>
650
642
accessor (handler &CommandGroupHandler)
651
643
#ifdef __SYCL_DEVICE_ONLY__
652
644
: impl(range<AdjustedDim>{1 }) {
@@ -656,7 +648,7 @@ class accessor<DataT, Dimensions, AccessMode, access::target::local,
656
648
}
657
649
#endif
658
650
659
- template <int Dims = Dimensions, typename = enable_if_t <(Dims > 0 )>>
651
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <(Dims > 0 )>>
660
652
accessor (range<Dimensions> AllocationSize, handler &CommandGroupHandler)
661
653
#ifdef __SYCL_DEVICE_ONLY__
662
654
: impl(AllocationSize) {
@@ -672,48 +664,48 @@ class accessor<DataT, Dimensions, AccessMode, access::target::local,
672
664
size_t get_count () const { return getSize ().size (); }
673
665
674
666
template <int Dims = Dimensions,
675
- typename = enable_if_t <IsAccessAnyWrite && Dims == 0 >>
667
+ typename = detail:: enable_if_t <IsAccessAnyWrite && Dims == 0 >>
676
668
operator RefType () const {
677
669
return *getQualifiedPtr ();
678
670
}
679
671
680
672
template <int Dims = Dimensions,
681
- typename = enable_if_t <IsAccessAnyWrite && (Dims > 0 )>>
673
+ typename = detail:: enable_if_t <IsAccessAnyWrite && (Dims > 0 )>>
682
674
RefType operator [](id<Dimensions> Index) const {
683
675
const size_t LinearIndex = getLinearIndex (Index);
684
676
return getQualifiedPtr ()[LinearIndex];
685
677
}
686
678
687
679
template <int Dims = Dimensions,
688
- typename = enable_if_t <IsAccessAnyWrite && Dims == 1 >>
680
+ typename = detail:: enable_if_t <IsAccessAnyWrite && Dims == 1 >>
689
681
RefType operator [](size_t Index) const {
690
682
return getQualifiedPtr ()[Index];
691
683
}
692
684
693
- template <
694
- int Dims = Dimensions,
695
- typename = enable_if_t <AccessMode == access::mode::atomic && Dims == 0 >>
685
+ template <int Dims = Dimensions,
686
+ typename = detail:: enable_if_t <AccessMode == access::mode::atomic &&
687
+ Dims == 0 >>
696
688
operator atomic<DataT, AS>() const {
697
689
return atomic<DataT, AS>(multi_ptr<DataT, AS>(getQualifiedPtr ()));
698
690
}
699
691
700
- template <
701
- int Dims = Dimensions,
702
- typename = enable_if_t <AccessMode == access::mode::atomic && (Dims > 0 )>>
692
+ template <int Dims = Dimensions,
693
+ typename = detail:: enable_if_t <AccessMode == access::mode::atomic &&
694
+ (Dims > 0 )>>
703
695
atomic<DataT, AS> operator [](id<Dimensions> Index) const {
704
696
const size_t LinearIndex = getLinearIndex (Index);
705
697
return atomic<DataT, AS>(
706
698
multi_ptr<DataT, AS>(getQualifiedPtr () + LinearIndex));
707
699
}
708
700
709
- template <
710
- int Dims = Dimensions,
711
- typename = enable_if_t <AccessMode == access::mode::atomic && Dims == 1 >>
701
+ template <int Dims = Dimensions,
702
+ typename = detail:: enable_if_t <AccessMode == access::mode::atomic &&
703
+ Dims == 1 >>
712
704
atomic<DataT, AS> operator [](size_t Index) const {
713
705
return atomic<DataT, AS>(multi_ptr<DataT, AS>(getQualifiedPtr () + Index));
714
706
}
715
707
716
- template <int Dims = Dimensions, typename = enable_if_t <(Dims > 1 )>>
708
+ template <int Dims = Dimensions, typename = detail:: enable_if_t <(Dims > 1 )>>
717
709
typename AccessorCommonT::template AccessorSubscript<Dims - 1 >
718
710
operator [](size_t Index) const {
719
711
return AccessorSubscript<Dims - 1 >(*this , Index);
0 commit comments