Add the "internal" error type
Currently only raised if Tint produces an Internal Compiler Error
(ICE). These were previously surfaced as validation errors.
Bug: dawn:1531
Change-Id: I9a10549b3e0bc2cbf962c99d157aa6dbe8032a3c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101500
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
diff --git a/dawn.json b/dawn.json
index 8dedc59..c842e79 100644
--- a/dawn.json
+++ b/dawn.json
@@ -1302,7 +1302,8 @@
"category": "enum",
"values": [
{"value": 0, "name": "validation"},
- {"value": 1, "name": "out of memory"}
+ {"value": 1, "name": "out of memory"},
+ {"value": 2, "name": "internal"}
]
},
"error type": {
@@ -1312,8 +1313,9 @@
{"value": 0, "name": "no error"},
{"value": 1, "name": "validation"},
{"value": 2, "name": "out of memory"},
- {"value": 3, "name": "unknown"},
- {"value": 4, "name": "device lost"}
+ {"value": 3, "name": "internal"},
+ {"value": 4, "name": "unknown"},
+ {"value": 5, "name": "device lost"}
]
},
"logging type": {
diff --git a/src/dawn/native/ErrorScope.cpp b/src/dawn/native/ErrorScope.cpp
index b90fb13..009a2cf 100644
--- a/src/dawn/native/ErrorScope.cpp
+++ b/src/dawn/native/ErrorScope.cpp
@@ -28,6 +28,8 @@
return wgpu::ErrorType::Validation;
case wgpu::ErrorFilter::OutOfMemory:
return wgpu::ErrorType::OutOfMemory;
+ case wgpu::ErrorFilter::Internal:
+ return wgpu::ErrorType::Internal;
}
UNREACHABLE();
}
diff --git a/src/dawn/native/TintUtils.cpp b/src/dawn/native/TintUtils.cpp
index f59e6e5..24d4cc6 100644
--- a/src/dawn/native/TintUtils.cpp
+++ b/src/dawn/native/TintUtils.cpp
@@ -29,7 +29,7 @@
void TintICEReporter(const tint::diag::List& diagnostics) {
if (tlDevice) {
- tlDevice->HandleError(InternalErrorType::Validation, diagnostics.str().c_str());
+ tlDevice->HandleError(InternalErrorType::Internal, diagnostics.str().c_str());
}
}