Austin Eng d761d5a575 Add Chromium's StackVector base class and ityp::stack_vec
In order to lift Dawn's restriction on the number of bindings
per bind group, static sized arays need to be converted to
dynamically sized vectors. This CL adds Chromium's StackVector
class which behaves like std::vector but provides a stack allocator
to allocate small vectors on the stack. Dawn can use this to avoid
making separate heap allocations for a smaller, realistic binding
counts.

The CL also adds an ityp::stack_vec class to support using
a StackVector with TypedInteger indices.

Bug: dawn:442, dawn:443
Change-Id: I7604c02b3ea52cd63990a2e8b45ed238a5d52232
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/23681
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2020-07-08 20:27:30 +00:00
..
2018-07-18 22:54:06 +02:00
2020-07-08 18:50:30 +00:00
2020-07-08 18:50:30 +00:00
2020-07-08 18:50:30 +00:00
2020-07-08 18:50:30 +00:00
2020-06-17 22:35:19 +00:00
2019-12-06 18:21:39 +00:00
2019-12-06 18:21:39 +00:00
2020-06-17 22:35:19 +00:00
2020-07-08 18:50:30 +00:00