[spirv-reader] Label control flow constructs
Label basic blocks with:
- their nearest enclosing structured control flow constructs.
- their nearest enclosing continue construct, if any
- their nearest enclosing loop construct, if any
A construct consists of a span of blocks in the computed block order.
It knows its parent construct, if any, and its nesting depth.
Bug: tint:3
Change-Id: Ia945706e8ea2435d6c40fb4e36dc2daeeb9780d0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/20421
Reviewed-by: dan sinclair <dsinclair@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index 5ee239f..2307476 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -377,6 +377,8 @@
source_set("libtint_spv_reader_src") {
sources = [
+ "src/reader/spirv/construct.h",
+ "src/reader/spirv/construct.cc",
"src/reader/spirv/enum_converter.cc",
"src/reader/spirv/enum_converter.h",
"src/reader/spirv/fail_stream.h",