@@ -28,7 +28,7 @@ ur_result_t enqueueEventsWait(ur_queue_handle_t Queue, hipStream_t Stream,
28
28
return UR_RESULT_SUCCESS;
29
29
}
30
30
try {
31
- auto Result = forLatestEvents (
31
+ UR_CHECK_ERROR ( forLatestEvents (
32
32
EventWaitList, NumEventsInWaitList,
33
33
[Stream, Queue](ur_event_handle_t Event) -> ur_result_t {
34
34
ScopedDevice Active (Queue->getDevice ());
@@ -38,17 +38,13 @@ ur_result_t enqueueEventsWait(ur_queue_handle_t Queue, hipStream_t Stream,
38
38
UR_CHECK_ERROR (hipStreamWaitEvent (Stream, Event->get (), 0 ));
39
39
return UR_RESULT_SUCCESS;
40
40
}
41
- });
42
-
43
- if (Result != UR_RESULT_SUCCESS) {
44
- return Result;
45
- }
46
- return UR_RESULT_SUCCESS;
41
+ }));
47
42
} catch (ur_result_t Err) {
48
43
return Err;
49
44
} catch (...) {
50
45
return UR_RESULT_ERROR_UNKNOWN;
51
46
}
47
+ return UR_RESULT_SUCCESS;
52
48
}
53
49
54
50
// Determine local work sizes that result in uniform work groups.
@@ -630,12 +626,11 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopy(
630
626
631
627
try {
632
628
ScopedDevice Active (hQueue->getDevice ());
633
- ur_result_t Result = UR_RESULT_SUCCESS;
634
629
auto Stream = hQueue->getNextTransferStream ();
635
630
636
631
if (phEventWaitList) {
637
- Result = enqueueEventsWait (hQueue, Stream, numEventsInWaitList,
638
- phEventWaitList);
632
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, Stream, numEventsInWaitList,
633
+ phEventWaitList) );
639
634
}
640
635
641
636
if (phEvent) {
@@ -657,12 +652,12 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopy(
657
652
*phEvent = RetImplEvent.release ();
658
653
}
659
654
660
- return Result;
661
655
} catch (ur_result_t Err) {
662
656
return Err;
663
657
} catch (...) {
664
658
return UR_RESULT_ERROR_UNKNOWN;
665
659
}
660
+ return UR_RESULT_SUCCESS;
666
661
}
667
662
668
663
UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopyRect (
@@ -672,7 +667,6 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopyRect(
672
667
size_t srcSlicePitch, size_t dstRowPitch, size_t dstSlicePitch,
673
668
uint32_t numEventsInWaitList, const ur_event_handle_t *phEventWaitList,
674
669
ur_event_handle_t *phEvent) {
675
- ur_result_t Result = UR_RESULT_SUCCESS;
676
670
void *SrcPtr =
677
671
std::get<BufferMem>(hBufferSrc->Mem ).getVoid (hQueue->getDevice ());
678
672
void *DstPtr =
@@ -682,8 +676,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopyRect(
682
676
try {
683
677
ScopedDevice Active (hQueue->getDevice ());
684
678
hipStream_t HIPStream = hQueue->getNextTransferStream ();
685
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
686
- phEventWaitList);
679
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
680
+ phEventWaitList) );
687
681
688
682
if (phEvent) {
689
683
RetImplEvent =
@@ -692,20 +686,20 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemBufferCopyRect(
692
686
UR_CHECK_ERROR (RetImplEvent->start ());
693
687
}
694
688
695
- Result = commonEnqueueMemBufferCopyRect (
689
+ UR_CHECK_ERROR ( commonEnqueueMemBufferCopyRect (
696
690
HIPStream, region, &SrcPtr, hipMemoryTypeDevice, srcOrigin, srcRowPitch,
697
691
srcSlicePitch, &DstPtr, hipMemoryTypeDevice, dstOrigin, dstRowPitch,
698
- dstSlicePitch);
692
+ dstSlicePitch)) ;
699
693
700
694
if (phEvent) {
701
695
UR_CHECK_ERROR (RetImplEvent->record ());
702
696
*phEvent = RetImplEvent.release ();
703
697
}
704
698
705
699
} catch (ur_result_t Err) {
706
- Result = Err;
700
+ return Err;
707
701
}
708
- return Result ;
702
+ return UR_RESULT_SUCCESS ;
709
703
}
710
704
711
705
static inline void memsetRemainPattern (hipStream_t Stream, uint32_t PatternSize,
@@ -1063,14 +1057,12 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemImageCopy(
1063
1057
std::get<SurfaceMem>(hImageDst->Mem ).getImageType (),
1064
1058
UR_RESULT_ERROR_INVALID_MEM_OBJECT);
1065
1059
1066
- ur_result_t Result = UR_RESULT_SUCCESS;
1067
-
1068
1060
try {
1069
1061
ScopedDevice Active (hQueue->getDevice ());
1070
1062
hipStream_t HIPStream = hQueue->getNextTransferStream ();
1071
1063
if (phEventWaitList) {
1072
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1073
- phEventWaitList);
1064
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1065
+ phEventWaitList) );
1074
1066
}
1075
1067
1076
1068
hipArray *SrcArray =
@@ -1110,13 +1102,9 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueMemImageCopy(
1110
1102
UR_CHECK_ERROR (RetImplEvent->start ());
1111
1103
}
1112
1104
1113
- Result = commonEnqueueMemImageNDCopy (
1105
+ UR_CHECK_ERROR ( commonEnqueueMemImageNDCopy (
1114
1106
HIPStream, ImgType, AdjustedRegion, SrcArray, hipMemoryTypeArray,
1115
- SrcOffset, DstArray, hipMemoryTypeArray, DstOffset);
1116
-
1117
- if (Result != UR_RESULT_SUCCESS) {
1118
- return Result;
1119
- }
1107
+ SrcOffset, DstArray, hipMemoryTypeArray, DstOffset));
1120
1108
1121
1109
if (phEvent) {
1122
1110
UR_CHECK_ERROR (RetImplEvent->record ());
@@ -1237,7 +1225,6 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMFill(
1237
1225
ur_queue_handle_t hQueue, void *ptr, size_t patternSize,
1238
1226
const void *pPattern, size_t size, uint32_t numEventsInWaitList,
1239
1227
const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent) {
1240
- ur_result_t Result = UR_RESULT_SUCCESS;
1241
1228
std::unique_ptr<ur_event_handle_t_> EventPtr{nullptr };
1242
1229
1243
1230
try {
@@ -1246,8 +1233,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMFill(
1246
1233
ur_stream_guard Guard;
1247
1234
hipStream_t HIPStream = hQueue->getNextComputeStream (
1248
1235
numEventsInWaitList, phEventWaitList, Guard, &StreamToken);
1249
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1250
- phEventWaitList);
1236
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1237
+ phEventWaitList) );
1251
1238
if (phEvent) {
1252
1239
EventPtr =
1253
1240
std::unique_ptr<ur_event_handle_t_>(ur_event_handle_t_::makeNative (
@@ -1274,8 +1261,9 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMFill(
1274
1261
break ;
1275
1262
1276
1263
default :
1277
- Result = commonMemSetLargePattern (HIPStream, patternSize, size, pPattern,
1278
- reinterpret_cast <hipDeviceptr_t>(ptr));
1264
+ UR_CHECK_ERROR (
1265
+ commonMemSetLargePattern (HIPStream, patternSize, size, pPattern,
1266
+ reinterpret_cast <hipDeviceptr_t>(ptr)));
1279
1267
break ;
1280
1268
}
1281
1269
@@ -1284,25 +1272,23 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMFill(
1284
1272
*phEvent = EventPtr.release ();
1285
1273
}
1286
1274
} catch (ur_result_t Err) {
1287
- Result = Err;
1275
+ return Err;
1288
1276
}
1289
1277
1290
- return Result ;
1278
+ return UR_RESULT_SUCCESS ;
1291
1279
}
1292
1280
1293
1281
UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMMemcpy (
1294
1282
ur_queue_handle_t hQueue, bool blocking, void *pDst, const void *pSrc,
1295
1283
size_t size, uint32_t numEventsInWaitList,
1296
1284
const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent) {
1297
- ur_result_t Result = UR_RESULT_SUCCESS;
1298
-
1299
1285
std::unique_ptr<ur_event_handle_t_> EventPtr{nullptr };
1300
1286
1301
1287
try {
1302
1288
ScopedDevice Active (hQueue->getDevice ());
1303
1289
hipStream_t HIPStream = hQueue->getNextTransferStream ();
1304
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1305
- phEventWaitList);
1290
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1291
+ phEventWaitList) );
1306
1292
if (phEvent) {
1307
1293
EventPtr =
1308
1294
std::unique_ptr<ur_event_handle_t_>(ur_event_handle_t_::makeNative (
@@ -1321,9 +1307,9 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMMemcpy(
1321
1307
*phEvent = EventPtr.release ();
1322
1308
}
1323
1309
} catch (ur_result_t Err) {
1324
- Result = Err;
1310
+ return Err;
1325
1311
}
1326
- return Result ;
1312
+ return UR_RESULT_SUCCESS ;
1327
1313
}
1328
1314
1329
1315
UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMPrefetch (
@@ -1345,13 +1331,11 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMPrefetch(
1345
1331
UR_ASSERT (size <= PointerRangeSize, UR_RESULT_ERROR_INVALID_SIZE);
1346
1332
#endif
1347
1333
1348
- ur_result_t Result = UR_RESULT_SUCCESS;
1349
-
1350
1334
try {
1351
1335
ScopedDevice Active (hQueue->getDevice ());
1352
1336
hipStream_t HIPStream = hQueue->getNextTransferStream ();
1353
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1354
- phEventWaitList);
1337
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1338
+ phEventWaitList) );
1355
1339
1356
1340
std::unique_ptr<ur_event_handle_t_> EventPtr{nullptr };
1357
1341
@@ -1399,10 +1383,10 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMPrefetch(
1399
1383
hipMemPrefetchAsync (pMem, size, hQueue->getDevice ()->get (), HIPStream));
1400
1384
releaseEvent ();
1401
1385
} catch (ur_result_t Err) {
1402
- Result = Err;
1386
+ return Err;
1403
1387
}
1404
1388
1405
- return Result ;
1389
+ return UR_RESULT_SUCCESS ;
1406
1390
}
1407
1391
1408
1392
// / USM: memadvise API to govern behavior of automatic migration mechanisms
@@ -1521,6 +1505,7 @@ urEnqueueUSMAdvise(ur_queue_handle_t hQueue, const void *pMem, size_t size,
1521
1505
UR_RESULT_SUCCESS);
1522
1506
return UR_RESULT_ERROR_ADAPTER_SPECIFIC;
1523
1507
}
1508
+ UR_CHECK_ERROR (Result);
1524
1509
}
1525
1510
1526
1511
releaseEvent ();
@@ -1558,13 +1543,11 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMMemcpy2D(
1558
1543
const void *pSrc, size_t srcPitch, size_t width, size_t height,
1559
1544
uint32_t numEventsInWaitList, const ur_event_handle_t *phEventWaitList,
1560
1545
ur_event_handle_t *phEvent) {
1561
- ur_result_t Result = UR_RESULT_SUCCESS;
1562
-
1563
1546
try {
1564
1547
ScopedDevice Active (hQueue->getDevice ());
1565
1548
hipStream_t HIPStream = hQueue->getNextTransferStream ();
1566
- Result = enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1567
- phEventWaitList);
1549
+ UR_CHECK_ERROR ( enqueueEventsWait (hQueue, HIPStream, numEventsInWaitList,
1550
+ phEventWaitList) );
1568
1551
1569
1552
std::unique_ptr<ur_event_handle_t_> RetImplEvent{nullptr };
1570
1553
if (phEvent) {
@@ -1668,10 +1651,10 @@ UR_APIEXPORT ur_result_t UR_APICALL urEnqueueUSMMemcpy2D(
1668
1651
UR_CHECK_ERROR (hipStreamSynchronize (HIPStream));
1669
1652
}
1670
1653
} catch (ur_result_t Err) {
1671
- Result = Err;
1654
+ return Err;
1672
1655
}
1673
1656
1674
- return Result ;
1657
+ return UR_RESULT_SUCCESS ;
1675
1658
}
1676
1659
1677
1660
namespace {
0 commit comments